---
Fuzzer filename: '/src/openvswitch/tests/oss-fuzz/flow_extract_target.c'
All functions:
  Function list name: All functions
  Elements:
    - functionName:    dp_packet_base
      functionSourceFile: '/src/openvswitch/./lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 750
      functionLinenumberEnd: 751
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __packet_data
      functionSourceFile: '/src/openvswitch/./lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 774
      functionLinenumberEnd: 775
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_data
      functionSourceFile: '/src/openvswitch/./lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 845
      functionLinenumberEnd: 847
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __packet_data
        - dp_packet_base
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './lib/dp-packet.h:846,12'
          Dst:             __packet_data
        - Src:             './lib/dp-packet.h:847,23'
          Dst:             dp_packet_base
        - Src:             './lib/dp-packet.h:847,43'
          Dst:             __packet_data
    - functionName:    test_flow_mask
      functionSourceFile: '/src/openvswitch/tests/oss-fuzz/flow_extract_target.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33
      functionLinenumberEnd: 44
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - flow_mask_hash_fields
        - flow_wildcards_init_catchall
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'tests/oss-fuzz/flow_extract_target.c:36,5'
          Dst:             flow_wildcards_init_catchall
        - Src:             'tests/oss-fuzz/flow_extract_target.c:37,5'
          Dst:             flow_mask_hash_fields
        - Src:             'tests/oss-fuzz/flow_extract_target.c:38,5'
          Dst:             flow_mask_hash_fields
        - Src:             'tests/oss-fuzz/flow_extract_target.c:39,5'
          Dst:             flow_mask_hash_fields
        - Src:             'tests/oss-fuzz/flow_extract_target.c:40,5'
          Dst:             flow_mask_hash_fields
        - Src:             'tests/oss-fuzz/flow_extract_target.c:41,5'
          Dst:             flow_mask_hash_fields
        - Src:             'tests/oss-fuzz/flow_extract_target.c:42,5'
          Dst:             flow_mask_hash_fields
        - Src:             'tests/oss-fuzz/flow_extract_target.c:43,5'
          Dst:             flow_mask_hash_fields
    - functionName:    test_flow_hash
      functionSourceFile: '/src/openvswitch/tests/oss-fuzz/flow_extract_target.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15
      functionLinenumberEnd: 29
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          68
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - flow_hash_5tuple
        - flow_hash_fields
        - flow_hash_symmetric_l2
        - flow_hash_symmetric_l3
        - flow_hash_symmetric_l3l4
        - flow_hash_symmetric_l4
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'tests/oss-fuzz/flow_extract_target.c:16,21'
          Dst:             flow_hash_5tuple
        - Src:             'tests/oss-fuzz/flow_extract_target.c:17,12'
          Dst:             flow_hash_symmetric_l4
        - Src:             'tests/oss-fuzz/flow_extract_target.c:18,12'
          Dst:             flow_hash_symmetric_l2
        - Src:             'tests/oss-fuzz/flow_extract_target.c:19,12'
          Dst:             flow_hash_symmetric_l3l4
        - Src:             'tests/oss-fuzz/flow_extract_target.c:20,12'
          Dst:             flow_hash_symmetric_l3
        - Src:             'tests/oss-fuzz/flow_extract_target.c:21,12'
          Dst:             flow_hash_fields
        - Src:             'tests/oss-fuzz/flow_extract_target.c:22,12'
          Dst:             flow_hash_fields
        - Src:             'tests/oss-fuzz/flow_extract_target.c:23,12'
          Dst:             flow_hash_fields
        - Src:             'tests/oss-fuzz/flow_extract_target.c:24,12'
          Dst:             flow_hash_fields
        - Src:             'tests/oss-fuzz/flow_extract_target.c:25,12'
          Dst:             flow_hash_fields
        - Src:             'tests/oss-fuzz/flow_extract_target.c:26,12'
          Dst:             flow_hash_fields
        - Src:             'tests/oss-fuzz/flow_extract_target.c:27,12'
          Dst:             flow_hash_fields
        - Src:             'tests/oss-fuzz/flow_extract_target.c:28,5'
          Dst:             ovs_ignore
    - functionName:    dp_packet_size
      functionSourceFile: '/src/openvswitch/./lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 762
      functionLinenumberEnd: 763
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    LLVMFuzzerTestOneInput
      functionSourceFile: '/src/openvswitch/tests/oss-fuzz/flow_extract_target.c'
      linkageType:     externalLinkage
      functionLinenumber: 48
      functionLinenumberEnd: 94
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          71
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_data
        - dp_packet_size
        - dp_packet_use_const
        - flow_count_vlan_headers
        - flow_extract
        - flow_get_metadata
        - flow_wc_map
        - htonl
        - match_print
        - match_wc_init
        - ofp_print_packet
        - ofputil_match_to_ofp10_match
        - ovs_hex_dump
        - ovs_ignore
        - parse_tcp_flags
        - test_flow_hash
        - test_flow_mask
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'tests/oss-fuzz/flow_extract_target.c:51,5'
          Dst:             dp_packet_use_const
        - Src:             'tests/oss-fuzz/flow_extract_target.c:52,5'
          Dst:             flow_extract
        - Src:             'tests/oss-fuzz/flow_extract_target.c:56,5'
          Dst:             flow_wc_map
        - Src:             'tests/oss-fuzz/flow_extract_target.c:59,9'
          Dst:             dp_packet_size
        - Src:             'tests/oss-fuzz/flow_extract_target.c:60,30'
          Dst:             parse_tcp_flags
        - Src:             'tests/oss-fuzz/flow_extract_target.c:61,9'
          Dst:             ovs_ignore
        - Src:             'tests/oss-fuzz/flow_extract_target.c:65,17'
          Dst:             flow_count_vlan_headers
        - Src:             'tests/oss-fuzz/flow_extract_target.c:66,5'
          Dst:             ovs_ignore
        - Src:             'tests/oss-fuzz/flow_extract_target.c:70,5'
          Dst:             flow_get_metadata
        - Src:             'tests/oss-fuzz/flow_extract_target.c:73,5'
          Dst:             test_flow_hash
        - Src:             'tests/oss-fuzz/flow_extract_target.c:76,5'
          Dst:             test_flow_mask
        - Src:             'tests/oss-fuzz/flow_extract_target.c:80,5'
          Dst:             match_wc_init
        - Src:             'tests/oss-fuzz/flow_extract_target.c:83,5'
          Dst:             ofputil_match_to_ofp10_match
        - Src:             'tests/oss-fuzz/flow_extract_target.c:86,30'
          Dst:             dp_packet_data
        - Src:             'tests/oss-fuzz/flow_extract_target.c:86,55'
          Dst:             dp_packet_size
        - Src:             'tests/oss-fuzz/flow_extract_target.c:87,22'
          Dst:             htonl
        - Src:             'tests/oss-fuzz/flow_extract_target.c:86,5'
          Dst:             ofp_print_packet
        - Src:             'tests/oss-fuzz/flow_extract_target.c:88,26'
          Dst:             dp_packet_data
        - Src:             'tests/oss-fuzz/flow_extract_target.c:88,51'
          Dst:             dp_packet_size
        - Src:             'tests/oss-fuzz/flow_extract_target.c:88,5'
          Dst:             ovs_hex_dump
        - Src:             'tests/oss-fuzz/flow_extract_target.c:90,5'
          Dst:             match_print
        - Src:             'tests/oss-fuzz/flow_extract_target.c:92,5'
          Dst:             ovs_hex_dump
    - 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:    672
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_batch_grow_init_coverage
      functionSourceFile: '/src/openvswitch/lib/dp-packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 29
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.c:29,1'
          Dst:             coverage_counter_register
    - functionName:    dp_packet_batch_grow_count
      functionSourceFile: '/src/openvswitch/lib/dp-packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 29
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_dp_packet_batch_grow_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.c:29,1'
          Dst:             counter_dp_packet_batch_grow_get
    - functionName:    counter_dp_packet_batch_grow_get
      functionSourceFile: '/src/openvswitch/lib/dp-packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 29
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_dp_packet_batch_grow_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.c:29,1'
          Dst:             counter_dp_packet_batch_grow_get_unsafe
    - functionName:    counter_dp_packet_batch_grow_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/dp-packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 29
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_ip_checksum_set_good
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1142
      functionLinenumberEnd: 1145
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_inner_ip_checksum_set_good
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1198
      functionLinenumberEnd: 1201
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_l3_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 491
      functionLinenumberEnd: 494
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_l2_pad_size
        - dp_packet_l3
        - dp_packet_tail
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:493,25'
          Dst:             dp_packet_tail
        - Src:             'lib/dp-packet.h:493,59'
          Dst:             dp_packet_l3
        - Src:             'lib/dp-packet.h:494,11'
          Dst:             dp_packet_l2_pad_size
    - functionName:    dp_packet_tail
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 326
      functionLinenumberEnd: 327
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_data
        - dp_packet_size
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:327,21'
          Dst:             dp_packet_data
        - Src:             'lib/dp-packet.h:327,41'
          Dst:             dp_packet_size
    - functionName:    dp_packet_l3
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 461
      functionLinenumberEnd: 463
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_data
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:463,23'
          Dst:             dp_packet_data
    - functionName:    dp_packet_l2_pad_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 432
      functionLinenumberEnd: 433
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_data
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 845
      functionLinenumberEnd: 847
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __packet_data
        - dp_packet_base
      functionUses:    18
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:846,12'
          Dst:             __packet_data
        - Src:             'lib/dp-packet.h:847,23'
          Dst:             dp_packet_base
        - Src:             'lib/dp-packet.h:847,43'
          Dst:             __packet_data
    - functionName:    __packet_data
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 774
      functionLinenumberEnd: 775
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_base
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 750
      functionLinenumberEnd: 751
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    11
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 762
      functionLinenumberEnd: 763
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    14
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_inner_l3_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 519
      functionLinenumberEnd: 523
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_inner_l3
        - dp_packet_l2_pad_size
        - dp_packet_tail
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:521,29'
          Dst:             dp_packet_tail
        - Src:             'lib/dp-packet.h:522,29'
          Dst:             dp_packet_inner_l3
        - Src:             'lib/dp-packet.h:523,14'
          Dst:             dp_packet_l2_pad_size
    - functionName:    dp_packet_inner_l3
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 511
      functionLinenumberEnd: 513
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_data
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:513,23'
          Dst:             dp_packet_data
    - functionName:    dp_packet_get_allocated
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 786
      functionLinenumberEnd: 787
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_end
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 334
      functionLinenumberEnd: 335
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_base
        - dp_packet_get_allocated
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:335,21'
          Dst:             dp_packet_base
        - Src:             'lib/dp-packet.h:335,41'
          Dst:             dp_packet_get_allocated
    - functionName:    __packet_set_data
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 780
      functionLinenumberEnd: 782
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_flow_mark_ptr
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 651
      functionLinenumberEnd: 652
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_rss_ptr
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 645
      functionLinenumberEnd: 646
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_reset_outer_offsets
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 413
      functionLinenumberEnd: 418
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_init_specific
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 744
      functionLinenumberEnd: 746
      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:    dp_packet_reset_offload
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1069
      functionLinenumberEnd: 1072
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_reset_cutlen
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 811
      functionLinenumberEnd: 813
      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:    pkt_metadata_init
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 165
      functionLinenumberEnd: 183
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          34
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_reset_offsets
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 424
      functionLinenumberEnd: 428
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_reset_outer_offsets
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:425,5'
          Dst:             dp_packet_reset_outer_offsets
    - functionName:    dp_packet_init__
      functionSourceFile: '/src/openvswitch/lib/dp-packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          42
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_init_specific
        - dp_packet_reset_cutlen
        - dp_packet_reset_offload
        - dp_packet_reset_offsets
        - dp_packet_set_allocated
        - dp_packet_set_tso_segsz
        - htonl
        - pkt_metadata_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.c:34,5'
          Dst:             dp_packet_set_allocated
        - Src:             'lib/dp-packet.c:36,5'
          Dst:             dp_packet_reset_offsets
        - Src:             'lib/dp-packet.c:37,5'
          Dst:             pkt_metadata_init
        - Src:             'lib/dp-packet.c:38,5'
          Dst:             dp_packet_reset_cutlen
        - Src:             'lib/dp-packet.c:39,5'
          Dst:             dp_packet_reset_offload
        - Src:             'lib/dp-packet.c:40,5'
          Dst:             dp_packet_set_tso_segsz
        - Src:             'lib/dp-packet.c:42,5'
          Dst:             dp_packet_init_specific
        - Src:             'lib/dp-packet.c:44,22'
          Dst:             htonl
    - functionName:    dp_packet_set_allocated
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 792
      functionLinenumberEnd: 794
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_set_tso_segsz
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 804
      functionLinenumberEnd: 806
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_batch_grow_add
      functionSourceFile: '/src/openvswitch/lib/dp-packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 29
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_dp_packet_batch_grow_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.c:29,1'
          Dst:             counter_dp_packet_batch_grow_get
    - functionName:    dp_packet_batch_grow
      functionSourceFile: '/src/openvswitch/lib/dp-packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 674
      functionLinenumberEnd: 692
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          73
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - dp_packet_batch_grow_add
        - xrealloc
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.c:677,5'
          Dst:             dp_packet_batch_grow_add
        - Src:             'lib/dp-packet.c:685,22'
          Dst:             xrealloc
    - functionName:    dp_packet_inner_l4_proto_sctp
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1380
      functionLinenumberEnd: 1382
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_inner_l4_proto_udp
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1373
      functionLinenumberEnd: 1375
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_inner_l4_proto_tcp
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1366
      functionLinenumberEnd: 1368
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_tunnel_vxlan
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1108
      functionLinenumberEnd: 1110
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_tunnel_geneve
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1094
      functionLinenumberEnd: 1096
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_l4_proto_sctp
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1287
      functionLinenumberEnd: 1289
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_l4_proto_udp
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1273
      functionLinenumberEnd: 1275
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_l4_proto_tcp
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1259
      functionLinenumberEnd: 1261
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_ip_set_header_csum
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1228
      functionLinenumberEnd: 1255
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          109
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - csum
        - dp_packet_inner_ip_checksum_set_good
        - dp_packet_inner_l3
        - dp_packet_inner_l3_size
        - dp_packet_ip_checksum_set_good
        - dp_packet_l3
        - dp_packet_l3_size
        - ovs_ignore
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:1234,14'
          Dst:             dp_packet_inner_l3
        - Src:             'lib/dp-packet.h:1235,19'
          Dst:             dp_packet_inner_l3_size
        - Src:             'lib/dp-packet.h:1237,14'
          Dst:             dp_packet_l3
        - Src:             'lib/dp-packet.h:1238,19'
          Dst:             dp_packet_l3_size
        - Src:             'lib/dp-packet.h:1241,5'
          Dst:             ovs_ignore
        - Src:             'lib/dp-packet.h:1247,23'
          Dst:             csum
        - Src:             'lib/dp-packet.h:1251,9'
          Dst:             dp_packet_inner_ip_checksum_set_good
        - Src:             'lib/dp-packet.h:1253,9'
          Dst:             dp_packet_ip_checksum_set_good
    - functionName:    dp_packet_tunnel
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1135
      functionLinenumberEnd: 1136
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_l4_checksum_partial
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1333
      functionLinenumberEnd: 1335
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_ip_checksum_partial
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1165
      functionLinenumberEnd: 1167
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_inner_l4_checksum_partial
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1406
      functionLinenumberEnd: 1408
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_inner_ip_checksum_partial
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1207
      functionLinenumberEnd: 1209
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_ol_send_prepare
      functionSourceFile: '/src/openvswitch/lib/dp-packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 577
      functionLinenumberEnd: 670
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         92
      ICount:          366
      EdgeCount:       124
      CyclomaticComplexity: 34
      functionsReached:
        - dp_packet_get_tso_segsz
        - dp_packet_inner_ip_checksum_partial
        - dp_packet_inner_l4_checksum_partial
        - dp_packet_inner_l4_proto_sctp
        - dp_packet_inner_l4_proto_tcp
        - dp_packet_inner_l4_proto_udp
        - dp_packet_ip_checksum_partial
        - dp_packet_ip_set_header_csum
        - dp_packet_l4_checksum_partial
        - dp_packet_l4_proto_sctp
        - dp_packet_l4_proto_tcp
        - dp_packet_l4_proto_udp
        - dp_packet_tunnel
        - dp_packet_tunnel_geneve
        - dp_packet_tunnel_vxlan
        - ovs_ignore
        - packet_sctp_complete_csum
        - packet_tcp_complete_csum
        - packet_udp_complete_csum
        - packet_udp_tunnel_csum
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.c:578,10'
          Dst:             dp_packet_inner_ip_checksum_partial
        - Src:             'lib/dp-packet.c:579,13'
          Dst:             dp_packet_inner_l4_checksum_partial
        - Src:             'lib/dp-packet.c:581,14'
          Dst:             dp_packet_ip_checksum_partial
        - Src:             'lib/dp-packet.c:582,17'
          Dst:             dp_packet_l4_checksum_partial
        - Src:             'lib/dp-packet.c:587,13'
          Dst:             dp_packet_tunnel
        - Src:             'lib/dp-packet.c:587,13'
          Dst:             dp_packet_get_tso_segsz
        - Src:             'lib/dp-packet.c:592,10'
          Dst:             dp_packet_tunnel
        - Src:             'lib/dp-packet.c:593,13'
          Dst:             dp_packet_ip_checksum_partial
        - Src:             'lib/dp-packet.c:595,13'
          Dst:             dp_packet_ip_set_header_csum
        - Src:             'lib/dp-packet.c:598,13'
          Dst:             dp_packet_l4_checksum_partial
        - Src:             'lib/dp-packet.c:599,17'
          Dst:             dp_packet_l4_proto_tcp
        - Src:             'lib/dp-packet.c:601,21'
          Dst:             packet_tcp_complete_csum
        - Src:             'lib/dp-packet.c:603,24'
          Dst:             dp_packet_l4_proto_udp
        - Src:             'lib/dp-packet.c:605,21'
          Dst:             packet_udp_complete_csum
        - Src:             'lib/dp-packet.c:608,28'
          Dst:             dp_packet_l4_proto_sctp
        - Src:             'lib/dp-packet.c:608,17'
          Dst:             ovs_ignore
        - Src:             'lib/dp-packet.c:610,21'
          Dst:             packet_sctp_complete_csum
        - Src:             'lib/dp-packet.c:618,9'
          Dst:             dp_packet_tunnel_geneve
        - Src:             'lib/dp-packet.c:618,39'
          Dst:             dp_packet_tunnel_vxlan
        - Src:             'lib/dp-packet.c:624,16'
          Dst:             dp_packet_l4_checksum_partial
        - Src:             'lib/dp-packet.c:626,18'
          Dst:             packet_udp_tunnel_csum
        - Src:             'lib/dp-packet.c:637,9'
          Dst:             dp_packet_inner_ip_checksum_partial
        - Src:             'lib/dp-packet.c:639,9'
          Dst:             dp_packet_ip_set_header_csum
        - Src:             'lib/dp-packet.c:642,9'
          Dst:             dp_packet_inner_l4_checksum_partial
        - Src:             'lib/dp-packet.c:643,13'
          Dst:             dp_packet_inner_l4_proto_tcp
        - Src:             'lib/dp-packet.c:645,17'
          Dst:             packet_tcp_complete_csum
        - Src:             'lib/dp-packet.c:647,20'
          Dst:             dp_packet_inner_l4_proto_udp
        - Src:             'lib/dp-packet.c:649,17'
          Dst:             packet_udp_complete_csum
        - Src:             'lib/dp-packet.c:652,24'
          Dst:             dp_packet_inner_l4_proto_sctp
        - Src:             'lib/dp-packet.c:652,13'
          Dst:             ovs_ignore
        - Src:             'lib/dp-packet.c:654,17'
          Dst:             packet_sctp_complete_csum
        - Src:             'lib/dp-packet.c:659,9'
          Dst:             dp_packet_ip_checksum_partial
        - Src:             'lib/dp-packet.c:661,9'
          Dst:             dp_packet_ip_set_header_csum
        - Src:             'lib/dp-packet.c:664,9'
          Dst:             dp_packet_l4_checksum_partial
        - Src:             'lib/dp-packet.c:665,20'
          Dst:             dp_packet_l4_proto_udp
        - Src:             'lib/dp-packet.c:665,9'
          Dst:             ovs_ignore
        - Src:             'lib/dp-packet.c:667,13'
          Dst:             packet_udp_complete_csum
    - functionName:    dp_packet_get_tso_segsz
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 798
      functionLinenumberEnd: 799
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_compare_offsets
      functionSourceFile: '/src/openvswitch/lib/dp-packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 546
      functionLinenumberEnd: 571
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          181
      EdgeCount:       27
      CyclomaticComplexity: 9
      functionsReached:
        - ds_put_format
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.c:554,13'
          Dst:             ds_put_format
        - Src:             'lib/dp-packet.c:555,13'
          Dst:             ds_put_format
        - Src:             'lib/dp-packet.c:561,13'
          Dst:             ds_put_format
    - functionName:    dp_packet_resize_l2
      functionSourceFile: '/src/openvswitch/lib/dp-packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 537
      functionLinenumberEnd: 540
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_adjust_layer_offset
        - dp_packet_data
        - dp_packet_resize_l2_5
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.c:538,5'
          Dst:             dp_packet_resize_l2_5
        - Src:             'lib/dp-packet.c:539,5'
          Dst:             dp_packet_adjust_layer_offset
        - Src:             'lib/dp-packet.c:540,12'
          Dst:             dp_packet_data
    - functionName:    dp_packet_resize_l2_5
      functionSourceFile: '/src/openvswitch/lib/dp-packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 516
      functionLinenumberEnd: 529
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_adjust_layer_offset
        - dp_packet_data
        - dp_packet_pull
        - dp_packet_push_uninit
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.c:518,9'
          Dst:             dp_packet_push_uninit
        - Src:             'lib/dp-packet.c:520,9'
          Dst:             dp_packet_pull
        - Src:             'lib/dp-packet.c:524,5'
          Dst:             dp_packet_adjust_layer_offset
        - Src:             'lib/dp-packet.c:525,5'
          Dst:             dp_packet_adjust_layer_offset
        - Src:             'lib/dp-packet.c:526,5'
          Dst:             dp_packet_adjust_layer_offset
        - Src:             'lib/dp-packet.c:527,5'
          Dst:             dp_packet_adjust_layer_offset
        - Src:             'lib/dp-packet.c:529,12'
          Dst:             dp_packet_data
    - functionName:    dp_packet_adjust_layer_offset
      functionSourceFile: '/src/openvswitch/lib/dp-packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 505
      functionLinenumberEnd: 509
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          29
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_push_uninit
      functionSourceFile: '/src/openvswitch/lib/dp-packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 451
      functionLinenumberEnd: 455
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_data
        - dp_packet_prealloc_headroom
        - dp_packet_set_data
        - dp_packet_set_size
        - dp_packet_size
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.c:452,5'
          Dst:             dp_packet_prealloc_headroom
        - Src:             'lib/dp-packet.c:453,34'
          Dst:             dp_packet_data
        - Src:             'lib/dp-packet.c:453,5'
          Dst:             dp_packet_set_data
        - Src:             'lib/dp-packet.c:454,27'
          Dst:             dp_packet_size
        - Src:             'lib/dp-packet.c:454,5'
          Dst:             dp_packet_set_size
        - Src:             'lib/dp-packet.c:455,12'
          Dst:             dp_packet_data
    - functionName:    dp_packet_pull
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 370
      functionLinenumberEnd: 375
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          45
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_data
        - dp_packet_l2_pad_size
        - dp_packet_set_data
        - dp_packet_set_size
        - dp_packet_size
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:371,18'
          Dst:             dp_packet_data
        - Src:             'lib/dp-packet.h:372,16'
          Dst:             dp_packet_size
        - Src:             'lib/dp-packet.h:372,36'
          Dst:             dp_packet_l2_pad_size
        - Src:             'lib/dp-packet.h:372,5'
          Dst:             ovs_ignore
        - Src:             'lib/dp-packet.h:373,36'
          Dst:             dp_packet_data
        - Src:             'lib/dp-packet.h:373,5'
          Dst:             dp_packet_set_data
        - Src:             'lib/dp-packet.h:374,27'
          Dst:             dp_packet_size
        - Src:             'lib/dp-packet.h:374,5'
          Dst:             dp_packet_set_size
    - functionName:    dp_packet_set_data
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 852
      functionLinenumberEnd: 858
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __packet_set_data
        - dp_packet_base
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:854,55'
          Dst:             dp_packet_base
        - Src:             'lib/dp-packet.h:854,9'
          Dst:             __packet_set_data
        - Src:             'lib/dp-packet.h:856,9'
          Dst:             __packet_set_data
    - functionName:    dp_packet_set_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 768
      functionLinenumberEnd: 770
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_prealloc_headroom
      functionSourceFile: '/src/openvswitch/lib/dp-packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 334
      functionLinenumberEnd: 338
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          44
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - dp_packet_headroom
        - dp_packet_resize
        - dp_packet_tailroom
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.c:335,16'
          Dst:             dp_packet_headroom
        - Src:             'lib/dp-packet.c:336,44'
          Dst:             dp_packet_tailroom
        - Src:             'lib/dp-packet.c:336,9'
          Dst:             dp_packet_resize
    - functionName:    dp_packet_headroom
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 344
      functionLinenumberEnd: 345
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_base
        - dp_packet_data
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:345,21'
          Dst:             dp_packet_data
        - Src:             'lib/dp-packet.h:345,50'
          Dst:             dp_packet_base
    - functionName:    dp_packet_tailroom
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 352
      functionLinenumberEnd: 353
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_end
        - dp_packet_tail
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:353,21'
          Dst:             dp_packet_end
        - Src:             'lib/dp-packet.h:353,49'
          Dst:             dp_packet_tail
    - functionName:    dp_packet_resize
      functionSourceFile: '/src/openvswitch/lib/dp-packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 254
      functionLinenumberEnd: 316
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          128
      EdgeCount:       29
      CyclomaticComplexity: 15
      functionsReached:
        - abort
        - dp_packet_base
        - dp_packet_copy__
        - dp_packet_data
        - dp_packet_headroom
        - dp_packet_set_allocated
        - dp_packet_set_base
        - dp_packet_set_data
        - dp_packet_size
        - xmalloc
        - xrealloc
      functionUses:    4
      BranchProfiles:
        - Branch String:   'lib/dp-packet.c:260,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/dp-packet.c:258,36'
          Dst:             dp_packet_size
        - Src:             'lib/dp-packet.c:279,9'
          Dst:             abort
        - Src:             'lib/dp-packet.c:284,29'
          Dst:             dp_packet_headroom
        - Src:             'lib/dp-packet.c:285,33'
          Dst:             dp_packet_base
        - Src:             'lib/dp-packet.c:285,24'
          Dst:             xrealloc
        - Src:             'lib/dp-packet.c:287,24'
          Dst:             xmalloc
        - Src:             'lib/dp-packet.c:288,13'
          Dst:             dp_packet_copy__
        - Src:             'lib/dp-packet.c:289,18'
          Dst:             dp_packet_base
        - Src:             'lib/dp-packet.c:294,9'
          Dst:             abort
        - Src:             'lib/dp-packet.c:297,9'
          Dst:             abort
        - Src:             'lib/dp-packet.c:301,20'
          Dst:             xmalloc
        - Src:             'lib/dp-packet.c:302,9'
          Dst:             dp_packet_copy__
        - Src:             'lib/dp-packet.c:306,9'
          Dst:             abort
        - Src:             'lib/dp-packet.c:309,5'
          Dst:             dp_packet_set_allocated
        - Src:             'lib/dp-packet.c:310,5'
          Dst:             dp_packet_set_base
        - Src:             'lib/dp-packet.c:313,9'
          Dst:             dp_packet_data
        - Src:             'lib/dp-packet.c:314,9'
          Dst:             dp_packet_set_data
    - 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:    242
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_copy__
      functionSourceFile: '/src/openvswitch/lib/dp-packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 238
      functionLinenumberEnd: 248
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          85
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - dp_packet_base
        - dp_packet_headroom
        - dp_packet_size
        - dp_packet_tailroom
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.c:239,31'
          Dst:             dp_packet_base
        - Src:             'lib/dp-packet.c:240,27'
          Dst:             dp_packet_headroom
        - Src:             'lib/dp-packet.c:241,27'
          Dst:             dp_packet_tailroom
        - Src:             'lib/dp-packet.c:247,28'
          Dst:             dp_packet_size
    - functionName:    dp_packet_set_base
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 756
      functionLinenumberEnd: 758
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_steal_data
      functionSourceFile: '/src/openvswitch/lib/dp-packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 485
      functionLinenumberEnd: 500
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          87
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - dp_packet_base
        - dp_packet_data
        - dp_packet_set_base
        - dp_packet_set_data
        - dp_packet_size
        - ovs_ignore
        - xmemdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.c:487,5'
          Dst:             ovs_ignore
        - Src:             'lib/dp-packet.c:488,5'
          Dst:             ovs_ignore
        - Src:             'lib/dp-packet.c:490,38'
          Dst:             dp_packet_data
        - Src:             'lib/dp-packet.c:490,59'
          Dst:             dp_packet_base
        - Src:             'lib/dp-packet.c:491,13'
          Dst:             dp_packet_data
        - Src:             'lib/dp-packet.c:493,21'
          Dst:             dp_packet_data
        - Src:             'lib/dp-packet.c:493,40'
          Dst:             dp_packet_size
        - Src:             'lib/dp-packet.c:493,13'
          Dst:             xmemdup
        - Src:             'lib/dp-packet.c:495,18'
          Dst:             dp_packet_base
        - Src:             'lib/dp-packet.c:498,5'
          Dst:             dp_packet_set_base
        - Src:             'lib/dp-packet.c:499,5'
          Dst:             dp_packet_set_data
    - functionName:    dp_packet_push
      functionSourceFile: '/src/openvswitch/lib/dp-packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 474
      functionLinenumberEnd: 477
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_push_uninit
        - nullable_memcpy
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.c:475,17'
          Dst:             dp_packet_push_uninit
        - Src:             'lib/dp-packet.c:476,5'
          Dst:             nullable_memcpy
    - functionName:    nullable_memcpy
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 188
      functionLinenumberEnd: 192
      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:    dp_packet_push_zeros
      functionSourceFile: '/src/openvswitch/lib/dp-packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 463
      functionLinenumberEnd: 466
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_push_uninit
        - nullable_memset
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.c:464,17'
          Dst:             dp_packet_push_uninit
        - Src:             'lib/dp-packet.c:465,5'
          Dst:             nullable_memset
    - functionName:    nullable_memset
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 198
      functionLinenumberEnd: 202
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          27
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_reserve_with_tailroom
      functionSourceFile: '/src/openvswitch/lib/dp-packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 440
      functionLinenumberEnd: 444
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_data
        - dp_packet_prealloc_tailroom
        - dp_packet_set_data
        - dp_packet_size
        - ovs_ignore
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.c:441,17'
          Dst:             dp_packet_size
        - Src:             'lib/dp-packet.c:441,5'
          Dst:             ovs_ignore
        - Src:             'lib/dp-packet.c:442,5'
          Dst:             dp_packet_prealloc_tailroom
        - Src:             'lib/dp-packet.c:443,34'
          Dst:             dp_packet_data
        - Src:             'lib/dp-packet.c:443,5'
          Dst:             dp_packet_set_data
    - functionName:    dp_packet_prealloc_tailroom
      functionSourceFile: '/src/openvswitch/lib/dp-packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 323
      functionLinenumberEnd: 327
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          68
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - dp_packet_base
        - dp_packet_headroom
        - dp_packet_resize
        - dp_packet_tailroom
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.c:324,19'
          Dst:             dp_packet_base
        - Src:             'lib/dp-packet.c:324,49'
          Dst:             dp_packet_tailroom
        - Src:             'lib/dp-packet.c:325,29'
          Dst:             dp_packet_headroom
        - Src:             'lib/dp-packet.c:325,9'
          Dst:             dp_packet_resize
    - functionName:    dp_packet_put_hex
      functionSourceFile: '/src/openvswitch/lib/dp-packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 404
      functionLinenumberEnd: 420
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          65
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - dp_packet_put
        - dp_packet_size
        - hexits_value
        - strspn
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.c:405,27'
          Dst:             dp_packet_size
        - Src:             'lib/dp-packet.c:410,14'
          Dst:             strspn
        - Src:             'lib/dp-packet.c:411,16'
          Dst:             hexits_value
        - Src:             'lib/dp-packet.c:414,22'
          Dst:             dp_packet_size
        - Src:             'lib/dp-packet.c:419,9'
          Dst:             dp_packet_put
    - 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:    35
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_put
      functionSourceFile: '/src/openvswitch/lib/dp-packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 391
      functionLinenumberEnd: 394
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_put_uninit
        - nullable_memcpy
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.c:392,17'
          Dst:             dp_packet_put_uninit
        - Src:             'lib/dp-packet.c:393,5'
          Dst:             nullable_memcpy
    - functionName:    dp_packet_put_uninit
      functionSourceFile: '/src/openvswitch/lib/dp-packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 367
      functionLinenumberEnd: 372
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_prealloc_tailroom
        - dp_packet_set_size
        - dp_packet_size
        - dp_packet_tail
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.c:369,5'
          Dst:             dp_packet_prealloc_tailroom
        - Src:             'lib/dp-packet.c:370,9'
          Dst:             dp_packet_tail
        - Src:             'lib/dp-packet.c:371,27'
          Dst:             dp_packet_size
        - Src:             'lib/dp-packet.c:371,5'
          Dst:             dp_packet_set_size
    - functionName:    dp_packet_put_zeros
      functionSourceFile: '/src/openvswitch/lib/dp-packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 380
      functionLinenumberEnd: 383
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_put_uninit
        - nullable_memset
      functionUses:    18
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.c:381,17'
          Dst:             dp_packet_put_uninit
        - Src:             'lib/dp-packet.c:382,5'
          Dst:             nullable_memset
    - functionName:    dp_packet_shift
      functionSourceFile: '/src/openvswitch/lib/dp-packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 346
      functionLinenumberEnd: 360
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          90
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - dp_packet_data
        - dp_packet_headroom
        - dp_packet_set_data
        - dp_packet_size
        - dp_packet_tailroom
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.c:347,37'
          Dst:             dp_packet_tailroom
        - Src:             'lib/dp-packet.c:348,40'
          Dst:             dp_packet_headroom
        - Src:             'lib/dp-packet.c:347,5'
          Dst:             ovs_ignore
        - Src:             'lib/dp-packet.c:352,31'
          Dst:             dp_packet_data
        - Src:             'lib/dp-packet.c:355,9'
          Dst:             ovs_ignore
        - Src:             'lib/dp-packet.c:357,31'
          Dst:             dp_packet_size
        - Src:             'lib/dp-packet.c:358,9'
          Dst:             dp_packet_set_data
    - functionName:    dp_packet_clone_data
      functionSourceFile: '/src/openvswitch/lib/dp-packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 220
      functionLinenumberEnd: 221
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_clone_data_with_headroom
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.c:221,12'
          Dst:             dp_packet_clone_data_with_headroom
    - functionName:    dp_packet_clone_data_with_headroom
      functionSourceFile: '/src/openvswitch/lib/dp-packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 229
      functionLinenumberEnd: 232
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_new_with_headroom
        - dp_packet_put
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.c:230,27'
          Dst:             dp_packet_new_with_headroom
        - Src:             'lib/dp-packet.c:231,5'
          Dst:             dp_packet_put
    - functionName:    dp_packet_new_with_headroom
      functionSourceFile: '/src/openvswitch/lib/dp-packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 167
      functionLinenumberEnd: 170
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_new
        - dp_packet_reserve
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.c:168,27'
          Dst:             dp_packet_new
        - Src:             'lib/dp-packet.c:169,5'
          Dst:             dp_packet_reserve
    - functionName:    dp_packet_new
      functionSourceFile: '/src/openvswitch/lib/dp-packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 153
      functionLinenumberEnd: 160
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_init
        - xmalloc
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.c:157,27'
          Dst:             xmalloc
        - Src:             'lib/dp-packet.c:159,5'
          Dst:             dp_packet_init
    - functionName:    dp_packet_reserve
      functionSourceFile: '/src/openvswitch/lib/dp-packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 428
      functionLinenumberEnd: 432
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_data
        - dp_packet_prealloc_tailroom
        - dp_packet_set_data
        - dp_packet_size
        - ovs_ignore
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.c:429,17'
          Dst:             dp_packet_size
        - Src:             'lib/dp-packet.c:429,5'
          Dst:             ovs_ignore
        - Src:             'lib/dp-packet.c:430,5'
          Dst:             dp_packet_prealloc_tailroom
        - Src:             'lib/dp-packet.c:431,34'
          Dst:             dp_packet_data
        - Src:             'lib/dp-packet.c:431,5'
          Dst:             dp_packet_set_data
    - functionName:    dp_packet_init
      functionSourceFile: '/src/openvswitch/lib/dp-packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 130
      functionLinenumberEnd: 132
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_use
        - xmalloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.c:131,29'
          Dst:             xmalloc
        - Src:             'lib/dp-packet.c:131,5'
          Dst:             dp_packet_use
    - functionName:    dp_packet_use
      functionSourceFile: '/src/openvswitch/lib/dp-packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_use__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.c:65,5'
          Dst:             dp_packet_use__
    - functionName:    dp_packet_use__
      functionSourceFile: '/src/openvswitch/lib/dp-packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_init__
        - dp_packet_set_base
        - dp_packet_set_data
        - dp_packet_set_size
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.c:51,5'
          Dst:             dp_packet_set_base
        - Src:             'lib/dp-packet.c:52,5'
          Dst:             dp_packet_set_data
        - Src:             'lib/dp-packet.c:53,5'
          Dst:             dp_packet_set_size
        - Src:             'lib/dp-packet.c:55,5'
          Dst:             dp_packet_init__
    - functionName:    dp_packet_set_flow_mark
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1087
      functionLinenumberEnd: 1090
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_flow_mark_ptr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:1088,6'
          Dst:             dp_packet_flow_mark_ptr
    - functionName:    dp_packet_has_flow_mark
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1076
      functionLinenumberEnd: 1083
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_flow_mark_ptr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:1078,18'
          Dst:             dp_packet_flow_mark_ptr
    - functionName:    dp_packet_get_rss_hash
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1050
      functionLinenumberEnd: 1051
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_rss_ptr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:1051,13'
          Dst:             dp_packet_rss_ptr
    - functionName:    dp_packet_set_rss_hash
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1056
      functionLinenumberEnd: 1059
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_rss_ptr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:1057,6'
          Dst:             dp_packet_rss_ptr
    - functionName:    dp_packet_rss_valid
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1063
      functionLinenumberEnd: 1064
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_clone_with_headroom
      functionSourceFile: '/src/openvswitch/lib/dp-packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 188
      functionLinenumberEnd: 213
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          70
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - dp_packet_clone_data_with_headroom
        - dp_packet_data
        - dp_packet_get_rss_hash
        - dp_packet_get_tso_segsz
        - dp_packet_has_flow_mark
        - dp_packet_rss_valid
        - dp_packet_set_flow_mark
        - dp_packet_set_rss_hash
        - dp_packet_set_tso_segsz
        - dp_packet_size
        - ovs_ignore
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.c:189,27'
          Dst:             dp_packet_data
        - Src:             'lib/dp-packet.c:193,5'
          Dst:             ovs_ignore
        - Src:             'lib/dp-packet.c:196,53'
          Dst:             dp_packet_size
        - Src:             'lib/dp-packet.c:195,18'
          Dst:             dp_packet_clone_data_with_headroom
        - Src:             'lib/dp-packet.c:204,41'
          Dst:             dp_packet_get_tso_segsz
        - Src:             'lib/dp-packet.c:204,5'
          Dst:             dp_packet_set_tso_segsz
        - Src:             'lib/dp-packet.c:206,9'
          Dst:             dp_packet_rss_valid
        - Src:             'lib/dp-packet.c:207,44'
          Dst:             dp_packet_get_rss_hash
        - Src:             'lib/dp-packet.c:207,9'
          Dst:             dp_packet_set_rss_hash
        - Src:             'lib/dp-packet.c:209,9'
          Dst:             dp_packet_has_flow_mark
        - Src:             'lib/dp-packet.c:210,9'
          Dst:             dp_packet_set_flow_mark
    - functionName:    dp_packet_clone
      functionSourceFile: '/src/openvswitch/lib/dp-packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 178
      functionLinenumberEnd: 180
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_clone_with_headroom
        - ovs_ignore
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.c:179,5'
          Dst:             ovs_ignore
        - Src:             'lib/dp-packet.c:180,12'
          Dst:             dp_packet_clone_with_headroom
    - functionName:    free_afxdp_buf
      functionSourceFile: '/src/openvswitch/lib/netdev-afxdp.h'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 84
      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:    free_dpdk_buf
      functionSourceFile: '/src/openvswitch/lib/netdev-dpdk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 76
      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:    dp_packet_uninit
      functionSourceFile: '/src/openvswitch/lib/dp-packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 137
      functionLinenumberEnd: 147
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          67
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - dp_packet_base
        - free_afxdp_buf
        - free_dpdk_buf
      functionUses:    14
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.c:140,18'
          Dst:             dp_packet_base
        - Src:             'lib/dp-packet.c:142,13'
          Dst:             free_dpdk_buf
        - Src:             'lib/dp-packet.c:144,13'
          Dst:             free_afxdp_buf
    - functionName:    dp_packet_init_dpdk
      functionSourceFile: '/src/openvswitch/lib/dp-packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 122
      functionLinenumberEnd: 124
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_use_const
      functionSourceFile: '/src/openvswitch/lib/dp-packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 113
      functionLinenumberEnd: 116
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_set_size
        - dp_packet_use__
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.c:114,5'
          Dst:             dp_packet_use__
        - Src:             'lib/dp-packet.c:115,5'
          Dst:             dp_packet_set_size
    - functionName:    dp_packet_use_stub
      functionSourceFile: '/src/openvswitch/lib/dp-packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 100
      functionLinenumberEnd: 102
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_use__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.c:101,5'
          Dst:             dp_packet_use__
    - functionName:    ds_clone
      functionSourceFile: '/src/openvswitch/lib/dynamic-string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 516
      functionLinenumberEnd: 525
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          62
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_init
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dynamic-string.c:518,9'
          Dst:             ds_init
        - Src:             'lib/dynamic-string.c:523,19'
          Dst:             xmalloc
    - functionName:    ds_init
      functionSourceFile: '/src/openvswitch/lib/dynamic-string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 34
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    50
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ds_chomp
      functionSourceFile: '/src/openvswitch/lib/dynamic-string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 505
      functionLinenumberEnd: 512
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          57
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    44
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ds_last
      functionSourceFile: '/src/openvswitch/lib/dynamic-string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 499
      functionLinenumberEnd: 500
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          31
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ds_put_sparse_hex_dump
      functionSourceFile: '/src/openvswitch/lib/dynamic-string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 493
      functionLinenumberEnd: 495
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_hex_dump__
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dynamic-string.c:494,5'
          Dst:             ds_put_hex_dump__
    - functionName:    ds_put_hex_dump__
      functionSourceFile: '/src/openvswitch/lib/dynamic-string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 424
      functionLinenumberEnd: 475
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
        - bool
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         48
      ICount:          269
      EdgeCount:       61
      CyclomaticComplexity: 15
      functionsReached:
        - ds_chomp
        - ds_put_char
        - ds_put_format
        - is_all_zeros
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dynamic-string.c:439,32'
          Dst:             is_all_zeros
        - Src:             'lib/dynamic-string.c:444,9'
          Dst:             ds_put_format
        - Src:             'lib/dynamic-string.c:447,13'
          Dst:             ds_put_format
        - Src:             'lib/dynamic-string.c:450,13'
          Dst:             ds_put_format
        - Src:             'lib/dynamic-string.c:455,17'
          Dst:             ds_put_format
        - Src:             'lib/dynamic-string.c:456,13'
          Dst:             ds_put_format
        - Src:             'lib/dynamic-string.c:458,17'
          Dst:             ds_put_format
        - Src:             'lib/dynamic-string.c:461,17'
          Dst:             ds_put_char
        - Src:             'lib/dynamic-string.c:464,17'
          Dst:             ds_put_format
        - Src:             'lib/dynamic-string.c:465,13'
          Dst:             ds_put_format
        - Src:             'lib/dynamic-string.c:467,13'
          Dst:             ds_chomp
        - Src:             'lib/dynamic-string.c:469,9'
          Dst:             ds_put_format
    - functionName:    ds_put_format
      functionSourceFile: '/src/openvswitch/lib/dynamic-string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 139
      functionLinenumberEnd: 145
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_format_valist
      functionUses:    893
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dynamic-string.c:143,5'
          Dst:             ds_put_format_valist
    - functionName:    ds_put_char
      functionSourceFile: '/src/openvswitch/./include/openvswitch/dynamic-string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_char__
      functionUses:    14
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/dynamic-string.h:99,9'
          Dst:             ds_put_char__
    - functionName:    ds_put_char__
      functionSourceFile: '/src/openvswitch/lib/dynamic-string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 84
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_uninit
      functionUses:    39
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dynamic-string.c:83,6'
          Dst:             ds_put_uninit
    - functionName:    ds_put_uninit
      functionSourceFile: '/src/openvswitch/lib/dynamic-string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 73
      functionLinenumberEnd: 77
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          45
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_reserve
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dynamic-string.c:74,5'
          Dst:             ds_reserve
    - functionName:    ds_reserve
      functionSourceFile: '/src/openvswitch/lib/dynamic-string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          97
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - xrealloc
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dynamic-string.c:64,22'
          Dst:             xrealloc
    - functionName:    ds_put_format_valist
      functionSourceFile: '/src/openvswitch/lib/dynamic-string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 176
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          142
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - ds_reserve
        - ovs_ignore
        - vsnprintf
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dynamic-string.c:156,14'
          Dst:             vsnprintf
        - Src:             'lib/dynamic-string.c:165,9'
          Dst:             ds_reserve
        - Src:             'lib/dynamic-string.c:169,18'
          Dst:             vsnprintf
        - Src:             'lib/dynamic-string.c:173,9'
          Dst:             ovs_ignore
    - 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:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ds_put_hex_dump
      functionSourceFile: '/src/openvswitch/lib/dynamic-string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 484
      functionLinenumberEnd: 486
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_hex_dump__
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dynamic-string.c:485,5'
          Dst:             ds_put_hex_dump__
    - functionName:    ds_put_hex_with_delimiter
      functionSourceFile: '/src/openvswitch/lib/dynamic-string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 409
      functionLinenumberEnd: 419
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          70
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - ds_put_format
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dynamic-string.c:415,13'
          Dst:             ds_put_format
        - Src:             'lib/dynamic-string.c:417,9'
          Dst:             ds_put_format
    - functionName:    ds_put_hex
      functionSourceFile: '/src/openvswitch/lib/dynamic-string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 385
      functionLinenumberEnd: 404
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          100
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - ds_put_char
        - ds_put_format
      functionUses:    21
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dynamic-string.c:394,17'
          Dst:             ds_put_format
        - Src:             'lib/dynamic-string.c:396,17'
          Dst:             ds_put_format
        - Src:             'lib/dynamic-string.c:402,9'
          Dst:             ds_put_char
    - functionName:    ds_swap
      functionSourceFile: '/src/openvswitch/lib/dynamic-string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 377
      functionLinenumberEnd: 381
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ds_destroy
      functionSourceFile: '/src/openvswitch/lib/dynamic-string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 370
      functionLinenumberEnd: 372
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    104
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ds_steal_cstr
      functionSourceFile: '/src/openvswitch/lib/dynamic-string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 362
      functionLinenumberEnd: 365
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_cstr
        - ds_init
      functionUses:    23
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dynamic-string.c:363,15'
          Dst:             ds_cstr
        - Src:             'lib/dynamic-string.c:364,5'
          Dst:             ds_init
    - functionName:    ds_cstr
      functionSourceFile: '/src/openvswitch/lib/dynamic-string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 343
      functionLinenumberEnd: 348
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_reserve
      functionUses:    116
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dynamic-string.c:345,9'
          Dst:             ds_reserve
    - functionName:    ds_cstr_ro
      functionSourceFile: '/src/openvswitch/lib/dynamic-string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 353
      functionLinenumberEnd: 354
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_cstr
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dynamic-string.c:354,12'
          Dst:             ds_cstr
    - functionName:    ds_get_test_line
      functionSourceFile: '/src/openvswitch/lib/dynamic-string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 312
      functionLinenumberEnd: 339
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          83
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - ds_cstr
        - ds_get_line
        - putchar
        - puts
        - strchr
        - strspn
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dynamic-string.c:317,18'
          Dst:             ds_get_line
        - Src:             'lib/dynamic-string.c:322,13'
          Dst:             ds_cstr
        - Src:             'lib/dynamic-string.c:324,13'
          Dst:             puts
        - Src:             'lib/dynamic-string.c:328,19'
          Dst:             strchr
        - Src:             'lib/dynamic-string.c:332,15'
          Dst:             strspn
        - Src:             'lib/dynamic-string.c:333,13'
          Dst:             putchar
    - functionName:    ds_get_line
      functionSourceFile: '/src/openvswitch/lib/dynamic-string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 246
      functionLinenumberEnd: 258
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          59
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - ds_clear
        - ds_put_char
        - getc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dynamic-string.c:247,5'
          Dst:             ds_clear
        - Src:             'lib/dynamic-string.c:249,17'
          Dst:             getc
        - Src:             'lib/dynamic-string.c:255,13'
          Dst:             ds_put_char
    - functionName:    puts
      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:    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:    33
      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:    ds_clear
      functionSourceFile: '/src/openvswitch/lib/dynamic-string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40
      functionLinenumberEnd: 42
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    19
      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:    ds_get_preprocessed_line
      functionSourceFile: '/src/openvswitch/lib/dynamic-string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 270
      functionLinenumberEnd: 291
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          85
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - ds_cstr
        - ds_get_line
        - strchr
        - strspn
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dynamic-string.c:271,13'
          Dst:             ds_get_line
        - Src:             'lib/dynamic-string.c:272,22'
          Dst:             ds_cstr
        - Src:             'lib/dynamic-string.c:280,19'
          Dst:             strchr
        - Src:             'lib/dynamic-string.c:286,18'
          Dst:             strspn
    - functionName:    xastrftime_msec
      functionSourceFile: '/src/openvswitch/lib/dynamic-string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 236
      functionLinenumberEnd: 241
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_init
        - ds_put_strftime_msec
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dynamic-string.c:239,5'
          Dst:             ds_init
        - Src:             'lib/dynamic-string.c:240,5'
          Dst:             ds_put_strftime_msec
    - functionName:    ds_put_strftime_msec
      functionSourceFile: '/src/openvswitch/lib/dynamic-string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 211
      functionLinenumberEnd: 228
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          99
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - ds_reserve
        - gmtime_msec
        - localtime_msec
        - strftime_msec
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dynamic-string.c:214,9'
          Dst:             gmtime_msec
        - Src:             'lib/dynamic-string.c:216,9'
          Dst:             localtime_msec
        - Src:             'lib/dynamic-string.c:219,5'
          Dst:             ds_reserve
        - Src:             'lib/dynamic-string.c:223,23'
          Dst:             strftime_msec
        - Src:             'lib/dynamic-string.c:228,9'
          Dst:             ds_reserve
    - functionName:    ds_put_uuid
      functionSourceFile: '/src/openvswitch/lib/dynamic-string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 194
      functionLinenumberEnd: 203
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_uninit
        - snprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dynamic-string.c:201,14'
          Dst:             ds_put_uninit
        - Src:             'lib/dynamic-string.c:201,5'
          Dst:             snprintf
    - 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:    28
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ds_put_printable
      functionSourceFile: '/src/openvswitch/lib/dynamic-string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 180
      functionLinenumberEnd: 190
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          89
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - ds_put_char
        - ds_put_format
        - ds_reserve
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dynamic-string.c:181,5'
          Dst:             ds_reserve
        - Src:             'lib/dynamic-string.c:185,13'
          Dst:             ds_put_format
        - Src:             'lib/dynamic-string.c:187,13'
          Dst:             ds_put_char
    - functionName:    ds_put_and_free_cstr
      functionSourceFile: '/src/openvswitch/lib/dynamic-string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 132
      functionLinenumberEnd: 135
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_cstr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dynamic-string.c:133,5'
          Dst:             ds_put_cstr
    - functionName:    ds_put_cstr
      functionSourceFile: '/src/openvswitch/lib/dynamic-string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 125
      functionLinenumberEnd: 128
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_uninit
        - strlen
      functionUses:    525
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dynamic-string.c:126,20'
          Dst:             strlen
        - Src:             'lib/dynamic-string.c:127,12'
          Dst:             ds_put_uninit
    - 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:    95
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ds_put_buffer
      functionSourceFile: '/src/openvswitch/lib/dynamic-string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 119
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_uninit
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dynamic-string.c:120,12'
          Dst:             ds_put_uninit
    - functionName:    ds_put_char_multiple
      functionSourceFile: '/src/openvswitch/lib/dynamic-string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 113
      functionLinenumberEnd: 115
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - char
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_uninit
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dynamic-string.c:114,12'
          Dst:             ds_put_uninit
    - functionName:    ds_put_utf8
      functionSourceFile: '/src/openvswitch/lib/dynamic-string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          117
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - ds_put_char
        - ds_put_utf8
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dynamic-string.c:91,9'
          Dst:             ds_put_char
        - Src:             'lib/dynamic-string.c:93,9'
          Dst:             ds_put_char
        - Src:             'lib/dynamic-string.c:94,9'
          Dst:             ds_put_char
        - Src:             'lib/dynamic-string.c:96,9'
          Dst:             ds_put_char
        - Src:             'lib/dynamic-string.c:97,9'
          Dst:             ds_put_char
        - Src:             'lib/dynamic-string.c:98,9'
          Dst:             ds_put_char
        - Src:             'lib/dynamic-string.c:100,9'
          Dst:             ds_put_char
        - Src:             'lib/dynamic-string.c:101,9'
          Dst:             ds_put_char
        - Src:             'lib/dynamic-string.c:102,9'
          Dst:             ds_put_char
        - Src:             'lib/dynamic-string.c:103,9'
          Dst:             ds_put_char
        - Src:             'lib/dynamic-string.c:107,9'
          Dst:             ds_put_utf8
    - functionName:    ds_truncate
      functionSourceFile: '/src/openvswitch/lib/dynamic-string.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48
      functionLinenumberEnd: 53
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          33
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    init_this_module_flow
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 49
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:49,1'
          Dst:             vlog_insert_module
    - functionName:    flow_extract_init_coverage
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51
      functionLinenumberEnd: 51
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:51,1'
          Dst:             coverage_counter_register
    - functionName:    miniflow_extract_ipv4_pkt_len_error_init_coverage
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:52,1'
          Dst:             coverage_counter_register
    - functionName:    miniflow_extract_ipv4_pkt_too_short_init_coverage
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 53
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:53,1'
          Dst:             coverage_counter_register
    - functionName:    miniflow_extract_ipv6_pkt_len_error_init_coverage
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:54,1'
          Dst:             coverage_counter_register
    - functionName:    miniflow_extract_ipv6_pkt_too_short_init_coverage
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:55,1'
          Dst:             coverage_counter_register
    - functionName:    miniflow_malloc_init_coverage
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:56,1'
          Dst:             coverage_counter_register
    - functionName:    miniflow_malloc_count
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_miniflow_malloc_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:56,1'
          Dst:             counter_miniflow_malloc_get
    - functionName:    counter_miniflow_malloc_get
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_miniflow_malloc_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:56,1'
          Dst:             counter_miniflow_malloc_get_unsafe
    - functionName:    counter_miniflow_malloc_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    miniflow_extract_ipv6_pkt_too_short_count
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_miniflow_extract_ipv6_pkt_too_short_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:55,1'
          Dst:             counter_miniflow_extract_ipv6_pkt_too_short_get
    - functionName:    counter_miniflow_extract_ipv6_pkt_too_short_get
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_miniflow_extract_ipv6_pkt_too_short_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:55,1'
          Dst:             counter_miniflow_extract_ipv6_pkt_too_short_get_unsafe
    - functionName:    counter_miniflow_extract_ipv6_pkt_too_short_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    miniflow_extract_ipv6_pkt_len_error_count
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_miniflow_extract_ipv6_pkt_len_error_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:54,1'
          Dst:             counter_miniflow_extract_ipv6_pkt_len_error_get
    - functionName:    counter_miniflow_extract_ipv6_pkt_len_error_get
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_miniflow_extract_ipv6_pkt_len_error_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:54,1'
          Dst:             counter_miniflow_extract_ipv6_pkt_len_error_get_unsafe
    - functionName:    counter_miniflow_extract_ipv6_pkt_len_error_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    miniflow_extract_ipv4_pkt_too_short_count
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 53
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_miniflow_extract_ipv4_pkt_too_short_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:53,1'
          Dst:             counter_miniflow_extract_ipv4_pkt_too_short_get
    - functionName:    counter_miniflow_extract_ipv4_pkt_too_short_get
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 53
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_miniflow_extract_ipv4_pkt_too_short_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:53,1'
          Dst:             counter_miniflow_extract_ipv4_pkt_too_short_get_unsafe
    - functionName:    counter_miniflow_extract_ipv4_pkt_too_short_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 53
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    miniflow_extract_ipv4_pkt_len_error_count
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_miniflow_extract_ipv4_pkt_len_error_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:52,1'
          Dst:             counter_miniflow_extract_ipv4_pkt_len_error_get
    - functionName:    counter_miniflow_extract_ipv4_pkt_len_error_get
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_miniflow_extract_ipv4_pkt_len_error_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:52,1'
          Dst:             counter_miniflow_extract_ipv4_pkt_len_error_get_unsafe
    - functionName:    counter_miniflow_extract_ipv4_pkt_len_error_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    flow_extract_count
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51
      functionLinenumberEnd: 51
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_flow_extract_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:51,1'
          Dst:             counter_flow_extract_get
    - functionName:    counter_flow_extract_get
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51
      functionLinenumberEnd: 51
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_flow_extract_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:51,1'
          Dst:             counter_flow_extract_get_unsafe
    - functionName:    counter_flow_extract_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51
      functionLinenumberEnd: 51
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    in6_addr_mapped_ipv4
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1215
      functionLinenumberEnd: 1220
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          20
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    flow_union_with_miniflow_subset
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 919
      functionLinenumberEnd: 932
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          105
      EdgeCount:       21
      CyclomaticComplexity: 6
      functionsReached:
        - miniflow_get_values
        - raw_ctz
        - zero_rightmost_1bit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:921,25'
          Dst:             miniflow_get_values
        - Src:             'lib/flow.h:927,9'
          Dst:             raw_ctz
        - Src:             'lib/flow.h:927,9'
          Dst:             zero_rightmost_1bit
    - functionName:    miniflow_get_values
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 535
      functionLinenumberEnd: 536
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    raw_ctz
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 261
      functionLinenumberEnd: 267
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          36
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    zero_rightmost_1bit
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 390
      functionLinenumberEnd: 391
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    flowmap_n_1bits
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 462
      functionLinenumberEnd: 469
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          45
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - count_1bits
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:467,20'
          Dst:             count_1bits
    - functionName:    count_1bits
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 332
      functionLinenumberEnd: 347
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          37
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    flow_compose_l7
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3112
      functionLinenumberEnd: 3123
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          68
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - dp_packet_put
        - dp_packet_put_uninit
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:3115,13'
          Dst:             dp_packet_put
        - Src:             'lib/flow.c:3117,32'
          Dst:             dp_packet_put_uninit
    - functionName:    dp_packet_l4_checksum_set_good
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1310
      functionLinenumberEnd: 1313
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_l2_pad_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 432
      functionLinenumberEnd: 433
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_inner_ip_checksum_set_good
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1198
      functionLinenumberEnd: 1201
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_l3_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 491
      functionLinenumberEnd: 494
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_l2_pad_size
        - dp_packet_l3
        - dp_packet_tail
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:493,25'
          Dst:             dp_packet_tail
        - Src:             'lib/dp-packet.h:493,59'
          Dst:             dp_packet_l3
        - Src:             'lib/dp-packet.h:494,11'
          Dst:             dp_packet_l2_pad_size
    - functionName:    dp_packet_tail
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 326
      functionLinenumberEnd: 327
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_data
        - dp_packet_size
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:327,21'
          Dst:             dp_packet_data
        - Src:             'lib/dp-packet.h:327,41'
          Dst:             dp_packet_size
    - functionName:    dp_packet_l3
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 461
      functionLinenumberEnd: 463
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_data
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:463,23'
          Dst:             dp_packet_data
    - functionName:    dp_packet_data
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 845
      functionLinenumberEnd: 847
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __packet_data
        - dp_packet_base
      functionUses:    14
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:846,12'
          Dst:             __packet_data
        - Src:             'lib/dp-packet.h:847,23'
          Dst:             dp_packet_base
        - Src:             'lib/dp-packet.h:847,43'
          Dst:             __packet_data
    - functionName:    __packet_data
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 774
      functionLinenumberEnd: 775
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_base
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 750
      functionLinenumberEnd: 751
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 762
      functionLinenumberEnd: 763
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    11
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_inner_l3_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 519
      functionLinenumberEnd: 523
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_inner_l3
        - dp_packet_l2_pad_size
        - dp_packet_tail
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:521,29'
          Dst:             dp_packet_tail
        - Src:             'lib/dp-packet.h:522,29'
          Dst:             dp_packet_inner_l3
        - Src:             'lib/dp-packet.h:523,14'
          Dst:             dp_packet_l2_pad_size
    - functionName:    dp_packet_inner_l3
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 511
      functionLinenumberEnd: 513
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_data
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:513,23'
          Dst:             dp_packet_data
    - functionName:    mhash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_rot
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 32
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhash_add__
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hash_rot
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:71,12'
          Dst:             hash_rot
    - functionName:    mhash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_rot
        - mhash_add__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:78,12'
          Dst:             mhash_add__
        - Src:             'lib/hash.h:79,12'
          Dst:             hash_rot
    - functionName:    miniflow_values_get__
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 670
      functionLinenumberEnd: 671
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - count_1bits
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:671,21'
          Dst:             count_1bits
    - functionName:    flow_compare_3way
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 178
      functionLinenumberEnd: 179
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:179,12'
          Dst:             memcmp
    - 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:    53
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_add_words64
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 437
      functionLinenumberEnd: 441
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          44
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - hash_add64
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:439,16'
          Dst:             hash_add64
    - functionName:    hash_add64
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 113
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_add
      functionUses:    13
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:114,21'
          Dst:             hash_add
        - Src:             'lib/hash.h:114,12'
          Dst:             hash_add
    - functionName:    hash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 108
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_add
      functionUses:    28
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:109,12'
          Dst:             mhash_add
    - functionName:    hash_words64_inline
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 135
      functionLinenumberEnd: 136
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_add_words64
        - hash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:136,24'
          Dst:             hash_add_words64
        - Src:             'lib/hash.h:136,12'
          Dst:             hash_finish
    - functionName:    hash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_finish
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:119,12'
          Dst:             mhash_finish
    - functionName:    hash_words64
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 367
      functionLinenumberEnd: 373
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hash_words64__
        - hash_words64_inline
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:369,16'
          Dst:             hash_words64_inline
        - Src:             'lib/hash.h:371,16'
          Dst:             hash_words64__
    - functionName:    hash_bytes64
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 398
      functionLinenumberEnd: 399
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_words64
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:399,12'
          Dst:             hash_words64
    - functionName:    get_dl_type
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1036
      functionLinenumberEnd: 1044
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          53
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - htonl
        - htons
        - pt_ns
        - pt_ns_type_be
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:1037,30'
          Dst:             htonl
        - Src:             'lib/flow.h:1039,16'
          Dst:             pt_ns
        - Src:             'lib/flow.h:1040,16'
          Dst:             pt_ns_type_be
        - Src:             'lib/flow.h:1042,16'
          Dst:             htons
    - functionName:    pt_ns
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1570
      functionLinenumberEnd: 1571
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohl
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:1571,12'
          Dst:             ntohl
    - functionName:    pt_ns_type_be
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1577
      functionLinenumberEnd: 1578
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - be32_to_be16
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:1578,12'
          Dst:             be32_to_be16
    - 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:    1025
      BranchProfiles:  []
      Callsites:       []
    - functionName:    be32_to_be16
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 135
      functionLinenumberEnd: 135
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - 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:    484
      BranchProfiles:  []
      Callsites:       []
    - functionName:    is_icmpv6
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1107
      functionLinenumberEnd: 1115
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          53
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - get_dl_type
        - htons
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:1108,9'
          Dst:             get_dl_type
        - Src:             'lib/flow.h:1108,30'
          Dst:             htons
    - functionName:    ipv6_addr_equals
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1184
      functionLinenumberEnd: 1186
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          80
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    eth_addr_is_zero
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 246
      functionLinenumberEnd: 247
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          25
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_rss_ptr
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 645
      functionLinenumberEnd: 646
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_set_rss_hash
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1056
      functionLinenumberEnd: 1059
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_rss_ptr
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:1057,6'
          Dst:             dp_packet_rss_ptr
    - functionName:    dp_packet_rss_valid
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1063
      functionLinenumberEnd: 1064
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    miniflow_extract_ipv6_pkt_len_error_add
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_miniflow_extract_ipv6_pkt_len_error_get
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:54,1'
          Dst:             counter_miniflow_extract_ipv6_pkt_len_error_get
    - functionName:    miniflow_extract_ipv6_pkt_too_short_add
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_miniflow_extract_ipv6_pkt_too_short_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:55,1'
          Dst:             counter_miniflow_extract_ipv6_pkt_too_short_get
    - functionName:    miniflow_extract_ipv4_pkt_len_error_add
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_miniflow_extract_ipv4_pkt_len_error_get
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:52,1'
          Dst:             counter_miniflow_extract_ipv4_pkt_len_error_get
    - functionName:    miniflow_extract_ipv4_pkt_too_short_add
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 53
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_miniflow_extract_ipv4_pkt_too_short_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:53,1'
          Dst:             counter_miniflow_extract_ipv4_pkt_too_short_get
    - functionName:    eth_type_vlan
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 429
      functionLinenumberEnd: 431
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htons
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:430,24'
          Dst:             htons
        - Src:             'lib/packets.h:431,21'
          Dst:             htons
    - functionName:    nsh_16aligned_be32
      functionSourceFile: '/src/openvswitch/./include/openvswitch/nsh.h'
      linkageType:     InternalLinkage
      functionLinenumber: 311
      functionLinenumberEnd: 315
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    in6_addr_set_mapped_ipv4
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1225
      functionLinenumberEnd: 1227
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - in6_addr_mapped_ipv4
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:1226,12'
          Dst:             in6_addr_mapped_ipv4
    - functionName:    flow_get_tunnel_netdev
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3721
      functionLinenumberEnd: 3739
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          64
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - in6_addr_set_mapped_ipv4
        - ipv6_addr_is_set
        - netdev_from_name
        - ovs_router_lookup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:3727,9'
          Dst:             in6_addr_set_mapped_ipv4
        - Src:             'lib/flow.c:3728,16'
          Dst:             ipv6_addr_is_set
        - Src:             'lib/flow.c:3734,10'
          Dst:             ovs_router_lookup
        - Src:             'lib/flow.c:3738,12'
          Dst:             netdev_from_name
    - functionName:    ipv6_addr_is_set
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1205
      functionLinenumberEnd: 1206
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ipv6_addr_equals
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:1206,13'
          Dst:             ipv6_addr_equals
    - functionName:    flow_limit_vlans
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3711
      functionLinenumberEnd: 3717
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          31
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    minimask_has_extra
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3691
      functionLinenumberEnd: 3707
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          75
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - flowmap_is_set
        - flowmap_next_index
        - miniflow_get__
        - miniflow_get_values
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:3692,26'
          Dst:             miniflow_get_values
        - Src:             'lib/flow.c:3695,5'
          Dst:             flowmap_next_index
        - Src:             'lib/flow.c:3700,14'
          Dst:             flowmap_is_set
        - Src:             'lib/flow.c:3701,19'
          Dst:             miniflow_get__
    - functionName:    flowmap_next_index
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 479
      functionLinenumberEnd: 491
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          69
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - raw_ctz
        - zero_rightmost_1bit
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:483,45'
          Dst:             raw_ctz
        - Src:             'lib/flow.h:484,20'
          Dst:             zero_rightmost_1bit
    - functionName:    flowmap_is_set
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 355
      functionLinenumberEnd: 356
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          20
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    miniflow_get__
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 678
      functionLinenumberEnd: 686
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - count_1bits
        - miniflow_get_values
        - miniflow_values_get__
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:679,30'
          Dst:             miniflow_get_values
        - Src:             'lib/flow.h:684,19'
          Dst:             count_1bits
        - Src:             'lib/flow.h:686,12'
          Dst:             miniflow_values_get__
    - functionName:    minimask_equal
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3669
      functionLinenumberEnd: 3684
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - memcmp
        - miniflow_n_values
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:3682,14'
          Dst:             memcmp
        - Src:             'lib/flow.c:3684,24'
          Dst:             miniflow_n_values
        - Src:             'lib/flow.c:3683,17'
          Dst:             memcmp
    - functionName:    miniflow_n_values
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 568
      functionLinenumberEnd: 569
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - flowmap_n_1bits
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:569,12'
          Dst:             flowmap_n_1bits
    - functionName:    minimask_expand
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3660
      functionLinenumberEnd: 3662
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - miniflow_expand
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:3661,5'
          Dst:             miniflow_expand
    - functionName:    miniflow_expand
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3547
      functionLinenumberEnd: 3550
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - flow_union_with_miniflow
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:3549,5'
          Dst:             flow_union_with_miniflow
    - functionName:    flow_union_with_miniflow
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 938
      functionLinenumberEnd: 940
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - flow_union_with_miniflow_subset
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:939,5'
          Dst:             flow_union_with_miniflow_subset
    - functionName:    flowmap_and
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 437
      functionLinenumberEnd: 444
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         5
      ICount:          48
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    minimask_combine
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3637
      functionLinenumberEnd: 3655
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          101
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - flowmap_and
        - flowmap_init
        - flowmap_next_index
        - flowmap_set
        - miniflow_get__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:3644,5'
          Dst:             flowmap_init
        - Src:             'lib/flow.c:3646,5'
          Dst:             flowmap_and
        - Src:             'lib/flow.c:3646,5'
          Dst:             flowmap_next_index
        - Src:             'lib/flow.c:3648,26'
          Dst:             miniflow_get__
        - Src:             'lib/flow.c:3648,52'
          Dst:             miniflow_get__
        - Src:             'lib/flow.c:3651,13'
          Dst:             flowmap_set
    - functionName:    flowmap_init
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 343
      functionLinenumberEnd: 345
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    flowmap_set
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 385
      functionLinenumberEnd: 399
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          69
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    107
      BranchProfiles:  []
      Callsites:       []
    - functionName:    minimask_create
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3624
      functionLinenumberEnd: 3625
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - miniflow_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:3625,31'
          Dst:             miniflow_create
    - functionName:    miniflow_create
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3522
      functionLinenumberEnd: 3530
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - miniflow_alloc
        - miniflow_init
        - miniflow_map_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:3526,5'
          Dst:             miniflow_map_init
        - Src:             'lib/flow.c:3528,5'
          Dst:             miniflow_alloc
        - Src:             'lib/flow.c:3529,5'
          Dst:             miniflow_init
    - functionName:    miniflow_map_init
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3486
      functionLinenumberEnd: 3494
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          54
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - flow_u64_value
        - flowmap_init
        - flowmap_set
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:3488,5'
          Dst:             flowmap_init
        - Src:             'lib/flow.c:3490,13'
          Dst:             flow_u64_value
        - Src:             'lib/flow.c:3491,13'
          Dst:             flowmap_set
    - functionName:    miniflow_alloc
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3501
      functionLinenumberEnd: 3515
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          68
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - miniflow_malloc_add
        - miniflow_n_values
        - xmalloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:3502,23'
          Dst:             miniflow_n_values
        - Src:             'lib/flow.c:3504,28'
          Dst:             xmalloc
        - Src:             'lib/flow.c:3507,5'
          Dst:             miniflow_malloc_add
    - functionName:    miniflow_init
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3474
      functionLinenumberEnd: 3481
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - flow_u64_value
        - flowmap_next_index
        - miniflow_values
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:3475,25'
          Dst:             miniflow_values
        - Src:             'lib/flow.c:3478,5'
          Dst:             flowmap_next_index
        - Src:             'lib/flow.c:3479,22'
          Dst:             flow_u64_value
    - functionName:    miniflow_values
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 530
      functionLinenumberEnd: 531
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    flow_u64_value
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 557
      functionLinenumberEnd: 558
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    miniflow_malloc_add
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_miniflow_malloc_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:56,1'
          Dst:             counter_miniflow_malloc_get
    - functionName:    minimask_init
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3616
      functionLinenumberEnd: 3618
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - miniflow_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:3617,5'
          Dst:             miniflow_init
    - functionName:    miniflow_equal_flow_in_minimask
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3600
      functionLinenumberEnd: 3611
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          65
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - flow_u64_value
        - flowmap_next_index
        - miniflow_get
        - miniflow_get_values
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:3601,25'
          Dst:             miniflow_get_values
        - Src:             'lib/flow.c:3604,5'
          Dst:             flowmap_next_index
        - Src:             'lib/flow.c:3605,14'
          Dst:             miniflow_get
        - Src:             'lib/flow.c:3605,37'
          Dst:             flow_u64_value
    - functionName:    miniflow_get
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 800
      functionLinenumberEnd: 801
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - flowmap_is_set
        - miniflow_get__
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:801,12'
          Dst:             flowmap_is_set
        - Src:             'lib/flow.h:801,46'
          Dst:             miniflow_get__
    - functionName:    miniflow_equal_in_minimask
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3582
      functionLinenumberEnd: 3593
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          66
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - flowmap_next_index
        - miniflow_get
        - miniflow_get_values
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:3583,25'
          Dst:             miniflow_get_values
        - Src:             'lib/flow.c:3586,5'
          Dst:             flowmap_next_index
        - Src:             'lib/flow.c:3587,14'
          Dst:             miniflow_get
        - Src:             'lib/flow.c:3587,37'
          Dst:             miniflow_get
    - functionName:    flowmap_or
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 424
      functionLinenumberEnd: 431
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         5
      ICount:          48
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    flowmap_equal
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 349
      functionLinenumberEnd: 350
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:350,13'
          Dst:             memcmp
    - functionName:    miniflow_equal
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3555
      functionLinenumberEnd: 3575
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          140
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - flowmap_equal
        - flowmap_is_set
        - flowmap_next_index
        - flowmap_or
        - memcmp
        - miniflow_get_values
        - miniflow_n_values
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:3556,26'
          Dst:             miniflow_get_values
        - Src:             'lib/flow.c:3557,26'
          Dst:             miniflow_get_values
        - Src:             'lib/flow.c:3561,9'
          Dst:             flowmap_equal
        - Src:             'lib/flow.c:3562,32'
          Dst:             miniflow_n_values
        - Src:             'lib/flow.c:3562,17'
          Dst:             memcmp
        - Src:             'lib/flow.c:3566,9'
          Dst:             flowmap_or
        - Src:             'lib/flow.c:3566,9'
          Dst:             flowmap_next_index
        - Src:             'lib/flow.c:3567,18'
          Dst:             flowmap_is_set
        - Src:             'lib/flow.c:3568,21'
          Dst:             flowmap_is_set
    - functionName:    miniflow_clone
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3538
      functionLinenumberEnd: 3542
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - miniflow_get_values
        - miniflow_values
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:3540,12'
          Dst:             miniflow_values
        - Src:             'lib/flow.c:3540,34'
          Dst:             miniflow_get_values
    - functionName:    nsh_set_flags_ttl_len
      functionSourceFile: '/src/openvswitch/./include/openvswitch/nsh.h'
      linkageType:     InternalLinkage
      functionLinenumber: 383
      functionLinenumberEnd: 391
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - char
        - char
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          49
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htons
        - ntohs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/nsh.h:384,19'
          Dst:             ntohs
        - Src:             './include/openvswitch/nsh.h:386,11'
          Dst:             htons
    - 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:    573
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_set_l3
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 469
      functionLinenumberEnd: 471
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_data
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:470,45'
          Dst:             dp_packet_data
    - functionName:    dp_packet_ip_checksum_set_good
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1142
      functionLinenumberEnd: 1145
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_ip_checksum_set_bad
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1156
      functionLinenumberEnd: 1159
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    flow_compose_l4
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3128
      functionLinenumberEnd: 3207
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         63
      ICount:          496
      EdgeCount:       83
      CyclomaticComplexity: 22
      functionsReached:
        - dp_packet_put_zeros
        - dp_packet_size
        - eth_addr_is_zero
        - flow_compose_l7
        - htons
        - ntohs
        - put_16aligned_be32
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:3129,23'
          Dst:             dp_packet_size
        - Src:             'lib/flow.c:3134,38'
          Dst:             dp_packet_put_zeros
        - Src:             'lib/flow.c:3137,28'
          Dst:             ntohs
        - Src:             'lib/flow.c:3137,28'
          Dst:             htons
        - Src:             'lib/flow.c:3138,37'
          Dst:             htons
        - Src:             'lib/flow.c:3139,17'
          Dst:             flow_compose_l7
        - Src:             'lib/flow.c:3142,38'
          Dst:             dp_packet_put_zeros
        - Src:             'lib/flow.c:3145,28'
          Dst:             htons
        - Src:             'lib/flow.c:3146,13'
          Dst:             flow_compose_l7
        - Src:             'lib/flow.c:3148,40'
          Dst:             dp_packet_put_zeros
        - Src:             'lib/flow.c:3153,40'
          Dst:             dp_packet_put_zeros
        - Src:             'lib/flow.c:3154,31'
          Dst:             ntohs
        - Src:             'lib/flow.c:3155,31'
          Dst:             ntohs
        - Src:             'lib/flow.c:3159,17'
          Dst:             flow_compose_l7
        - Src:             'lib/flow.c:3164,40'
          Dst:             dp_packet_put_zeros
        - Src:             'lib/flow.c:3165,31'
          Dst:             ntohs
        - Src:             'lib/flow.c:3166,31'
          Dst:             ntohs
        - Src:             'lib/flow.c:3167,13'
          Dst:             put_16aligned_be32
        - Src:             'lib/flow.c:3171,21'
          Dst:             dp_packet_put_zeros
        - Src:             'lib/flow.c:3172,44'
          Dst:             ntohs
        - Src:             'lib/flow.c:3173,44'
          Dst:             ntohs
        - Src:             'lib/flow.c:3174,13'
          Dst:             put_16aligned_be32
        - Src:             'lib/flow.c:3182,29'
          Dst:             dp_packet_put_zeros
        - Src:             'lib/flow.c:3185,22'
          Dst:             eth_addr_is_zero
        - Src:             'lib/flow.c:3186,31'
          Dst:             dp_packet_put_zeros
        - Src:             'lib/flow.c:3191,22'
          Dst:             eth_addr_is_zero
        - Src:             'lib/flow.c:3192,31'
          Dst:             dp_packet_put_zeros
        - Src:             'lib/flow.c:3200,17'
          Dst:             flow_compose_l7
        - Src:             'lib/flow.c:3207,12'
          Dst:             dp_packet_size
    - functionName:    put_16aligned_be32
      functionSourceFile: '/src/openvswitch/lib/unaligned.h'
      linkageType:     InternalLinkage
      functionLinenumber: 257
      functionLinenumberEnd: 265
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          19
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_set_l4
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 483
      functionLinenumberEnd: 485
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_data
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:484,45'
          Dst:             dp_packet_data
    - functionName:    flow_compose
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3323
      functionLinenumberEnd: 3461
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         62
      ICount:          651
      EdgeCount:       81
      CyclomaticComplexity: 21
      functionsReached:
        - csum
        - dp_packet_eth
        - dp_packet_ip_checksum_set_bad
        - dp_packet_ip_checksum_set_good
        - dp_packet_l3
        - dp_packet_put_zeros
        - dp_packet_set_l3
        - dp_packet_set_l4
        - dp_packet_size
        - dp_packet_tail
        - eth_compose
        - eth_push_vlan
        - eth_type_mpls
        - flow_compose_l4
        - flow_compose_l4_csum
        - htonl
        - htons
        - nsh_set_flags_ttl_len
        - ntohs
        - packet_csum_pseudoheader
        - packet_csum_pseudoheader6
        - push_mpls
        - put_16aligned_be32
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:3333,48'
          Dst:             ntohs
        - Src:             'lib/flow.c:3333,5'
          Dst:             eth_compose
        - Src:             'lib/flow.c:3334,26'
          Dst:             htons
        - Src:             'lib/flow.c:3335,34'
          Dst:             dp_packet_eth
        - Src:             'lib/flow.c:3336,31'
          Dst:             dp_packet_size
        - Src:             'lib/flow.c:3336,25'
          Dst:             htons
        - Src:             'lib/flow.c:3341,39'
          Dst:             htons
        - Src:             'lib/flow.c:3342,13'
          Dst:             eth_push_vlan
        - Src:             'lib/flow.c:3347,26'
          Dst:             htons
        - Src:             'lib/flow.c:3350,14'
          Dst:             dp_packet_put_zeros
        - Src:             'lib/flow.c:3355,9'
          Dst:             put_16aligned_be32
        - Src:             'lib/flow.c:3356,9'
          Dst:             put_16aligned_be32
        - Src:             'lib/flow.c:3359,32'
          Dst:             htons
        - Src:             'lib/flow.c:3361,36'
          Dst:             htons
        - Src:             'lib/flow.c:3365,29'
          Dst:             dp_packet_tail
        - Src:             'lib/flow.c:3365,9'
          Dst:             dp_packet_set_l4
        - Src:             'lib/flow.c:3367,18'
          Dst:             flow_compose_l4
        - Src:             'lib/flow.c:3369,14'
          Dst:             dp_packet_l3
        - Src:             'lib/flow.c:3370,26'
          Dst:             htons
        - Src:             'lib/flow.c:3372,23'
          Dst:             csum
        - Src:             'lib/flow.c:3381,13'
          Dst:             dp_packet_ip_checksum_set_bad
        - Src:             'lib/flow.c:3383,13'
          Dst:             dp_packet_ip_checksum_set_good
        - Src:             'lib/flow.c:3386,27'
          Dst:             packet_csum_pseudoheader
        - Src:             'lib/flow.c:3387,9'
          Dst:             flow_compose_l4_csum
        - Src:             'lib/flow.c:3388,33'
          Dst:             htons
        - Src:             'lib/flow.c:3391,14'
          Dst:             dp_packet_put_zeros
        - Src:             'lib/flow.c:3392,43'
          Dst:             htonl
        - Src:             'lib/flow.c:3393,28'
          Dst:             htonl
        - Src:             'lib/flow.c:3392,9'
          Dst:             put_16aligned_be32
        - Src:             'lib/flow.c:3400,29'
          Dst:             dp_packet_tail
        - Src:             'lib/flow.c:3400,9'
          Dst:             dp_packet_set_l4
        - Src:             'lib/flow.c:3402,18'
          Dst:             flow_compose_l4
        - Src:             'lib/flow.c:3404,14'
          Dst:             dp_packet_l3
        - Src:             'lib/flow.c:3405,24'
          Dst:             htons
        - Src:             'lib/flow.c:3407,27'
          Dst:             packet_csum_pseudoheader6
        - Src:             'lib/flow.c:3408,9'
          Dst:             flow_compose_l4_csum
        - Src:             'lib/flow.c:3409,33'
          Dst:             htons
        - Src:             'lib/flow.c:3410,33'
          Dst:             htons
        - Src:             'lib/flow.c:3413,15'
          Dst:             dp_packet_put_zeros
        - Src:             'lib/flow.c:3414,9'
          Dst:             dp_packet_set_l3
        - Src:             'lib/flow.c:3415,23'
          Dst:             htons
        - Src:             'lib/flow.c:3416,23'
          Dst:             htons
        - Src:             'lib/flow.c:3419,22'
          Dst:             htons
        - Src:             'lib/flow.c:3423,13'
          Dst:             put_16aligned_be32
        - Src:             'lib/flow.c:3424,13'
          Dst:             put_16aligned_be32
        - Src:             'lib/flow.c:3428,33'
          Dst:             htons
        - Src:             'lib/flow.c:3431,15'
          Dst:             dp_packet_put_zeros
        - Src:             'lib/flow.c:3432,9'
          Dst:             dp_packet_set_l3
        - Src:             'lib/flow.c:3434,9'
          Dst:             nsh_set_flags_ttl_len
        - Src:             'lib/flow.c:3439,9'
          Dst:             put_16aligned_be32
        - Src:             'lib/flow.c:3443,17'
          Dst:             put_16aligned_be32
        - Src:             'lib/flow.c:3448,9'
          Dst:             eth_type_mpls
        - Src:             'lib/flow.c:3453,41'
          Dst:             htonl
        - Src:             'lib/flow.c:3458,13'
          Dst:             push_mpls
    - functionName:    dp_packet_eth
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 405
      functionLinenumberEnd: 407
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          39
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - dp_packet_data
        - dp_packet_is_eth
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:406,13'
          Dst:             dp_packet_is_eth
        - Src:             'lib/dp-packet.h:407,15'
          Dst:             dp_packet_data
    - functionName:    flow_compose_l4_csum
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3213
      functionLinenumberEnd: 3253
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          210
      EdgeCount:       35
      CyclomaticComplexity: 10
      functionsReached:
        - csum
        - csum_continue
        - csum_finish
        - dp_packet_l4
        - dp_packet_l4_checksum_set_good
        - dp_packet_tail
        - htons
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:3214,30'
          Dst:             dp_packet_tail
        - Src:             'lib/flow.c:3214,59'
          Dst:             dp_packet_l4
        - Src:             'lib/flow.c:3219,38'
          Dst:             dp_packet_l4
        - Src:             'lib/flow.c:3222,41'
          Dst:             csum_continue
        - Src:             'lib/flow.c:3222,29'
          Dst:             csum_finish
        - Src:             'lib/flow.c:3224,13'
          Dst:             dp_packet_l4_checksum_set_good
        - Src:             'lib/flow.c:3226,38'
          Dst:             dp_packet_l4
        - Src:             'lib/flow.c:3229,41'
          Dst:             csum_continue
        - Src:             'lib/flow.c:3229,29'
          Dst:             csum_finish
        - Src:             'lib/flow.c:3232,33'
          Dst:             htons
        - Src:             'lib/flow.c:3234,13'
          Dst:             dp_packet_l4_checksum_set_good
        - Src:             'lib/flow.c:3236,40'
          Dst:             dp_packet_l4
        - Src:             'lib/flow.c:3239,31'
          Dst:             csum
        - Src:             'lib/flow.c:3241,40'
          Dst:             dp_packet_l4
        - Src:             'lib/flow.c:3244,31'
          Dst:             csum
        - Src:             'lib/flow.c:3246,47'
          Dst:             dp_packet_l4
        - Src:             'lib/flow.c:3250,29'
          Dst:             csum_continue
        - Src:             'lib/flow.c:3250,17'
          Dst:             csum_finish
    - functionName:    eth_type_mpls
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 423
      functionLinenumberEnd: 425
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htons
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:424,24'
          Dst:             htons
        - Src:             'lib/packets.h:425,21'
          Dst:             htons
    - functionName:    dp_packet_l4
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 475
      functionLinenumberEnd: 477
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_data
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:477,23'
          Dst:             dp_packet_data
    - functionName:    dp_packet_is_eth
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 397
      functionLinenumberEnd: 398
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:398,30'
          Dst:             htonl
    - functionName:    dp_packet_ip_set_header_csum
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1228
      functionLinenumberEnd: 1255
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          109
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - csum
        - dp_packet_inner_ip_checksum_set_good
        - dp_packet_inner_l3
        - dp_packet_inner_l3_size
        - dp_packet_ip_checksum_set_good
        - dp_packet_l3
        - dp_packet_l3_size
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:1234,14'
          Dst:             dp_packet_inner_l3
        - Src:             'lib/dp-packet.h:1235,19'
          Dst:             dp_packet_inner_l3_size
        - Src:             'lib/dp-packet.h:1237,14'
          Dst:             dp_packet_l3
        - Src:             'lib/dp-packet.h:1238,19'
          Dst:             dp_packet_l3_size
        - Src:             'lib/dp-packet.h:1241,5'
          Dst:             ovs_ignore
        - Src:             'lib/dp-packet.h:1247,23'
          Dst:             csum
        - Src:             'lib/dp-packet.h:1251,9'
          Dst:             dp_packet_inner_ip_checksum_set_good
        - Src:             'lib/dp-packet.h:1253,9'
          Dst:             dp_packet_ip_checksum_set_good
    - functionName:    packet_expand
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3262
      functionLinenumberEnd: 3300
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          195
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - dl_type_is_ip_any
        - dp_packet_eth
        - dp_packet_ip_set_header_csum
        - dp_packet_l3
        - dp_packet_l4
        - dp_packet_put_zeros
        - dp_packet_size
        - dp_packet_tail
        - flow_compose_l4_csum
        - htons
        - ovs_ignore
        - packet_csum_pseudoheader
        - packet_csum_pseudoheader6
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:3265,23'
          Dst:             dp_packet_size
        - Src:             'lib/flow.c:3265,5'
          Dst:             ovs_ignore
        - Src:             'lib/flow.c:3267,25'
          Dst:             dp_packet_size
        - Src:             'lib/flow.c:3268,5'
          Dst:             dp_packet_put_zeros
        - Src:             'lib/flow.c:3270,26'
          Dst:             htons
        - Src:             'lib/flow.c:3271,34'
          Dst:             dp_packet_eth
        - Src:             'lib/flow.c:3273,31'
          Dst:             dp_packet_size
        - Src:             'lib/flow.c:3273,25'
          Dst:             htons
        - Src:             'lib/flow.c:3274,16'
          Dst:             dl_type_is_ip_any
        - Src:             'lib/flow.c:3276,34'
          Dst:             dp_packet_tail
        - Src:             'lib/flow.c:3276,63'
          Dst:             dp_packet_l4
        - Src:             'lib/flow.c:3278,30'
          Dst:             htons
        - Src:             'lib/flow.c:3279,36'
          Dst:             dp_packet_l3
        - Src:             'lib/flow.c:3281,30'
          Dst:             htons
        - Src:             'lib/flow.c:3282,13'
          Dst:             dp_packet_ip_set_header_csum
        - Src:             'lib/flow.c:3283,31'
          Dst:             packet_csum_pseudoheader
        - Src:             'lib/flow.c:3285,48'
          Dst:             dp_packet_l3
        - Src:             'lib/flow.c:3287,28'
          Dst:             htons
        - Src:             'lib/flow.c:3288,31'
          Dst:             packet_csum_pseudoheader6
        - Src:             'lib/flow.c:3294,38'
          Dst:             dp_packet_l4
        - Src:             'lib/flow.c:3296,28'
          Dst:             htons
        - Src:             'lib/flow.c:3298,9'
          Dst:             flow_compose_l4_csum
    - functionName:    dl_type_is_ip_any
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1256
      functionLinenumberEnd: 1258
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htons
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:1257,23'
          Dst:             htons
        - Src:             'lib/packets.h:1258,23'
          Dst:             htons
    - functionName:    flow_set_mpls_lse
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3106
      functionLinenumberEnd: 3108
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    flow_set_mpls_bos
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3099
      functionLinenumberEnd: 3101
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - set_mpls_lse_bos
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:3100,5'
          Dst:             set_mpls_lse_bos
    - functionName:    flow_set_mpls_tc
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3092
      functionLinenumberEnd: 3094
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - set_mpls_lse_tc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:3093,5'
          Dst:             set_mpls_lse_tc
    - functionName:    flow_set_mpls_ttl
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3084
      functionLinenumberEnd: 3086
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - set_mpls_lse_ttl
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:3085,5'
          Dst:             set_mpls_lse_ttl
    - functionName:    flow_set_mpls_label
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3076
      functionLinenumberEnd: 3078
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - set_mpls_lse_label
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:3077,5'
          Dst:             set_mpls_lse_label
    - functionName:    flow_pop_mpls
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3044
      functionLinenumberEnd: 3070
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - short
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          147
      EdgeCount:       28
      CyclomaticComplexity: 8
      functionsReached:
        - htonl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:3052,42'
          Dst:             htonl
        - Src:             'lib/flow.c:3054,39'
          Dst:             htonl
    - functionName:    flow_push_mpls
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2988
      functionLinenumberEnd: 3034
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - short
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          208
      EdgeCount:       36
      CyclomaticComplexity: 10
      functionsReached:
        - eth_type_mpls
        - htonl
        - htons
        - is_ip_any
        - ovs_ignore
        - set_mpls_lse_values
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:2989,16'
          Dst:             eth_type_mpls
        - Src:             'lib/flow.c:2989,5'
          Dst:             ovs_ignore
        - Src:             'lib/flow.c:2990,5'
          Dst:             ovs_ignore
        - Src:             'lib/flow.c:3001,50'
          Dst:             htonl
        - Src:             'lib/flow.c:3007,30'
          Dst:             htons
        - Src:             'lib/flow.c:3011,13'
          Dst:             is_ip_any
        - Src:             'lib/flow.c:3023,61'
          Dst:             htonl
        - Src:             'lib/flow.c:3023,29'
          Dst:             set_mpls_lse_values
    - functionName:    is_ip_any
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1059
      functionLinenumberEnd: 1060
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dl_type_is_ip_any
        - get_dl_type
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:1060,30'
          Dst:             get_dl_type
        - Src:             'lib/flow.h:1060,12'
          Dst:             dl_type_is_ip_any
    - functionName:    flow_count_common_mpls_labels
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2932
      functionLinenumberEnd: 2956
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          132
      EdgeCount:       22
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    flow_count_mpls_labels
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2898
      functionLinenumberEnd: 2920
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          109
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - eth_type_mpls
        - htonl
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:2900,9'
          Dst:             eth_type_mpls
        - Src:             'lib/flow.c:2907,42'
          Dst:             htonl
        - Src:             'lib/flow.c:2909,37'
          Dst:             htonl
    - functionName:    flow_push_vlan_uninit
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2877
      functionLinenumberEnd: 2887
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          58
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - flow_count_vlan_headers
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:2879,17'
          Dst:             flow_count_vlan_headers
    - functionName:    flow_count_vlan_headers
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2829
      functionLinenumberEnd: 2837
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          51
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - htons
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:2833,36'
          Dst:             htons
    - functionName:    flow_pop_vlan
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2860
      functionLinenumberEnd: 2873
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          78
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - flow_count_vlan_headers
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:2861,13'
          Dst:             flow_count_vlan_headers
    - functionName:    flow_skip_common_vlan_headers
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2846
      functionLinenumberEnd: 2856
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          84
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    flow_set_vlan_pcp
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2820
      functionLinenumberEnd: 2824
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - char
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          54
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htons
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:2822,29'
          Dst:             htons
        - Src:             'lib/flow.c:2823,28'
          Dst:             htons
    - functionName:    flow_set_vlan_vid
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2805
      functionLinenumberEnd: 2809
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          44
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htons
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:2806,21'
          Dst:             htons
    - functionName:    flow_fix_vlan_tpid
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2794
      functionLinenumberEnd: 2798
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          51
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - htons
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:2795,32'
          Dst:             htons
        - Src:             'lib/flow.c:2796,31'
          Dst:             htons
    - functionName:    flow_set_dl_vlan
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2780
      functionLinenumberEnd: 2788
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - short
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          77
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htons
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:2781,16'
          Dst:             htons
        - Src:             'lib/flow.c:2782,31'
          Dst:             htons
        - Src:             'lib/flow.c:2784,16'
          Dst:             htons
        - Src:             'lib/flow.c:2785,33'
          Dst:             htons
        - Src:             'lib/flow.c:2786,32'
          Dst:             htons
    - functionName:    flow_hash_in_wildcards
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2754
      functionLinenumberEnd: 2764
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          59
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - hash_add64
        - hash_finish
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:2762,16'
          Dst:             hash_add64
        - Src:             'lib/flow.c:2764,12'
          Dst:             hash_finish
    - functionName:    flow_hash_fields_valid
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2739
      functionLinenumberEnd: 2746
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          62
      EdgeCount:       19
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    flow_hash_fields_to_str
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2723
      functionLinenumberEnd: 2734
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          52
      EdgeCount:       18
      CyclomaticComplexity: 10
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/flow.c:2724,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    flow_hash_fields
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2680
      functionLinenumberEnd: 2718
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          164
      EdgeCount:       22
      CyclomaticComplexity: 4
      functionsReached:
        - abort
        - flow_hash_symmetric_l3
        - flow_hash_symmetric_l3l4
        - flow_hash_symmetric_l4
        - htons
        - jhash_bytes
      functionUses:    9
      BranchProfiles:
        - Branch String:   'lib/flow.c:2681,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/flow.c:2684,16'
          Dst:             jhash_bytes
        - Src:             'lib/flow.c:2687,16'
          Dst:             flow_hash_symmetric_l4
        - Src:             'lib/flow.c:2690,16'
          Dst:             flow_hash_symmetric_l3l4
        - Src:             'lib/flow.c:2693,16'
          Dst:             flow_hash_symmetric_l3l4
        - Src:             'lib/flow.c:2696,30'
          Dst:             htons
        - Src:             'lib/flow.c:2697,20'
          Dst:             jhash_bytes
        - Src:             'lib/flow.c:2698,37'
          Dst:             htons
        - Src:             'lib/flow.c:2699,20'
          Dst:             jhash_bytes
        - Src:             'lib/flow.c:2705,30'
          Dst:             htons
        - Src:             'lib/flow.c:2706,20'
          Dst:             jhash_bytes
        - Src:             'lib/flow.c:2707,37'
          Dst:             htons
        - Src:             'lib/flow.c:2708,20'
          Dst:             jhash_bytes
        - Src:             'lib/flow.c:2714,16'
          Dst:             flow_hash_symmetric_l3
        - Src:             'lib/flow.c:2717,5'
          Dst:             abort
    - functionName:    flow_hash_symmetric_l4
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2389
      functionLinenumberEnd: 2434
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         33
      ICount:          261
      EdgeCount:       42
      CyclomaticComplexity: 11
      functionsReached:
        - htons
        - jhash_bytes
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:2409,49'
          Dst:             htons
        - Src:             'lib/flow.c:2415,28'
          Dst:             htons
        - Src:             'lib/flow.c:2421,35'
          Dst:             htons
        - Src:             'lib/flow.c:2434,12'
          Dst:             jhash_bytes
    - functionName:    flow_hash_symmetric_l3l4
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2480
      functionLinenumberEnd: 2508
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          193
      EdgeCount:       34
      CyclomaticComplexity: 10
      functionsReached:
        - flow_hash_symmetric_l2
        - hash_add
        - hash_add64
        - hash_finish
        - htons
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:2484,26'
          Dst:             htons
        - Src:             'lib/flow.c:2485,16'
          Dst:             hash_add
        - Src:             'lib/flow.c:2487,33'
          Dst:             htons
        - Src:             'lib/flow.c:2493,20'
          Dst:             hash_add64
        - Src:             'lib/flow.c:2497,16'
          Dst:             flow_hash_symmetric_l2
        - Src:             'lib/flow.c:2499,12'
          Dst:             hash_add
        - Src:             'lib/flow.c:2503,16'
          Dst:             hash_add
        - Src:             'lib/flow.c:2507,12'
          Dst:             hash_finish
    - functionName:    flow_hash_symmetric_l3
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2513
      functionLinenumberEnd: 2538
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          113
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - htons
        - jhash_bytes
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:2527,28'
          Dst:             htons
        - Src:             'lib/flow.c:2529,35'
          Dst:             htons
        - Src:             'lib/flow.c:2538,12'
          Dst:             jhash_bytes
    - functionName:    flow_hash_symmetric_l2
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2440
      functionLinenumberEnd: 2474
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          136
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - hash_add
        - hash_finish
        - htonl
        - htons
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:2454,30'
          Dst:             htonl
        - Src:             'lib/flow.c:2465,49'
          Dst:             htons
        - Src:             'lib/flow.c:2470,12'
          Dst:             hash_add
        - Src:             'lib/flow.c:2471,12'
          Dst:             hash_add
        - Src:             'lib/flow.c:2472,12'
          Dst:             hash_add
        - Src:             'lib/flow.c:2473,12'
          Dst:             hash_finish
    - functionName:    flow_mask_hash_fields
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2590
      functionLinenumberEnd: 2674
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         68
      ICount:          429
      EdgeCount:       85
      CyclomaticComplexity: 19
      functionsReached:
        - abort
        - flow_unwildcard_tp_ports
        - htons
        - is_ip_any
      functionUses:    9
      BranchProfiles:
        - Branch String:   'lib/flow.c:2592,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/flow.c:2600,30'
          Dst:             htons
        - Src:             'lib/flow.c:2603,37'
          Dst:             htons
        - Src:             'lib/flow.c:2607,13'
          Dst:             is_ip_any
        - Src:             'lib/flow.c:2613,17'
          Dst:             flow_unwildcard_tp_ports
        - Src:             'lib/flow.c:2617,39'
          Dst:             htons
        - Src:             'lib/flow.c:2621,13'
          Dst:             is_ip_any
        - Src:             'lib/flow.c:2628,30'
          Dst:             htons
        - Src:             'lib/flow.c:2631,37'
          Dst:             htons
        - Src:             'lib/flow.c:2646,30'
          Dst:             htons
        - Src:             'lib/flow.c:2648,37'
          Dst:             htons
        - Src:             'lib/flow.c:2654,30'
          Dst:             htons
        - Src:             'lib/flow.c:2656,37'
          Dst:             htons
        - Src:             'lib/flow.c:2662,30'
          Dst:             htons
        - Src:             'lib/flow.c:2665,37'
          Dst:             htons
        - Src:             'lib/flow.c:2672,9'
          Dst:             abort
    - functionName:    flow_unwildcard_tp_ports
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1300
      functionLinenumberEnd: 1308
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          48
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htons
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:1305,28'
          Dst:             htons
        - Src:             'lib/flow.c:1306,28'
          Dst:             htons
    - functionName:    eth_addr_random
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 314
      functionLinenumberEnd: 317
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - eth_addr_mark_random
        - random_bytes
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:315,5'
          Dst:             random_bytes
        - Src:             'lib/packets.h:316,5'
          Dst:             eth_addr_mark_random
    - functionName:    random_uint16
      functionSourceFile: '/src/openvswitch/lib/random.h'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      short
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - random_uint32
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/random.h:45,12'
          Dst:             random_uint32
    - functionName:    flow_random_hash_fields
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2544
      functionLinenumberEnd: 2584
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         36
      ICount:          232
      EdgeCount:       47
      CyclomaticComplexity: 13
      functionsReached:
        - dl_type_is_ip_any
        - eth_addr_random
        - htons
        - random_bytes
        - random_uint16
        - random_uint32
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:2545,20'
          Dst:             random_uint16
        - Src:             'lib/flow.c:2551,5'
          Dst:             eth_addr_random
        - Src:             'lib/flow.c:2552,5'
          Dst:             eth_addr_random
        - Src:             'lib/flow.c:2555,25'
          Dst:             random_uint16
        - Src:             'lib/flow.c:2556,31'
          Dst:             htons
        - Src:             'lib/flow.c:2557,30'
          Dst:             htons
        - Src:             'lib/flow.c:2561,36'
          Dst:             htons
        - Src:             'lib/flow.c:2562,24'
          Dst:             htons
        - Src:             'lib/flow.c:2564,9'
          Dst:             dl_type_is_ip_any
        - Src:             'lib/flow.c:2565,30'
          Dst:             htons
        - Src:             'lib/flow.c:2566,48'
          Dst:             random_uint32
        - Src:             'lib/flow.c:2567,48'
          Dst:             random_uint32
        - Src:             'lib/flow.c:2569,13'
          Dst:             random_bytes
        - Src:             'lib/flow.c:2570,13'
          Dst:             random_bytes
        - Src:             'lib/flow.c:2573,15'
          Dst:             random_uint16
        - Src:             'lib/flow.c:2580,48'
          Dst:             random_uint16
        - Src:             'lib/flow.c:2581,48'
          Dst:             random_uint16
    - functionName:    flow_hash_5tuple
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2348
      functionLinenumberEnd: 2383
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         31
      ICount:          194
      EdgeCount:       41
      CyclomaticComplexity: 12
      functionsReached:
        - hash_add
        - hash_add64
        - hash_finish
        - htons
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:2354,30'
          Dst:             htons
        - Src:             'lib/flow.c:2360,24'
          Dst:             hash_add64
        - Src:             'lib/flow.c:2362,37'
          Dst:             htons
        - Src:             'lib/flow.c:2363,40'
          Dst:             htons
        - Src:             'lib/flow.c:2364,20'
          Dst:             hash_add
        - Src:             'lib/flow.c:2365,20'
          Dst:             hash_add
        - Src:             'lib/flow.c:2370,16'
          Dst:             hash_add
        - Src:             'lib/flow.c:2378,16'
          Dst:             hash_add
        - Src:             'lib/flow.c:2383,12'
          Dst:             hash_finish
    - functionName:    miniflow_get_ports
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 897
      functionLinenumberEnd: 898
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - flowmap_is_set
        - miniflow_get__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:898,12'
          Dst:             flowmap_is_set
        - Src:             'lib/flow.h:898,12'
          Dst:             miniflow_get__
    - functionName:    mf_get_next_in_map
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 621
      functionLinenumberEnd: 659
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          148
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - count_1bits
        - rightmost_1bit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:629,24'
          Dst:             count_1bits
        - Src:             'lib/flow.h:635,14'
          Dst:             rightmost_1bit
        - Src:             'lib/flow.h:651,28'
          Dst:             count_1bits
    - functionName:    rightmost_1bit
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 382
      functionLinenumberEnd: 383
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    miniflow_hash_5tuple
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2301
      functionLinenumberEnd: 2339
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         42
      ICount:          241
      EdgeCount:       56
      CyclomaticComplexity: 16
      functionsReached:
        - flowmap_is_set
        - flowmap_set
        - hash_add
        - hash_add64
        - hash_finish
        - htons
        - mf_get_next_in_map
        - miniflow_get__
        - miniflow_get_ports
        - miniflow_get_values
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:2306,28'
          Dst:             flowmap_is_set
        - Src:             'lib/flow.c:2306,28'
          Dst:             miniflow_get__
        - Src:             'lib/flow.c:2309,24'
          Dst:             htons
        - Src:             'lib/flow.c:2313,13'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:2314,13'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:2316,13'
          Dst:             miniflow_get_values
        - Src:             'lib/flow.c:2316,13'
          Dst:             mf_get_next_in_map
        - Src:             'lib/flow.c:2317,24'
          Dst:             hash_add64
        - Src:             'lib/flow.c:2319,31'
          Dst:             htons
        - Src:             'lib/flow.c:2320,34'
          Dst:             htons
        - Src:             'lib/flow.c:2321,35'
          Dst:             flowmap_is_set
        - Src:             'lib/flow.c:2321,35'
          Dst:             miniflow_get__
        - Src:             'lib/flow.c:2321,20'
          Dst:             hash_add
        - Src:             'lib/flow.c:2322,35'
          Dst:             flowmap_is_set
        - Src:             'lib/flow.c:2322,35'
          Dst:             miniflow_get__
        - Src:             'lib/flow.c:2322,20'
          Dst:             hash_add
        - Src:             'lib/flow.c:2327,20'
          Dst:             flowmap_is_set
        - Src:             'lib/flow.c:2327,20'
          Dst:             miniflow_get__
        - Src:             'lib/flow.c:2328,16'
          Dst:             hash_add
        - Src:             'lib/flow.c:2336,52'
          Dst:             miniflow_get_ports
        - Src:             'lib/flow.c:2336,16'
          Dst:             hash_add
        - Src:             'lib/flow.c:2339,12'
          Dst:             hash_finish
    - functionName:    flow_set_xxreg
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 169
      functionLinenumberEnd: 174
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          58
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    flow_wildcards_set_xxreg_mask
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2292
      functionLinenumberEnd: 2294
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - flow_set_xxreg
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:2293,5'
          Dst:             flow_set_xxreg
    - functionName:    flow_set_xreg
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          30
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    flow_wildcards_set_xreg_mask
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2283
      functionLinenumberEnd: 2285
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - flow_set_xreg
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:2284,5'
          Dst:             flow_set_xreg
    - functionName:    flow_wildcards_set_reg_mask
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2275
      functionLinenumberEnd: 2277
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    flow_equal_except
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2257
      functionLinenumberEnd: 2269
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          64
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    flow_wildcards_has_extra
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2239
      functionLinenumberEnd: 2250
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          59
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    flow_equal
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 184
      functionLinenumberEnd: 185
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - flow_compare_3way
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:185,13'
          Dst:             flow_compare_3way
    - functionName:    flow_wildcards_equal
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2230
      functionLinenumberEnd: 2231
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - flow_equal
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:2231,12'
          Dst:             flow_equal
    - functionName:    flow_hash
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 190
      functionLinenumberEnd: 191
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_bytes64
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:191,12'
          Dst:             hash_bytes64
    - functionName:    flow_wildcards_hash
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2221
      functionLinenumberEnd: 2222
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - flow_hash
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:2222,12'
          Dst:             flow_hash
    - functionName:    flow_wildcards_or
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2207
      functionLinenumberEnd: 2216
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         5
      ICount:          53
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    flow_wildcards_and
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2189
      functionLinenumberEnd: 2198
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         5
      ICount:          53
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    flow_wildcards_is_catchall
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2170
      functionLinenumberEnd: 2180
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          44
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    flow_wildcards_clear_non_packet_fields
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2156
      functionLinenumberEnd: 2164
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          22
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    flow_wc_map
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2053
      functionLinenumberEnd: 2150
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         36
      ICount:          314
      EdgeCount:       47
      CyclomaticComplexity: 13
      functionsReached:
        - eth_type_mpls
        - flow_tnl_dst_is_set
        - flowmap_init
        - flowmap_set
        - htons
        - is_nd
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:2057,5'
          Dst:             flowmap_init
        - Src:             'lib/flow.c:2059,9'
          Dst:             flow_tnl_dst_is_set
        - Src:             'lib/flow.c:2060,9'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:2063,17'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:2066,13'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:2067,13'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:2073,5'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:2074,5'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:2075,5'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:2076,5'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:2077,5'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:2078,5'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:2079,5'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:2080,5'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:2081,5'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:2082,5'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:2083,5'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:2084,5'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:2085,5'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:2086,5'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:2089,9'
          Dst:             htons
        - Src:             'lib/flow.c:2090,9'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:2091,9'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:2092,9'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:2093,9'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:2094,9'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:2095,9'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:2096,9'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:2097,9'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:2098,9'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:2099,9'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:2100,9'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:2101,9'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:2102,9'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:2105,13'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:2107,13'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:2109,33'
          Dst:             htons
        - Src:             'lib/flow.c:2110,9'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:2111,9'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:2112,9'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:2113,9'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:2114,9'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:2115,9'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:2116,9'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:2117,9'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:2118,9'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:2120,13'
          Dst:             is_nd
        - Src:             'lib/flow.c:2121,13'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:2122,13'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:2123,13'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:2124,13'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:2125,13'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:2127,13'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:2128,13'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:2129,13'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:2130,13'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:2131,13'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:2132,13'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:2134,16'
          Dst:             eth_type_mpls
        - Src:             'lib/flow.c:2135,9'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:2136,33'
          Dst:             htons
        - Src:             'lib/flow.c:2137,33'
          Dst:             htons
        - Src:             'lib/flow.c:2138,9'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:2139,9'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:2140,9'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:2141,9'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:2142,9'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:2143,33'
          Dst:             htons
        - Src:             'lib/flow.c:2144,9'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:2145,9'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:2146,9'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:2147,9'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:2148,9'
          Dst:             flowmap_set
    - functionName:    flow_tnl_dst_is_set
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 51
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ipv6_addr_is_set
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:52,27'
          Dst:             ipv6_addr_is_set
    - functionName:    is_nd
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1119
      functionLinenumberEnd: 1135
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          98
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - htons
        - is_icmpv6
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:1120,9'
          Dst:             is_icmpv6
        - Src:             'lib/flow.h:1124,29'
          Dst:             htons
        - Src:             'lib/flow.h:1131,33'
          Dst:             htons
        - Src:             'lib/flow.h:1132,33'
          Dst:             htons
    - functionName:    flow_wildcards_init_for_packet
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1896
      functionLinenumberEnd: 2044
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         78
      ICount:          717
      EdgeCount:       104
      CyclomaticComplexity: 28
      functionsReached:
        - eth_type_mpls
        - flow_tnl_dst_is_set
        - htonl
        - htons
        - is_nd
        - pt_ns_type_be
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:1904,9'
          Dst:             flow_tnl_dst_is_set
        - Src:             'lib/flow.c:1957,30'
          Dst:             htonl
        - Src:             'lib/flow.c:1965,39'
          Dst:             htons
        - Src:             'lib/flow.c:1971,19'
          Dst:             pt_ns_type_be
        - Src:             'lib/flow.c:1974,20'
          Dst:             htons
        - Src:             'lib/flow.c:1979,27'
          Dst:             htons
        - Src:             'lib/flow.c:1983,13'
          Dst:             is_nd
        - Src:             'lib/flow.c:1991,27'
          Dst:             htons
        - Src:             'lib/flow.c:1992,27'
          Dst:             htons
        - Src:             'lib/flow.c:1999,16'
          Dst:             eth_type_mpls
        - Src:             'lib/flow.c:2002,37'
          Dst:             htonl
        - Src:             'lib/flow.c:2007,33'
          Dst:             htons
    - functionName:    flow_wildcards_init_catchall
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1885
      functionLinenumberEnd: 1887
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    flow_print
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1874
      functionLinenumberEnd: 1878
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - flow_to_string
        - fputs
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:1875,15'
          Dst:             flow_to_string
        - Src:             'lib/flow.c:1876,5'
          Dst:             fputs
    - functionName:    flow_to_string
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1531
      functionLinenumberEnd: 1534
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_cstr
        - flow_format
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:1533,5'
          Dst:             flow_format
        - Src:             'lib/flow.c:1534,12'
          Dst:             ds_cstr
    - 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:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    flow_format
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1807
      functionLinenumberEnd: 1869
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         52
      ICount:          329
      EdgeCount:       68
      CyclomaticComplexity: 18
      functionsReached:
        - htons
        - is_ct_valid
        - match_format
        - match_wc_init
        - ovs_u128_is_zero
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:1811,5'
          Dst:             match_wc_init
        - Src:             'lib/flow.c:1844,9'
          Dst:             ovs_u128_is_zero
        - Src:             'lib/flow.c:1847,10'
          Dst:             is_ct_valid
        - Src:             'lib/flow.c:1851,30'
          Dst:             htons
        - Src:             'lib/flow.c:1854,37'
          Dst:             htons
        - Src:             'lib/flow.c:1868,5'
          Dst:             match_format
    - functionName:    ovs_u128_is_zero
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 488
      functionLinenumberEnd: 489
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    is_ct_valid
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 954
      functionLinenumberEnd: 972
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          108
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    parse_flags
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1664
      functionLinenumberEnd: 1802
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - char
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         101
      ICount:          596
      EdgeCount:       137
      CyclomaticComplexity: 38
      functionsReached:
        - ovs_scan
        - strlen
        - strncmp
        - xasprintf
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:1669,21'
          Dst:             ovs_scan
        - Src:             'lib/flow.c:1694,35'
          Dst:             xasprintf
        - Src:             'lib/flow.c:1710,23'
          Dst:             strlen
        - Src:             'lib/flow.c:1711,21'
          Dst:             strncmp
        - Src:             'lib/flow.c:1719,39'
          Dst:             xasprintf
        - Src:             'lib/flow.c:1754,13'
          Dst:             ovs_scan
        - Src:             'lib/flow.c:1771,19'
          Dst:             strlen
        - Src:             'lib/flow.c:1772,18'
          Dst:             strncmp
        - Src:             'lib/flow.c:1799,23'
          Dst:             xasprintf
    - 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:    206
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pt_ns_type
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1584
      functionLinenumberEnd: 1585
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohs
        - pt_ns_type_be
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:1585,18'
          Dst:             pt_ns_type_be
        - Src:             'lib/packets.h:1585,12'
          Dst:             ntohs
    - functionName:    put_u16_masked
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1615
      functionLinenumberEnd: 1629
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - short
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          66
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - ds_put_char
        - ds_put_format
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:1617,9'
          Dst:             ds_put_char
        - Src:             'lib/flow.c:1620,13'
          Dst:             ds_put_format
        - Src:             'lib/flow.c:1622,13'
          Dst:             ds_put_format
        - Src:             'lib/flow.c:1626,13'
          Dst:             ds_put_format
    - functionName:    ds_put_char
      functionSourceFile: '/src/openvswitch/./include/openvswitch/dynamic-string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_char__
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/dynamic-string.h:99,9'
          Dst:             ds_put_char__
    - functionName:    format_packet_type_masked
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1633
      functionLinenumberEnd: 1643
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          59
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ds_put_char
        - ds_put_cstr
        - htonl
        - pt_ns
        - pt_ns_type
        - put_u16_masked
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:1634,18'
          Dst:             htonl
        - Src:             'lib/flow.c:1635,9'
          Dst:             ds_put_cstr
        - Src:             'lib/flow.c:1637,9'
          Dst:             ds_put_cstr
        - Src:             'lib/flow.c:1638,27'
          Dst:             pt_ns
        - Src:             'lib/flow.c:1638,41'
          Dst:             pt_ns
        - Src:             'lib/flow.c:1638,9'
          Dst:             put_u16_masked
        - Src:             'lib/flow.c:1639,9'
          Dst:             ds_put_char
        - Src:             'lib/flow.c:1640,27'
          Dst:             pt_ns_type
        - Src:             'lib/flow.c:1640,46'
          Dst:             pt_ns_type
        - Src:             'lib/flow.c:1640,9'
          Dst:             put_u16_masked
        - Src:             'lib/flow.c:1641,9'
          Dst:             ds_put_char
    - functionName:    format_flags_masked
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1588
      functionLinenumberEnd: 1611
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          112
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - ds_put_cstr
        - ds_put_format
        - format_flags
        - rightmost_1bit
      functionUses:    12
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:1590,9'
          Dst:             ds_put_format
        - Src:             'lib/flow.c:1594,9'
          Dst:             format_flags
        - Src:             'lib/flow.c:1599,9'
          Dst:             ds_put_cstr
        - Src:             'lib/flow.c:1604,24'
          Dst:             rightmost_1bit
        - Src:             'lib/flow.c:1607,9'
          Dst:             ds_put_format
    - functionName:    format_flags
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1557
      functionLinenumberEnd: 1582
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          97
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - ds_chomp
        - ds_put_char
        - ds_put_format
        - rightmost_1bit
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:1561,9'
          Dst:             ds_put_char
        - Src:             'lib/flow.c:1565,24'
          Dst:             rightmost_1bit
        - Src:             'lib/flow.c:1570,13'
          Dst:             ds_put_format
        - Src:             'lib/flow.c:1579,9'
          Dst:             ds_put_format
        - Src:             'lib/flow.c:1581,5'
          Dst:             ds_chomp
    - functionName:    flow_tun_flag_to_string
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1539
      functionLinenumberEnd: 1552
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          37
      EdgeCount:       12
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    6
      BranchProfiles:
        - Branch String:   'lib/flow.c:1540,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    flow_clear_conntrack
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1510
      functionLinenumberEnd: 1526
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          77
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - htons
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:1519,26'
          Dst:             htons
        - Src:             'lib/flow.c:1522,33'
          Dst:             htons
    - functionName:    validate_ct_state
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1472
      functionLinenumberEnd: 1504
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         23
      ICount:          127
      EdgeCount:       31
      CyclomaticComplexity: 10
      functionsReached:
        - ct_state_to_string
        - ds_cstr
        - ds_destroy
        - ds_put_format
        - format_flags
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:1476,5'
          Dst:             format_flags
        - Src:             'lib/flow.c:1476,5'
          Dst:             ct_state_to_string
        - Src:             'lib/flow.c:1481,23'
          Dst:             ds_cstr
        - Src:             'lib/flow.c:1479,9'
          Dst:             ds_put_format
        - Src:             'lib/flow.c:1487,23'
          Dst:             ds_cstr
        - Src:             'lib/flow.c:1485,9'
          Dst:             ds_put_format
        - Src:             'lib/flow.c:1493,23'
          Dst:             ds_cstr
        - Src:             'lib/flow.c:1491,9'
          Dst:             ds_put_format
        - Src:             'lib/flow.c:1499,23'
          Dst:             ds_cstr
        - Src:             'lib/flow.c:1497,9'
          Dst:             ds_put_format
        - Src:             'lib/flow.c:1503,5'
          Dst:             ds_destroy
    - functionName:    ct_state_to_string
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1416
      functionLinenumberEnd: 1424
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          57
      EdgeCount:       20
      CyclomaticComplexity: 11
      functionsReached: []
      functionUses:    5
      BranchProfiles:
        - Branch String:   'lib/flow.c:1417,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    parse_ct_state
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1444
      functionLinenumberEnd: 1465
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          77
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ct_state_from_string
        - ds_put_format
        - strtok_r
        - xstrdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:1446,21'
          Dst:             xstrdup
        - Src:             'lib/flow.c:1449,21'
          Dst:             strtok_r
        - Src:             'lib/flow.c:1451,24'
          Dst:             ct_state_from_string
        - Src:             'lib/flow.c:1453,13'
          Dst:             ds_put_format
        - Src:             'lib/flow.c:1450,15'
          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:    65
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ct_state_from_string
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1428
      functionLinenumberEnd: 1436
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         20
      ICount:          100
      EdgeCount:       28
      CyclomaticComplexity: 10
      functionsReached:
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:1433,5'
          Dst:             strcmp
        - Src:             'lib/flow.c:1433,5'
          Dst:             strcmp
        - Src:             'lib/flow.c:1433,5'
          Dst:             strcmp
        - Src:             'lib/flow.c:1433,5'
          Dst:             strcmp
        - Src:             'lib/flow.c:1433,5'
          Dst:             strcmp
        - Src:             'lib/flow.c:1433,5'
          Dst:             strcmp
        - Src:             'lib/flow.c:1433,5'
          Dst:             strcmp
        - Src:             'lib/flow.c:1433,5'
          Dst:             strcmp
    - 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:    480
      BranchProfiles:  []
      Callsites:       []
    - functionName:    htonll
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 30
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byte-order.h:30,12'
          Dst:             htonl
        - Src:             'lib/byte-order.h:30,44'
          Dst:             htonl
        - Src:             'lib/byte-order.h:30,62'
          Dst:             htonl
    - functionName:    flow_get_metadata
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1313
      functionLinenumberEnd: 1412
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         84
      ICount:          607
      EdgeCount:       111
      CyclomaticComplexity: 29
      functionsReached:
        - htonl
        - htonll
        - htons
        - ipv6_addr_is_set
        - is_ct_valid
        - match_init_catchall
        - match_set_ct_ipv6_dst
        - match_set_ct_ipv6_src
        - match_set_ct_label
        - match_set_ct_mark
        - match_set_ct_nw_dst
        - match_set_ct_nw_proto
        - match_set_ct_nw_src
        - match_set_ct_state
        - match_set_ct_tp_dst
        - match_set_ct_tp_src
        - match_set_ct_zone
        - match_set_dl_type
        - match_set_in_port
        - match_set_metadata
        - match_set_packet_type
        - match_set_pkt_mark
        - match_set_reg
        - match_set_tun_dst
        - match_set_tun_erspan_dir
        - match_set_tun_erspan_hwid
        - match_set_tun_erspan_idx
        - match_set_tun_erspan_ver
        - match_set_tun_flags
        - match_set_tun_gbp_flags
        - match_set_tun_gbp_id
        - match_set_tun_gtpu_flags
        - match_set_tun_gtpu_msgtype
        - match_set_tun_id
        - match_set_tun_ipv6_dst
        - match_set_tun_ipv6_src
        - match_set_tun_src
        - ovs_u128_is_zero
        - tun_metadata_get_fmd
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:1318,5'
          Dst:             match_init_catchall
        - Src:             'lib/flow.c:1319,32'
          Dst:             htonll
        - Src:             'lib/flow.c:1320,9'
          Dst:             match_set_tun_id
        - Src:             'lib/flow.c:1323,9'
          Dst:             match_set_tun_flags
        - Src:             'lib/flow.c:1327,9'
          Dst:             match_set_tun_src
        - Src:             'lib/flow.c:1330,9'
          Dst:             match_set_tun_dst
        - Src:             'lib/flow.c:1332,9'
          Dst:             ipv6_addr_is_set
        - Src:             'lib/flow.c:1333,9'
          Dst:             match_set_tun_ipv6_src
        - Src:             'lib/flow.c:1335,9'
          Dst:             ipv6_addr_is_set
        - Src:             'lib/flow.c:1336,9'
          Dst:             match_set_tun_ipv6_dst
        - Src:             'lib/flow.c:1338,32'
          Dst:             htons
        - Src:             'lib/flow.c:1339,9'
          Dst:             match_set_tun_gbp_id
        - Src:             'lib/flow.c:1342,9'
          Dst:             match_set_tun_gbp_flags
        - Src:             'lib/flow.c:1345,9'
          Dst:             match_set_tun_erspan_ver
        - Src:             'lib/flow.c:1348,9'
          Dst:             match_set_tun_erspan_idx
        - Src:             'lib/flow.c:1351,9'
          Dst:             match_set_tun_erspan_dir
        - Src:             'lib/flow.c:1354,9'
          Dst:             match_set_tun_erspan_hwid
        - Src:             'lib/flow.c:1357,9'
          Dst:             match_set_tun_gtpu_flags
        - Src:             'lib/flow.c:1360,9'
          Dst:             match_set_tun_gtpu_msgtype
        - Src:             'lib/flow.c:1362,5'
          Dst:             tun_metadata_get_fmd
        - Src:             'lib/flow.c:1363,27'
          Dst:             htonll
        - Src:             'lib/flow.c:1364,9'
          Dst:             match_set_metadata
        - Src:             'lib/flow.c:1369,13'
          Dst:             match_set_reg
        - Src:             'lib/flow.c:1374,9'
          Dst:             match_set_pkt_mark
        - Src:             'lib/flow.c:1377,5'
          Dst:             match_set_in_port
        - Src:             'lib/flow.c:1378,30'
          Dst:             htonl
        - Src:             'lib/flow.c:1379,9'
          Dst:             match_set_packet_type
        - Src:             'lib/flow.c:1383,9'
          Dst:             match_set_ct_state
        - Src:             'lib/flow.c:1386,9'
          Dst:             match_set_dl_type
        - Src:             'lib/flow.c:1387,13'
          Dst:             is_ct_valid
        - Src:             'lib/flow.c:1388,34'
          Dst:             htons
        - Src:             'lib/flow.c:1389,17'
          Dst:             match_set_ct_nw_src
        - Src:             'lib/flow.c:1390,17'
          Dst:             match_set_ct_nw_dst
        - Src:             'lib/flow.c:1391,17'
          Dst:             match_set_ct_nw_proto
        - Src:             'lib/flow.c:1392,17'
          Dst:             match_set_ct_tp_src
        - Src:             'lib/flow.c:1393,17'
          Dst:             match_set_ct_tp_dst
        - Src:             'lib/flow.c:1394,41'
          Dst:             htons
        - Src:             'lib/flow.c:1395,17'
          Dst:             match_set_ct_ipv6_src
        - Src:             'lib/flow.c:1396,17'
          Dst:             match_set_ct_ipv6_dst
        - Src:             'lib/flow.c:1397,17'
          Dst:             match_set_ct_nw_proto
        - Src:             'lib/flow.c:1398,17'
          Dst:             match_set_ct_tp_src
        - Src:             'lib/flow.c:1399,17'
          Dst:             match_set_ct_tp_dst
        - Src:             'lib/flow.c:1404,9'
          Dst:             match_set_ct_zone
        - Src:             'lib/flow.c:1407,9'
          Dst:             match_set_ct_mark
        - Src:             'lib/flow.c:1409,10'
          Dst:             ovs_u128_is_zero
        - Src:             'lib/flow.c:1410,9'
          Dst:             match_set_ct_label
    - functionName:    flow_zero_wildcards
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1288
      functionLinenumberEnd: 1296
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         5
      ICount:          43
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    parse_dl_type
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1179
      functionLinenumberEnd: 1186
      functionDepth:   0
      returnType:      short
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         33
      ICount:          261
      EdgeCount:       45
      CyclomaticComplexity: 14
      functionsReached:
        - data_pull
        - eth_type_vlan
        - get_16aligned_be32
        - htons
        - memcmp
        - ntohs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:1182,9'
          Dst:             data_pull
        - Src:             'lib/flow.c:1182,9'
          Dst:             eth_type_vlan
        - Src:             'lib/flow.c:1182,9'
          Dst:             data_pull
        - Src:             'lib/flow.c:1182,9'
          Dst:             get_16aligned_be32
        - Src:             'lib/flow.c:1182,9'
          Dst:             htons
        - Src:             'lib/flow.c:1186,12'
          Dst:             data_pull
        - Src:             'lib/flow.c:1186,12'
          Dst:             ntohs
        - Src:             'lib/flow.c:1186,12'
          Dst:             htons
        - Src:             'lib/flow.c:1186,12'
          Dst:             memcmp
        - Src:             'lib/flow.c:1186,12'
          Dst:             htons
        - Src:             'lib/flow.c:1186,12'
          Dst:             data_pull
        - Src:             'lib/flow.c:1186,12'
          Dst:             ntohs
        - Src:             'lib/flow.c:1186,12'
          Dst:             htons
    - functionName:    data_pull
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 110
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          25
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    15
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_16aligned_be32
      functionSourceFile: '/src/openvswitch/lib/unaligned.h'
      linkageType:     InternalLinkage
      functionLinenumber: 246
      functionLinenumberEnd: 250
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    parse_tcp_flags
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1201
      functionLinenumberEnd: 1282
      functionDepth:   0
      returnType:      short
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         53
      ICount:          375
      EdgeCount:       71
      CyclomaticComplexity: 20
      functionsReached:
        - data_pull
        - dp_packet_data
        - dp_packet_is_eth
        - dp_packet_l4_proto_set_sctp
        - dp_packet_l4_proto_set_tcp
        - dp_packet_l4_proto_set_udp
        - dp_packet_reset_offsets
        - dp_packet_set_l2_pad_size
        - dp_packet_size
        - dump_invalid_packet
        - eth_type_mpls
        - htons
        - ipv4_get_nw_frag
        - ipv4_sanity_check
        - ipv6_sanity_check
        - ntohs
        - parse_dl_type
        - parse_ipv6_ext_hdrs
        - vlog_is_enabled
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:1202,24'
          Dst:             dp_packet_data
        - Src:             'lib/flow.c:1204,19'
          Dst:             dp_packet_size
        - Src:             'lib/flow.c:1208,10'
          Dst:             dp_packet_is_eth
        - Src:             'lib/flow.c:1212,5'
          Dst:             dp_packet_reset_offsets
        - Src:             'lib/flow.c:1214,15'
          Dst:             parse_dl_type
        - Src:             'lib/flow.c:1218,9'
          Dst:             eth_type_mpls
        - Src:             'lib/flow.c:1222,9'
          Dst:             htons
        - Src:             'lib/flow.c:1227,13'
          Dst:             ipv4_sanity_check
        - Src:             'lib/flow.c:1228,17'
          Dst:             vlog_is_enabled
        - Src:             'lib/flow.c:1229,17'
          Dst:             dump_invalid_packet
        - Src:             'lib/flow.c:1233,9'
          Dst:             dp_packet_set_l2_pad_size
        - Src:             'lib/flow.c:1235,19'
          Dst:             ipv4_get_nw_frag
        - Src:             'lib/flow.c:1238,9'
          Dst:             data_pull
        - Src:             'lib/flow.c:1239,27'
          Dst:             htons
        - Src:             'lib/flow.c:1243,13'
          Dst:             ipv6_sanity_check
        - Src:             'lib/flow.c:1244,17'
          Dst:             vlog_is_enabled
        - Src:             'lib/flow.c:1245,17'
          Dst:             dump_invalid_packet
        - Src:             'lib/flow.c:1249,9'
          Dst:             data_pull
        - Src:             'lib/flow.c:1251,16'
          Dst:             ntohs
        - Src:             'lib/flow.c:1252,9'
          Dst:             dp_packet_set_l2_pad_size
        - Src:             'lib/flow.c:1255,14'
          Dst:             parse_ipv6_ext_hdrs
        - Src:             'lib/flow.c:1272,13'
          Dst:             dp_packet_l4_proto_set_tcp
        - Src:             'lib/flow.c:1273,20'
          Dst:             ntohs
        - Src:             'lib/flow.c:1275,13'
          Dst:             dp_packet_l4_proto_set_udp
        - Src:             'lib/flow.c:1277,13'
          Dst:             dp_packet_l4_proto_set_sctp
    - functionName:    dp_packet_reset_offsets
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 424
      functionLinenumberEnd: 428
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_reset_outer_offsets
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:425,5'
          Dst:             dp_packet_reset_outer_offsets
    - functionName:    ipv4_sanity_check
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 685
      functionLinenumberEnd: 711
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          137
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - miniflow_extract_ipv4_pkt_len_error_add
        - miniflow_extract_ipv4_pkt_too_short_add
        - ntohs
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:690,9'
          Dst:             miniflow_extract_ipv4_pkt_too_short_add
        - Src:             'lib/flow.c:696,9'
          Dst:             miniflow_extract_ipv4_pkt_len_error_add
        - Src:             'lib/flow.c:700,15'
          Dst:             ntohs
        - Src:             'lib/flow.c:703,9'
          Dst:             miniflow_extract_ipv4_pkt_len_error_add
    - functionName:    dump_invalid_packet
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 754
      functionLinenumberEnd: 767
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          64
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - dp_packet_data
        - dp_packet_size
        - ds_cstr
        - ds_destroy
        - ds_put_hex_dump
        - vlog
        - vlog_should_drop
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:759,9'
          Dst:             vlog_should_drop
        - Src:             'lib/flow.c:762,12'
          Dst:             dp_packet_size
        - Src:             'lib/flow.c:763,26'
          Dst:             dp_packet_data
        - Src:             'lib/flow.c:763,5'
          Dst:             ds_put_hex_dump
        - Src:             'lib/flow.c:764,5'
          Dst:             ds_cstr
        - Src:             'lib/flow.c:764,5'
          Dst:             vlog
        - Src:             'lib/flow.c:766,5'
          Dst:             ds_destroy
    - functionName:    dp_packet_set_l2_pad_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 438
      functionLinenumberEnd: 441
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_size
        - ovs_ignore
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:439,28'
          Dst:             dp_packet_size
        - Src:             'lib/dp-packet.h:439,5'
          Dst:             ovs_ignore
    - functionName:    ipv4_get_nw_frag
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 715
      functionLinenumberEnd: 725
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          61
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - htons
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:718,9'
          Dst:             htons
        - Src:             'lib/flow.c:720,31'
          Dst:             htons
    - functionName:    ipv6_sanity_check
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 730
      functionLinenumberEnd: 750
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          86
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - miniflow_extract_ipv6_pkt_len_error_add
        - miniflow_extract_ipv6_pkt_too_short_add
        - ntohs
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:734,9'
          Dst:             miniflow_extract_ipv6_pkt_too_short_add
        - Src:             'lib/flow.c:738,12'
          Dst:             ntohs
        - Src:             'lib/flow.c:740,9'
          Dst:             miniflow_extract_ipv6_pkt_len_error_add
        - Src:             'lib/flow.c:745,9'
          Dst:             miniflow_extract_ipv6_pkt_len_error_add
    - functionName:    parse_ipv6_ext_hdrs
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 605
      functionLinenumberEnd: 607
      functionDepth:   0
      returnType:      bool
      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:
        - parse_ipv6_ext_hdrs__
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:606,12'
          Dst:             parse_ipv6_ext_hdrs__
    - functionName:    dp_packet_l4_proto_set_tcp
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1266
      functionLinenumberEnd: 1269
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_l4_proto_set_udp
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1280
      functionLinenumberEnd: 1283
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_l4_proto_set_sctp
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1294
      functionLinenumberEnd: 1296
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    parse_ipv6_ext_hdrs__
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 491
      functionLinenumberEnd: 579
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         58
      ICount:          380
      EdgeCount:       79
      CyclomaticComplexity: 23
      functionsReached:
        - data_try_pull
        - htons
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:528,17'
          Dst:             data_try_pull
        - Src:             'lib/flow.c:540,17'
          Dst:             data_try_pull
        - Src:             'lib/flow.c:551,17'
          Dst:             data_try_pull
        - Src:             'lib/flow.c:564,18'
          Dst:             data_try_pull
        - Src:             'lib/flow.c:569,44'
          Dst:             htons
        - Src:             'lib/flow.c:571,66'
          Dst:             htons
    - functionName:    data_try_pull
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 122
      functionLinenumberEnd: 123
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - data_pull
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:123,41'
          Dst:             data_pull
    - functionName:    dp_packet_reset_outer_offsets
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 413
      functionLinenumberEnd: 418
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    icmp6_is_nd
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 407
      functionLinenumberEnd: 410
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          44
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    parse_icmpv6
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 422
      functionLinenumberEnd: 484
      functionDepth:   0
      returnType:      bool
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         42
      ICount:          280
      EdgeCount:       56
      CyclomaticComplexity: 16
      functionsReached:
        - data_try_pull
        - eth_addr_is_zero
        - get_16aligned_be32
        - icmp6_is_nd
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:423,10'
          Dst:             icmp6_is_nd
        - Src:             'lib/flow.c:431,18'
          Dst:             get_16aligned_be32
        - Src:             'lib/flow.c:433,18'
          Dst:             data_try_pull
        - Src:             'lib/flow.c:452,17'
          Dst:             eth_addr_is_zero
        - Src:             'lib/flow.c:462,17'
          Dst:             eth_addr_is_zero
        - Src:             'lib/flow.c:473,13'
          Dst:             data_try_pull
    - functionName:    bytes_to_be32
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 110
      functionLinenumberEnd: 116
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - char
        - char
        - char
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          29
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    parse_mpls
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 334
      functionLinenumberEnd: 344
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          64
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - data_try_pull
        - htons
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:338,18'
          Dst:             data_try_pull
        - Src:             'lib/flow.c:340,31'
          Dst:             htons
    - functionName:    dp_packet_tunnel
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1135
      functionLinenumberEnd: 1136
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    odp_to_u32
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 202
      functionLinenumberEnd: 203
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    miniflow_extract
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 797
      functionLinenumberEnd: 1536
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         561
      ICount:          4056
      EdgeCount:       726
      CyclomaticComplexity: 167
      functionsReached:
        - bytes_to_be32
        - data_pull
        - data_try_pull
        - dp_packet_data
        - dp_packet_l4_proto_set_sctp
        - dp_packet_l4_proto_set_tcp
        - dp_packet_l4_proto_set_udp
        - dp_packet_reset_offsets
        - dp_packet_reset_outer_offsets
        - dp_packet_rss_valid
        - dp_packet_set_l2_pad_size
        - dp_packet_set_rss_hash
        - dp_packet_size
        - dp_packet_tunnel
        - dump_invalid_packet
        - eth_type_mpls
        - eth_type_vlan
        - flow_tnl_dst_is_set
        - flowmap_set
        - get_16aligned_be32
        - hash_add
        - hash_add64
        - hash_finish
        - htonl
        - htons
        - icmp6_is_nd
        - ipv4_get_nw_frag
        - ipv4_sanity_check
        - ipv6_sanity_check
        - memcmp
        - miniflow_values
        - ntohl
        - ntohs
        - odp_to_u32
        - ovs_u128_is_zero
        - parse_icmpv6
        - parse_ipv6_ext_hdrs
        - parse_mpls
        - parse_nsh
        - pt_ns_type_be
        - vlog_is_enabled
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:802,24'
          Dst:             dp_packet_data
        - Src:             'lib/flow.c:803,19'
          Dst:             dp_packet_size
        - Src:             'lib/flow.c:805,24'
          Dst:             miniflow_values
        - Src:             'lib/flow.c:815,9'
          Dst:             flow_tnl_dst_is_set
        - Src:             'lib/flow.c:816,9'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:822,17'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:828,17'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:830,17'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:838,9'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:841,5'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:842,5'
          Dst:             odp_to_u32
        - Src:             'lib/flow.c:844,9'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:849,9'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:851,14'
          Dst:             ovs_u128_is_zero
        - Src:             'lib/flow.c:852,13'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:857,13'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:860,9'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:866,9'
          Dst:             dp_packet_tunnel
        - Src:             'lib/flow.c:868,9'
          Dst:             dp_packet_reset_outer_offsets
        - Src:             'lib/flow.c:870,9'
          Dst:             dp_packet_reset_offsets
        - Src:             'lib/flow.c:873,24'
          Dst:             htonl
        - Src:             'lib/flow.c:880,13'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:884,32'
          Dst:             data_pull
        - Src:             'lib/flow.c:884,32'
          Dst:             eth_type_vlan
        - Src:             'lib/flow.c:884,32'
          Dst:             data_pull
        - Src:             'lib/flow.c:884,32'
          Dst:             get_16aligned_be32
        - Src:             'lib/flow.c:884,32'
          Dst:             htons
        - Src:             'lib/flow.c:886,23'
          Dst:             data_pull
        - Src:             'lib/flow.c:886,23'
          Dst:             ntohs
        - Src:             'lib/flow.c:886,23'
          Dst:             htons
        - Src:             'lib/flow.c:886,23'
          Dst:             memcmp
        - Src:             'lib/flow.c:886,23'
          Dst:             htons
        - Src:             'lib/flow.c:886,23'
          Dst:             data_pull
        - Src:             'lib/flow.c:886,23'
          Dst:             ntohs
        - Src:             'lib/flow.c:886,23'
          Dst:             htons
        - Src:             'lib/flow.c:890,17'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:896,19'
          Dst:             pt_ns_type_be
        - Src:             'lib/flow.c:897,9'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:904,9'
          Dst:             eth_type_mpls
        - Src:             'lib/flow.c:909,17'
          Dst:             parse_mpls
        - Src:             'lib/flow.c:910,9'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:917,9'
          Dst:             htons
        - Src:             'lib/flow.c:922,13'
          Dst:             ipv4_sanity_check
        - Src:             'lib/flow.c:923,17'
          Dst:             vlog_is_enabled
        - Src:             'lib/flow.c:924,17'
          Dst:             dump_invalid_packet
        - Src:             'lib/flow.c:928,9'
          Dst:             dp_packet_set_l2_pad_size
        - Src:             'lib/flow.c:932,9'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:936,17'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:943,9'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:948,19'
          Dst:             ipv4_get_nw_frag
        - Src:             'lib/flow.c:949,9'
          Dst:             data_pull
        - Src:             'lib/flow.c:950,27'
          Dst:             htons
        - Src:             'lib/flow.c:955,13'
          Dst:             ipv6_sanity_check
        - Src:             'lib/flow.c:956,17'
          Dst:             vlog_is_enabled
        - Src:             'lib/flow.c:957,17'
          Dst:             dump_invalid_packet
        - Src:             'lib/flow.c:961,9'
          Dst:             data_pull
        - Src:             'lib/flow.c:962,16'
          Dst:             ntohs
        - Src:             'lib/flow.c:963,9'
          Dst:             dp_packet_set_l2_pad_size
        - Src:             'lib/flow.c:966,9'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:968,9'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:973,17'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:982,19'
          Dst:             get_16aligned_be32
        - Src:             'lib/flow.c:983,18'
          Dst:             ntohl
        - Src:             'lib/flow.c:987,14'
          Dst:             parse_ipv6_ext_hdrs
        - Src:             'lib/flow.c:995,36'
          Dst:             htonl
        - Src:             'lib/flow.c:996,9'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:998,24'
          Dst:             htons
        - Src:             'lib/flow.c:999,24'
          Dst:             htons
        - Src:             'lib/flow.c:1002,17'
          Dst:             data_try_pull
        - Src:             'lib/flow.c:1004,36'
          Dst:             htons
        - Src:             'lib/flow.c:1005,20'
          Dst:             htons
        - Src:             'lib/flow.c:1008,17'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:1008,17'
          Dst:             get_16aligned_be32
        - Src:             'lib/flow.c:1010,17'
          Dst:             get_16aligned_be32
        - Src:             'lib/flow.c:1014,21'
          Dst:             ntohs
        - Src:             'lib/flow.c:1015,21'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:1016,21'
          Dst:             ntohs
        - Src:             'lib/flow.c:1016,21'
          Dst:             htonl
        - Src:             'lib/flow.c:1024,17'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:1027,31'
          Dst:             htons
        - Src:             'lib/flow.c:1030,17'
          Dst:             parse_nsh
        - Src:             'lib/flow.c:1031,17'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:1040,5'
          Dst:             bytes_to_be32
        - Src:             'lib/flow.c:1047,38'
          Dst:             ntohs
        - Src:             'lib/flow.c:1052,21'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:1053,21'
          Dst:             htons
        - Src:             'lib/flow.c:1055,21'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:1059,36'
          Dst:             htons
        - Src:             'lib/flow.c:1060,25'
          Dst:             dp_packet_rss_valid
        - Src:             'lib/flow.c:1060,25'
          Dst:             dp_packet_data
        - Src:             'lib/dp-packet.h:1485,12'
          Dst:             hash_add
        - Src:             'lib/dp-packet.h:1485,12'
          Dst:             hash_add
        - Src:             'lib/dp-packet.h:1485,12'
          Dst:             hash_add
        - Src:             'lib/flow.c:1060,25'
          Dst:             hash_add
        - Src:             'lib/flow.c:1060,25'
          Dst:             hash_finish
        - Src:             'lib/flow.c:1060,25'
          Dst:             dp_packet_set_rss_hash
        - Src:             'lib/flow.c:1061,43'
          Dst:             htons
        - Src:             'lib/flow.c:1062,25'
          Dst:             dp_packet_rss_valid
        - Src:             'lib/flow.c:1062,25'
          Dst:             dp_packet_data
        - Src:             'lib/flow.c:1062,25'
          Dst:             hash_add64
        - Src:             'lib/flow.c:1062,25'
          Dst:             hash_add64
        - Src:             'lib/flow.c:1062,25'
          Dst:             hash_add64
        - Src:             'lib/flow.c:1062,25'
          Dst:             hash_add64
        - Src:             'lib/flow.c:1062,25'
          Dst:             hash_add
        - Src:             'lib/flow.c:1062,25'
          Dst:             hash_add
        - Src:             'lib/flow.c:1062,25'
          Dst:             hash_finish
        - Src:             'lib/flow.c:1062,25'
          Dst:             dp_packet_set_rss_hash
        - Src:             'lib/flow.c:1064,21'
          Dst:             dp_packet_l4_proto_set_tcp
        - Src:             'lib/flow.c:1071,17'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:1075,32'
          Dst:             htons
        - Src:             'lib/flow.c:1076,21'
          Dst:             dp_packet_rss_valid
        - Src:             'lib/flow.c:1076,21'
          Dst:             dp_packet_data
        - Src:             'lib/dp-packet.h:1485,12'
          Dst:             hash_add
        - Src:             'lib/dp-packet.h:1485,12'
          Dst:             hash_add
        - Src:             'lib/dp-packet.h:1485,12'
          Dst:             hash_add
        - Src:             'lib/flow.c:1076,21'
          Dst:             hash_add
        - Src:             'lib/flow.c:1076,21'
          Dst:             hash_finish
        - Src:             'lib/flow.c:1076,21'
          Dst:             dp_packet_set_rss_hash
        - Src:             'lib/flow.c:1077,39'
          Dst:             htons
        - Src:             'lib/flow.c:1078,21'
          Dst:             dp_packet_rss_valid
        - Src:             'lib/flow.c:1078,21'
          Dst:             dp_packet_data
        - Src:             'lib/flow.c:1078,21'
          Dst:             hash_add64
        - Src:             'lib/flow.c:1078,21'
          Dst:             hash_add64
        - Src:             'lib/flow.c:1078,21'
          Dst:             hash_add64
        - Src:             'lib/flow.c:1078,21'
          Dst:             hash_add64
        - Src:             'lib/flow.c:1078,21'
          Dst:             hash_add
        - Src:             'lib/flow.c:1078,21'
          Dst:             hash_add
        - Src:             'lib/flow.c:1078,21'
          Dst:             hash_finish
        - Src:             'lib/flow.c:1078,21'
          Dst:             dp_packet_set_rss_hash
        - Src:             'lib/flow.c:1080,17'
          Dst:             dp_packet_l4_proto_set_udp
        - Src:             'lib/flow.c:1086,17'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:1090,17'
          Dst:             dp_packet_l4_proto_set_sctp
        - Src:             'lib/flow.c:1096,17'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:1096,17'
          Dst:             htons
        - Src:             'lib/flow.c:1097,17'
          Dst:             htons
        - Src:             'lib/flow.c:1105,17'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:1105,17'
          Dst:             htons
        - Src:             'lib/flow.c:1106,17'
          Dst:             htons
        - Src:             'lib/flow.c:1109,17'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:1109,17'
          Dst:             get_16aligned_be32
        - Src:             'lib/flow.c:1124,25'
          Dst:             data_pull
        - Src:             'lib/flow.c:1125,21'
          Dst:             parse_icmpv6
        - Src:             'lib/flow.c:1128,25'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:1131,21'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:1135,25'
          Dst:             htons
        - Src:             'lib/flow.c:1144,21'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:1144,21'
          Dst:             htons
        - Src:             'lib/flow.c:1146,21'
          Dst:             htons
        - Src:             'lib/flow.c:1150,21'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:1154,21'
          Dst:             flowmap_set
        - Src:             'lib/flow.c:1154,21'
          Dst:             htons
        - Src:             'lib/flow.c:1156,21'
          Dst:             htons
        - Src:             'lib/flow.c:1168,55'
          Dst:             icmp6_is_nd
        - Src:             'lib/flow.c:1169,9'
          Dst:             flowmap_set
    - functionName:    parse_nsh
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 612
      functionLinenumberEnd: 664
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          193
      EdgeCount:       28
      CyclomaticComplexity: 7
      functionsReached:
        - data_pull
        - get_16aligned_be32
        - nsh_get_flags
        - nsh_get_path_hdr
        - nsh_get_ttl
        - nsh_get_ver
        - nsh_hdr_len
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/flow.c:638,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/flow.c:623,15'
          Dst:             nsh_get_ver
        - Src:             'lib/flow.c:624,13'
          Dst:             nsh_get_flags
        - Src:             'lib/flow.c:625,14'
          Dst:             nsh_hdr_len
        - Src:             'lib/flow.c:626,11'
          Dst:             nsh_get_ttl
        - Src:             'lib/flow.c:636,21'
          Dst:             nsh_get_path_hdr
        - Src:             'lib/flow.c:644,35'
          Dst:             get_16aligned_be32
        - Src:             'lib/flow.c:661,5'
          Dst:             data_pull
    - functionName:    nsh_get_ver
      functionSourceFile: '/src/openvswitch/./include/openvswitch/nsh.h'
      linkageType:     InternalLinkage
      functionLinenumber: 286
      functionLinenumberEnd: 287
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/nsh.h:287,13'
          Dst:             ntohs
    - functionName:    nsh_get_flags
      functionSourceFile: '/src/openvswitch/./include/openvswitch/nsh.h'
      linkageType:     InternalLinkage
      functionLinenumber: 292
      functionLinenumberEnd: 293
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/nsh.h:293,13'
          Dst:             ntohs
    - functionName:    nsh_hdr_len
      functionSourceFile: '/src/openvswitch/./include/openvswitch/nsh.h'
      linkageType:     InternalLinkage
      functionLinenumber: 273
      functionLinenumberEnd: 275
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/nsh.h:274,14'
          Dst:             ntohs
    - functionName:    nsh_get_ttl
      functionSourceFile: '/src/openvswitch/./include/openvswitch/nsh.h'
      linkageType:     InternalLinkage
      functionLinenumber: 304
      functionLinenumberEnd: 305
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/nsh.h:305,13'
          Dst:             ntohs
    - functionName:    nsh_get_path_hdr
      functionSourceFile: '/src/openvswitch/./include/openvswitch/nsh.h'
      linkageType:     InternalLinkage
      functionLinenumber: 326
      functionLinenumberEnd: 327
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nsh_16aligned_be32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/nsh.h:327,12'
          Dst:             nsh_16aligned_be32
    - functionName:    flow_extract_add
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51
      functionLinenumberEnd: 51
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_flow_extract_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:51,1'
          Dst:             counter_flow_extract_get
    - functionName:    flow_extract
      functionSourceFile: '/src/openvswitch/lib/flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 670
      functionLinenumberEnd: 680
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - flow_extract_add
        - miniflow_expand
        - miniflow_extract
      functionUses:    12
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.c:676,5'
          Dst:             flow_extract_add
        - Src:             'lib/flow.c:678,5'
          Dst:             miniflow_extract
        - Src:             'lib/flow.c:679,5'
          Dst:             miniflow_expand
    - functionName:    unaligned_u64__
      functionSourceFile: '/src/openvswitch/lib/unaligned.h'
      linkageType:     InternalLinkage
      functionLinenumber: 87
      functionLinenumberEnd: 87
      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:    hash_add64
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 113
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_add
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:114,21'
          Dst:             hash_add
        - Src:             'lib/hash.h:114,12'
          Dst:             hash_add
    - functionName:    hash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 108
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_add
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:109,12'
          Dst:             mhash_add
    - functionName:    mhash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_rot
        - mhash_add__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:78,12'
          Dst:             mhash_add__
        - Src:             'lib/hash.h:79,12'
          Dst:             hash_rot
    - functionName:    mhash_add__
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hash_rot
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:71,12'
          Dst:             hash_rot
    - functionName:    hash_rot
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 32
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_add_words64
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 437
      functionLinenumberEnd: 441
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          44
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - hash_add64
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:439,16'
          Dst:             hash_add64
    - functionName:    hash_add_words
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 428
      functionLinenumberEnd: 432
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          44
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - hash_add
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:430,16'
          Dst:             hash_add
    - functionName:    unaligned_u32
      functionSourceFile: '/src/openvswitch/lib/unaligned.h'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 86
      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:    mhash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fmix64
      functionSourceFile: '/src/openvswitch/lib/hash.c'
      linkageType:     InternalLinkage
      functionLinenumber: 247
      functionLinenumberEnd: 254
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_rot64
      functionSourceFile: '/src/openvswitch/lib/hash.c'
      linkageType:     InternalLinkage
      functionLinenumber: 241
      functionLinenumberEnd: 242
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - size_t
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          20
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_unaligned_u64__
      functionSourceFile: '/src/openvswitch/lib/unaligned.h'
      linkageType:     InternalLinkage
      functionLinenumber: 87
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - unaligned_u64__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/unaligned.h:87,1'
          Dst:             unaligned_u64__
    - functionName:    hash_bytes128
      functionSourceFile: '/src/openvswitch/lib/hash.c'
      linkageType:     InternalLinkage
      functionLinenumber: 259
      functionLinenumberEnd: 364
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         38
      ICount:          399
      EdgeCount:       38
      CyclomaticComplexity: 2
      functionsReached:
        - fmix64
        - get_unaligned_u64__
        - hash_rot64
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/hash.c:297,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/hash.c:271,14'
          Dst:             get_unaligned_u64__
        - Src:             'lib/hash.c:272,14'
          Dst:             get_unaligned_u64__
        - Src:             'lib/hash.c:275,14'
          Dst:             hash_rot64
        - Src:             'lib/hash.c:279,14'
          Dst:             hash_rot64
        - Src:             'lib/hash.c:284,14'
          Dst:             hash_rot64
        - Src:             'lib/hash.c:288,14'
          Dst:             hash_rot64
        - Src:             'lib/hash.c:319,14'
          Dst:             hash_rot64
        - Src:             'lib/hash.c:347,14'
          Dst:             hash_rot64
        - Src:             'lib/hash.c:357,10'
          Dst:             fmix64
        - Src:             'lib/hash.c:358,10'
          Dst:             fmix64
    - functionName:    hash_words64_inline
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 135
      functionLinenumberEnd: 136
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_add_words64
        - hash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:136,24'
          Dst:             hash_add_words64
        - Src:             'lib/hash.h:136,12'
          Dst:             hash_finish
    - functionName:    hash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_finish
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:119,12'
          Dst:             mhash_finish
    - functionName:    hash_words64__
      functionSourceFile: '/src/openvswitch/lib/hash.c'
      linkageType:     InternalLinkage
      functionLinenumber: 72
      functionLinenumberEnd: 73
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_words64_inline
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.c:73,12'
          Dst:             hash_words64_inline
    - functionName:    hash_words_inline
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 129
      functionLinenumberEnd: 130
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_add_words
        - hash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:130,24'
          Dst:             hash_add_words
        - Src:             'lib/hash.h:130,12'
          Dst:             hash_finish
    - functionName:    hash_words__
      functionSourceFile: '/src/openvswitch/lib/hash.c'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 67
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_words_inline
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.c:67,12'
          Dst:             hash_words_inline
    - functionName:    hash_double
      functionSourceFile: '/src/openvswitch/lib/hash.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56
      functionLinenumberEnd: 61
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - double
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_3words
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.c:61,12'
          Dst:             hash_3words
    - functionName:    hash_3words
      functionSourceFile: '/src/openvswitch/lib/hash.c'
      linkageType:     InternalLinkage
      functionLinenumber: 24
      functionLinenumberEnd: 25
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_add
        - hash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.c:25,42'
          Dst:             hash_add
        - Src:             'lib/hash.c:25,33'
          Dst:             hash_add
        - Src:             'lib/hash.c:25,24'
          Dst:             hash_add
        - Src:             'lib/hash.c:25,12'
          Dst:             hash_finish
    - functionName:    get_unaligned_u32
      functionSourceFile: '/src/openvswitch/lib/unaligned.h'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 86
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - unaligned_u32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/unaligned.h:86,1'
          Dst:             unaligned_u32
    - functionName:    hash_bytes
      functionSourceFile: '/src/openvswitch/lib/hash.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 51
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          70
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - get_unaligned_u32
        - hash_add
        - hash_finish
      functionUses:    28
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.c:39,25'
          Dst:             get_unaligned_u32
        - Src:             'lib/hash.c:38,16'
          Dst:             hash_add
        - Src:             'lib/hash.c:48,16'
          Dst:             hash_add
        - Src:             'lib/hash.c:51,12'
          Dst:             hash_finish
    - functionName:    unaligned_u32
      functionSourceFile: '/src/openvswitch/lib/unaligned.h'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 86
      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:    jhash_rot
      functionSourceFile: '/src/openvswitch/lib/jhash.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27
      functionLinenumberEnd: 28
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    13
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_unaligned_u32
      functionSourceFile: '/src/openvswitch/lib/unaligned.h'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 86
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - unaligned_u32
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/unaligned.h:86,1'
          Dst:             unaligned_u32
    - functionName:    jhash_bytes
      functionSourceFile: '/src/openvswitch/lib/jhash.c'
      linkageType:     InternalLinkage
      functionLinenumber: 98
      functionLinenumberEnd: 124
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          104
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - get_unaligned_u32
        - jhash_final
        - jhash_mix
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/jhash.c:105,14'
          Dst:             get_unaligned_u32
        - Src:             'lib/jhash.c:106,14'
          Dst:             get_unaligned_u32
        - Src:             'lib/jhash.c:107,14'
          Dst:             get_unaligned_u32
        - Src:             'lib/jhash.c:108,9'
          Dst:             jhash_mix
        - Src:             'lib/jhash.c:121,9'
          Dst:             jhash_final
    - functionName:    jhash_mix
      functionSourceFile: '/src/openvswitch/lib/jhash.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33
      functionLinenumberEnd: 40
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          131
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - jhash_rot
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/jhash.c:34,23'
          Dst:             jhash_rot
        - Src:             'lib/jhash.c:35,23'
          Dst:             jhash_rot
        - Src:             'lib/jhash.c:36,23'
          Dst:             jhash_rot
        - Src:             'lib/jhash.c:37,23'
          Dst:             jhash_rot
        - Src:             'lib/jhash.c:38,23'
          Dst:             jhash_rot
        - Src:             'lib/jhash.c:39,23'
          Dst:             jhash_rot
    - functionName:    jhash_final
      functionSourceFile: '/src/openvswitch/lib/jhash.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          108
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - jhash_rot
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/jhash.c:45,23'
          Dst:             jhash_rot
        - Src:             'lib/jhash.c:46,23'
          Dst:             jhash_rot
        - Src:             'lib/jhash.c:47,23'
          Dst:             jhash_rot
        - Src:             'lib/jhash.c:48,23'
          Dst:             jhash_rot
        - Src:             'lib/jhash.c:49,23'
          Dst:             jhash_rot
        - Src:             'lib/jhash.c:50,23'
          Dst:             jhash_rot
        - Src:             'lib/jhash.c:51,23'
          Dst:             jhash_rot
    - functionName:    jhash_words
      functionSourceFile: '/src/openvswitch/lib/jhash.c'
      linkageType:     InternalLinkage
      functionLinenumber: 61
      functionLinenumberEnd: 89
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          108
      EdgeCount:       15
      CyclomaticComplexity: 2
      functionsReached:
        - jhash_final
        - jhash_mix
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib/jhash.c:75,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/jhash.c:70,9'
          Dst:             jhash_mix
        - Src:             'lib/jhash.c:84,9'
          Dst:             jhash_final
    - functionName:    miniflow_get_dp_hash
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 890
      functionLinenumberEnd: 891
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - flowmap_is_set
        - miniflow_get__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:891,12'
          Dst:             flowmap_is_set
        - Src:             'lib/flow.h:891,12'
          Dst:             miniflow_get__
    - functionName:    flowmap_is_set
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 355
      functionLinenumberEnd: 356
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          20
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    miniflow_get__
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 678
      functionLinenumberEnd: 686
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - count_1bits
        - miniflow_get_values
        - miniflow_values_get__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:679,30'
          Dst:             miniflow_get_values
        - Src:             'lib/flow.h:684,19'
          Dst:             count_1bits
        - Src:             'lib/flow.h:686,12'
          Dst:             miniflow_values_get__
    - functionName:    miniflow_get_values
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 535
      functionLinenumberEnd: 536
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    count_1bits
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 332
      functionLinenumberEnd: 347
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          37
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    miniflow_values_get__
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 670
      functionLinenumberEnd: 671
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - count_1bits
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:671,21'
          Dst:             count_1bits
    - functionName:    miniflow_get_recirc_id
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 883
      functionLinenumberEnd: 884
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - flowmap_is_set
        - miniflow_get__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:884,12'
          Dst:             flowmap_is_set
        - Src:             'lib/flow.h:884,12'
          Dst:             miniflow_get__
    - functionName:    zero_rightmost_1bit
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 390
      functionLinenumberEnd: 391
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    raw_ctz
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 261
      functionLinenumberEnd: 267
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          36
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    flowmap_n_1bits
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 462
      functionLinenumberEnd: 469
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          45
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - count_1bits
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:467,20'
          Dst:             count_1bits
    - functionName:    get_dl_type
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1036
      functionLinenumberEnd: 1044
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          53
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - htonl
        - htons
        - pt_ns
        - pt_ns_type_be
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:1037,30'
          Dst:             htonl
        - Src:             'lib/flow.h:1039,16'
          Dst:             pt_ns
        - Src:             'lib/flow.h:1040,16'
          Dst:             pt_ns_type_be
        - Src:             'lib/flow.h:1042,16'
          Dst:             htons
    - functionName:    pt_ns
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1570
      functionLinenumberEnd: 1571
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohl
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:1571,12'
          Dst:             ntohl
    - functionName:    pt_ns_type_be
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1577
      functionLinenumberEnd: 1578
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - be32_to_be16
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:1578,12'
          Dst:             be32_to_be16
    - functionName:    be32_to_be16
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 135
      functionLinenumberEnd: 135
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dl_type_is_ip_any
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1256
      functionLinenumberEnd: 1258
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htons
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:1257,23'
          Dst:             htons
        - Src:             'lib/packets.h:1258,23'
          Dst:             htons
    - functionName:    nsh_path_hdr_to_si
      functionSourceFile: '/src/openvswitch/./include/openvswitch/nsh.h'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 360
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohl
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/nsh.h:360,13'
          Dst:             ntohl
    - functionName:    format_be32_masked_hex
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1306
      functionLinenumberEnd: 1317
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          58
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ds_put_char
        - ds_put_format
        - htonl
        - ntohl
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:1307,17'
          Dst:             htonl
        - Src:             'lib/match.c:1308,9'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1310,43'
          Dst:             ntohl
        - Src:             'lib/match.c:1310,13'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1313,27'
          Dst:             ntohl
        - Src:             'lib/match.c:1313,41'
          Dst:             ntohl
        - Src:             'lib/match.c:1312,13'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1315,9'
          Dst:             ds_put_char
    - functionName:    ds_put_char
      functionSourceFile: '/src/openvswitch/./include/openvswitch/dynamic-string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_char__
      functionUses:    17
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/dynamic-string.h:99,9'
          Dst:             ds_put_char__
    - functionName:    format_uint8_masked
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1244
      functionLinenumberEnd: 1254
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - char
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          59
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ds_put_char
        - ds_put_format
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:1246,9'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1248,13'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1250,13'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1252,9'
          Dst:             ds_put_char
    - functionName:    nsh_path_hdr_to_spi
      functionSourceFile: '/src/openvswitch/./include/openvswitch/nsh.h'
      linkageType:     InternalLinkage
      functionLinenumber: 346
      functionLinenumberEnd: 348
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
        - ntohl
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/nsh.h:347,20'
          Dst:             ntohl
        - Src:             './include/openvswitch/nsh.h:348,12'
          Dst:             htonl
    - functionName:    eth_addr_is_zero
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 246
      functionLinenumberEnd: 247
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          25
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ntohll
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
        - ntohl
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byte-order.h:36,12'
          Dst:             htonl
        - Src:             'lib/byte-order.h:36,44'
          Dst:             ntohl
        - Src:             'lib/byte-order.h:36,62'
          Dst:             ntohl
    - functionName:    ipv6_addr_equals
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1184
      functionLinenumberEnd: 1186
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          80
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ipv6_mask_is_any
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1193
      functionLinenumberEnd: 1194
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ipv6_addr_equals
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:1194,12'
          Dst:             ipv6_addr_equals
    - functionName:    htonll
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 30
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byte-order.h:30,12'
          Dst:             htonl
        - Src:             'lib/byte-order.h:30,44'
          Dst:             htonl
        - Src:             'lib/byte-order.h:30,62'
          Dst:             htonl
    - functionName:    hton128
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 48
      functionLinenumberEnd: 53
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonll
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byte-order.h:51,19'
          Dst:             htonll
        - Src:             'lib/byte-order.h:52,19'
          Dst:             htonll
    - functionName:    hash_rot
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 32
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhash_add__
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hash_rot
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:71,12'
          Dst:             hash_rot
    - functionName:    mhash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_rot
        - mhash_add__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:78,12'
          Dst:             mhash_add__
        - Src:             'lib/hash.h:79,12'
          Dst:             hash_rot
    - functionName:    hash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 108
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_add
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:109,12'
          Dst:             mhash_add
    - functionName:    hash_add64
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 113
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_add
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:114,21'
          Dst:             hash_add
        - Src:             'lib/hash.h:114,12'
          Dst:             hash_add
    - functionName:    mhash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_add_words64
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 437
      functionLinenumberEnd: 441
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          44
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - hash_add64
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:439,16'
          Dst:             hash_add64
    - functionName:    hash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:119,12'
          Dst:             mhash_finish
    - functionName:    hash_words64_inline
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 135
      functionLinenumberEnd: 136
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_add_words64
        - hash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:136,24'
          Dst:             hash_add_words64
        - Src:             'lib/hash.h:136,12'
          Dst:             hash_finish
    - functionName:    hash_words64
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 367
      functionLinenumberEnd: 373
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hash_words64__
        - hash_words64_inline
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:369,16'
          Dst:             hash_words64_inline
        - Src:             'lib/hash.h:371,16'
          Dst:             hash_words64__
    - functionName:    hash_bytes64
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 398
      functionLinenumberEnd: 399
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_words64
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:399,12'
          Dst:             hash_words64
    - functionName:    flow_compare_3way
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 178
      functionLinenumberEnd: 179
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:179,12'
          Dst:             memcmp
    - functionName:    minimatch_has_default_dp_hash
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1966
      functionLinenumberEnd: 1968
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - miniflow_get_dp_hash
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:1967,14'
          Dst:             miniflow_get_dp_hash
        - Src:             'lib/match.c:1968,17'
          Dst:             miniflow_get_dp_hash
    - functionName:    minimatch_has_default_recirc_id
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1957
      functionLinenumberEnd: 1961
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          54
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - miniflow_get_recirc_id
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:1958,31'
          Dst:             miniflow_get_recirc_id
        - Src:             'lib/match.c:1959,31'
          Dst:             miniflow_get_recirc_id
    - functionName:    minimatch_has_default_hidden_fields
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1975
      functionLinenumberEnd: 1977
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          27
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - minimatch_has_default_dp_hash
        - minimatch_has_default_recirc_id
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:1976,13'
          Dst:             minimatch_has_default_recirc_id
        - Src:             'lib/match.c:1977,16'
          Dst:             minimatch_has_default_dp_hash
    - functionName:    minimatch_to_string
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1948
      functionLinenumberEnd: 1952
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - match_to_string
        - minimatch_expand
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:1951,5'
          Dst:             minimatch_expand
        - Src:             'lib/match.c:1952,12'
          Dst:             match_to_string
    - functionName:    minimatch_expand
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1877
      functionLinenumberEnd: 1881
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - miniflow_expand
        - minimask_expand
        - tun_metadata_allocation_copy
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:1878,5'
          Dst:             miniflow_expand
        - Src:             'lib/match.c:1879,5'
          Dst:             minimask_expand
        - Src:             'lib/match.c:1880,5'
          Dst:             tun_metadata_allocation_copy
    - functionName:    match_to_string
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1800
      functionLinenumberEnd: 1803
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_steal_cstr
        - match_format
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:1802,5'
          Dst:             match_format
        - Src:             'lib/match.c:1803,12'
          Dst:             ds_steal_cstr
    - functionName:    match_format
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1455
      functionLinenumberEnd: 1791
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         251
      ICount:          2024
      EdgeCount:       333
      CyclomaticComplexity: 84
      functionsReached:
        - ct_state_to_string
        - ds_chomp
        - ds_put_char
        - ds_put_cstr
        - ds_put_format
        - format_be16_masked
        - format_be32_masked
        - format_be64_masked
        - format_ct_label_masked
        - format_eth_masked
        - format_flags
        - format_flags_masked
        - format_flow_tunnel
        - format_ip_netmask
        - format_ipv6_netmask
        - format_nsh_masked
        - format_packet_type_masked
        - format_uint16_masked
        - format_uint32_masked
        - htonl
        - htons
        - is_ip_any
        - match_has_default_packet_type
        - mpls_lse_to_bos
        - mpls_lse_to_label
        - mpls_lse_to_tc
        - mpls_lse_to_ttl
        - ntohl
        - ntohs
        - ofputil_format_port
        - ovs_u128_is_zero
        - packet_tcp_flag_to_string
        - pt_ns
        - pt_ns_type_be
        - snprintf
        - strcpy
        - vlan_tci_to_pcp
        - vlan_tci_to_vid
      functionUses:    14
      BranchProfiles:
        - Branch String:   'lib/match.c:1740,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/match.c:1468,9'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1472,5'
          Dst:             format_uint32_masked
        - Src:             'lib/match.c:1475,9'
          Dst:             format_uint32_masked
        - Src:             'lib/match.c:1481,9'
          Dst:             format_uint32_masked
        - Src:             'lib/match.c:1486,9'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1491,9'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1496,9'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1497,9'
          Dst:             ofputil_format_port
        - Src:             'lib/match.c:1498,9'
          Dst:             ds_put_char
        - Src:             'lib/match.c:1503,13'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1505,17'
          Dst:             format_flags
        - Src:             'lib/match.c:1505,17'
          Dst:             ct_state_to_string
        - Src:             'lib/match.c:1507,17'
          Dst:             ds_put_cstr
        - Src:             'lib/match.c:1510,13'
          Dst:             format_flags_masked
        - Src:             'lib/match.c:1510,13'
          Dst:             ct_state_to_string
        - Src:             'lib/match.c:1513,9'
          Dst:             ds_put_char
        - Src:             'lib/match.c:1517,9'
          Dst:             format_uint16_masked
        - Src:             'lib/match.c:1521,9'
          Dst:             format_uint32_masked
        - Src:             'lib/match.c:1524,10'
          Dst:             ovs_u128_is_zero
        - Src:             'lib/match.c:1525,9'
          Dst:             format_ct_label_masked
        - Src:             'lib/match.c:1528,5'
          Dst:             format_ip_netmask
        - Src:             'lib/match.c:1530,5'
          Dst:             format_ipv6_netmask
        - Src:             'lib/match.c:1532,5'
          Dst:             format_ip_netmask
        - Src:             'lib/match.c:1534,5'
          Dst:             format_ipv6_netmask
        - Src:             'lib/match.c:1537,9'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1539,9'
          Dst:             format_be16_masked
        - Src:             'lib/match.c:1540,9'
          Dst:             format_be16_masked
        - Src:             'lib/match.c:1544,11'
          Dst:             match_has_default_packet_type
        - Src:             'lib/match.c:1545,9'
          Dst:             format_packet_type_masked
        - Src:             'lib/match.c:1546,9'
          Dst:             ds_put_char
        - Src:             'lib/match.c:1547,13'
          Dst:             pt_ns
        - Src:             'lib/match.c:1548,23'
          Dst:             pt_ns_type_be
        - Src:             'lib/match.c:1554,24'
          Dst:             htons
        - Src:             'lib/match.c:1558,21'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1560,21'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1562,21'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1564,21'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1566,21'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1570,17'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1572,31'
          Dst:             htons
        - Src:             'lib/match.c:1576,21'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1578,21'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1580,21'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1582,21'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1584,21'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1588,17'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1590,31'
          Dst:             htons
        - Src:             'lib/match.c:1591,13'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1592,31'
          Dst:             htons
        - Src:             'lib/match.c:1593,13'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1594,31'
          Dst:             htons
        - Src:             'lib/match.c:1595,13'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1596,31'
          Dst:             htons
        - Src:             'lib/match.c:1597,13'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1605,13'
          Dst:             snprintf
        - Src:             'lib/match.c:1606,13'
          Dst:             strcpy
        - Src:             'lib/match.c:1608,9'
          Dst:             format_uint32_masked
        - Src:             'lib/match.c:1611,5'
          Dst:             format_flow_tunnel
        - Src:             'lib/match.c:1613,5'
          Dst:             format_be64_masked
        - Src:             'lib/match.c:1616,9'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1617,9'
          Dst:             ofputil_format_port
        - Src:             'lib/match.c:1618,9'
          Dst:             ds_put_char
        - Src:             'lib/match.c:1631,13'
          Dst:             snprintf
        - Src:             'lib/match.c:1633,54'
          Dst:             htons
        - Src:             'lib/match.c:1634,54'
          Dst:             htons
        - Src:             'lib/match.c:1635,49'
          Dst:             htons
        - Src:             'lib/match.c:1637,38'
          Dst:             htons
        - Src:             'lib/match.c:1638,42'
          Dst:             htons
        - Src:             'lib/match.c:1639,42'
          Dst:             htons
        - Src:             'lib/match.c:1644,31'
          Dst:             vlan_tci_to_vid
        - Src:             'lib/match.c:1642,17'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1649,31'
          Dst:             vlan_tci_to_pcp
        - Src:             'lib/match.c:1647,17'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1651,46'
          Dst:             htons
        - Src:             'lib/match.c:1654,27'
          Dst:             ntohs
        - Src:             'lib/match.c:1652,13'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1658,27'
          Dst:             ntohs
        - Src:             'lib/match.c:1659,27'
          Dst:             ntohs
        - Src:             'lib/match.c:1656,13'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1663,5'
          Dst:             format_eth_masked
        - Src:             'lib/match.c:1664,5'
          Dst:             format_eth_masked
        - Src:             'lib/match.c:1668,49'
          Dst:             ntohs
        - Src:             'lib/match.c:1667,9'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1670,20'
          Dst:             htons
        - Src:             'lib/match.c:1671,9'
          Dst:             format_ipv6_netmask
        - Src:             'lib/match.c:1672,9'
          Dst:             format_ipv6_netmask
        - Src:             'lib/match.c:1677,31'
          Dst:             ntohl
        - Src:             'lib/match.c:1675,17'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1680,57'
          Dst:             ntohl
        - Src:             'lib/match.c:1681,31'
          Dst:             ntohl
        - Src:             'lib/match.c:1679,17'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1684,27'
          Dst:             htons
        - Src:             'lib/match.c:1685,27'
          Dst:             htons
        - Src:             'lib/match.c:1686,9'
          Dst:             format_ip_netmask
        - Src:             'lib/match.c:1687,9'
          Dst:             format_ip_netmask
        - Src:             'lib/match.c:1688,27'
          Dst:             htons
        - Src:             'lib/match.c:1689,9'
          Dst:             format_nsh_masked
        - Src:             'lib/match.c:1691,9'
          Dst:             format_ip_netmask
        - Src:             'lib/match.c:1692,9'
          Dst:             format_ip_netmask
        - Src:             'lib/match.c:1695,24'
          Dst:             htons
        - Src:             'lib/match.c:1696,24'
          Dst:             htons
        - Src:             'lib/match.c:1697,13'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1700,13'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1704,20'
          Dst:             htons
        - Src:             'lib/match.c:1705,20'
          Dst:             htons
        - Src:             'lib/match.c:1706,9'
          Dst:             format_eth_masked
        - Src:             'lib/match.c:1707,9'
          Dst:             format_eth_masked
        - Src:             'lib/match.c:1710,9'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1714,9'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1718,9'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1721,33'
          Dst:             htonl
        - Src:             'lib/match.c:1723,35'
          Dst:             mpls_lse_to_label
        - Src:             'lib/match.c:1722,9'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1725,33'
          Dst:             htonl
        - Src:             'lib/match.c:1727,23'
          Dst:             mpls_lse_to_tc
        - Src:             'lib/match.c:1726,9'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1729,33'
          Dst:             htonl
        - Src:             'lib/match.c:1731,23'
          Dst:             mpls_lse_to_ttl
        - Src:             'lib/match.c:1730,9'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1733,33'
          Dst:             htonl
        - Src:             'lib/match.c:1735,23'
          Dst:             mpls_lse_to_bos
        - Src:             'lib/match.c:1734,9'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1737,5'
          Dst:             format_be32_masked
        - Src:             'lib/match.c:1738,5'
          Dst:             format_be32_masked
        - Src:             'lib/match.c:1742,9'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1749,9'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1754,9'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1758,20'
          Dst:             htons
        - Src:             'lib/match.c:1760,9'
          Dst:             format_be16_masked
        - Src:             'lib/match.c:1761,9'
          Dst:             format_be16_masked
        - Src:             'lib/match.c:1762,27'
          Dst:             htons
        - Src:             'lib/match.c:1764,9'
          Dst:             format_be16_masked
        - Src:             'lib/match.c:1765,9'
          Dst:             format_be16_masked
        - Src:             'lib/match.c:1766,9'
          Dst:             format_ipv6_netmask
        - Src:             'lib/match.c:1768,9'
          Dst:             format_eth_masked
        - Src:             'lib/match.c:1769,9'
          Dst:             format_eth_masked
        - Src:             'lib/match.c:1771,13'
          Dst:             format_be32_masked
        - Src:             'lib/match.c:1775,13'
          Dst:             format_be16_masked
        - Src:             'lib/match.c:1779,9'
          Dst:             format_be16_masked
        - Src:             'lib/match.c:1780,9'
          Dst:             format_be16_masked
        - Src:             'lib/match.c:1782,9'
          Dst:             is_ip_any
        - Src:             'lib/match.c:1784,29'
          Dst:             ntohs
        - Src:             'lib/match.c:1784,50'
          Dst:             ntohs
        - Src:             'lib/match.c:1785,29'
          Dst:             ntohs
        - Src:             'lib/match.c:1783,9'
          Dst:             format_flags_masked
        - Src:             'lib/match.c:1783,9'
          Dst:             packet_tcp_flag_to_string
        - Src:             'lib/match.c:1789,9'
          Dst:             ds_chomp
    - functionName:    format_uint32_masked
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1331
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          51
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ds_put_char
        - ds_put_format
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:1324,9'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1327,13'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1329,9'
          Dst:             ds_put_char
    - functionName:    format_uint16_masked
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1259
      functionLinenumberEnd: 1269
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - short
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          59
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ds_put_char
        - ds_put_format
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:1261,9'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1263,13'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1265,13'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1267,9'
          Dst:             ds_put_char
    - functionName:    ovs_u128_is_zero
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 488
      functionLinenumberEnd: 489
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    format_ct_label_masked
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1406
      functionLinenumberEnd: 1418
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          81
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ds_put_char
        - ds_put_format
        - ds_put_hex
        - hton128
        - is_all_ones
        - ovs_u128_is_zero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:1407,10'
          Dst:             ovs_u128_is_zero
        - Src:             'lib/match.c:1408,27'
          Dst:             hton128
        - Src:             'lib/match.c:1409,9'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1410,9'
          Dst:             ds_put_hex
        - Src:             'lib/match.c:1411,14'
          Dst:             is_all_ones
        - Src:             'lib/match.c:1412,21'
          Dst:             hton128
        - Src:             'lib/match.c:1413,13'
          Dst:             ds_put_char
        - Src:             'lib/match.c:1414,13'
          Dst:             ds_put_hex
        - Src:             'lib/match.c:1416,9'
          Dst:             ds_put_char
    - functionName:    format_ip_netmask
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1221
      functionLinenumberEnd: 1227
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_char
        - ds_put_format
        - ip_format_masked
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:1223,9'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1224,9'
          Dst:             ip_format_masked
        - Src:             'lib/match.c:1225,9'
          Dst:             ds_put_char
    - functionName:    format_ipv6_netmask
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1233
      functionLinenumberEnd: 1239
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_char
        - ds_put_format
        - ipv6_format_masked
        - ipv6_mask_is_any
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:1234,10'
          Dst:             ipv6_mask_is_any
        - Src:             'lib/match.c:1235,9'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1236,9'
          Dst:             ipv6_format_masked
        - Src:             'lib/match.c:1237,9'
          Dst:             ds_put_char
    - functionName:    format_be16_masked
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1274
      functionLinenumberEnd: 1285
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - short
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          64
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ds_put_char
        - ds_put_format
        - htons
        - ntohs
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:1275,17'
          Dst:             htons
        - Src:             'lib/match.c:1276,9'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1278,41'
          Dst:             ntohs
        - Src:             'lib/match.c:1278,13'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1281,27'
          Dst:             ntohs
        - Src:             'lib/match.c:1281,41'
          Dst:             ntohs
        - Src:             'lib/match.c:1280,13'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1283,9'
          Dst:             ds_put_char
    - functionName:    match_has_default_packet_type
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 604
      functionLinenumberEnd: 606
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:605,40'
          Dst:             htonl
    - functionName:    strcpy
      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:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    format_flow_tunnel
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1349
      functionLinenumberEnd: 1402
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         42
      ICount:          365
      EdgeCount:       56
      CyclomaticComplexity: 16
      functionsReached:
        - ds_put_char
        - ds_put_format
        - flow_tun_flag_to_string
        - format_be16_masked
        - format_be64_masked
        - format_flags_masked
        - format_ip_netmask
        - format_ipv6_netmask
        - tun_metadata_match_format
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:1353,5'
          Dst:             format_be64_masked
        - Src:             'lib/match.c:1354,5'
          Dst:             format_ip_netmask
        - Src:             'lib/match.c:1355,5'
          Dst:             format_ip_netmask
        - Src:             'lib/match.c:1356,5'
          Dst:             format_ipv6_netmask
        - Src:             'lib/match.c:1358,5'
          Dst:             format_ipv6_netmask
        - Src:             'lib/match.c:1362,9'
          Dst:             format_be16_masked
        - Src:             'lib/match.c:1367,9'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1371,9'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1374,9'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1377,9'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1380,8'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1383,9'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1386,9'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1389,9'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1392,9'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1395,9'
          Dst:             format_flags_masked
        - Src:             'lib/match.c:1395,9'
          Dst:             flow_tun_flag_to_string
        - Src:             'lib/match.c:1399,9'
          Dst:             ds_put_char
        - Src:             'lib/match.c:1401,5'
          Dst:             tun_metadata_match_format
    - functionName:    format_be64_masked
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1336
      functionLinenumberEnd: 1345
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          54
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ds_put_char
        - ds_put_format
        - htonll
        - ntohll
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:1337,17'
          Dst:             htonll
        - Src:             'lib/match.c:1339,55'
          Dst:             ntohll
        - Src:             'lib/match.c:1338,9'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1341,43'
          Dst:             ntohll
        - Src:             'lib/match.c:1341,13'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1343,9'
          Dst:             ds_put_char
    - functionName:    vlan_tci_to_vid
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 507
      functionLinenumberEnd: 508
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:508,13'
          Dst:             ntohs
    - functionName:    vlan_tci_to_pcp
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 515
      functionLinenumberEnd: 516
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:516,13'
          Dst:             ntohs
    - functionName:    format_eth_masked
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1210
      functionLinenumberEnd: 1216
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_char
        - ds_put_format
        - eth_addr_is_zero
        - eth_format_masked
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:1211,10'
          Dst:             eth_addr_is_zero
        - Src:             'lib/match.c:1212,9'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1213,9'
          Dst:             eth_format_masked
        - Src:             'lib/match.c:1214,9'
          Dst:             ds_put_char
    - functionName:    format_nsh_masked
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1422
      functionLinenumberEnd: 1446
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          174
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - format_be32_masked_hex
        - format_uint8_masked
        - htonl
        - nsh_path_hdr_to_si
        - nsh_path_hdr_to_spi
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:1423,25'
          Dst:             nsh_path_hdr_to_spi
        - Src:             'lib/match.c:1424,21'
          Dst:             htonl
        - Src:             'lib/match.c:1427,5'
          Dst:             format_uint8_masked
        - Src:             'lib/match.c:1428,5'
          Dst:             format_uint8_masked
        - Src:             'lib/match.c:1429,5'
          Dst:             format_uint8_masked
        - Src:             'lib/match.c:1430,5'
          Dst:             format_uint8_masked
        - Src:             'lib/match.c:1432,42'
          Dst:             nsh_path_hdr_to_spi
        - Src:             'lib/match.c:1432,5'
          Dst:             format_be32_masked_hex
        - Src:             'lib/match.c:1434,38'
          Dst:             nsh_path_hdr_to_si
        - Src:             'lib/match.c:1435,25'
          Dst:             nsh_path_hdr_to_si
        - Src:             'lib/match.c:1434,5'
          Dst:             format_uint8_masked
        - Src:             'lib/match.c:1437,9'
          Dst:             format_be32_masked_hex
        - Src:             'lib/match.c:1439,9'
          Dst:             format_be32_masked_hex
        - Src:             'lib/match.c:1441,9'
          Dst:             format_be32_masked_hex
        - Src:             'lib/match.c:1443,9'
          Dst:             format_be32_masked_hex
    - functionName:    mpls_lse_to_label
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 568
      functionLinenumberEnd: 569
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:569,13'
          Dst:             ntohl
    - functionName:    mpls_lse_to_tc
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 576
      functionLinenumberEnd: 577
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:577,13'
          Dst:             ntohl
    - functionName:    mpls_lse_to_ttl
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 584
      functionLinenumberEnd: 585
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:585,13'
          Dst:             ntohl
    - functionName:    mpls_lse_to_bos
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 624
      functionLinenumberEnd: 625
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:625,24'
          Dst:             htonl
    - functionName:    format_be32_masked
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1290
      functionLinenumberEnd: 1301
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          58
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ds_put_char
        - ds_put_format
        - htonl
        - ntohl
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:1291,17'
          Dst:             htonl
        - Src:             'lib/match.c:1292,9'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1294,41'
          Dst:             ntohl
        - Src:             'lib/match.c:1294,13'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1297,27'
          Dst:             ntohl
        - Src:             'lib/match.c:1297,41'
          Dst:             ntohl
        - Src:             'lib/match.c:1296,13'
          Dst:             ds_put_format
        - Src:             'lib/match.c:1299,9'
          Dst:             ds_put_char
    - functionName:    is_ip_any
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1059
      functionLinenumberEnd: 1060
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dl_type_is_ip_any
        - get_dl_type
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:1060,30'
          Dst:             get_dl_type
        - Src:             'lib/flow.h:1060,12'
          Dst:             dl_type_is_ip_any
    - functionName:    minimatch_format
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1932
      functionLinenumberEnd: 1939
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - match_format
        - minimatch_expand
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:1935,5'
          Dst:             minimatch_expand
        - Src:             'lib/match.c:1938,5'
          Dst:             match_format
    - functionName:    flow_u64_value
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 557
      functionLinenumberEnd: 558
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    flowmap_next_index
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 479
      functionLinenumberEnd: 491
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          69
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - raw_ctz
        - zero_rightmost_1bit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:483,45'
          Dst:             raw_ctz
        - Src:             'lib/flow.h:484,20'
          Dst:             zero_rightmost_1bit
    - functionName:    minimatch_matches_flow
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1910
      functionLinenumberEnd: 1922
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          75
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - flow_u64_value
        - flowmap_next_index
        - miniflow_get_values
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:1911,29'
          Dst:             miniflow_get_values
        - Src:             'lib/match.c:1912,29'
          Dst:             miniflow_get_values
        - Src:             'lib/match.c:1915,5'
          Dst:             flowmap_next_index
        - Src:             'lib/match.c:1916,25'
          Dst:             flow_u64_value
    - functionName:    miniflow_n_values
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 568
      functionLinenumberEnd: 569
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - flowmap_n_1bits
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:569,12'
          Dst:             flowmap_n_1bits
    - functionName:    minimatch_hash
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1895
      functionLinenumberEnd: 1898
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_bytes
        - miniflow_n_values
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:1896,23'
          Dst:             miniflow_n_values
        - Src:             'lib/match.c:1898,12'
          Dst:             hash_bytes
    - functionName:    minimatch_equal
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1886
      functionLinenumberEnd: 1888
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - miniflow_equal
        - minimask_equal
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:1887,12'
          Dst:             minimask_equal
        - Src:             'lib/match.c:1888,12'
          Dst:             miniflow_equal
    - functionName:    minimatch_destroy
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1869
      functionLinenumberEnd: 1872
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    minimatch_move
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1859
      functionLinenumberEnd: 1863
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          30
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    miniflow_values
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 530
      functionLinenumberEnd: 531
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    minimatch_clone
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1844
      functionLinenumberEnd: 1853
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          59
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - miniflow_alloc
        - miniflow_get_values
        - miniflow_values
        - tun_metadata_allocation_clone
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:1846,24'
          Dst:             miniflow_alloc
        - Src:             'lib/match.c:1848,12'
          Dst:             miniflow_values
        - Src:             'lib/match.c:1849,12'
          Dst:             miniflow_get_values
        - Src:             'lib/match.c:1850,12'
          Dst:             miniflow_values
        - Src:             'lib/match.c:1851,12'
          Dst:             miniflow_get_values
        - Src:             'lib/match.c:1852,19'
          Dst:             tun_metadata_allocation_clone
    - functionName:    minimatch_init_catchall
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1834
      functionLinenumberEnd: 1838
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - xcalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:1835,23'
          Dst:             xcalloc
    - functionName:    minimatch_init
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1819
      functionLinenumberEnd: 1829
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          44
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - miniflow_alloc
        - miniflow_init
        - miniflow_map_init
        - minimask_init
        - tun_metadata_allocation_clone
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:1822,5'
          Dst:             miniflow_map_init
        - Src:             'lib/match.c:1824,5'
          Dst:             miniflow_alloc
        - Src:             'lib/match.c:1825,5'
          Dst:             miniflow_init
        - Src:             'lib/match.c:1826,5'
          Dst:             minimask_init
        - Src:             'lib/match.c:1828,19'
          Dst:             tun_metadata_allocation_clone
    - functionName:    match_print
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1809
      functionLinenumberEnd: 1813
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - match_to_string
        - puts
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:1810,15'
          Dst:             match_to_string
        - Src:             'lib/match.c:1811,5'
          Dst:             puts
    - functionName:    match_init_hidden_fields
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1202
      functionLinenumberEnd: 1205
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - match_set_dp_hash_masked
        - match_set_recirc_id
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:1203,5'
          Dst:             match_set_recirc_id
        - Src:             'lib/match.c:1204,5'
          Dst:             match_set_dp_hash_masked
    - functionName:    match_set_recirc_id
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 95
      functionLinenumberEnd: 98
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_set_dp_hash_masked
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 88
      functionLinenumberEnd: 91
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          23
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_has_default_dp_hash
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1188
      functionLinenumberEnd: 1189
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_has_default_recirc_id
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1181
      functionLinenumberEnd: 1183
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          43
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_has_default_hidden_fields
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1196
      functionLinenumberEnd: 1197
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          27
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - match_has_default_dp_hash
        - match_has_default_recirc_id
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:1197,12'
          Dst:             match_has_default_recirc_id
        - Src:             'lib/match.c:1197,46'
          Dst:             match_has_default_dp_hash
    - functionName:    flow_hash
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 190
      functionLinenumberEnd: 191
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_bytes64
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:191,12'
          Dst:             hash_bytes64
    - functionName:    match_hash
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1175
      functionLinenumberEnd: 1176
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - flow_hash
        - flow_wildcards_hash
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:1176,44'
          Dst:             flow_hash
        - Src:             'lib/match.c:1176,12'
          Dst:             flow_wildcards_hash
    - functionName:    flow_equal
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 184
      functionLinenumberEnd: 185
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - flow_compare_3way
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:185,13'
          Dst:             flow_compare_3way
    - functionName:    match_equal
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1166
      functionLinenumberEnd: 1168
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - flow_equal
        - flow_wildcards_equal
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:1167,13'
          Dst:             flow_wildcards_equal
        - Src:             'lib/match.c:1168,16'
          Dst:             flow_equal
    - functionName:    match_set_nd_options_type
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1158
      functionLinenumberEnd: 1160
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htons
        - match_set_tcp_flags
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:1159,32'
          Dst:             htons
        - Src:             'lib/match.c:1159,5'
          Dst:             match_set_tcp_flags
    - functionName:    match_set_tcp_flags
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 912
      functionLinenumberEnd: 914
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - match_set_tcp_flags_masked
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:913,5'
          Dst:             match_set_tcp_flags_masked
    - functionName:    match_set_tcp_flags_masked
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 918
      functionLinenumberEnd: 921
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - short
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          26
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_set_nd_reserved
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1151
      functionLinenumberEnd: 1154
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_set_nd_target_masked
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1144
      functionLinenumberEnd: 1147
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          39
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ipv6_addr_bitand
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:1145,29'
          Dst:             ipv6_addr_bitand
    - functionName:    match_set_nd_target
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1135
      functionLinenumberEnd: 1138
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_set_ipv6_label_masked
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1128
      functionLinenumberEnd: 1131
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          23
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_set_ipv6_label
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1119
      functionLinenumberEnd: 1122
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_set_ipv6_dst_masked
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1112
      functionLinenumberEnd: 1115
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          39
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ipv6_addr_bitand
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:1113,28'
          Dst:             ipv6_addr_bitand
    - functionName:    match_set_ipv6_dst
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1104
      functionLinenumberEnd: 1107
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_set_ipv6_src_masked
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1097
      functionLinenumberEnd: 1100
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          39
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ipv6_addr_bitand
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:1098,28'
          Dst:             ipv6_addr_bitand
    - functionName:    match_set_ipv6_src
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1089
      functionLinenumberEnd: 1092
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_set_arp_tha_masked
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1082
      functionLinenumberEnd: 1085
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          39
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - set_eth_masked
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:1083,5'
          Dst:             set_eth_masked
    - functionName:    set_eth_masked
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 658
      functionLinenumberEnd: 665
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         5
      ICount:          53
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_set_arp_tha
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1073
      functionLinenumberEnd: 1076
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          19
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_set_arp_sha_masked
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1066
      functionLinenumberEnd: 1069
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          39
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - set_eth_masked
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:1067,5'
          Dst:             set_eth_masked
    - functionName:    match_set_arp_sha
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1057
      functionLinenumberEnd: 1060
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          19
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_set_arp_tpa_masked
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1051
      functionLinenumberEnd: 1053
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - match_set_nw_dst_masked
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:1052,5'
          Dst:             match_set_nw_dst_masked
    - functionName:    match_set_nw_dst_masked
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 962
      functionLinenumberEnd: 965
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          23
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_set_arp_spa_masked
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1043
      functionLinenumberEnd: 1045
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - match_set_nw_src_masked
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:1044,5'
          Dst:             match_set_nw_src_masked
    - functionName:    match_set_nw_src_masked
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 948
      functionLinenumberEnd: 951
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          23
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_set_arp_opcode_masked
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1035
      functionLinenumberEnd: 1037
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - char
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - match_set_nw_proto_masked
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:1036,5'
          Dst:             match_set_nw_proto_masked
    - functionName:    match_set_nw_proto_masked
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 933
      functionLinenumberEnd: 936
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - char
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_set_icmp_code
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1027
      functionLinenumberEnd: 1029
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htons
        - match_set_tp_dst
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:1028,29'
          Dst:             htons
        - Src:             'lib/match.c:1028,5'
          Dst:             match_set_tp_dst
    - functionName:    match_set_tp_dst
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 899
      functionLinenumberEnd: 901
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - match_set_tp_dst_masked
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:900,5'
          Dst:             match_set_tp_dst_masked
    - functionName:    match_set_tp_dst_masked
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 905
      functionLinenumberEnd: 908
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - short
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          26
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_set_icmp_type
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1021
      functionLinenumberEnd: 1023
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htons
        - match_set_tp_src
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:1022,29'
          Dst:             htons
        - Src:             'lib/match.c:1022,5'
          Dst:             match_set_tp_src
    - functionName:    match_set_tp_src
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 886
      functionLinenumberEnd: 888
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - match_set_tp_src_masked
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:887,5'
          Dst:             match_set_tp_src_masked
    - functionName:    match_set_tp_src_masked
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 892
      functionLinenumberEnd: 895
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - short
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          26
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_set_nw_frag_masked
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1014
      functionLinenumberEnd: 1017
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - char
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          26
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_set_nw_frag
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1006
      functionLinenumberEnd: 1009
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          22
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_set_nw_ttl_masked
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 999
      functionLinenumberEnd: 1002
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - char
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          26
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_set_nw_tos_masked
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 992
      functionLinenumberEnd: 995
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - char
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          26
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_set_nw_ttl
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 985
      functionLinenumberEnd: 988
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_set_nw_ecn
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 977
      functionLinenumberEnd: 981
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          36
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_set_nw_dscp
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 969
      functionLinenumberEnd: 973
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          36
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_set_nw_dst
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 955
      functionLinenumberEnd: 958
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_set_nw_src
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 940
      functionLinenumberEnd: 943
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_set_nw_proto
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 925
      functionLinenumberEnd: 928
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_set_any_mpls_lse
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 879
      functionLinenumberEnd: 882
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - flow_set_mpls_lse
        - htonl
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:880,37'
          Dst:             htonl
        - Src:             'lib/match.c:881,42'
          Dst:             htonl
        - Src:             'lib/match.c:881,5'
          Dst:             flow_set_mpls_lse
    - functionName:    match_set_mpls_ttl
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 871
      functionLinenumberEnd: 874
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - flow_set_mpls_ttl
        - htonl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:872,38'
          Dst:             htonl
        - Src:             'lib/match.c:873,5'
          Dst:             flow_set_mpls_ttl
    - functionName:    match_set_any_mpls_ttl
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 862
      functionLinenumberEnd: 865
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - flow_set_mpls_ttl
        - htonl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:863,39'
          Dst:             htonl
        - Src:             'lib/match.c:864,5'
          Dst:             flow_set_mpls_ttl
    - functionName:    match_set_mpls_bos
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 854
      functionLinenumberEnd: 857
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - flow_set_mpls_bos
        - htonl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:855,38'
          Dst:             htonl
        - Src:             'lib/match.c:856,5'
          Dst:             flow_set_mpls_bos
    - functionName:    match_set_any_mpls_bos
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 845
      functionLinenumberEnd: 848
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - flow_set_mpls_bos
        - htonl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:846,39'
          Dst:             htonl
        - Src:             'lib/match.c:847,5'
          Dst:             flow_set_mpls_bos
    - functionName:    match_set_mpls_tc
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 837
      functionLinenumberEnd: 840
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - flow_set_mpls_tc
        - htonl
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:838,38'
          Dst:             htonl
        - Src:             'lib/match.c:839,5'
          Dst:             flow_set_mpls_tc
    - functionName:    match_set_any_mpls_tc
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 828
      functionLinenumberEnd: 831
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - flow_set_mpls_tc
        - htonl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:829,39'
          Dst:             htonl
        - Src:             'lib/match.c:830,5'
          Dst:             flow_set_mpls_tc
    - functionName:    match_set_mpls_label
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 820
      functionLinenumberEnd: 823
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - flow_set_mpls_label
        - htonl
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:821,38'
          Dst:             htonl
        - Src:             'lib/match.c:822,5'
          Dst:             flow_set_mpls_label
    - functionName:    match_set_any_mpls_label
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 811
      functionLinenumberEnd: 814
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          32
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - flow_set_mpls_label
        - htonl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:812,39'
          Dst:             htonl
        - Src:             'lib/match.c:813,44'
          Dst:             htonl
        - Src:             'lib/match.c:813,5'
          Dst:             flow_set_mpls_label
    - functionName:    match_set_mpls_lse
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 803
      functionLinenumberEnd: 806
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          26
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_set_dl_vlan_pcp
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 795
      functionLinenumberEnd: 798
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - char
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - flow_set_vlan_pcp
        - htons
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:796,5'
          Dst:             flow_set_vlan_pcp
        - Src:             'lib/match.c:797,38'
          Dst:             htons
    - functionName:    match_set_any_pcp
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 782
      functionLinenumberEnd: 789
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          66
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htons
        - match_set_dl_tci_masked
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:783,40'
          Dst:             htons
        - Src:             'lib/match.c:784,42'
          Dst:             htons
        - Src:             'lib/match.c:785,38'
          Dst:             htons
        - Src:             'lib/match.c:787,40'
          Dst:             htons
        - Src:             'lib/match.c:787,50'
          Dst:             htons
        - Src:             'lib/match.c:787,9'
          Dst:             match_set_dl_tci_masked
    - functionName:    match_set_dl_tci_masked
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 714
      functionLinenumberEnd: 717
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - short
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          30
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_set_vlan_vid_masked
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 767
      functionLinenumberEnd: 775
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - short
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          61
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - flow_set_vlan_vid
        - htons
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:768,25'
          Dst:             htons
        - Src:             'lib/match.c:769,25'
          Dst:             htons
        - Src:             'lib/match.c:772,5'
          Dst:             flow_set_vlan_vid
    - functionName:    match_set_vlan_vid
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 757
      functionLinenumberEnd: 759
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htons
        - match_set_vlan_vid_masked
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:758,43'
          Dst:             htons
        - Src:             'lib/match.c:758,5'
          Dst:             match_set_vlan_vid_masked
    - functionName:    match_set_dl_vlan
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 743
      functionLinenumberEnd: 750
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - short
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          61
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - flow_set_dl_vlan
        - htons
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:744,5'
          Dst:             flow_set_dl_vlan
        - Src:             'lib/match.c:745,20'
          Dst:             htons
        - Src:             'lib/match.c:748,42'
          Dst:             htons
    - functionName:    match_set_any_vid
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 724
      functionLinenumberEnd: 731
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          66
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htons
        - match_set_dl_tci_masked
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:725,40'
          Dst:             htons
        - Src:             'lib/match.c:726,42'
          Dst:             htons
        - Src:             'lib/match.c:727,38'
          Dst:             htons
        - Src:             'lib/match.c:729,40'
          Dst:             htons
        - Src:             'lib/match.c:729,50'
          Dst:             htons
        - Src:             'lib/match.c:729,9'
          Dst:             match_set_dl_tci_masked
    - functionName:    match_set_dl_tci
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 708
      functionLinenumberEnd: 710
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htons
        - match_set_dl_tci_masked
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:709,41'
          Dst:             htons
        - Src:             'lib/match.c:709,5'
          Dst:             match_set_dl_tci_masked
    - functionName:    match_set_dl_dst_masked
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 702
      functionLinenumberEnd: 704
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          39
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - set_eth_masked
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:703,5'
          Dst:             set_eth_masked
    - functionName:    match_set_dl_dst
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 689
      functionLinenumberEnd: 691
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - set_eth
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:690,5'
          Dst:             set_eth
    - functionName:    set_eth
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 646
      functionLinenumberEnd: 649
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_set_dl_src_masked
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 681
      functionLinenumberEnd: 683
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          39
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - set_eth_masked
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:682,5'
          Dst:             set_eth_masked
    - functionName:    match_set_dl_src
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 671
      functionLinenumberEnd: 673
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - set_eth
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:672,5'
          Dst:             set_eth
    - functionName:    match_set_dl_type
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 635
      functionLinenumberEnd: 638
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    10
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_add_ethernet_prereq
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 627
      functionLinenumberEnd: 631
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - match_set_default_packet_type
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:629,9'
          Dst:             match_set_default_packet_type
    - functionName:    match_set_default_packet_type
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 594
      functionLinenumberEnd: 598
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
        - match_set_packet_type
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:596,38'
          Dst:             htonl
        - Src:             'lib/match.c:596,9'
          Dst:             match_set_packet_type
    - functionName:    match_set_packet_type
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 585
      functionLinenumberEnd: 588
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_set_ct_ipv6_dst_masked
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 578
      functionLinenumberEnd: 581
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          39
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ipv6_addr_bitand
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:579,31'
          Dst:             ipv6_addr_bitand
    - functionName:    match_set_ct_ipv6_dst
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 570
      functionLinenumberEnd: 573
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_set_ct_ipv6_src_masked
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 563
      functionLinenumberEnd: 566
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          39
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ipv6_addr_bitand
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:564,31'
          Dst:             ipv6_addr_bitand
    - functionName:    match_set_ct_ipv6_src
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 555
      functionLinenumberEnd: 558
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_set_ct_tp_dst_masked
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 548
      functionLinenumberEnd: 551
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - short
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          26
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_set_ct_tp_dst
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 542
      functionLinenumberEnd: 544
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - match_set_ct_tp_dst_masked
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:543,5'
          Dst:             match_set_ct_tp_dst_masked
    - functionName:    match_set_ct_tp_src_masked
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 535
      functionLinenumberEnd: 538
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - short
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          26
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_set_ct_tp_src
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 529
      functionLinenumberEnd: 531
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - match_set_ct_tp_src_masked
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:530,5'
          Dst:             match_set_ct_tp_src_masked
    - functionName:    match_set_ct_nw_proto
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 522
      functionLinenumberEnd: 525
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_set_ct_nw_dst_masked
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 515
      functionLinenumberEnd: 518
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          23
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_set_ct_nw_dst
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 507
      functionLinenumberEnd: 510
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_set_ct_nw_src_masked
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 500
      functionLinenumberEnd: 503
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          23
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_set_ct_nw_src
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 492
      functionLinenumberEnd: 495
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_set_ct_label_masked
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 484
      functionLinenumberEnd: 488
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          41
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_set_ct_label
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 474
      functionLinenumberEnd: 480
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - match_set_ct_label_masked
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:479,5'
          Dst:             match_set_ct_label_masked
    - functionName:    match_set_ct_mark_masked
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 467
      functionLinenumberEnd: 470
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          23
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_set_ct_mark
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 460
      functionLinenumberEnd: 462
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - match_set_ct_mark_masked
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:461,5'
          Dst:             match_set_ct_mark_masked
    - functionName:    match_set_ct_zone_masked
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 453
      functionLinenumberEnd: 456
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - short
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          26
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_set_ct_zone
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 447
      functionLinenumberEnd: 449
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - match_set_ct_zone_masked
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:448,5'
          Dst:             match_set_ct_zone_masked
    - functionName:    match_set_ct_state_masked
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 440
      functionLinenumberEnd: 443
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          27
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_set_ct_state
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 434
      functionLinenumberEnd: 436
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - match_set_ct_state_masked
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:435,5'
          Dst:             match_set_ct_state_masked
    - functionName:    match_set_pkt_mark_masked
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 427
      functionLinenumberEnd: 430
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          23
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_set_pkt_mark
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 421
      functionLinenumberEnd: 423
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - match_set_pkt_mark_masked
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:422,5'
          Dst:             match_set_pkt_mark_masked
    - functionName:    match_set_skb_priority
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 414
      functionLinenumberEnd: 417
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_set_in_port
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 407
      functionLinenumberEnd: 410
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - u16_to_ofp
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:408,40'
          Dst:             u16_to_ofp
    - functionName:    u16_to_ofp
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 214
      functionLinenumberEnd: 215
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_set_tun_gtpu_msgtype
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 401
      functionLinenumberEnd: 403
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - match_set_tun_gtpu_msgtype_masked
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:402,5'
          Dst:             match_set_tun_gtpu_msgtype_masked
    - functionName:    match_set_tun_gtpu_msgtype_masked
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 394
      functionLinenumberEnd: 397
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - char
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_set_tun_gtpu_flags
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 387
      functionLinenumberEnd: 389
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - match_set_tun_gtpu_flags_masked
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:388,5'
          Dst:             match_set_tun_gtpu_flags_masked
    - functionName:    match_set_tun_gtpu_flags_masked
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 380
      functionLinenumberEnd: 383
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - char
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_set_tun_erspan_hwid
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 373
      functionLinenumberEnd: 375
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - match_set_tun_erspan_hwid_masked
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:374,5'
          Dst:             match_set_tun_erspan_hwid_masked
    - functionName:    match_set_tun_erspan_hwid_masked
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 366
      functionLinenumberEnd: 369
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - char
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_set_tun_erspan_dir
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 361
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - match_set_tun_erspan_dir_masked
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:360,5'
          Dst:             match_set_tun_erspan_dir_masked
    - functionName:    match_set_tun_erspan_dir_masked
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 352
      functionLinenumberEnd: 355
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - char
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_set_tun_erspan_idx
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 345
      functionLinenumberEnd: 347
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - match_set_tun_erspan_idx_masked
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:346,5'
          Dst:             match_set_tun_erspan_idx_masked
    - functionName:    match_set_tun_erspan_idx_masked
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 338
      functionLinenumberEnd: 341
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          25
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_set_tun_erspan_ver
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 331
      functionLinenumberEnd: 333
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - match_set_tun_erspan_ver_masked
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:332,5'
          Dst:             match_set_tun_erspan_ver_masked
    - functionName:    match_set_tun_erspan_ver_masked
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 324
      functionLinenumberEnd: 327
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - char
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_set_tun_gbp_flags
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 318
      functionLinenumberEnd: 320
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - match_set_tun_gbp_flags_masked
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:319,5'
          Dst:             match_set_tun_gbp_flags_masked
    - functionName:    match_set_tun_gbp_flags_masked
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 311
      functionLinenumberEnd: 314
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - char
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_set_tun_gbp_id
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 305
      functionLinenumberEnd: 307
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - match_set_tun_gbp_id_masked
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:306,5'
          Dst:             match_set_tun_gbp_id_masked
    - functionName:    match_set_tun_gbp_id_masked
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 298
      functionLinenumberEnd: 301
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - short
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_set_tun_tp_dst_masked
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 291
      functionLinenumberEnd: 294
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - short
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_set_tun_tp_dst
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 285
      functionLinenumberEnd: 287
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - match_set_tun_tp_dst_masked
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:286,5'
          Dst:             match_set_tun_tp_dst_masked
    - functionName:    match_set_tun_flags_masked
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 276
      functionLinenumberEnd: 281
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - short
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          33
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_set_tun_flags
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 270
      functionLinenumberEnd: 272
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - match_set_tun_flags_masked
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:271,5'
          Dst:             match_set_tun_flags_masked
    - functionName:    match_set_tun_tos_masked
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 263
      functionLinenumberEnd: 266
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - char
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_set_tun_tos
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 257
      functionLinenumberEnd: 259
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - match_set_tun_tos_masked
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:258,5'
          Dst:             match_set_tun_tos_masked
    - functionName:    match_set_tun_ttl_masked
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 250
      functionLinenumberEnd: 253
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - char
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_set_tun_ttl
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 244
      functionLinenumberEnd: 246
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - match_set_tun_ttl_masked
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:245,5'
          Dst:             match_set_tun_ttl_masked
    - functionName:    match_set_tun_ipv6_dst_masked
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 237
      functionLinenumberEnd: 240
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          41
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ipv6_addr_bitand
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:238,35'
          Dst:             ipv6_addr_bitand
    - functionName:    match_set_tun_ipv6_dst
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 229
      functionLinenumberEnd: 232
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          20
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_set_tun_ipv6_src_masked
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 222
      functionLinenumberEnd: 225
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          41
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ipv6_addr_bitand
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:223,35'
          Dst:             ipv6_addr_bitand
    - functionName:    match_set_tun_ipv6_src
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 214
      functionLinenumberEnd: 217
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          20
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_set_tun_dst_masked
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 207
      functionLinenumberEnd: 210
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          25
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_set_tun_dst
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 201
      functionLinenumberEnd: 203
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - match_set_tun_dst_masked
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:202,5'
          Dst:             match_set_tun_dst_masked
    - functionName:    match_set_tun_src_masked
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 194
      functionLinenumberEnd: 197
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          25
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_set_tun_src
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 188
      functionLinenumberEnd: 190
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - match_set_tun_src_masked
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:189,5'
          Dst:             match_set_tun_src_masked
    - functionName:    match_set_tun_id_masked
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 181
      functionLinenumberEnd: 184
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          25
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_set_tun_id
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 175
      functionLinenumberEnd: 177
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - match_set_tun_id_masked
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:176,5'
          Dst:             match_set_tun_id_masked
    - functionName:    match_set_metadata_masked
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 168
      functionLinenumberEnd: 171
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          23
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_set_metadata
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 161
      functionLinenumberEnd: 163
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - match_set_metadata_masked
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:162,5'
          Dst:             match_set_metadata_masked
    - functionName:    match_set_actset_output
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 154
      functionLinenumberEnd: 157
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - u16_to_ofp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:155,37'
          Dst:             u16_to_ofp
    - functionName:    ovs_u128_and
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 515
      functionLinenumberEnd: 521
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          31
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    flow_set_xxreg
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 169
      functionLinenumberEnd: 174
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          58
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_set_xxreg_masked
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 146
      functionLinenumberEnd: 150
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - size_t
        - size_t
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          62
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - flow_set_xxreg
        - flow_wildcards_set_xxreg_mask
        - ovs_ignore
        - ovs_u128_and
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:147,5'
          Dst:             ovs_ignore
        - Src:             'lib/match.c:148,5'
          Dst:             flow_wildcards_set_xxreg_mask
        - Src:             'lib/match.c:149,45'
          Dst:             ovs_u128_and
        - Src:             'lib/match.c:149,5'
          Dst:             flow_set_xxreg
    - functionName:    match_set_xxreg
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 139
      functionLinenumberEnd: 141
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - match_set_xxreg_masked
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:140,5'
          Dst:             match_set_xxreg_masked
    - functionName:    flow_set_xreg
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          30
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_set_xreg_masked
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 131
      functionLinenumberEnd: 135
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - flow_set_xreg
        - flow_wildcards_set_xreg_mask
        - ovs_ignore
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:132,5'
          Dst:             ovs_ignore
        - Src:             'lib/match.c:133,5'
          Dst:             flow_wildcards_set_xreg_mask
        - Src:             'lib/match.c:134,5'
          Dst:             flow_set_xreg
    - functionName:    match_set_xreg
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 124
      functionLinenumberEnd: 126
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - match_set_xreg_masked
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:125,5'
          Dst:             match_set_xreg_masked
    - functionName:    match_set_reg_masked
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 116
      functionLinenumberEnd: 120
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          38
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - flow_wildcards_set_reg_mask
        - ovs_ignore
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:117,5'
          Dst:             ovs_ignore
        - Src:             'lib/match.c:118,5'
          Dst:             flow_wildcards_set_reg_mask
    - functionName:    match_set_reg
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 109
      functionLinenumberEnd: 111
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - match_set_reg_masked
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:110,5'
          Dst:             match_set_reg_masked
    - functionName:    match_set_conj_id
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 102
      functionLinenumberEnd: 105
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    match_set_dp_hash
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 84
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - match_set_dp_hash_masked
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:83,5'
          Dst:             match_set_dp_hash_masked
    - functionName:    match_init_catchall
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 64
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - flow_wildcards_init_catchall
      functionUses:    13
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:62,5'
          Dst:             flow_wildcards_init_catchall
    - functionName:    match_wc_init
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - flow_wildcards_init_for_packet
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:50,5'
          Dst:             flow_wildcards_init_for_packet
    - functionName:    match_zero_wildcarded_fields
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 76
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - flow_zero_wildcards
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:77,5'
          Dst:             flow_zero_wildcards
    - functionName:    match_init
      functionSourceFile: '/src/openvswitch/lib/match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 40
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - match_zero_wildcarded_fields
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/match.c:38,5'
          Dst:             match_zero_wildcarded_fields
    - functionName:    init_this_module_netdev
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 62
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:62,1'
          Dst:             vlog_insert_module
    - functionName:    netdev_received_init_coverage
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 64
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:64,1'
          Dst:             coverage_counter_register
    - functionName:    netdev_sent_init_coverage
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 65
      functionLinenumberEnd: 65
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:65,1'
          Dst:             coverage_counter_register
    - functionName:    netdev_add_router_init_coverage
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:66,1'
          Dst:             coverage_counter_register
    - functionName:    netdev_get_stats_init_coverage
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 67
      functionLinenumberEnd: 67
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:67,1'
          Dst:             coverage_counter_register
    - functionName:    netdev_push_header_drops_init_coverage
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 68
      functionLinenumberEnd: 68
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:68,1'
          Dst:             coverage_counter_register
    - functionName:    netdev_push_header_drops_count
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 68
      functionLinenumberEnd: 68
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_netdev_push_header_drops_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:68,1'
          Dst:             counter_netdev_push_header_drops_get
    - functionName:    counter_netdev_push_header_drops_get
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 68
      functionLinenumberEnd: 68
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_netdev_push_header_drops_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:68,1'
          Dst:             counter_netdev_push_header_drops_get_unsafe
    - functionName:    counter_netdev_push_header_drops_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 68
      functionLinenumberEnd: 68
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_get_stats_count
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 67
      functionLinenumberEnd: 67
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_netdev_get_stats_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:67,1'
          Dst:             counter_netdev_get_stats_get
    - functionName:    counter_netdev_get_stats_get
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 67
      functionLinenumberEnd: 67
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_netdev_get_stats_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:67,1'
          Dst:             counter_netdev_get_stats_get_unsafe
    - functionName:    counter_netdev_get_stats_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 67
      functionLinenumberEnd: 67
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_add_router_count
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_netdev_add_router_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:66,1'
          Dst:             counter_netdev_add_router_get
    - functionName:    counter_netdev_add_router_get
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_netdev_add_router_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:66,1'
          Dst:             counter_netdev_add_router_get_unsafe
    - functionName:    counter_netdev_add_router_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_sent_count
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 65
      functionLinenumberEnd: 65
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_netdev_sent_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:65,1'
          Dst:             counter_netdev_sent_get
    - functionName:    counter_netdev_sent_get
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 65
      functionLinenumberEnd: 65
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_netdev_sent_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:65,1'
          Dst:             counter_netdev_sent_get_unsafe
    - functionName:    counter_netdev_sent_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 65
      functionLinenumberEnd: 65
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_received_count
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 64
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_netdev_received_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:64,1'
          Dst:             counter_netdev_received_get
    - functionName:    counter_netdev_received_get
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 64
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_netdev_received_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:64,1'
          Dst:             counter_netdev_received_get_unsafe
    - functionName:    counter_netdev_received_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 64
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_list_insert
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 169
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_list_push_front
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 196
      functionLinenumberEnd: 198
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_list_insert
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/list.h:197,5'
          Dst:             ovs_list_insert
    - functionName:    get_16aligned_be32
      functionSourceFile: '/src/openvswitch/lib/unaligned.h'
      linkageType:     InternalLinkage
      functionLinenumber: 246
      functionLinenumberEnd: 250
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    free_afxdp_buf
      functionSourceFile: '/src/openvswitch/lib/netdev-afxdp.h'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 84
      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:    free_dpdk_buf
      functionSourceFile: '/src/openvswitch/lib/netdev-dpdk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 76
      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:    hmap_next__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 401
      functionLinenumberEnd: 410
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          51
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    cmap_node_next
      functionSourceFile: '/src/openvswitch/lib/cmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 67
      functionLinenumberEnd: 68
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          22
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    restore_all_flags
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2176
      functionLinenumberEnd: 2205
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         20
      ICount:          147
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - hmap_first
        - hmap_next
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:2179,5'
          Dst:             hmap_first
        - Src:             'lib/netdev.c:2179,5'
          Dst:             hmap_next
    - functionName:    hmap_first
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 416
      functionLinenumberEnd: 417
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next__
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:417,12'
          Dst:             hmap_next__
    - functionName:    hmap_next
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 429
      functionLinenumberEnd: 432
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_next__
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:432,15'
          Dst:             hmap_next__
    - functionName:    ovsthread_once_start
      functionSourceFile: '/src/openvswitch/./include/openvswitch/thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsthread_once_start__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/thread.h:161,12'
          Dst:             ovsthread_once_start__
    - functionName:    netdev_set_hw_info
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2403
      functionLinenumberEnd: 2420
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          86
      EdgeCount:       17
      CyclomaticComplexity: 3
      functionsReached:
        - vlog
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/netdev.c:2404,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/netdev.c:2407,13'
          Dst:             vlog
    - functionName:    netdev_get_hw_info
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2378
      functionLinenumberEnd: 2395
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          48
      EdgeCount:       10
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib/netdev.c:2381,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    netdev_get_block_id
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2364
      functionLinenumberEnd: 2368
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_free_custom_stats_counters
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2350
      functionLinenumberEnd: 2360
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          51
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_reconfigure
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2338
      functionLinenumberEnd: 2344
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - seq_read
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:2341,36'
          Dst:             seq_read
    - functionName:    netdev_is_reconf_required
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2321
      functionLinenumberEnd: 2322
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - seq_read
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:2322,12'
          Dst:             seq_read
    - functionName:    netdev_wait_reconf_required
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2315
      functionLinenumberEnd: 2317
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - seq_wait_at
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:2316,5'
          Dst:             seq_wait_at
    - functionName:    netdev_get_addrs
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2237
      functionLinenumberEnd: 2311
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         61
      ICount:          351
      EdgeCount:       81
      CyclomaticComplexity: 22
      functionsReached:
        - freeifaddrs
        - getifaddrs
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - sa_get_address
        - sa_is_ip
        - strncmp
        - vlog
        - xzalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:2243,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev.c:2248,15'
          Dst:             getifaddrs
        - Src:             'lib/netdev.c:2250,13'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/netdev.c:2265,17'
          Dst:             freeifaddrs
        - Src:             'lib/netdev.c:2268,17'
          Dst:             vlog
        - Src:             'lib/netdev.c:2277,22'
          Dst:             strncmp
        - Src:             'lib/netdev.c:2285,9'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/netdev.c:2288,18'
          Dst:             xzalloc
        - Src:             'lib/netdev.c:2289,18'
          Dst:             xzalloc
        - Src:             'lib/netdev.c:2294,17'
          Dst:             strncmp
        - Src:             'lib/netdev.c:2295,16'
          Dst:             sa_is_ip
        - Src:             'lib/netdev.c:2296,29'
          Dst:             sa_get_address
        - Src:             'lib/netdev.c:2297,29'
          Dst:             sa_get_address
        - Src:             'lib/netdev.c:2301,5'
          Dst:             ovs_mutex_unlock
    - 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:    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:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_get_addrs_list_flush
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2225
      functionLinenumberEnd: 2232
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         6
      ICount:          27
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - freeifaddrs
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:2226,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev.c:2228,9'
          Dst:             freeifaddrs
        - Src:             'lib/netdev.c:2231,5'
          Dst:             ovs_mutex_unlock
    - functionName:    netdev_get_change_seq
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2209
      functionLinenumberEnd: 2215
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_rxq_get_queue_id
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2170
      functionLinenumberEnd: 2171
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    12
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_rxq_get_name
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2164
      functionLinenumberEnd: 2165
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - netdev_get_name
        - netdev_rxq_get_netdev
      functionUses:    12
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:2165,28'
          Dst:             netdev_rxq_get_netdev
        - Src:             'lib/netdev.c:2165,12'
          Dst:             netdev_get_name
    - functionName:    netdev_rxq_get_netdev
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2157
      functionLinenumberEnd: 2159
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:2158,5'
          Dst:             ovs_ignore
    - functionName:    netdev_get_name
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1004
      functionLinenumberEnd: 1005
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    104
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_vport_type_from_name
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 300
      functionLinenumberEnd: 311
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          86
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - cmap_cursor_advance
        - cmap_cursor_start
        - netdev_vport_class_get_dpif_port
        - strlen
        - strncmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:303,5'
          Dst:             cmap_cursor_start
        - Src:             'lib/netdev.c:303,5'
          Dst:             cmap_cursor_advance
        - Src:             'lib/netdev.c:304,33'
          Dst:             netdev_vport_class_get_dpif_port
        - Src:             'lib/netdev.c:305,52'
          Dst:             strlen
        - Src:             'lib/netdev.c:305,27'
          Dst:             strncmp
    - functionName:    netdev_get_type_from_name
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2143
      functionLinenumberEnd: 2152
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          47
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - netdev_close
        - netdev_from_name
        - netdev_get_type
        - netdev_vport_type_from_name
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:2146,12'
          Dst:             netdev_vport_type_from_name
        - Src:             'lib/netdev.c:2148,15'
          Dst:             netdev_from_name
        - Src:             'lib/netdev.c:2149,22'
          Dst:             netdev_get_type
        - Src:             'lib/netdev.c:2150,9'
          Dst:             netdev_close
    - functionName:    netdev_from_name
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2070
      functionLinenumberEnd: 2080
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - shash_find_data
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:2073,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev.c:2074,14'
          Dst:             shash_find_data
        - Src:             'lib/netdev.c:2078,5'
          Dst:             ovs_mutex_unlock
    - functionName:    netdev_get_type
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2037
      functionLinenumberEnd: 2038
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    18
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_close
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 596
      functionLinenumberEnd: 601
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          27
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - netdev_unref
        - ovs_mutex_lock_at
      functionUses:    36
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:598,9'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev.c:599,9'
          Dst:             netdev_unref
    - functionName:    netdev_unref
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 569
      functionLinenumberEnd: 590
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          91
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - netdev_lookup_class
        - ovs_ignore
        - ovs_mutex_unlock
        - ovs_refcount_unref
        - seq_destroy
        - shash_delete
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:570,5'
          Dst:             ovs_ignore
        - Src:             'lib/netdev.c:578,13'
          Dst:             shash_delete
        - Src:             'lib/netdev.c:581,9'
          Dst:             seq_destroy
        - Src:             'lib/netdev.c:583,9'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/netdev.c:585,14'
          Dst:             netdev_lookup_class
        - Src:             'lib/netdev.c:586,9'
          Dst:             ovs_refcount_unref
        - Src:             'lib/netdev.c:588,9'
          Dst:             ovs_mutex_unlock
    - functionName:    netdev_lookup_class
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 202
      functionLinenumberEnd: 211
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          70
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - cmap_find
        - cmap_node_next
        - hash_string
        - strcmp
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:204,5'
          Dst:             hash_string
        - Src:             'lib/netdev.c:204,5'
          Dst:             cmap_find
        - Src:             'lib/netdev.c:206,14'
          Dst:             strcmp
        - Src:             'lib/netdev.c:204,5'
          Dst:             cmap_node_next
    - functionName:    ovs_refcount_unref
      functionSourceFile: '/src/openvswitch/lib/ovs-atomic.h'
      linkageType:     InternalLinkage
      functionLinenumber: 562
      functionLinenumberEnd: 576
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-atomic.h:567,5'
          Dst:             ovs_ignore
    - functionName:    hash_string
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 403
      functionLinenumberEnd: 404
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_bytes
        - strlen
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:404,26'
          Dst:             strlen
        - Src:             'lib/hash.h:404,12'
          Dst:             hash_bytes
    - functionName:    netdev_get_vports
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2114
      functionLinenumberEnd: 2139
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         16
      ICount:          104
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - hmap_first
        - hmap_next
        - netdev_vport_is_vport_class
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - shash_count
        - xmalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:2124,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev.c:2125,22'
          Dst:             shash_count
        - Src:             'lib/netdev.c:2125,14'
          Dst:             xmalloc
        - Src:             'lib/netdev.c:2126,5'
          Dst:             hmap_first
        - Src:             'lib/netdev.c:2129,13'
          Dst:             netdev_vport_is_vport_class
        - Src:             'lib/netdev.c:2126,5'
          Dst:             hmap_next
        - Src:             'lib/netdev.c:2135,5'
          Dst:             ovs_mutex_unlock
    - functionName:    netdev_get_devices
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2091
      functionLinenumberEnd: 2104
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          84
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_first
        - hmap_next
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - shash_add
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:2094,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev.c:2095,5'
          Dst:             hmap_first
        - Src:             'lib/netdev.c:2100,13'
          Dst:             shash_add
        - Src:             'lib/netdev.c:2095,5'
          Dst:             hmap_next
        - Src:             'lib/netdev.c:2103,5'
          Dst:             ovs_mutex_unlock
    - functionName:    netdev_set_dpif_type
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2051
      functionLinenumberEnd: 2053
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_get_class
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2044
      functionLinenumberEnd: 2045
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    19
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_dump_queue_stats
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2024
      functionLinenumberEnd: 2027
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_queue_dump_done
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1999
      functionLinenumberEnd: 2006
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          80
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - netdev_close
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:2005,5'
          Dst:             netdev_close
    - functionName:    netdev_queue_dump_next
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1976
      functionLinenumberEnd: 1992
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          82
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - smap_clear
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:1977,5'
          Dst:             smap_clear
    - functionName:    netdev_queue_dump_start
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1943
      functionLinenumberEnd: 1951
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - netdev_ref
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:1944,20'
          Dst:             netdev_ref
    - functionName:    netdev_ref
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 471
      functionLinenumberEnd: 480
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:475,9'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev.c:476,9'
          Dst:             ovs_ignore
        - Src:             'lib/netdev.c:478,9'
          Dst:             ovs_mutex_unlock
    - functionName:    netdev_get_queue_stats
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1918
      functionLinenumberEnd: 1931
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          72
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_delete_queue
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1903
      functionLinenumberEnd: 1906
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_set_queue
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1884
      functionLinenumberEnd: 1887
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_get_queue
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1856
      functionLinenumberEnd: 1866
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          62
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - smap_clear
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:1864,9'
          Dst:             smap_clear
    - functionName:    netdev_set_qos
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1821
      functionLinenumberEnd: 1837
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          76
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_get_qos
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1782
      functionLinenumberEnd: 1798
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          66
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - smap_clear
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:1790,13'
          Dst:             smap_clear
    - functionName:    netdev_get_n_queues
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1753
      functionLinenumberEnd: 1759
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - netdev_get_qos_capabilities
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:1757,14'
          Dst:             netdev_get_qos_capabilities
    - functionName:    netdev_get_qos_capabilities
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1727
      functionLinenumberEnd: 1743
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          78
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_get_qos_types
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1712
      functionLinenumberEnd: 1715
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_set_policing
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1690
      functionLinenumberEnd: 1693
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_get_custom_stats
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1670
      functionLinenumberEnd: 1677
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_get_stats_add
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 67
      functionLinenumberEnd: 67
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_netdev_get_stats_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:67,1'
          Dst:             counter_netdev_get_stats_get
    - functionName:    netdev_get_stats
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1648
      functionLinenumberEnd: 1663
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          61
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - netdev_get_stats_add
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:1655,5'
          Dst:             netdev_get_stats_add
    - functionName:    netdev_set_miimon_interval
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1639
      functionLinenumberEnd: 1641
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_get_carrier_resets
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1623
      functionLinenumberEnd: 1625
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_get_carrier
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1596
      functionLinenumberEnd: 1618
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         16
      ICount:          92
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - netdev_get_flags
        - netdev_get_name
        - ovs_strerror
        - vlog
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:1601,5'
          Dst:             netdev_get_flags
        - Src:             'lib/netdev.c:1612,9'
          Dst:             netdev_get_name
        - Src:             'lib/netdev.c:1612,9'
          Dst:             ovs_strerror
        - Src:             'lib/netdev.c:1612,9'
          Dst:             vlog
    - functionName:    netdev_get_flags
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1513
      functionLinenumberEnd: 1515
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - do_update_flags
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:1515,12'
          Dst:             do_update_flags
    - functionName:    do_update_flags
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1470
      functionLinenumberEnd: 1505
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         31
      ICount:          200
      EdgeCount:       40
      CyclomaticComplexity: 11
      functionsReached:
        - netdev_get_name
        - ovs_list_push_front
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovs_strerror
        - vlog_rate_limit
        - xmalloc
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:1478,9'
          Dst:             netdev_get_name
        - Src:             'lib/netdev.c:1478,9'
          Dst:             ovs_strerror
        - Src:             'lib/netdev.c:1478,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/netdev.c:1486,13'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev.c:1487,25'
          Dst:             xmalloc
        - Src:             'lib/netdev.c:1489,13'
          Dst:             ovs_list_push_front
        - Src:             'lib/netdev.c:1494,13'
          Dst:             ovs_mutex_unlock
    - functionName:    netdev_arp_lookup
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1583
      functionLinenumberEnd: 1590
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          61
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_list_remove
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 251
      functionLinenumberEnd: 254
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          25
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_restore_flags
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1559
      functionLinenumberEnd: 1574
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          62
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - netdev_unref
        - ovs_list_remove
        - ovs_mutex_lock_at
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:1569,9'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev.c:1570,9'
          Dst:             ovs_list_remove
        - Src:             'lib/netdev.c:1572,9'
          Dst:             netdev_unref
    - functionName:    netdev_turn_flags_off
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1550
      functionLinenumberEnd: 1551
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - do_update_flags
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:1551,12'
          Dst:             do_update_flags
    - functionName:    netdev_turn_flags_on
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1541
      functionLinenumberEnd: 1542
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - do_update_flags
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:1542,12'
          Dst:             do_update_flags
    - functionName:    netdev_set_flags
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1523
      functionLinenumberEnd: 1524
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - do_update_flags
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:1524,12'
          Dst:             do_update_flags
    - functionName:    netdev_get_addr_list
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1449
      functionLinenumberEnd: 1460
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          75
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_get_dpif_type
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2060
      functionLinenumberEnd: 2061
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_get_status
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1400
      functionLinenumberEnd: 1431
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          170
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - netdev_get_dpif_type
        - smap_add
        - strcmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:1404,9'
          Dst:             netdev_get_dpif_type
        - Src:             'lib/netdev.c:1405,16'
          Dst:             netdev_get_dpif_type
        - Src:             'lib/netdev.c:1405,9'
          Dst:             strcmp
        - Src:             'lib/netdev.c:1411,9'
          Dst:             smap_add
        - Src:             'lib/netdev.c:1412,9'
          Dst:             smap_add
        - Src:             'lib/netdev.c:1413,9'
          Dst:             smap_add
        - Src:             'lib/netdev.c:1414,9'
          Dst:             smap_add
        - Src:             'lib/netdev.c:1415,9'
          Dst:             smap_add
        - Src:             'lib/netdev.c:1416,9'
          Dst:             smap_add
        - Src:             'lib/netdev.c:1417,9'
          Dst:             smap_add
        - Src:             'lib/netdev.c:1418,9'
          Dst:             smap_add
        - Src:             'lib/netdev.c:1419,9'
          Dst:             smap_add
        - Src:             'lib/netdev.c:1420,9'
          Dst:             smap_add
    - functionName:    netdev_get_next_hop
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1381
      functionLinenumberEnd: 1390
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          66
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_add_router_add
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_netdev_add_router_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:66,1'
          Dst:             counter_netdev_add_router_get
    - functionName:    netdev_add_router
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1363
      functionLinenumberEnd: 1366
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - netdev_add_router_add
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:1364,5'
          Dst:             netdev_add_router_add
    - functionName:    netdev_get_ip_by_name
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1338
      functionLinenumberEnd: 1356
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          73
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - in6_is_lla
        - netdev_get_addresses_by_name
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:1341,17'
          Dst:             netdev_get_addresses_by_name
        - Src:             'lib/netdev.c:1347,18'
          Dst:             in6_is_lla
    - functionName:    netdev_get_addresses_by_name
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1292
      functionLinenumberEnd: 1306
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - netdev_close
        - netdev_get_addr_list
        - netdev_open
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:1294,17'
          Dst:             netdev_open
        - Src:             'lib/netdev.c:1302,13'
          Dst:             netdev_get_addr_list
        - Src:             'lib/netdev.c:1303,5'
          Dst:             netdev_close
    - functionName:    netdev_open
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 364
      functionLinenumberEnd: 464
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         57
      ICount:          392
      EdgeCount:       75
      CyclomaticComplexity: 20
      functionsReached:
        - netdev_change_seq_changed
        - netdev_initialize
        - netdev_lookup_class
        - ovs_ignore
        - ovs_list_init
        - ovs_list_is_empty
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovs_refcount_try_ref_rcu
        - ovs_refcount_unref
        - seq_create
        - seq_destroy
        - seq_read
        - shash_add
        - shash_delete
        - shash_find_data
        - strcmp
        - vlog
        - xstrdup
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:376,5'
          Dst:             netdev_initialize
        - Src:             'lib/netdev.c:378,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev.c:379,14'
          Dst:             shash_find_data
        - Src:             'lib/netdev.c:382,13'
          Dst:             strcmp
        - Src:             'lib/netdev.c:393,21'
          Dst:             shash_delete
        - Src:             'lib/netdev.c:395,21'
          Dst:             netdev_change_seq_changed
        - Src:             'lib/netdev.c:411,14'
          Dst:             netdev_lookup_class
        - Src:             'lib/netdev.c:412,19'
          Dst:             ovs_refcount_try_ref_rcu
        - Src:             'lib/netdev.c:418,32'
          Dst:             xstrdup
        - Src:             'lib/netdev.c:420,43'
          Dst:             seq_create
        - Src:             'lib/netdev.c:422,21'
          Dst:             seq_read
        - Src:             'lib/netdev.c:426,32'
          Dst:             shash_add
        - Src:             'lib/netdev.c:432,17'
          Dst:             ovs_list_init
        - Src:             'lib/netdev.c:436,21'
          Dst:             netdev_change_seq_changed
        - Src:             'lib/netdev.c:438,21'
          Dst:             ovs_refcount_unref
        - Src:             'lib/netdev.c:439,21'
          Dst:             seq_destroy
        - Src:             'lib/netdev.c:441,32'
          Dst:             ovs_list_is_empty
        - Src:             'lib/netdev.c:441,21'
          Dst:             ovs_ignore
        - Src:             'lib/netdev.c:442,21'
          Dst:             shash_delete
        - Src:             'lib/netdev.c:449,13'
          Dst:             vlog
        - Src:             'lib/netdev.c:461,5'
          Dst:             ovs_mutex_unlock
    - functionName:    netdev_initialize
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 138
      functionLinenumberEnd: 162
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         6
      ICount:          28
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - fatal_signal_add_hook
        - netdev_register_provider
        - netdev_vport_patch_register
        - netdev_vport_tunnel_register
        - ovsthread_once_done
        - ovsthread_once_start
        - restore_all_flags
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:141,9'
          Dst:             ovsthread_once_start
        - Src:             'lib/netdev.c:142,9'
          Dst:             fatal_signal_add_hook
        - Src:             'lib/netdev.c:142,9'
          Dst:             restore_all_flags
        - Src:             'lib/netdev.c:144,9'
          Dst:             netdev_vport_patch_register
        - Src:             'lib/netdev.c:147,9'
          Dst:             netdev_register_provider
        - Src:             'lib/netdev.c:148,9'
          Dst:             netdev_register_provider
        - Src:             'lib/netdev.c:149,9'
          Dst:             netdev_register_provider
        - Src:             'lib/netdev.c:150,9'
          Dst:             netdev_vport_tunnel_register
        - Src:             'lib/netdev.c:160,9'
          Dst:             ovsthread_once_done
    - functionName:    netdev_change_seq_changed
      functionSourceFile: '/src/openvswitch/lib/netdev-provider.h'
      linkageType:     InternalLinkage
      functionLinenumber: 112
      functionLinenumberEnd: 124
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          58
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - connectivity_seq_get
        - seq_change
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-provider.h:115,16'
          Dst:             connectivity_seq_get
        - Src:             'lib/netdev-provider.h:115,5'
          Dst:             seq_change
    - functionName:    ovs_refcount_try_ref_rcu
      functionSourceFile: '/src/openvswitch/lib/ovs-atomic.h'
      linkageType:     InternalLinkage
      functionLinenumber: 613
      functionLinenumberEnd: 626
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          64
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_list_init
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_list_is_empty
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 320
      functionLinenumberEnd: 321
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_register_provider
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 218
      functionLinenumberEnd: 243
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         22
      ICount:          125
      EdgeCount:       27
      CyclomaticComplexity: 7
      functionsReached:
        - cmap_insert
        - hash_string
        - netdev_lookup_class
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovs_refcount_init
        - ovs_strerror
        - vlog
        - xmalloc
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:221,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev.c:222,9'
          Dst:             netdev_lookup_class
        - Src:             'lib/netdev.c:223,9'
          Dst:             vlog
        - Src:             'lib/netdev.c:231,18'
          Dst:             xmalloc
        - Src:             'lib/netdev.c:233,25'
          Dst:             hash_string
        - Src:             'lib/netdev.c:232,13'
          Dst:             cmap_insert
        - Src:             'lib/netdev.c:235,13'
          Dst:             ovs_refcount_init
        - Src:             'lib/netdev.c:237,13'
          Dst:             ovs_strerror
        - Src:             'lib/netdev.c:237,13'
          Dst:             vlog
        - Src:             'lib/netdev.c:241,5'
          Dst:             ovs_mutex_unlock
    - functionName:    ovs_refcount_init
      functionSourceFile: '/src/openvswitch/lib/ovs-atomic.h'
      linkageType:     InternalLinkage
      functionLinenumber: 529
      functionLinenumberEnd: 531
      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:    in6_addr_get_mapped_ipv4
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1231
      functionLinenumberEnd: 1239
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          75
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - get_16aligned_be32
        - htonl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:1234,9'
          Dst:             htonl
        - Src:             'lib/packets.h:1235,16'
          Dst:             get_16aligned_be32
    - functionName:    netdev_get_in4_by_name
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1312
      functionLinenumberEnd: 1330
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          117
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - htonl
        - in6_addr_get_mapped_ipv4
        - netdev_get_addresses_by_name
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:1315,17'
          Dst:             netdev_get_addresses_by_name
        - Src:             'lib/netdev.c:1321,17'
          Dst:             htonl
        - Src:             'lib/netdev.c:1322,31'
          Dst:             in6_addr_get_mapped_ipv4
    - functionName:    netdev_set_in4
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1283
      functionLinenumberEnd: 1285
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          48
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ds_put_char
      functionSourceFile: '/src/openvswitch/./include/openvswitch/dynamic-string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_char__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/dynamic-string.h:99,9'
          Dst:             ds_put_char__
    - functionName:    netdev_feature_to_name
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1246
      functionLinenumberEnd: 1269
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         19
      ICount:          100
      EdgeCount:       36
      CyclomaticComplexity: 19
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/netdev.c:1249,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    netdev_features_format
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1273
      functionLinenumberEnd: 1276
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_char
        - netdev_feature_to_name
        - ofp_print_bit_names
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:1274,5'
          Dst:             ofp_print_bit_names
        - Src:             'lib/netdev.c:1274,5'
          Dst:             netdev_feature_to_name
        - Src:             'lib/netdev.c:1275,5'
          Dst:             ds_put_char
    - functionName:    netdev_set_advertisements
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1237
      functionLinenumberEnd: 1240
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_get_duplex
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1207
      functionLinenumberEnd: 1229
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          100
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - netdev_get_features
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:1218,17'
          Dst:             netdev_get_features
    - functionName:    netdev_get_features
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1111
      functionLinenumberEnd: 1141
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          125
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_features_to_bps
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1180
      functionLinenumberEnd: 1198
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         22
      ICount:          89
      EdgeCount:       28
      CyclomaticComplexity: 8
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_get_speed
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1146
      functionLinenumberEnd: 1171
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          115
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - netdev_features_to_bps
        - netdev_get_features
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:1164,17'
          Dst:             netdev_get_features
        - Src:             'lib/netdev.c:1166,20'
          Dst:             netdev_features_to_bps
        - Src:             'lib/netdev.c:1167,16'
          Dst:             netdev_features_to_bps
    - functionName:    netdev_get_ifindex
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1089
      functionLinenumberEnd: 1094
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_mtu_is_user_config
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1071
      functionLinenumberEnd: 1072
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_mtu_user_config
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1059
      functionLinenumberEnd: 1064
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - netdev_change_seq_changed
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:1061,9'
          Dst:             netdev_change_seq_changed
    - functionName:    netdev_set_mtu
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1041
      functionLinenumberEnd: 1051
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          88
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - netdev_get_name
        - ovs_strerror
        - vlog_rate_limit
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:1047,9'
          Dst:             netdev_get_name
        - Src:             'lib/netdev.c:1047,9'
          Dst:             ovs_strerror
        - Src:             'lib/netdev.c:1047,9'
          Dst:             vlog_rate_limit
    - functionName:    netdev_get_mtu
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1018
      functionLinenumberEnd: 1030
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          91
      EdgeCount:       21
      CyclomaticComplexity: 6
      functionsReached:
        - netdev_get_name
        - ovs_strerror
        - vlog_rate_limit
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:1026,13'
          Dst:             netdev_get_name
        - Src:             'lib/netdev.c:1026,13'
          Dst:             ovs_strerror
        - Src:             'lib/netdev.c:1026,13'
          Dst:             vlog_rate_limit
    - functionName:    netdev_get_etheraddr
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 990
      functionLinenumberEnd: 997
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_set_etheraddr
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 981
      functionLinenumberEnd: 982
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_send_wait
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 971
      functionLinenumberEnd: 975
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pkt_metadata_init
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 165
      functionLinenumberEnd: 183
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          34
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_delete
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 271
      functionLinenumberEnd: 290
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          54
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - dp_packet_uninit
        - free_afxdp_buf
        - free_dpdk_buf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:274,13'
          Dst:             free_dpdk_buf
        - Src:             'lib/dp-packet.h:279,13'
          Dst:             free_afxdp_buf
        - Src:             'lib/dp-packet.h:283,9'
          Dst:             dp_packet_uninit
    - functionName:    netdev_push_header_drops_add
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 68
      functionLinenumberEnd: 68
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_netdev_push_header_drops_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:68,1'
          Dst:             counter_netdev_push_header_drops_get
    - functionName:    netdev_push_header
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 914
      functionLinenumberEnd: 957
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         56
      ICount:          293
      EdgeCount:       73
      CyclomaticComplexity: 19
      functionsReached:
        - dp_packet_batch_add
        - dp_packet_batch_refill_init
        - dp_packet_batch_size
        - dp_packet_delete
        - dp_packet_get_tso_segsz
        - dp_packet_gso_batch
        - dp_packet_ol_send_prepare
        - dp_packet_tunnel
        - netdev_get_name
        - netdev_get_type
        - netdev_push_header_drops_add
        - pkt_metadata_init
        - userspace_tso_enabled
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:921,9'
          Dst:             userspace_tso_enabled
        - Src:             'lib/netdev.c:923,30'
          Dst:             dp_packet_batch_size
        - Src:             'lib/netdev.c:925,13'
          Dst:             dp_packet_batch_refill_init
        - Src:             'lib/netdev.c:926,21'
          Dst:             dp_packet_get_tso_segsz
        - Src:             'lib/netdev.c:927,21'
          Dst:             netdev_push_header_drops_add
        - Src:             'lib/netdev.c:928,21'
          Dst:             dp_packet_delete
        - Src:             'lib/netdev.c:929,21'
          Dst:             netdev_get_name
        - Src:             'lib/netdev.c:929,21'
          Dst:             netdev_get_type
        - Src:             'lib/netdev.c:929,21'
          Dst:             vlog_rate_limit
        - Src:             'lib/netdev.c:935,17'
          Dst:             dp_packet_batch_add
        - Src:             'lib/netdev.c:938,13'
          Dst:             dp_packet_batch_size
        - Src:             'lib/netdev.c:939,21'
          Dst:             dp_packet_tunnel
        - Src:             'lib/netdev.c:940,24'
          Dst:             dp_packet_get_tso_segsz
        - Src:             'lib/netdev.c:941,21'
          Dst:             dp_packet_gso_batch
        - Src:             'lib/netdev.c:948,5'
          Dst:             dp_packet_batch_size
        - Src:             'lib/netdev.c:949,36'
          Dst:             dp_packet_tunnel
        - Src:             'lib/netdev.c:950,13'
          Dst:             dp_packet_ol_send_prepare
        - Src:             'lib/netdev.c:954,9'
          Dst:             pkt_metadata_init
    - functionName:    dp_packet_batch_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 910
      functionLinenumberEnd: 911
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_batch_refill_init
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 923
      functionLinenumberEnd: 925
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_get_tso_segsz
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 798
      functionLinenumberEnd: 799
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_batch_add
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 889
      functionLinenumberEnd: 894
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_batch_grow
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:891,9'
          Dst:             dp_packet_batch_grow
    - functionName:    dp_packet_tunnel
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1135
      functionLinenumberEnd: 1136
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_build_header
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 897
      functionLinenumberEnd: 902
      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:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_init_tnl_build_header_params
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 886
      functionLinenumberEnd: 892
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          87
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - htonl
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:891,24'
          Dst:             htonl
    - functionName:    pkt_metadata_init_conn
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 159
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_reset_offload
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1069
      functionLinenumberEnd: 1072
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_pop_header
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 863
      functionLinenumberEnd: 878
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          83
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - dp_packet_batch_add
        - dp_packet_batch_refill_init
        - dp_packet_batch_size
        - dp_packet_reset_offload
        - pkt_metadata_init_conn
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:865,22'
          Dst:             dp_packet_batch_size
        - Src:             'lib/netdev.c:867,5'
          Dst:             dp_packet_batch_refill_init
        - Src:             'lib/netdev.c:873,13'
          Dst:             dp_packet_reset_offload
        - Src:             'lib/netdev.c:874,13'
          Dst:             pkt_metadata_init_conn
        - Src:             'lib/netdev.c:875,13'
          Dst:             dp_packet_batch_add
    - functionName:    netdev_sent_add
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 65
      functionLinenumberEnd: 65
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_netdev_sent_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:65,1'
          Dst:             counter_netdev_sent_get
    - functionName:    netdev_send
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 811
      functionLinenumberEnd: 853
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         61
      ICount:          286
      EdgeCount:       79
      CyclomaticComplexity: 20
      functionsReached:
        - dp_packet_batch_size
        - dp_packet_get_tso_segsz
        - dp_packet_gso_batch
        - dp_packet_gso_batch_partial
        - dp_packet_gso_partial_nr_segs
        - dp_packet_ol_send_prepare
        - dp_packet_tunnel
        - netdev_sent_add
        - userspace_tso_enabled
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:816,9'
          Dst:             userspace_tso_enabled
        - Src:             'lib/netdev.c:818,13'
          Dst:             dp_packet_batch_size
        - Src:             'lib/netdev.c:819,21'
          Dst:             dp_packet_get_tso_segsz
        - Src:             'lib/netdev.c:820,21'
          Dst:             dp_packet_gso_batch
        - Src:             'lib/netdev.c:827,13'
          Dst:             dp_packet_batch_size
        - Src:             'lib/netdev.c:828,21'
          Dst:             dp_packet_get_tso_segsz
        - Src:             'lib/netdev.c:829,24'
          Dst:             dp_packet_tunnel
        - Src:             'lib/netdev.c:830,21'
          Dst:             dp_packet_gso_batch
        - Src:             'lib/netdev.c:835,13'
          Dst:             dp_packet_batch_size
        - Src:             'lib/netdev.c:836,21'
          Dst:             dp_packet_get_tso_segsz
        - Src:             'lib/netdev.c:837,24'
          Dst:             dp_packet_gso_partial_nr_segs
        - Src:             'lib/netdev.c:838,21'
          Dst:             dp_packet_gso_batch_partial
        - Src:             'lib/netdev.c:845,5'
          Dst:             dp_packet_batch_size
        - Src:             'lib/netdev.c:846,9'
          Dst:             dp_packet_ol_send_prepare
        - Src:             'lib/netdev.c:851,9'
          Dst:             netdev_sent_add
    - functionName:    netdev_get_pt_mode
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 777
      functionLinenumberEnd: 779
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_set_tx_multiq
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 760
      functionLinenumberEnd: 772
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          97
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - netdev_get_name
        - ovs_strerror
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:768,9'
          Dst:             netdev_get_name
        - Src:             'lib/netdev.c:768,9'
          Dst:             ovs_strerror
        - Src:             'lib/netdev.c:768,9'
          Dst:             vlog_rate_limit
    - functionName:    netdev_rxq_drain
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 742
      functionLinenumberEnd: 744
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_rxq_wait
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 735
      functionLinenumberEnd: 737
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_received_add
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 64
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_netdev_received_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:64,1'
          Dst:             counter_netdev_received_get
    - functionName:    netdev_rxq_recv
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 719
      functionLinenumberEnd: 728
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - netdev_received_add
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:724,9'
          Dst:             netdev_received_add
    - functionName:    netdev_rxq_enabled
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 694
      functionLinenumberEnd: 700
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_rxq_close
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 684
      functionLinenumberEnd: 691
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - netdev_close
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:689,9'
          Dst:             netdev_close
    - functionName:    netdev_rxq_open
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 654
      functionLinenumberEnd: 678
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          113
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - netdev_ref
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:664,17'
          Dst:             netdev_ref
    - functionName:    netdev_parse_name
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 629
      functionLinenumberEnd: 642
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - strchr
        - xstrdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:630,25'
          Dst:             xstrdup
        - Src:             'lib/netdev.c:633,17'
          Dst:             strchr
        - Src:             'lib/netdev.c:637,17'
          Dst:             xstrdup
        - Src:             'lib/netdev.c:640,17'
          Dst:             xstrdup
    - functionName:    netdev_remove
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 613
      functionLinenumberEnd: 623
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          46
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - netdev_change_seq_changed
        - netdev_unref
        - ovs_mutex_lock_at
        - shash_delete
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:615,9'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev.c:617,13'
          Dst:             shash_delete
        - Src:             'lib/netdev.c:619,13'
          Dst:             netdev_change_seq_changed
        - Src:             'lib/netdev.c:621,9'
          Dst:             netdev_unref
    - functionName:    netdev_get_numa_id
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 558
      functionLinenumberEnd: 564
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_get_tunnel_config
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 546
      functionLinenumberEnd: 552
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    12
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_get_config
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 527
      functionLinenumberEnd: 540
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          57
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - smap_clear
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:530,5'
          Dst:             smap_clear
        - Src:             'lib/netdev.c:534,13'
          Dst:             smap_clear
    - functionName:    netdev_set_config
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 488
      functionLinenumberEnd: 515
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         52
      ICount:          229
      EdgeCount:       66
      CyclomaticComplexity: 16
      functionsReached:
        - netdev_get_name
        - ovs_strerror
        - smap_is_empty
        - vlog
        - xasprintf
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:498,13'
          Dst:             netdev_get_name
        - Src:             'lib/netdev.c:498,13'
          Dst:             ovs_strerror
        - Src:             'lib/netdev.c:498,13'
          Dst:             vlog
        - Src:             'lib/netdev.c:498,13'
          Dst:             netdev_get_name
        - Src:             'lib/netdev.c:498,13'
          Dst:             ovs_strerror
        - Src:             'lib/netdev.c:498,13'
          Dst:             xasprintf
        - Src:             'lib/netdev.c:510,25'
          Dst:             smap_is_empty
        - Src:             'lib/netdev.c:511,9'
          Dst:             netdev_get_name
        - Src:             'lib/netdev.c:511,9'
          Dst:             vlog
        - Src:             'lib/netdev.c:511,9'
          Dst:             netdev_get_name
        - Src:             'lib/netdev.c:511,9'
          Dst:             xasprintf
    - functionName:    netdev_is_reserved_name
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 321
      functionLinenumberEnd: 348
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         30
      ICount:          157
      EdgeCount:       39
      CyclomaticComplexity: 11
      functionsReached:
        - cmap_cursor_advance
        - cmap_cursor_start
        - dp_enumerate_types
        - hmap_first
        - hmap_next
        - netdev_initialize
        - netdev_vport_class_get_dpif_port
        - sset_destroy
        - sset_init
        - strcmp
        - strlen
        - strncmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:322,5'
          Dst:             netdev_initialize
        - Src:             'lib/netdev.c:325,5'
          Dst:             cmap_cursor_start
        - Src:             'lib/netdev.c:325,5'
          Dst:             cmap_cursor_advance
        - Src:             'lib/netdev.c:326,33'
          Dst:             netdev_vport_class_get_dpif_port
        - Src:             'lib/netdev.c:327,52'
          Dst:             strlen
        - Src:             'lib/netdev.c:327,27'
          Dst:             strncmp
        - Src:             'lib/netdev.c:332,10'
          Dst:             strncmp
        - Src:             'lib/netdev.c:336,9'
          Dst:             sset_init
        - Src:             'lib/netdev.c:337,9'
          Dst:             dp_enumerate_types
        - Src:             'lib/netdev.c:338,9'
          Dst:             hmap_first
        - Src:             'lib/netdev.c:338,9'
          Dst:             hmap_first
        - Src:             'lib/netdev.c:339,18'
          Dst:             strcmp
        - Src:             'lib/netdev.c:340,17'
          Dst:             sset_destroy
        - Src:             'lib/netdev.c:338,9'
          Dst:             hmap_next
        - Src:             'lib/netdev.c:338,9'
          Dst:             hmap_next
        - Src:             'lib/netdev.c:344,9'
          Dst:             sset_destroy
    - functionName:    netdev_enumerate_types
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 288
      functionLinenumberEnd: 296
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          56
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - cmap_cursor_advance
        - cmap_cursor_start
        - netdev_initialize
        - sset_add
        - sset_clear
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:289,5'
          Dst:             netdev_initialize
        - Src:             'lib/netdev.c:290,5'
          Dst:             sset_clear
        - Src:             'lib/netdev.c:293,5'
          Dst:             cmap_cursor_start
        - Src:             'lib/netdev.c:293,5'
          Dst:             cmap_cursor_advance
        - Src:             'lib/netdev.c:294,9'
          Dst:             sset_add
    - functionName:    cmap_remove
      functionSourceFile: '/src/openvswitch/lib/cmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 293
      functionLinenumberEnd: 294
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - cmap_replace
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/cmap.h:294,12'
          Dst:             cmap_replace
    - functionName:    ovs_refcount_ref
      functionSourceFile: '/src/openvswitch/lib/ovs-atomic.h'
      linkageType:     InternalLinkage
      functionLinenumber: 539
      functionLinenumberEnd: 545
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-atomic.h:544,5'
          Dst:             ovs_ignore
    - functionName:    netdev_unregister_provider
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 255
      functionLinenumberEnd: 280
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         19
      ICount:          101
      EdgeCount:       23
      CyclomaticComplexity: 6
      functionsReached:
        - cmap_remove
        - hash_string
        - netdev_initialize
        - netdev_lookup_class
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovs_refcount_ref
        - ovs_refcount_unref
        - ovsrcu_postpone__
        - vlog
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:259,5'
          Dst:             netdev_initialize
        - Src:             'lib/netdev.c:261,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev.c:262,10'
          Dst:             netdev_lookup_class
        - Src:             'lib/netdev.c:264,9'
          Dst:             vlog
        - Src:             'lib/netdev.c:267,16'
          Dst:             ovs_refcount_unref
        - Src:             'lib/netdev.c:268,9'
          Dst:             ovs_refcount_ref
        - Src:             'lib/netdev.c:269,9'
          Dst:             vlog
        - Src:             'lib/netdev.c:274,21'
          Dst:             hash_string
        - Src:             'lib/netdev.c:273,9'
          Dst:             cmap_remove
        - Src:             'lib/netdev.c:275,9'
          Dst:             ovsrcu_postpone__
        - Src:             'lib/netdev.c:278,5'
          Dst:             ovs_mutex_unlock
    - functionName:    netdev_wait
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 189
      functionLinenumberEnd: 198
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         12
      ICount:          69
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - cmap_cursor_advance
        - cmap_cursor_start
        - netdev_initialize
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:190,5'
          Dst:             netdev_initialize
        - Src:             'lib/netdev.c:193,5'
          Dst:             cmap_cursor_start
        - Src:             'lib/netdev.c:193,5'
          Dst:             cmap_cursor_advance
    - functionName:    netdev_run
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 171
      functionLinenumberEnd: 180
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         12
      ICount:          69
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - cmap_cursor_advance
        - cmap_cursor_start
        - netdev_initialize
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev.c:172,5'
          Dst:             netdev_initialize
        - Src:             'lib/netdev.c:175,5'
          Dst:             cmap_cursor_start
        - Src:             'lib/netdev.c:175,5'
          Dst:             cmap_cursor_advance
    - functionName:    netdev_has_tunnel_push_pop
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 130
      functionLinenumberEnd: 132
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_is_pmd
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 124
      functionLinenumberEnd: 125
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_n_rxq
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_n_txq
      functionSourceFile: '/src/openvswitch/lib/netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 112
      functionLinenumberEnd: 113
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    11
      BranchProfiles:  []
      Callsites:       []
    - functionName:    init_this_module_ofp_match
      functionSourceFile: '/src/openvswitch/lib/ofp-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 29
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-match.c:29,1'
          Dst:             vlog_insert_module
    - functionName:    be32_to_be16
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 135
      functionLinenumberEnd: 135
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pt_ns_type_be
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1577
      functionLinenumberEnd: 1578
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - be32_to_be16
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:1578,12'
          Dst:             be32_to_be16
    - functionName:    pt_ns
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1570
      functionLinenumberEnd: 1571
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:1571,12'
          Dst:             ntohl
    - functionName:    ovs_list_remove
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 251
      functionLinenumberEnd: 254
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          25
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_list_insert
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 169
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    print_ip_netmask
      functionSourceFile: '/src/openvswitch/lib/ofp-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1054
      functionLinenumberEnd: 1068
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          90
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - ds_put_char
        - ds_put_cstr
        - ds_put_format
        - ntohl
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-match.c:1058,5'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-match.c:1060,39'
          Dst:             ntohl
        - Src:             'lib/ofp-match.c:1060,39'
          Dst:             ntohl
        - Src:             'lib/ofp-match.c:1060,39'
          Dst:             ntohl
        - Src:             'lib/ofp-match.c:1060,39'
          Dst:             ntohl
        - Src:             'lib/ofp-match.c:1060,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-match.c:1062,13'
          Dst:             ds_put_format
        - Src:             'lib/ofp-match.c:1065,9'
          Dst:             ds_put_char
        - Src:             'lib/ofp-match.c:1067,5'
          Dst:             ds_put_char
    - functionName:    ds_put_char
      functionSourceFile: '/src/openvswitch/./include/openvswitch/dynamic-string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_char__
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/dynamic-string.h:99,9'
          Dst:             ds_put_char__
    - functionName:    print_wild
      functionSourceFile: '/src/openvswitch/lib/ofp-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1017
      functionLinenumberEnd: 1032
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          70
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - ds_put_char
        - ds_put_cstr
        - ds_put_format_valist
      functionUses:    12
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-match.c:1021,5'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-match.c:1026,9'
          Dst:             ds_put_format_valist
        - Src:             'lib/ofp-match.c:1029,9'
          Dst:             ds_put_char
        - Src:             'lib/ofp-match.c:1031,5'
          Dst:             ds_put_char
    - functionName:    print_wild_port
      functionSourceFile: '/src/openvswitch/lib/ofp-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1038
      functionLinenumberEnd: 1049
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          67
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - ds_put_char
        - ds_put_cstr
        - ofputil_format_port
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-match.c:1042,5'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-match.c:1044,9'
          Dst:             ofputil_format_port
        - Src:             'lib/ofp-match.c:1046,9'
          Dst:             ds_put_char
        - Src:             'lib/ofp-match.c:1048,5'
          Dst:             ds_put_char
    - functionName:    ofp10_match_to_string
      functionSourceFile: '/src/openvswitch/lib/ofp-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1082
      functionLinenumberEnd: 1164
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         51
      ICount:          443
      EdgeCount:       67
      CyclomaticComplexity: 18
      functionsReached:
        - ds_chomp
        - ds_cstr
        - ds_put_cstr
        - htons
        - ntohl
        - ntohs
        - print_ip_netmask
        - print_wild
        - print_wild_port
        - u16_to_ofp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-match.c:1084,18'
          Dst:             ntohl
        - Src:             'lib/ofp-match.c:1090,28'
          Dst:             htons
        - Src:             'lib/ofp-match.c:1094,21'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-match.c:1096,21'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-match.c:1098,21'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-match.c:1100,21'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-match.c:1102,21'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-match.c:1106,17'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-match.c:1108,35'
          Dst:             htons
        - Src:             'lib/ofp-match.c:1109,13'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-match.c:1110,35'
          Dst:             htons
        - Src:             'lib/ofp-match.c:1111,13'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-match.c:1112,35'
          Dst:             htons
        - Src:             'lib/ofp-match.c:1113,13'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-match.c:1114,35'
          Dst:             htons
        - Src:             'lib/ofp-match.c:1115,13'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-match.c:1121,32'
          Dst:             ntohs
        - Src:             'lib/ofp-match.c:1121,21'
          Dst:             u16_to_ofp
        - Src:             'lib/ofp-match.c:1120,5'
          Dst:             print_wild_port
        - Src:             'lib/ofp-match.c:1123,22'
          Dst:             ntohs
        - Src:             'lib/ofp-match.c:1122,5'
          Dst:             print_wild
        - Src:             'lib/ofp-match.c:1124,5'
          Dst:             print_wild
        - Src:             'lib/ofp-match.c:1126,5'
          Dst:             print_wild
        - Src:             'lib/ofp-match.c:1128,5'
          Dst:             print_wild
        - Src:             'lib/ofp-match.c:1132,30'
          Dst:             ntohs
        - Src:             'lib/ofp-match.c:1131,9'
          Dst:             print_wild
        - Src:             'lib/ofp-match.c:1134,5'
          Dst:             print_ip_netmask
        - Src:             'lib/ofp-match.c:1137,5'
          Dst:             print_ip_netmask
        - Src:             'lib/ofp-match.c:1141,28'
          Dst:             htons
        - Src:             'lib/ofp-match.c:1142,28'
          Dst:             htons
        - Src:             'lib/ofp-match.c:1143,13'
          Dst:             print_wild
        - Src:             'lib/ofp-match.c:1146,13'
          Dst:             print_wild
        - Src:             'lib/ofp-match.c:1150,5'
          Dst:             print_wild
        - Src:             'lib/ofp-match.c:1154,26'
          Dst:             ntohs
        - Src:             'lib/ofp-match.c:1153,9'
          Dst:             print_wild
        - Src:             'lib/ofp-match.c:1156,26'
          Dst:             ntohs
        - Src:             'lib/ofp-match.c:1155,9'
          Dst:             print_wild
        - Src:             'lib/ofp-match.c:1159,26'
          Dst:             ntohs
        - Src:             'lib/ofp-match.c:1158,9'
          Dst:             print_wild
        - Src:             'lib/ofp-match.c:1161,26'
          Dst:             ntohs
        - Src:             'lib/ofp-match.c:1160,9'
          Dst:             print_wild
        - Src:             'lib/ofp-match.c:1163,5'
          Dst:             ds_chomp
        - Src:             'lib/ofp-match.c:1164,12'
          Dst:             ds_cstr
    - functionName:    u16_to_ofp
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 214
      functionLinenumberEnd: 215
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofp10_match_print
      functionSourceFile: '/src/openvswitch/lib/ofp-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1073
      functionLinenumberEnd: 1077
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_cstr
        - ofp10_match_to_string
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-match.c:1074,15'
          Dst:             ofp10_match_to_string
        - Src:             'lib/ofp-match.c:1075,5'
          Dst:             ds_put_cstr
    - functionName:    ofputil_normalize_match_quiet
      functionSourceFile: '/src/openvswitch/lib/ofp-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1010
      functionLinenumberEnd: 1012
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofputil_normalize_match__
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-match.c:1011,5'
          Dst:             ofputil_normalize_match__
    - functionName:    ofputil_normalize_match__
      functionSourceFile: '/src/openvswitch/lib/ofp-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 867
      functionLinenumberEnd: 979
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         114
      ICount:          608
      EdgeCount:       150
      CyclomaticComplexity: 38
      functionsReached:
        - eth_type_mpls
        - flow_wildcards_equal
        - htonl
        - htons
        - match_has_default_packet_type
        - match_to_string
        - match_zero_wildcarded_fields
        - pt_ns
        - pt_ns_type_be
        - vlog
        - vlog_should_drop
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-match.c:886,38'
          Dst:             match_has_default_packet_type
        - Src:             'lib/ofp-match.c:890,16'
          Dst:             pt_ns
        - Src:             'lib/ofp-match.c:892,19'
          Dst:             pt_ns_type_be
        - Src:             'lib/ofp-match.c:897,20'
          Dst:             htons
        - Src:             'lib/ofp-match.c:905,27'
          Dst:             htons
        - Src:             'lib/ofp-match.c:913,39'
          Dst:             htons
        - Src:             'lib/ofp-match.c:915,46'
          Dst:             htons
        - Src:             'lib/ofp-match.c:919,27'
          Dst:             htons
        - Src:             'lib/ofp-match.c:920,27'
          Dst:             htons
        - Src:             'lib/ofp-match.c:922,16'
          Dst:             eth_type_mpls
        - Src:             'lib/ofp-match.c:931,45'
          Dst:             htonl
        - Src:             'lib/ofp-match.c:934,45'
          Dst:             htons
        - Src:             'lib/ofp-match.c:951,31'
          Dst:             htonl
        - Src:             'lib/ofp-match.c:961,10'
          Dst:             flow_wildcards_equal
        - Src:             'lib/ofp-match.c:962,32'
          Dst:             vlog_should_drop
        - Src:             'lib/ofp-match.c:964,24'
          Dst:             match_to_string
        - Src:             'lib/ofp-match.c:968,9'
          Dst:             match_zero_wildcarded_fields
        - Src:             'lib/ofp-match.c:971,26'
          Dst:             match_to_string
        - Src:             'lib/ofp-match.c:972,13'
          Dst:             vlog
        - Src:             'lib/ofp-match.c:973,13'
          Dst:             vlog
        - Src:             'lib/ofp-match.c:974,13'
          Dst:             vlog
    - functionName:    eth_type_mpls
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 423
      functionLinenumberEnd: 425
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htons
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:424,24'
          Dst:             htons
        - Src:             'lib/packets.h:425,21'
          Dst:             htons
    - functionName:    ofputil_normalize_match
      functionSourceFile: '/src/openvswitch/lib/ofp-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1000
      functionLinenumberEnd: 1002
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofputil_normalize_match__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-match.c:1001,5'
          Dst:             ofputil_normalize_match__
    - functionName:    ovs_list_pop_front
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 261
      functionLinenumberEnd: 265
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_list_remove
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/list.h:264,5'
          Dst:             ovs_list_remove
    - functionName:    ovs_list_is_empty
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 320
      functionLinenumberEnd: 321
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofputil_format_tlv_table_reply
      functionSourceFile: '/src/openvswitch/lib/ofp-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 839
      functionLinenumberEnd: 853
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          85
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ds_put_char
        - ds_put_format
        - print_tlv_table
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-match.c:840,5'
          Dst:             ds_put_char
        - Src:             'lib/ofp-match.c:848,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-match.c:850,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-match.c:851,5'
          Dst:             ds_put_char
        - Src:             'lib/ofp-match.c:852,5'
          Dst:             print_tlv_table
    - functionName:    print_tlv_table
      functionSourceFile: '/src/openvswitch/lib/ofp-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 727
      functionLinenumberEnd: 740
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          78
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ds_put_cstr
        - ds_put_format
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-match.c:730,5'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-match.c:731,5'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-match.c:732,5'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-match.c:735,9'
          Dst:             ds_put_format
    - functionName:    ofputil_uninit_tlv_table
      functionSourceFile: '/src/openvswitch/lib/ofp-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 857
      functionLinenumberEnd: 863
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          44
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ovs_list_is_empty
        - ovs_list_pop_front
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-match.c:860,5'
          Dst:             ovs_list_is_empty
        - Src:             'lib/ofp-match.c:860,5'
          Dst:             ovs_list_pop_front
    - functionName:    ovs_list_push_back
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 204
      functionLinenumberEnd: 206
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_list_insert
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/list.h:205,5'
          Dst:             ovs_list_insert
    - functionName:    ovs_list_init
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    parse_ofp_tlv_table_mod_str
      functionSourceFile: '/src/openvswitch/lib/ofp-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 806
      functionLinenumberEnd: 834
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - short
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          96
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - ofputil_uninit_tlv_table
        - ovs_list_init
        - ovs_list_push_back
        - ovs_scan
        - xmalloc
        - xstrdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-match.c:810,5'
          Dst:             ovs_list_init
        - Src:             'lib/ofp-match.c:813,39'
          Dst:             xmalloc
        - Src:             'lib/ofp-match.c:820,9'
          Dst:             ovs_list_push_back
        - Src:             'lib/ofp-match.c:822,14'
          Dst:             ovs_scan
        - Src:             'lib/ofp-match.c:826,13'
          Dst:             ofputil_uninit_tlv_table
        - Src:             'lib/ofp-match.c:827,20'
          Dst:             xstrdup
    - functionName:    ofputil_decode_tlv_table_reply
      functionSourceFile: '/src/openvswitch/lib/ofp-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 791
      functionLinenumberEnd: 799
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          48
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - decode_tlv_table_mappings
        - ntohl
        - ntohs
        - ofpbuf_const_initializer
        - ofpbuf_pull
        - ofpraw_pull_assert
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-match.c:792,54'
          Dst:             ntohs
        - Src:             'lib/ofp-match.c:792,25'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/ofp-match.c:793,5'
          Dst:             ofpraw_pull_assert
        - Src:             'lib/ofp-match.c:795,41'
          Dst:             ofpbuf_pull
        - Src:             'lib/ofp-match.c:796,29'
          Dst:             ntohl
        - Src:             'lib/ofp-match.c:797,23'
          Dst:             ntohs
        - Src:             'lib/ofp-match.c:799,12'
          Dst:             decode_tlv_table_mappings
    - functionName:    ofpbuf_const_initializer
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 97
      functionLinenumberEnd: 105
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          30
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofpbuf_pull
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 258
      functionLinenumberEnd: 269
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          64
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:259,5'
          Dst:             ovs_ignore
    - functionName:    decode_tlv_table_mappings
      functionSourceFile: '/src/openvswitch/lib/ofp-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 672
      functionLinenumberEnd: 704
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          166
      EdgeCount:       30
      CyclomaticComplexity: 8
      functionsReached:
        - ntohs
        - ofpbuf_pull
        - ofputil_uninit_tlv_table
        - ovs_list_init
        - ovs_list_push_back
        - vlog_rate_limit
        - xmalloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-match.c:673,5'
          Dst:             ovs_list_init
        - Src:             'lib/ofp-match.c:679,18'
          Dst:             ofpbuf_pull
        - Src:             'lib/ofp-match.c:680,15'
          Dst:             xmalloc
        - Src:             'lib/ofp-match.c:681,9'
          Dst:             ovs_list_push_back
        - Src:             'lib/ofp-match.c:683,29'
          Dst:             ntohs
        - Src:             'lib/ofp-match.c:688,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-match.c:690,13'
          Dst:             ofputil_uninit_tlv_table
        - Src:             'lib/ofp-match.c:694,22'
          Dst:             ntohs
        - Src:             'lib/ofp-match.c:696,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-match.c:698,13'
          Dst:             ofputil_uninit_tlv_table
    - functionName:    ofputil_encode_tlv_table_reply
      functionSourceFile: '/src/openvswitch/lib/ofp-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 768
      functionLinenumberEnd: 779
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          42
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - encode_tlv_table_mappings
        - htonl
        - htons
        - ofpbuf_put_zeros
        - ofpraw_alloc_reply
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-match.c:772,9'
          Dst:             ofpraw_alloc_reply
        - Src:             'lib/ofp-match.c:773,14'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-match.c:774,32'
          Dst:             htonl
        - Src:             'lib/ofp-match.c:775,26'
          Dst:             htons
        - Src:             'lib/ofp-match.c:777,5'
          Dst:             encode_tlv_table_mappings
    - functionName:    encode_tlv_table_mappings
      functionSourceFile: '/src/openvswitch/lib/ofp-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 640
      functionLinenumberEnd: 652
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          84
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - htons
        - ofpbuf_put_zeros
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-match.c:646,18'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-match.c:647,32'
          Dst:             htons
        - Src:             'lib/ofp-match.c:650,25'
          Dst:             htons
    - functionName:    ofputil_format_tlv_table_mod
      functionSourceFile: '/src/openvswitch/lib/ofp-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 745
      functionLinenumberEnd: 763
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          65
      EdgeCount:       11
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_cstr
        - print_tlv_table
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-match.c:748,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-match.c:746,5'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-match.c:750,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-match.c:753,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-match.c:756,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-match.c:761,9'
          Dst:             print_tlv_table
    - functionName:    ofputil_decode_tlv_table_mod
      functionSourceFile: '/src/openvswitch/lib/ofp-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 709
      functionLinenumberEnd: 723
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          79
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - decode_tlv_table_mappings
        - ntohs
        - ofpbuf_const_initializer
        - ofpbuf_pull
        - ofpraw_pull_assert
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-match.c:710,54'
          Dst:             ntohs
        - Src:             'lib/ofp-match.c:710,25'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/ofp-match.c:711,5'
          Dst:             ofpraw_pull_assert
        - Src:             'lib/ofp-match.c:713,39'
          Dst:             ofpbuf_pull
        - Src:             'lib/ofp-match.c:714,20'
          Dst:             ntohs
        - Src:             'lib/ofp-match.c:716,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-match.c:721,12'
          Dst:             decode_tlv_table_mappings
    - functionName:    ofputil_encode_tlv_table_mod
      functionSourceFile: '/src/openvswitch/lib/ofp-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 657
      functionLinenumberEnd: 666
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - encode_tlv_table_mappings
        - htons
        - ofpbuf_put_zeros
        - ofpraw_alloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-match.c:661,9'
          Dst:             ofpraw_alloc
        - Src:             'lib/ofp-match.c:662,14'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-match.c:663,23'
          Dst:             htons
        - Src:             'lib/ofp-match.c:664,5'
          Dst:             encode_tlv_table_mappings
    - functionName:    ofputil_put_ofp11_match
      functionSourceFile: '/src/openvswitch/lib/ofp-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 586
      functionLinenumberEnd: 614
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          81
      EdgeCount:       29
      CyclomaticComplexity: 15
      functionsReached:
        - abort
        - ofpbuf_put_uninit
        - ofputil_match_to_ofp11_match
        - ofputil_protocol_to_ofp_version
        - oxm_put_match
      functionUses:    4
      BranchProfiles:
        - Branch String:   'lib/ofp-match.c:587,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-match.c:592,9'
          Dst:             abort
        - Src:             'lib/ofp-match.c:600,14'
          Dst:             ofpbuf_put_uninit
        - Src:             'lib/ofp-match.c:601,9'
          Dst:             ofputil_match_to_ofp11_match
        - Src:             'lib/ofp-match.c:610,30'
          Dst:             ofputil_protocol_to_ofp_version
        - Src:             'lib/ofp-match.c:609,16'
          Dst:             oxm_put_match
        - Src:             'lib/ofp-match.c:613,5'
          Dst:             abort
    - functionName:    ofputil_match_to_ofp11_match
      functionSourceFile: '/src/openvswitch/lib/ofp-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 453
      functionLinenumberEnd: 544
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         42
      ICount:          495
      EdgeCount:       55
      CyclomaticComplexity: 15
      functionsReached:
        - eth_addr_invert
        - htonl
        - htons
        - mpls_lse_to_label
        - mpls_lse_to_tc
        - ofputil_dl_type_to_openflow
        - ofputil_port_to_ofp11
        - vlan_tci_to_pcp
        - vlan_tci_to_vid
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-match.c:457,25'
          Dst:             htons
        - Src:             'lib/ofp-match.c:458,27'
          Dst:             htons
        - Src:             'lib/ofp-match.c:463,28'
          Dst:             ofputil_port_to_ofp11
        - Src:             'lib/ofp-match.c:467,28'
          Dst:             eth_addr_invert
        - Src:             'lib/ofp-match.c:469,28'
          Dst:             eth_addr_invert
        - Src:             'lib/ofp-match.c:471,41'
          Dst:             htons
        - Src:             'lib/ofp-match.c:473,47'
          Dst:             htons
        - Src:             'lib/ofp-match.c:474,48'
          Dst:             htons
        - Src:             'lib/ofp-match.c:475,28'
          Dst:             htons
        - Src:             'lib/ofp-match.c:478,46'
          Dst:             htons
        - Src:             'lib/ofp-match.c:479,32'
          Dst:             htons
        - Src:             'lib/ofp-match.c:482,23'
          Dst:             vlan_tci_to_vid
        - Src:             'lib/ofp-match.c:482,17'
          Dst:             htons
        - Src:             'lib/ofp-match.c:485,46'
          Dst:             htons
        - Src:             'lib/ofp-match.c:488,36'
          Dst:             vlan_tci_to_pcp
        - Src:             'lib/ofp-match.c:495,28'
          Dst:             ofputil_dl_type_to_openflow
        - Src:             'lib/ofp-match.c:527,41'
          Dst:             htonl
        - Src:             'lib/ofp-match.c:530,37'
          Dst:             mpls_lse_to_label
        - Src:             'lib/ofp-match.c:530,31'
          Dst:             htonl
        - Src:             'lib/ofp-match.c:534,41'
          Dst:             htonl
        - Src:             'lib/ofp-match.c:537,28'
          Dst:             mpls_lse_to_tc
        - Src:             'lib/ofp-match.c:543,26'
          Dst:             htonl
    - functionName:    eth_addr_invert
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 301
      functionLinenumberEnd: 308
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         5
      ICount:          46
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    vlan_tci_to_vid
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 507
      functionLinenumberEnd: 508
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohs
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:508,13'
          Dst:             ntohs
    - functionName:    vlan_tci_to_pcp
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 515
      functionLinenumberEnd: 516
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohs
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:516,13'
          Dst:             ntohs
    - functionName:    ofputil_dl_type_to_openflow
      functionSourceFile: '/src/openvswitch/lib/ofp-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 621
      functionLinenumberEnd: 624
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htons
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-match.c:622,29'
          Dst:             htons
        - Src:             'lib/ofp-match.c:623,15'
          Dst:             htons
    - functionName:    mpls_lse_to_label
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 568
      functionLinenumberEnd: 569
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:569,13'
          Dst:             ntohl
    - functionName:    mpls_lse_to_tc
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 576
      functionLinenumberEnd: 577
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:577,13'
          Dst:             ntohl
    - functionName:    ofputil_match_typical_len
      functionSourceFile: '/src/openvswitch/lib/ofp-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 550
      functionLinenumberEnd: 572
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         17
      ICount:          67
      EdgeCount:       32
      CyclomaticComplexity: 17
      functionsReached:
        - abort
      functionUses:    4
      BranchProfiles:
        - Branch String:   'lib/ofp-match.c:551,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-match.c:570,9'
          Dst:             abort
    - functionName:    ofputil_match_from_ofp11_match
      functionSourceFile: '/src/openvswitch/lib/ofp-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 302
      functionLinenumberEnd: 447
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         93
      ICount:          685
      EdgeCount:       121
      CyclomaticComplexity: 30
      functionsReached:
        - eth_addr_invert
        - eth_addr_is_zero
        - eth_type_mpls
        - htons
        - match_init_catchall
        - match_set_default_packet_type
        - match_set_dl_dst_masked
        - match_set_dl_src_masked
        - match_set_dl_type
        - match_set_icmp_code
        - match_set_icmp_type
        - match_set_in_port
        - match_set_metadata_masked
        - match_set_mpls_label
        - match_set_mpls_tc
        - match_set_nw_dscp
        - match_set_nw_dst_masked
        - match_set_nw_proto
        - match_set_nw_src_masked
        - match_set_tp_dst
        - match_set_tp_src
        - ntohl
        - ntohs
        - ofputil_dl_type_from_openflow
        - ofputil_port_from_ofp11
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-match.c:390,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-match.c:303,19'
          Dst:             ntohl
        - Src:             'lib/ofp-match.c:306,5'
          Dst:             match_init_catchall
        - Src:             'lib/ofp-match.c:313,17'
          Dst:             ofputil_port_from_ofp11
        - Src:             'lib/ofp-match.c:317,9'
          Dst:             match_set_in_port
        - Src:             'lib/ofp-match.c:320,35'
          Dst:             eth_addr_invert
        - Src:             'lib/ofp-match.c:321,35'
          Dst:             eth_addr_invert
        - Src:             'lib/ofp-match.c:322,10'
          Dst:             eth_addr_is_zero
        - Src:             'lib/ofp-match.c:322,44'
          Dst:             eth_addr_is_zero
        - Src:             'lib/ofp-match.c:323,9'
          Dst:             match_set_dl_src_masked
        - Src:             'lib/ofp-match.c:324,9'
          Dst:             match_set_dl_dst_masked
        - Src:             'lib/ofp-match.c:325,9'
          Dst:             match_set_default_packet_type
        - Src:             'lib/ofp-match.c:329,33'
          Dst:             htons
        - Src:             'lib/ofp-match.c:331,40'
          Dst:             htons
        - Src:             'lib/ofp-match.c:334,37'
          Dst:             htons
        - Src:             'lib/ofp-match.c:336,44'
          Dst:             htons
        - Src:             'lib/ofp-match.c:337,48'
          Dst:             htons
        - Src:             'lib/ofp-match.c:338,24'
          Dst:             ntohs
        - Src:             'lib/ofp-match.c:340,44'
          Dst:             htons
        - Src:             'lib/ofp-match.c:341,48'
          Dst:             htons
        - Src:             'lib/ofp-match.c:349,49'
          Dst:             htons
        - Src:             'lib/ofp-match.c:351,53'
          Dst:             htons
        - Src:             'lib/ofp-match.c:358,9'
          Dst:             match_set_default_packet_type
        - Src:             'lib/ofp-match.c:363,27'
          Dst:             ofputil_dl_type_from_openflow
        - Src:             'lib/ofp-match.c:362,9'
          Dst:             match_set_dl_type
        - Src:             'lib/ofp-match.c:364,9'
          Dst:             match_set_default_packet_type
        - Src:             'lib/ofp-match.c:367,35'
          Dst:             htons
        - Src:             'lib/ofp-match.c:368,34'
          Dst:             htons
        - Src:             'lib/ofp-match.c:369,35'
          Dst:             htons
        - Src:             'lib/ofp-match.c:377,9'
          Dst:             match_set_nw_dscp
        - Src:             'lib/ofp-match.c:382,13'
          Dst:             match_set_nw_proto
        - Src:             'lib/ofp-match.c:384,9'
          Dst:             match_set_nw_src_masked
        - Src:             'lib/ofp-match.c:385,9'
          Dst:             match_set_nw_dst_masked
        - Src:             'lib/ofp-match.c:400,38'
          Dst:             ntohs
        - Src:             'lib/ofp-match.c:402,21'
          Dst:             match_set_icmp_type
        - Src:             'lib/ofp-match.c:408,38'
          Dst:             ntohs
        - Src:             'lib/ofp-match.c:410,21'
          Dst:             match_set_icmp_code
        - Src:             'lib/ofp-match.c:421,17'
          Dst:             match_set_tp_src
        - Src:             'lib/ofp-match.c:424,17'
          Dst:             match_set_tp_dst
        - Src:             'lib/ofp-match.c:434,9'
          Dst:             eth_type_mpls
        - Src:             'lib/ofp-match.c:436,13'
          Dst:             match_set_mpls_label
        - Src:             'lib/ofp-match.c:439,13'
          Dst:             match_set_mpls_tc
        - Src:             'lib/ofp-match.c:443,5'
          Dst:             match_set_metadata_masked
    - functionName:    eth_addr_is_zero
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 246
      functionLinenumberEnd: 247
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          25
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofputil_dl_type_from_openflow
      functionSourceFile: '/src/openvswitch/lib/ofp-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 632
      functionLinenumberEnd: 635
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htons
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-match.c:633,28'
          Dst:             htons
        - Src:             'lib/ofp-match.c:634,15'
          Dst:             htons
    - functionName:    ofputil_pull_ofp11_match
      functionSourceFile: '/src/openvswitch/lib/ofp-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 262
      functionLinenumberEnd: 295
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          130
      EdgeCount:       24
      CyclomaticComplexity: 6
      functionsReached:
        - ntohs
        - ofpbuf_pull
        - ofputil_match_from_ofp11_match
        - oxm_pull_match
      functionUses:    11
      BranchProfiles:
        - Branch String:   'lib/ofp-match.c:272,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-match.c:270,17'
          Dst:             ntohs
        - Src:             'lib/ofp-match.c:272,13'
          Dst:             ntohs
        - Src:             'lib/ofp-match.c:279,14'
          Dst:             ofpbuf_pull
        - Src:             'lib/ofp-match.c:283,16'
          Dst:             ofputil_match_from_ofp11_match
        - Src:             'lib/ofp-match.c:290,16'
          Dst:             oxm_pull_match
    - functionName:    ofp_to_u16
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 196
      functionLinenumberEnd: 197
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofputil_netmask_to_wcbits
      functionSourceFile: '/src/openvswitch/lib/ofp-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 58
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ip_count_cidr_bits
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-match.c:58,17'
          Dst:             ip_count_cidr_bits
    - functionName:    ofputil_match_to_ofp10_match
      functionSourceFile: '/src/openvswitch/lib/ofp-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 184
      functionLinenumberEnd: 256
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         42
      ICount:          422
      EdgeCount:       55
      CyclomaticComplexity: 15
      functionsReached:
        - eth_addr_is_zero
        - htonl
        - htons
        - ofp_to_u16
        - ofputil_dl_type_to_openflow
        - ofputil_netmask_to_wcbits
        - vlan_tci_to_pcp
        - vlan_tci_to_vid
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-match.c:199,15'
          Dst:             ofputil_netmask_to_wcbits
        - Src:             'lib/ofp-match.c:201,15'
          Dst:             ofputil_netmask_to_wcbits
        - Src:             'lib/ofp-match.c:212,9'
          Dst:             eth_addr_is_zero
        - Src:             'lib/ofp-match.c:215,9'
          Dst:             eth_addr_is_zero
        - Src:             'lib/ofp-match.c:220,24'
          Dst:             htons
        - Src:             'lib/ofp-match.c:222,41'
          Dst:             htons
        - Src:             'lib/ofp-match.c:224,47'
          Dst:             htons
        - Src:             'lib/ofp-match.c:225,48'
          Dst:             htons
        - Src:             'lib/ofp-match.c:226,28'
          Dst:             htons
        - Src:             'lib/ofp-match.c:228,46'
          Dst:             htons
        - Src:             'lib/ofp-match.c:232,23'
          Dst:             vlan_tci_to_vid
        - Src:             'lib/ofp-match.c:232,17'
          Dst:             htons
        - Src:             'lib/ofp-match.c:235,46'
          Dst:             htons
        - Src:             'lib/ofp-match.c:238,36'
          Dst:             vlan_tci_to_pcp
        - Src:             'lib/ofp-match.c:243,26'
          Dst:             htonl
        - Src:             'lib/ofp-match.c:244,30'
          Dst:             ofp_to_u16
        - Src:             'lib/ofp-match.c:244,24'
          Dst:             htons
        - Src:             'lib/ofp-match.c:247,24'
          Dst:             ofputil_dl_type_to_openflow
    - functionName:    ofputil_match_from_ofp10_match
      functionSourceFile: '/src/openvswitch/lib/ofp-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 119
      functionLinenumberEnd: 178
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          240
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - htons
        - match_set_default_packet_type
        - match_zero_wildcarded_fields
        - ntohl
        - ntohs
        - ofputil_dl_type_from_openflow
        - ofputil_wcbits_to_netmask
        - ofputil_wildcard_from_ofpfw10
        - u16_to_ofp
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-match.c:120,22'
          Dst:             ntohl
        - Src:             'lib/ofp-match.c:124,5'
          Dst:             ofputil_wildcard_from_ofpfw10
        - Src:             'lib/ofp-match.c:135,12'
          Dst:             ofputil_wcbits_to_netmask
        - Src:             'lib/ofp-match.c:136,12'
          Dst:             ofputil_wcbits_to_netmask
        - Src:             'lib/ofp-match.c:137,9'
          Dst:             match_set_default_packet_type
        - Src:             'lib/ofp-match.c:143,47'
          Dst:             ntohs
        - Src:             'lib/ofp-match.c:143,36'
          Dst:             u16_to_ofp
        - Src:             'lib/ofp-match.c:144,27'
          Dst:             ofputil_dl_type_from_openflow
        - Src:             'lib/ofp-match.c:154,29'
          Dst:             htons
        - Src:             'lib/ofp-match.c:163,36'
          Dst:             htons
        - Src:             'lib/ofp-match.c:164,40'
          Dst:             htons
        - Src:             'lib/ofp-match.c:169,34'
          Dst:             htons
        - Src:             'lib/ofp-match.c:171,15'
          Dst:             htons
        - Src:             'lib/ofp-match.c:172,27'
          Dst:             htons
        - Src:             'lib/ofp-match.c:177,5'
          Dst:             match_zero_wildcarded_fields
    - functionName:    ofputil_wildcard_from_ofpfw10
      functionSourceFile: '/src/openvswitch/lib/ofp-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 67
      functionLinenumberEnd: 113
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         33
      ICount:          222
      EdgeCount:       43
      CyclomaticComplexity: 12
      functionsReached:
        - flow_wildcards_init_catchall
        - htons
        - ofputil_wcbits_to_netmask
        - u16_to_ofp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-match.c:71,5'
          Dst:             flow_wildcards_init_catchall
        - Src:             'lib/ofp-match.c:74,38'
          Dst:             u16_to_ofp
        - Src:             'lib/ofp-match.c:84,24'
          Dst:             ofputil_wcbits_to_netmask
        - Src:             'lib/ofp-match.c:86,24'
          Dst:             ofputil_wcbits_to_netmask
        - Src:             'lib/ofp-match.c:108,35'
          Dst:             htons
        - Src:             'lib/ofp-match.c:111,35'
          Dst:             htons
    - functionName:    ofputil_wcbits_to_netmask
      functionSourceFile: '/src/openvswitch/lib/ofp-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 46
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-match.c:46,26'
          Dst:             htonl
    - functionName:    init_this_module_ofp_msgs
      functionSourceFile: '/src/openvswitch/lib/ofp-msgs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 30
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-msgs.c:30,1'
          Dst:             vlog_insert_module
    - functionName:    hmap_next_with_hash__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 348
      functionLinenumberEnd: 352
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          40
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofphdrs_is_stat
      functionSourceFile: '/src/openvswitch/lib/ofp-msgs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 362
      functionLinenumberEnd: 363
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofp_is_stat
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-msgs.c:363,12'
          Dst:             ofp_is_stat
    - functionName:    ofp_is_stat
      functionSourceFile: '/src/openvswitch/lib/ofp-msgs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 355
      functionLinenumberEnd: 357
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - int
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofp_is_stat_reply
        - ofp_is_stat_request
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-msgs.c:356,13'
          Dst:             ofp_is_stat_request
        - Src:             'lib/ofp-msgs.c:357,13'
          Dst:             ofp_is_stat_reply
    - functionName:    ofp_is_stat_request
      functionSourceFile: '/src/openvswitch/lib/ofp-msgs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 321
      functionLinenumberEnd: 334
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - int
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          54
      EdgeCount:       18
      CyclomaticComplexity: 10
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/ofp-msgs.c:322,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    ofp_is_stat_reply
      functionSourceFile: '/src/openvswitch/lib/ofp-msgs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 338
      functionLinenumberEnd: 351
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - int
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          54
      EdgeCount:       18
      CyclomaticComplexity: 10
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/ofp-msgs.c:339,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    hmap_next_with_hash
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 395
      functionLinenumberEnd: 396
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next_with_hash__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:396,12'
          Dst:             hmap_next_with_hash__
    - functionName:    ofphdrs_equal
      functionSourceFile: '/src/openvswitch/lib/ofp-msgs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 200
      functionLinenumberEnd: 201
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-msgs.c:201,13'
          Dst:             memcmp
    - functionName:    hmap_first_with_hash
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 360
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next_with_hash__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:360,12'
          Dst:             hmap_next_with_hash__
    - functionName:    hash_add_words
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 428
      functionLinenumberEnd: 432
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          44
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - hash_add
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:430,16'
          Dst:             hash_add
    - functionName:    hash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 108
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_add
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:109,12'
          Dst:             mhash_add
    - functionName:    mhash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_rot
        - mhash_add__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:78,12'
          Dst:             mhash_add__
        - Src:             'lib/hash.h:79,12'
          Dst:             hash_rot
    - functionName:    mhash_add__
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hash_rot
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:71,12'
          Dst:             hash_rot
    - functionName:    hash_rot
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 32
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_words_inline
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 129
      functionLinenumberEnd: 130
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_add_words
        - hash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:130,24'
          Dst:             hash_add_words
        - Src:             'lib/hash.h:130,12'
          Dst:             hash_finish
    - functionName:    hash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_finish
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:119,12'
          Dst:             mhash_finish
    - functionName:    mhash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_words
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 357
      functionLinenumberEnd: 363
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hash_words__
        - hash_words_inline
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:359,16'
          Dst:             hash_words_inline
        - Src:             'lib/hash.h:361,16'
          Dst:             hash_words__
    - functionName:    hash_bytes32
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 392
      functionLinenumberEnd: 393
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_words
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:393,12'
          Dst:             hash_words
    - functionName:    ofphdrs_hash
      functionSourceFile: '/src/openvswitch/lib/ofp-msgs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 193
      functionLinenumberEnd: 195
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_bytes32
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-msgs.c:195,12'
          Dst:             hash_bytes32
    - functionName:    ovsthread_once_start
      functionSourceFile: '/src/openvswitch/./include/openvswitch/thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsthread_once_start__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/thread.h:161,12'
          Dst:             ovsthread_once_start__
    - functionName:    ofpmsgs_init
      functionSourceFile: '/src/openvswitch/lib/ofp-msgs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1363
      functionLinenumberEnd: 1387
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         14
      ICount:          86
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_init
        - hmap_insert_at
        - ofphdrs_hash
        - ofphdrs_len
        - ovsthread_once_done
        - ovsthread_once_start
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-msgs.c:1367,10'
          Dst:             ovsthread_once_start
        - Src:             'lib/ofp-msgs.c:1371,5'
          Dst:             hmap_init
        - Src:             'lib/ofp-msgs.c:1380,30'
          Dst:             ofphdrs_len
        - Src:             'lib/ofp-msgs.c:1381,13'
          Dst:             ofphdrs_hash
        - Src:             'lib/ofp-msgs.c:1381,13'
          Dst:             hmap_insert_at
        - Src:             'lib/ofp-msgs.c:1386,5'
          Dst:             ovsthread_once_done
    - functionName:    ofphdrs_len
      functionSourceFile: '/src/openvswitch/lib/ofp-msgs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 368
      functionLinenumberEnd: 398
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         23
      ICount:          125
      EdgeCount:       26
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    4
      BranchProfiles:
        - Branch String:   'lib/ofp-msgs.c:373,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    hmap_insert_at
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 306
      functionLinenumberEnd: 311
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_expand_at
        - hmap_insert_fast
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:307,5'
          Dst:             hmap_insert_fast
        - Src:             './include/openvswitch/hmap.h:309,9'
          Dst:             hmap_expand_at
    - functionName:    hmap_insert_fast
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 289
      functionLinenumberEnd: 295
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          38
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_list_moved
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 229
      functionLinenumberEnd: 235
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_list_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/list.h:231,9'
          Dst:             ovs_list_init
    - functionName:    ovs_list_init
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_2words
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 153
      functionLinenumberEnd: 154
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_add
        - hash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:154,33'
          Dst:             hash_add
        - Src:             'lib/hash.h:154,24'
          Dst:             hash_add
        - Src:             'lib/hash.h:154,12'
          Dst:             hash_finish
    - functionName:    hash_int
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 408
      functionLinenumberEnd: 409
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_2words
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:409,12'
          Dst:             hash_2words
    - functionName:    hmap_next_in_bucket
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 381
      functionLinenumberEnd: 382
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_first_in_bucket
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 367
      functionLinenumberEnd: 368
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_is_empty
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 281
      functionLinenumberEnd: 282
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_remove
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 317
      functionLinenumberEnd: 324
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          48
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_next__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 401
      functionLinenumberEnd: 410
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          51
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_list_is_empty
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 320
      functionLinenumberEnd: 321
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_list_insert
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 169
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    atomic_count_inc
      functionSourceFile: '/src/openvswitch/lib/ovs-atomic.h'
      linkageType:     InternalLinkage
      functionLinenumber: 451
      functionLinenumberEnd: 456
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    log_bad_vendor
      functionSourceFile: '/src/openvswitch/lib/ofp-msgs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 206
      functionLinenumberEnd: 210
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          36
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - vlog_rate_limit
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-msgs.c:209,5'
          Dst:             vlog_rate_limit
    - functionName:    ofpbuf_delete
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 172
      functionLinenumberEnd: 177
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          28
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofpbuf_uninit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:174,9'
          Dst:             ofpbuf_uninit
    - functionName:    ovs_list_remove
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 251
      functionLinenumberEnd: 254
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          25
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_list_is_short
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 334
      functionLinenumberEnd: 335
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_list_move
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 242
      functionLinenumberEnd: 245
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_list_moved
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/list.h:244,5'
          Dst:             ovs_list_moved
    - functionName:    hash_xid
      functionSourceFile: '/src/openvswitch/lib/ofp-msgs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1076
      functionLinenumberEnd: 1077
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_int
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-msgs.c:1077,12'
          Dst:             hash_int
    - functionName:    ofpmp_assembler_find
      functionSourceFile: '/src/openvswitch/lib/ofp-msgs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1082
      functionLinenumberEnd: 1095
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          79
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - hash_xid
        - hmap_first_in_bucket
        - hmap_is_empty
        - hmap_next_in_bucket
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-msgs.c:1083,9'
          Dst:             hmap_is_empty
        - Src:             'lib/ofp-msgs.c:1089,5'
          Dst:             hash_xid
        - Src:             'lib/ofp-msgs.c:1089,5'
          Dst:             hmap_first_in_bucket
        - Src:             'lib/ofp-msgs.c:1089,5'
          Dst:             hmap_next_in_bucket
    - functionName:    ofpmp_assembler_execute
      functionSourceFile: '/src/openvswitch/lib/ofp-msgs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1180
      functionLinenumberEnd: 1301
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         49
      ICount:          374
      EdgeCount:       67
      CyclomaticComplexity: 20
      functionsReached:
        - hash_xid
        - hmap_insert_at
        - ofpbuf_delete
        - ofphdrs_decode
        - ofphdrs_len
        - ofpmp_assembler_find
        - ofpmp_more
        - ofpmp_partial_destroy
        - ofpmsg_is_stat_request
        - ofpraw_check_length
        - ofpraw_from_ofphdrs
        - ovs_list_init
        - ovs_list_is_short
        - ovs_list_move
        - ovs_list_push_back
        - ovs_list_remove
        - raw_info_get
        - raw_instance_get
        - xzalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-msgs.c:1181,5'
          Dst:             ovs_list_init
        - Src:             'lib/ofp-msgs.c:1193,10'
          Dst:             ofpmsg_is_stat_request
        - Src:             'lib/ofp-msgs.c:1194,9'
          Dst:             ovs_list_push_back
        - Src:             'lib/ofp-msgs.c:1200,25'
          Dst:             ofphdrs_decode
        - Src:             'lib/ofp-msgs.c:1206,13'
          Dst:             ofpraw_from_ofphdrs
        - Src:             'lib/ofp-msgs.c:1216,35'
          Dst:             raw_info_get
        - Src:             'lib/ofp-msgs.c:1217,43'
          Dst:             raw_instance_get
        - Src:             'lib/ofp-msgs.c:1218,28'
          Dst:             ofphdrs_len
        - Src:             'lib/ofp-msgs.c:1221,17'
          Dst:             ofpraw_check_length
        - Src:             'lib/ofp-msgs.c:1228,31'
          Dst:             ofpmp_assembler_find
        - Src:             'lib/ofp-msgs.c:1230,13'
          Dst:             xzalloc
        - Src:             'lib/ofp-msgs.c:1231,9'
          Dst:             hash_xid
        - Src:             'lib/ofp-msgs.c:1231,9'
          Dst:             hmap_insert_at
        - Src:             'lib/ofp-msgs.c:1233,9'
          Dst:             ovs_list_init
        - Src:             'lib/ofp-msgs.c:1241,9'
          Dst:             ofpmp_partial_destroy
        - Src:             'lib/ofp-msgs.c:1250,9'
          Dst:             ofpmp_partial_destroy
        - Src:             'lib/ofp-msgs.c:1256,49'
          Dst:             ofpmp_more
        - Src:             'lib/ofp-msgs.c:1261,9'
          Dst:             ofpmp_partial_destroy
        - Src:             'lib/ofp-msgs.c:1268,5'
          Dst:             ovs_list_push_back
        - Src:             'lib/ofp-msgs.c:1275,5'
          Dst:             ovs_list_move
        - Src:             'lib/ofp-msgs.c:1276,5'
          Dst:             ovs_list_init
        - Src:             'lib/ofp-msgs.c:1277,5'
          Dst:             ofpmp_partial_destroy
        - Src:             'lib/ofp-msgs.c:1295,36'
          Dst:             ovs_list_is_short
        - Src:             'lib/ofp-msgs.c:1296,13'
          Dst:             ovs_list_remove
        - Src:             'lib/ofp-msgs.c:1297,13'
          Dst:             ofpbuf_delete
    - functionName:    ofpmsg_is_stat_request
      functionSourceFile: '/src/openvswitch/lib/ofp-msgs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 901
      functionLinenumberEnd: 902
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofp_is_stat_request
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-msgs.c:902,12'
          Dst:             ofp_is_stat_request
    - functionName:    ovs_list_push_back
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 204
      functionLinenumberEnd: 206
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_list_insert
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/list.h:205,5'
          Dst:             ovs_list_insert
    - functionName:    ofphdrs_decode
      functionSourceFile: '/src/openvswitch/lib/ofp-msgs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 215
      functionLinenumberEnd: 310
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         59
      ICount:          367
      EdgeCount:       80
      CyclomaticComplexity: 23
      functionsReached:
        - log_bad_vendor
        - ntohl
        - ntohs
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-msgs.c:234,24'
          Dst:             ntohl
        - Src:             'lib/ofp-msgs.c:236,29'
          Dst:             ntohl
        - Src:             'lib/ofp-msgs.c:238,13'
          Dst:             log_bad_vendor
        - Src:             'lib/ofp-msgs.c:251,22'
          Dst:             ntohs
        - Src:             'lib/ofp-msgs.c:262,28'
          Dst:             ntohl
        - Src:             'lib/ofp-msgs.c:271,33'
          Dst:             ntohl
        - Src:             'lib/ofp-msgs.c:273,17'
          Dst:             log_bad_vendor
        - Src:             'lib/ofp-msgs.c:287,22'
          Dst:             ntohs
        - Src:             'lib/ofp-msgs.c:298,28'
          Dst:             ntohl
        - Src:             'lib/ofp-msgs.c:301,33'
          Dst:             ntohl
        - Src:             'lib/ofp-msgs.c:303,17'
          Dst:             log_bad_vendor
    - functionName:    ofpraw_from_ofphdrs
      functionSourceFile: '/src/openvswitch/lib/ofp-msgs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1323
      functionLinenumberEnd: 1359
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         30
      ICount:          171
      EdgeCount:       38
      CyclomaticComplexity: 10
      functionsReached:
        - ds_cstr
        - ds_destroy
        - ds_init
        - ds_put_format
        - hmap_first_with_hash
        - hmap_next_with_hash
        - ofphdrs_equal
        - ofphdrs_hash
        - ofphdrs_is_stat
        - ofpmsgs_init
        - vlog
        - vlog_should_drop
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-msgs.c:1329,5'
          Dst:             ofpmsgs_init
        - Src:             'lib/ofp-msgs.c:1331,12'
          Dst:             ofphdrs_hash
        - Src:             'lib/ofp-msgs.c:1332,5'
          Dst:             hmap_first_with_hash
        - Src:             'lib/ofp-msgs.c:1333,13'
          Dst:             ofphdrs_equal
        - Src:             'lib/ofp-msgs.c:1332,5'
          Dst:             hmap_next_with_hash
        - Src:             'lib/ofp-msgs.c:1339,10'
          Dst:             vlog_should_drop
        - Src:             'lib/ofp-msgs.c:1342,9'
          Dst:             ds_init
        - Src:             'lib/ofp-msgs.c:1343,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-msgs.c:1345,13'
          Dst:             ofphdrs_is_stat
        - Src:             'lib/ofp-msgs.c:1346,13'
          Dst:             ds_put_format
        - Src:             'lib/ofp-msgs.c:1349,13'
          Dst:             ds_put_format
        - Src:             'lib/ofp-msgs.c:1352,9'
          Dst:             ds_cstr
        - Src:             'lib/ofp-msgs.c:1352,9'
          Dst:             vlog
        - Src:             'lib/ofp-msgs.c:1353,9'
          Dst:             ds_destroy
        - Src:             'lib/ofp-msgs.c:1357,15'
          Dst:             ofphdrs_is_stat
    - functionName:    raw_info_get
      functionSourceFile: '/src/openvswitch/lib/ofp-msgs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1307
      functionLinenumberEnd: 1311
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpmsgs_init
        - ovs_ignore
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-msgs.c:1308,5'
          Dst:             ofpmsgs_init
        - Src:             'lib/ofp-msgs.c:1310,5'
          Dst:             ovs_ignore
    - functionName:    raw_instance_get
      functionSourceFile: '/src/openvswitch/lib/ofp-msgs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1316
      functionLinenumberEnd: 1318
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-msgs.c:1317,5'
          Dst:             ovs_ignore
    - functionName:    ofpraw_check_length
      functionSourceFile: '/src/openvswitch/lib/ofp-msgs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 434
      functionLinenumberEnd: 468
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         32
      ICount:          171
      EdgeCount:       38
      CyclomaticComplexity: 8
      functionsReached:
        - vlog_rate_limit
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/ofp-msgs.c:438,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-msgs.c:441,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-msgs.c:449,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-msgs.c:458,13'
          Dst:             vlog_rate_limit
    - functionName:    ofpmp_partial_destroy
      functionSourceFile: '/src/openvswitch/lib/ofp-msgs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1099
      functionLinenumberEnd: 1105
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_remove
        - ofpbuf_list_delete
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-msgs.c:1101,9'
          Dst:             hmap_remove
        - Src:             'lib/ofp-msgs.c:1102,9'
          Dst:             ofpbuf_list_delete
    - functionName:    ofpmp_more
      functionSourceFile: '/src/openvswitch/lib/ofp-msgs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1058
      functionLinenumberEnd: 1059
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpmp_flags
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-msgs.c:1059,13'
          Dst:             ofpmp_flags
    - functionName:    ofpmp_flags
      functionSourceFile: '/src/openvswitch/lib/ofp-msgs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1049
      functionLinenumberEnd: 1050
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohs
        - ofpmp_flags__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-msgs.c:1050,19'
          Dst:             ofpmp_flags__
        - Src:             'lib/ofp-msgs.c:1050,12'
          Dst:             ntohs
    - functionName:    ofpmp_flags__
      functionSourceFile: '/src/openvswitch/lib/ofp-msgs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1028
      functionLinenumberEnd: 1041
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          58
      EdgeCount:       22
      CyclomaticComplexity: 12
      functionsReached:
        - abort
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/ofp-msgs.c:1029,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-msgs.c:1039,9'
          Dst:             abort
    - functionName:    ofpmp_assembler_wait
      functionSourceFile: '/src/openvswitch/lib/ofp-msgs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1154
      functionLinenumberEnd: 1162
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          74
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_first
        - hmap_next
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-msgs.c:1158,5'
          Dst:             hmap_first
        - Src:             'lib/ofp-msgs.c:1158,5'
          Dst:             hmap_next
    - functionName:    hmap_first
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 416
      functionLinenumberEnd: 417
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next__
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:417,12'
          Dst:             hmap_next__
    - functionName:    hmap_next
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 429
      functionLinenumberEnd: 432
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_next__
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:432,15'
          Dst:             hmap_next__
    - functionName:    ofpmp_partial_error
      functionSourceFile: '/src/openvswitch/lib/ofp-msgs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1110
      functionLinenumberEnd: 1117
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpbuf_from_list
        - ofperr_encode_reply
        - ofpmp_partial_destroy
        - ovs_list_back
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-msgs.c:1111,50'
          Dst:             ovs_list_back
        - Src:             'lib/ofp-msgs.c:1111,33'
          Dst:             ofpbuf_from_list
        - Src:             'lib/ofp-msgs.c:1113,28'
          Dst:             ofperr_encode_reply
        - Src:             'lib/ofp-msgs.c:1115,5'
          Dst:             ofpmp_partial_destroy
    - functionName:    ovs_list_back
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 295
      functionLinenumberEnd: 300
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovs_list_is_empty
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/list.h:298,17'
          Dst:             ovs_list_is_empty
        - Src:             './include/openvswitch/list.h:298,5'
          Dst:             ovs_ignore
    - functionName:    ofpbuf_from_list
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 280
      functionLinenumberEnd: 281
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofpmp_assembler_run
      functionSourceFile: '/src/openvswitch/lib/ofp-msgs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1139
      functionLinenumberEnd: 1148
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          71
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_first
        - hmap_next
        - ofpmp_partial_error
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-msgs.c:1141,5'
          Dst:             hmap_first
        - Src:             'lib/ofp-msgs.c:1143,20'
          Dst:             ofpmp_partial_error
        - Src:             'lib/ofp-msgs.c:1141,5'
          Dst:             hmap_next
    - functionName:    ofpmp_assembler_clear
      functionSourceFile: '/src/openvswitch/lib/ofp-msgs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1125
      functionLinenumberEnd: 1130
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          57
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - hmap_first
        - hmap_next
        - ofpmp_partial_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-msgs.c:1127,5'
          Dst:             hmap_first
        - Src:             'lib/ofp-msgs.c:1127,5'
          Dst:             hmap_next
        - Src:             'lib/ofp-msgs.c:1128,9'
          Dst:             ofpmp_partial_destroy
    - functionName:    ofpmp_decode_raw
      functionSourceFile: '/src/openvswitch/lib/ofp-msgs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1019
      functionLinenumberEnd: 1023
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          32
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpbuf_from_list
        - ofpraw_decode_partial
        - ovs_ignore
        - ovs_list_back
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-msgs.c:1020,43'
          Dst:             ovs_list_back
        - Src:             'lib/ofp-msgs.c:1020,26'
          Dst:             ofpbuf_from_list
        - Src:             'lib/ofp-msgs.c:1022,17'
          Dst:             ofpraw_decode_partial
        - Src:             'lib/ofp-msgs.c:1022,5'
          Dst:             ovs_ignore
    - functionName:    ofpraw_decode_partial
      functionSourceFile: '/src/openvswitch/lib/ofp-msgs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 543
      functionLinenumberEnd: 555
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          53
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ofphdrs_decode
        - ofpraw_from_ofphdrs
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-msgs.c:547,13'
          Dst:             ofphdrs_decode
        - Src:             'lib/ofp-msgs.c:549,17'
          Dst:             ofpraw_from_ofphdrs
    - functionName:    ofpmp_version
      functionSourceFile: '/src/openvswitch/lib/ofp-msgs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1008
      functionLinenumberEnd: 1012
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpbuf_from_list
        - ovs_list_back
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-msgs.c:1009,43'
          Dst:             ovs_list_back
        - Src:             'lib/ofp-msgs.c:1009,26'
          Dst:             ofpbuf_from_list
    - functionName:    ofpmp_postappend
      functionSourceFile: '/src/openvswitch/lib/ofp-msgs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 992
      functionLinenumberEnd: 1002
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          61
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofpbuf_from_list
        - ofpmp_append
        - ovs_ignore
        - ovs_list_back
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-msgs.c:993,43'
          Dst:             ovs_list_back
        - Src:             'lib/ofp-msgs.c:993,26'
          Dst:             ofpbuf_from_list
        - Src:             'lib/ofp-msgs.c:995,5'
          Dst:             ovs_ignore
        - Src:             'lib/ofp-msgs.c:998,16'
          Dst:             ofpmp_append
    - functionName:    ofpmp_append
      functionSourceFile: '/src/openvswitch/lib/ofp-msgs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 976
      functionLinenumberEnd: 977
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpbuf_put_uninit
        - ofpmp_reserve
      functionUses:    12
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-msgs.c:977,30'
          Dst:             ofpmp_reserve
        - Src:             'lib/ofp-msgs.c:977,12'
          Dst:             ofpbuf_put_uninit
    - functionName:    ofpmp_reserve
      functionSourceFile: '/src/openvswitch/lib/ofp-msgs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 946
      functionLinenumberEnd: 970
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          112
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - htons
        - ofpbuf_from_list
        - ofpbuf_new
        - ofpbuf_prealloc_tailroom
        - ofpbuf_put
        - ofpbuf_tail
        - ofphdrs_decode_assert
        - ofphdrs_len
        - ofpmp_flags__
        - ovs_list_back
        - ovs_list_push_back
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-msgs.c:947,43'
          Dst:             ovs_list_back
        - Src:             'lib/ofp-msgs.c:947,26'
          Dst:             ofpbuf_from_list
        - Src:             'lib/ofp-msgs.c:950,9'
          Dst:             ofpbuf_prealloc_tailroom
        - Src:             'lib/ofp-msgs.c:957,9'
          Dst:             ofphdrs_decode_assert
        - Src:             'lib/ofp-msgs.c:958,20'
          Dst:             ofphdrs_len
        - Src:             'lib/ofp-msgs.c:960,16'
          Dst:             ofpbuf_new
        - Src:             'lib/ofp-msgs.c:961,9'
          Dst:             ofpbuf_put
        - Src:             'lib/ofp-msgs.c:963,21'
          Dst:             ofpbuf_tail
        - Src:             'lib/ofp-msgs.c:964,9'
          Dst:             ovs_list_push_back
        - Src:             'lib/ofp-msgs.c:966,38'
          Dst:             htons
        - Src:             'lib/ofp-msgs.c:966,10'
          Dst:             ofpmp_flags__
    - functionName:    ofphdrs_decode_assert
      functionSourceFile: '/src/openvswitch/lib/ofp-msgs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 315
      functionLinenumberEnd: 317
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofphdrs_decode
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-msgs.c:316,17'
          Dst:             ofphdrs_decode
        - Src:             'lib/ofp-msgs.c:316,5'
          Dst:             ovs_ignore
    - functionName:    ofpbuf_tail
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 203
      functionLinenumberEnd: 205
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          56
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:204,5'
          Dst:             ovs_ignore
    - functionName:    ofpmp_init
      functionSourceFile: '/src/openvswitch/lib/ofp-msgs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 928
      functionLinenumberEnd: 935
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpraw_alloc_stats_reply
        - ovs_list_init
        - ovs_list_push_back
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-msgs.c:931,5'
          Dst:             ovs_list_init
        - Src:             'lib/ofp-msgs.c:933,11'
          Dst:             ofpraw_alloc_stats_reply
        - Src:             'lib/ofp-msgs.c:934,5'
          Dst:             ovs_list_push_back
    - functionName:    ofpraw_alloc_stats_reply
      functionSourceFile: '/src/openvswitch/lib/ofp-msgs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 628
      functionLinenumberEnd: 638
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          42
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohs
        - ofpraw_alloc_reply
        - ofpraw_decode_partial
        - ofpraw_stats_request_to_reply
        - ovs_ignore
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-msgs.c:633,39'
          Dst:             ntohs
        - Src:             'lib/ofp-msgs.c:632,17'
          Dst:             ofpraw_decode_partial
        - Src:             'lib/ofp-msgs.c:632,5'
          Dst:             ovs_ignore
        - Src:             'lib/ofp-msgs.c:635,17'
          Dst:             ofpraw_stats_request_to_reply
        - Src:             'lib/ofp-msgs.c:636,5'
          Dst:             ovs_ignore
        - Src:             'lib/ofp-msgs.c:638,12'
          Dst:             ofpraw_alloc_reply
    - functionName:    ofpraw_stats_request_to_reply
      functionSourceFile: '/src/openvswitch/lib/ofp-msgs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 790
      functionLinenumberEnd: 816
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          87
      EdgeCount:       22
      CyclomaticComplexity: 12
      functionsReached:
        - abort
        - ofpraw_from_ofphdrs
        - ovs_ignore
        - raw_info_get
        - raw_instance_get
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/ofp-msgs.c:797,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-msgs.c:791,35'
          Dst:             raw_info_get
        - Src:             'lib/ofp-msgs.c:792,43'
          Dst:             raw_instance_get
        - Src:             'lib/ofp-msgs.c:799,9'
          Dst:             ovs_ignore
        - Src:             'lib/ofp-msgs.c:807,9'
          Dst:             ovs_ignore
        - Src:             'lib/ofp-msgs.c:811,9'
          Dst:             abort
        - Src:             'lib/ofp-msgs.c:814,17'
          Dst:             ofpraw_from_ofphdrs
        - Src:             'lib/ofp-msgs.c:814,5'
          Dst:             ovs_ignore
    - functionName:    ofpraw_alloc_reply
      functionSourceFile: '/src/openvswitch/lib/ofp-msgs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 603
      functionLinenumberEnd: 605
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpraw_alloc_xid
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-msgs.c:604,12'
          Dst:             ofpraw_alloc_xid
    - functionName:    ofpraw_alloc_xid
      functionSourceFile: '/src/openvswitch/lib/ofp-msgs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 588
      functionLinenumberEnd: 591
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - int
        - char
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpbuf_new
        - ofpraw_put__
      functionUses:    30
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-msgs.c:589,26'
          Dst:             ofpbuf_new
        - Src:             'lib/ofp-msgs.c:590,5'
          Dst:             ofpraw_put__
    - functionName:    ofpraw_put__
      functionSourceFile: '/src/openvswitch/lib/ofp-msgs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 712
      functionLinenumberEnd: 771
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - int
        - char
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         32
      ICount:          316
      EdgeCount:       41
      CyclomaticComplexity: 11
      functionsReached:
        - abort
        - htonl
        - htons
        - ofpbuf_prealloc_tailroom
        - ofpbuf_put_uninit
        - ofpbuf_tail
        - raw_info_get
        - raw_instance_get
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-msgs.c:713,35'
          Dst:             raw_info_get
        - Src:             'lib/ofp-msgs.c:714,43'
          Dst:             raw_instance_get
        - Src:             'lib/ofp-msgs.c:718,5'
          Dst:             ofpbuf_prealloc_tailroom
        - Src:             'lib/ofp-msgs.c:720,19'
          Dst:             ofpbuf_put_uninit
        - Src:             'lib/ofp-msgs.c:721,16'
          Dst:             ofpbuf_tail
        - Src:             'lib/ofp-msgs.c:726,18'
          Dst:             htons
        - Src:             'lib/ofp-msgs.c:732,23'
          Dst:             htonl
        - Src:             'lib/ofp-msgs.c:733,24'
          Dst:             htonl
        - Src:             'lib/ofp-msgs.c:739,21'
          Dst:             htons
        - Src:             'lib/ofp-msgs.c:740,22'
          Dst:             htons
        - Src:             'lib/ofp-msgs.c:745,28'
          Dst:             htonl
        - Src:             'lib/ofp-msgs.c:749,32'
          Dst:             htonl
        - Src:             'lib/ofp-msgs.c:752,17'
          Dst:             abort
        - Src:             'lib/ofp-msgs.c:760,21'
          Dst:             htons
        - Src:             'lib/ofp-msgs.c:761,22'
          Dst:             htons
        - Src:             'lib/ofp-msgs.c:767,28'
          Dst:             htonl
        - Src:             'lib/ofp-msgs.c:768,29'
          Dst:             htonl
    - functionName:    ofpmsg_is_stat
      functionSourceFile: '/src/openvswitch/lib/ofp-msgs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 915
      functionLinenumberEnd: 916
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofp_is_stat
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-msgs.c:916,12'
          Dst:             ofp_is_stat
    - functionName:    ofpmsg_is_stat_reply
      functionSourceFile: '/src/openvswitch/lib/ofp-msgs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 908
      functionLinenumberEnd: 909
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofp_is_stat_reply
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-msgs.c:909,12'
          Dst:             ofp_is_stat_reply
    - functionName:    ofpmsg_body
      functionSourceFile: '/src/openvswitch/lib/ofp-msgs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 891
      functionLinenumberEnd: 895
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohs
        - ofphdrs_decode_assert
        - ofphdrs_len
      functionUses:    15
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-msgs.c:894,38'
          Dst:             ntohs
        - Src:             'lib/ofp-msgs.c:894,5'
          Dst:             ofphdrs_decode_assert
        - Src:             'lib/ofp-msgs.c:895,35'
          Dst:             ofphdrs_len
    - functionName:    ofpbuf_at_assert
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 195
      functionLinenumberEnd: 198
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:196,5'
          Dst:             ovs_ignore
        - Src:             './include/openvswitch/ofpbuf.h:197,5'
          Dst:             ovs_ignore
    - functionName:    ofpmsg_update_length
      functionSourceFile: '/src/openvswitch/lib/ofp-msgs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 882
      functionLinenumberEnd: 885
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htons
        - ofpbuf_at_assert
      functionUses:    15
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-msgs.c:883,29'
          Dst:             ofpbuf_at_assert
        - Src:             'lib/ofp-msgs.c:884,18'
          Dst:             htons
    - functionName:    ofptype_get_name
      functionSourceFile: '/src/openvswitch/lib/ofp-msgs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 873
      functionLinenumberEnd: 875
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-msgs.c:874,5'
          Dst:             ovs_ignore
    - functionName:    ofptype_pull
      functionSourceFile: '/src/openvswitch/lib/ofp-msgs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 852
      functionLinenumberEnd: 858
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofpraw_pull
        - ofptype_from_ofpraw
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-msgs.c:856,13'
          Dst:             ofpraw_pull
        - Src:             'lib/ofp-msgs.c:857,26'
          Dst:             ofptype_from_ofpraw
    - functionName:    ofpraw_pull
      functionSourceFile: '/src/openvswitch/lib/ofp-msgs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 485
      functionLinenumberEnd: 514
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          115
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - ofpbuf_pull
        - ofphdrs_decode
        - ofpraw_check_length
        - ofpraw_from_ofphdrs
        - raw_info_get
        - raw_instance_get
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-msgs.c:492,25'
          Dst:             ofphdrs_decode
        - Src:             'lib/ofp-msgs.c:498,13'
          Dst:             ofpraw_from_ofphdrs
        - Src:             'lib/ofp-msgs.c:503,35'
          Dst:             raw_info_get
        - Src:             'lib/ofp-msgs.c:504,43'
          Dst:             raw_instance_get
        - Src:             'lib/ofp-msgs.c:505,13'
          Dst:             ofpraw_check_length
        - Src:             'lib/ofp-msgs.c:510,19'
          Dst:             ofpbuf_pull
    - functionName:    ofptype_from_ofpraw
      functionSourceFile: '/src/openvswitch/lib/ofp-msgs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 867
      functionLinenumberEnd: 868
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - raw_info_get
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-msgs.c:868,12'
          Dst:             raw_info_get
    - functionName:    ofpbuf_pull
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 258
      functionLinenumberEnd: 269
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          64
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:259,5'
          Dst:             ovs_ignore
    - functionName:    ofptype_decode
      functionSourceFile: '/src/openvswitch/lib/ofp-msgs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 828
      functionLinenumberEnd: 834
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofpraw_decode
        - ofptype_from_ofpraw
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-msgs.c:832,13'
          Dst:             ofpraw_decode
        - Src:             'lib/ofp-msgs.c:833,26'
          Dst:             ofptype_from_ofpraw
    - functionName:    ofpraw_decode
      functionSourceFile: '/src/openvswitch/lib/ofp-msgs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 409
      functionLinenumberEnd: 411
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohs
        - ofpbuf_const_initializer
        - ofpraw_pull
      functionUses:    13
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-msgs.c:410,54'
          Dst:             ntohs
        - Src:             'lib/ofp-msgs.c:410,25'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/ofp-msgs.c:411,12'
          Dst:             ofpraw_pull
    - functionName:    ofpbuf_const_initializer
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 97
      functionLinenumberEnd: 105
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          30
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofpraw_get_name
      functionSourceFile: '/src/openvswitch/lib/ofp-msgs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 782
      functionLinenumberEnd: 783
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - raw_info_get
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-msgs.c:783,12'
          Dst:             raw_info_get
    - functionName:    ofpraw_put_stats_reply
      functionSourceFile: '/src/openvswitch/lib/ofp-msgs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 698
      functionLinenumberEnd: 707
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohs
        - ofpraw_decode_partial
        - ofpraw_put__
        - ofpraw_stats_request_to_reply
        - ovs_ignore
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-msgs.c:701,54'
          Dst:             ntohs
        - Src:             'lib/ofp-msgs.c:701,17'
          Dst:             ofpraw_decode_partial
        - Src:             'lib/ofp-msgs.c:701,5'
          Dst:             ovs_ignore
        - Src:             'lib/ofp-msgs.c:703,11'
          Dst:             ofpraw_stats_request_to_reply
        - Src:             'lib/ofp-msgs.c:704,5'
          Dst:             ovs_ignore
        - Src:             'lib/ofp-msgs.c:706,5'
          Dst:             ofpraw_put__
    - functionName:    ofpraw_put_reply
      functionSourceFile: '/src/openvswitch/lib/ofp-msgs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 676
      functionLinenumberEnd: 678
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpraw_put__
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-msgs.c:677,5'
          Dst:             ofpraw_put__
    - functionName:    ofpraw_put_xid
      functionSourceFile: '/src/openvswitch/lib/ofp-msgs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 663
      functionLinenumberEnd: 665
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - int
        - char
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpraw_put__
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-msgs.c:664,5'
          Dst:             ofpraw_put__
    - functionName:    ofpraw_put
      functionSourceFile: '/src/openvswitch/lib/ofp-msgs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 655
      functionLinenumberEnd: 657
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - int
        - char
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - alloc_xid
        - ofpraw_put__
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-msgs.c:656,32'
          Dst:             alloc_xid
        - Src:             'lib/ofp-msgs.c:656,5'
          Dst:             ofpraw_put__
    - functionName:    alloc_xid
      functionSourceFile: '/src/openvswitch/lib/ofp-msgs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 185
      functionLinenumberEnd: 188
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - atomic_count_inc
        - htonl
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-msgs.c:188,18'
          Dst:             atomic_count_inc
        - Src:             'lib/ofp-msgs.c:188,12'
          Dst:             htonl
    - functionName:    ofpraw_alloc
      functionSourceFile: '/src/openvswitch/lib/ofp-msgs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 580
      functionLinenumberEnd: 581
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - int
        - char
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - alloc_xid
        - ofpraw_alloc_xid
      functionUses:    45
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-msgs.c:581,43'
          Dst:             alloc_xid
        - Src:             'lib/ofp-msgs.c:581,12'
          Dst:             ofpraw_alloc_xid
    - functionName:    ofpraw_pull_assert
      functionSourceFile: '/src/openvswitch/lib/ofp-msgs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 524
      functionLinenumberEnd: 527
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpraw_pull
        - ovs_ignore
      functionUses:    45
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-msgs.c:526,17'
          Dst:             ofpraw_pull
        - Src:             'lib/ofp-msgs.c:526,5'
          Dst:             ovs_ignore
    - functionName:    ofpraw_decode_assert
      functionSourceFile: '/src/openvswitch/lib/ofp-msgs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 422
      functionLinenumberEnd: 425
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpraw_decode
        - ovs_ignore
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-msgs.c:424,17'
          Dst:             ofpraw_decode
        - Src:             'lib/ofp-msgs.c:424,5'
          Dst:             ovs_ignore
    - functionName:    init_this_module_ofp_port
      functionSourceFile: '/src/openvswitch/lib/ofp-port.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 31
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-port.c:31,1'
          Dst:             vlog_insert_module
    - functionName:    get_32aligned_be64
      functionSourceFile: '/src/openvswitch/lib/unaligned.h'
      linkageType:     InternalLinkage
      functionLinenumber: 270
      functionLinenumberEnd: 274
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    12
      BranchProfiles:  []
      Callsites:       []
    - functionName:    unaligned_be64
      functionSourceFile: '/src/openvswitch/lib/unaligned.h'
      linkageType:     InternalLinkage
      functionLinenumber: 91
      functionLinenumberEnd: 91
      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:    get_unaligned_be64
      functionSourceFile: '/src/openvswitch/lib/unaligned.h'
      linkageType:     InternalLinkage
      functionLinenumber: 91
      functionLinenumberEnd: 91
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - unaligned_be64
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/unaligned.h:91,1'
          Dst:             unaligned_be64
    - functionName:    parse_intel_port_custom_property
      functionSourceFile: '/src/openvswitch/lib/ofp-port.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1495
      functionLinenumberEnd: 1533
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         23
      ICount:          178
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - get_unaligned_be64
        - netdev_free_custom_stats_counters
        - ntohll
        - ntohs
        - ofpbuf_try_pull
        - xcalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-port.c:1497,11'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/ofp-port.c:1502,30'
          Dst:             ntohs
        - Src:             'lib/ofp-port.c:1504,5'
          Dst:             netdev_free_custom_stats_counters
        - Src:             'lib/ofp-port.c:1505,34'
          Dst:             xcalloc
        - Src:             'lib/ofp-port.c:1512,29'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/ofp-port.c:1513,33'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/ofp-port.c:1515,13'
          Dst:             netdev_free_custom_stats_counters
        - Src:             'lib/ofp-port.c:1524,27'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/ofp-port.c:1526,13'
          Dst:             netdev_free_custom_stats_counters
        - Src:             'lib/ofp-port.c:1529,27'
          Dst:             get_unaligned_be64
        - Src:             'lib/ofp-port.c:1529,20'
          Dst:             ntohll
    - functionName:    ofpbuf_try_pull
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 275
      functionLinenumberEnd: 276
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofpbuf_pull
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:276,30'
          Dst:             ofpbuf_pull
    - functionName:    ntohll
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
        - ntohl
      functionUses:    58
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byte-order.h:36,12'
          Dst:             htonl
        - Src:             'lib/byte-order.h:36,44'
          Dst:             ntohl
        - Src:             'lib/byte-order.h:36,62'
          Dst:             ntohl
    - functionName:    ofpbuf_pull
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 258
      functionLinenumberEnd: 269
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          64
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:259,5'
          Dst:             ovs_ignore
    - functionName:    parse_intel_port_stats_rfc2819_property
      functionSourceFile: '/src/openvswitch/lib/ofp-port.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1452
      functionLinenumberEnd: 1490
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          207
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ntohll
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-port.c:1458,37'
          Dst:             ntohll
        - Src:             'lib/ofp-port.c:1459,39'
          Dst:             ntohll
        - Src:             'lib/ofp-port.c:1460,40'
          Dst:             ntohll
        - Src:             'lib/ofp-port.c:1461,40'
          Dst:             ntohll
        - Src:             'lib/ofp-port.c:1463,9'
          Dst:             ntohll
        - Src:             'lib/ofp-port.c:1465,9'
          Dst:             ntohll
        - Src:             'lib/ofp-port.c:1467,9'
          Dst:             ntohll
        - Src:             'lib/ofp-port.c:1469,37'
          Dst:             ntohll
        - Src:             'lib/ofp-port.c:1470,39'
          Dst:             ntohll
        - Src:             'lib/ofp-port.c:1471,40'
          Dst:             ntohll
        - Src:             'lib/ofp-port.c:1472,40'
          Dst:             ntohll
        - Src:             'lib/ofp-port.c:1474,9'
          Dst:             ntohll
        - Src:             'lib/ofp-port.c:1476,9'
          Dst:             ntohll
        - Src:             'lib/ofp-port.c:1478,9'
          Dst:             ntohll
        - Src:             'lib/ofp-port.c:1480,39'
          Dst:             ntohll
        - Src:             'lib/ofp-port.c:1481,39'
          Dst:             ntohll
        - Src:             'lib/ofp-port.c:1482,39'
          Dst:             ntohll
        - Src:             'lib/ofp-port.c:1483,39'
          Dst:             ntohll
        - Src:             'lib/ofp-port.c:1485,37'
          Dst:             ntohll
        - Src:             'lib/ofp-port.c:1486,39'
          Dst:             ntohll
        - Src:             'lib/ofp-port.c:1487,35'
          Dst:             ntohll
    - functionName:    parse_ofp14_port_stats_ethernet_property
      functionSourceFile: '/src/openvswitch/lib/ofp-port.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1434
      functionLinenumberEnd: 1447
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          71
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ntohll
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-port.c:1441,34'
          Dst:             ntohll
        - Src:             'lib/ofp-port.c:1442,33'
          Dst:             ntohll
        - Src:             'lib/ofp-port.c:1443,32'
          Dst:             ntohll
        - Src:             'lib/ofp-port.c:1444,29'
          Dst:             ntohll
    - functionName:    ofpbuf_at_assert
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 195
      functionLinenumberEnd: 198
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:196,5'
          Dst:             ovs_ignore
        - Src:             './include/openvswitch/ofpbuf.h:197,5'
          Dst:             ovs_ignore
    - functionName:    put_32aligned_be64
      functionSourceFile: '/src/openvswitch/lib/unaligned.h'
      linkageType:     InternalLinkage
      functionLinenumber: 281
      functionLinenumberEnd: 289
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          19
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    12
      BranchProfiles:  []
      Callsites:       []
    - functionName:    htonll
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 30
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
      functionUses:    58
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byte-order.h:30,12'
          Dst:             htonl
        - Src:             'lib/byte-order.h:30,44'
          Dst:             htonl
        - Src:             'lib/byte-order.h:30,62'
          Dst:             htonl
    - functionName:    parse_port_mod_ethernet_property
      functionSourceFile: '/src/openvswitch/lib/ofp-port.c'
      linkageType:     InternalLinkage
      functionLinenumber: 927
      functionLinenumberEnd: 935
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - netdev_port_features_from_ofp11
        - ofpprop_parse_be32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-port.c:931,13'
          Dst:             ofpprop_parse_be32
        - Src:             'lib/ofp-port.c:933,25'
          Dst:             netdev_port_features_from_ofp11
    - functionName:    netdev_port_features_from_ofp11
      functionSourceFile: '/src/openvswitch/lib/ofp-port.c'
      linkageType:     InternalLinkage
      functionLinenumber: 416
      functionLinenumberEnd: 417
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohl
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-port.c:417,12'
          Dst:             ntohl
    - functionName:    ofputil_decode_ofp14_port_mod_properties
      functionSourceFile: '/src/openvswitch/lib/ofp-port.c'
      linkageType:     InternalLinkage
      functionLinenumber: 972
      functionLinenumberEnd: 998
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          80
      EdgeCount:       16
      CyclomaticComplexity: 4
      functionsReached:
        - ofpprop_pull
        - ofpprop_unknown
        - parse_port_mod_ethernet_property
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-port.c:983,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-port.c:978,17'
          Dst:             ofpprop_pull
        - Src:             'lib/ofp-port.c:985,21'
          Dst:             parse_port_mod_ethernet_property
        - Src:             'lib/ofp-port.c:989,21'
          Dst:             ofpprop_unknown
    - functionName:    parse_ofp14_port_ethernet_property
      functionSourceFile: '/src/openvswitch/lib/ofp-port.c'
      linkageType:     InternalLinkage
      functionLinenumber: 478
      functionLinenumberEnd: 494
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          81
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - netdev_port_features_from_ofp11
        - ntohl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-port.c:485,16'
          Dst:             netdev_port_features_from_ofp11
        - Src:             'lib/ofp-port.c:486,22'
          Dst:             netdev_port_features_from_ofp11
        - Src:             'lib/ofp-port.c:487,21'
          Dst:             netdev_port_features_from_ofp11
        - Src:             'lib/ofp-port.c:488,16'
          Dst:             netdev_port_features_from_ofp11
        - Src:             'lib/ofp-port.c:490,22'
          Dst:             ntohl
        - Src:             'lib/ofp-port.c:491,21'
          Dst:             ntohl
    - functionName:    ofputil_pull_ofp14_port_properties
      functionSourceFile: '/src/openvswitch/lib/ofp-port.c'
      linkageType:     InternalLinkage
      functionLinenumber: 499
      functionLinenumberEnd: 527
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          80
      EdgeCount:       16
      CyclomaticComplexity: 4
      functionsReached:
        - ofpbuf_const_initializer
        - ofpprop_pull
        - ofpprop_unknown
        - parse_ofp14_port_ethernet_property
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-port.c:511,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-port.c:500,32'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/ofp-port.c:506,17'
          Dst:             ofpprop_pull
        - Src:             'lib/ofp-port.c:513,21'
          Dst:             parse_ofp14_port_ethernet_property
        - Src:             'lib/ofp-port.c:517,21'
          Dst:             ofpprop_unknown
    - functionName:    ofpbuf_const_initializer
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 97
      functionLinenumberEnd: 105
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          30
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_port_features_from_ofp10
      functionSourceFile: '/src/openvswitch/lib/ofp-port.c'
      linkageType:     InternalLinkage
      functionLinenumber: 386
      functionLinenumberEnd: 388
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohl
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-port.c:387,22'
          Dst:             ntohl
    - functionName:    ovs_list_is_empty
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 320
      functionLinenumberEnd: 321
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofputil_encode_ofp14_port_ethernet_prop
      functionSourceFile: '/src/openvswitch/lib/ofp-port.c'
      linkageType:     InternalLinkage
      functionLinenumber: 601
      functionLinenumberEnd: 608
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          57
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
        - netdev_port_features_to_ofp11
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-port.c:602,17'
          Dst:             netdev_port_features_to_ofp11
        - Src:             'lib/ofp-port.c:603,23'
          Dst:             netdev_port_features_to_ofp11
        - Src:             'lib/ofp-port.c:604,22'
          Dst:             netdev_port_features_to_ofp11
        - Src:             'lib/ofp-port.c:605,17'
          Dst:             netdev_port_features_to_ofp11
        - Src:             'lib/ofp-port.c:606,23'
          Dst:             htonl
        - Src:             'lib/ofp-port.c:607,22'
          Dst:             htonl
    - functionName:    netdev_port_features_to_ofp11
      functionSourceFile: '/src/openvswitch/lib/ofp-port.c'
      linkageType:     InternalLinkage
      functionLinenumber: 422
      functionLinenumberEnd: 423
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-port.c:423,12'
          Dst:             htonl
    - functionName:    ofputil_decode_port_stats_request
      functionSourceFile: '/src/openvswitch/lib/ofp-port.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1835
      functionLinenumberEnd: 1855
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          76
      EdgeCount:       22
      CyclomaticComplexity: 12
      functionsReached:
        - abort
        - ntohs
        - ofpmsg_body
        - ofputil_port_from_ofp11
        - u16_to_ofp
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-port.c:1836,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-port.c:1842,56'
          Dst:             ofpmsg_body
        - Src:             'lib/ofp-port.c:1843,16'
          Dst:             ofputil_port_from_ofp11
        - Src:             'lib/ofp-port.c:1847,56'
          Dst:             ofpmsg_body
        - Src:             'lib/ofp-port.c:1848,34'
          Dst:             ntohs
        - Src:             'lib/ofp-port.c:1848,23'
          Dst:             u16_to_ofp
        - Src:             'lib/ofp-port.c:1853,9'
          Dst:             abort
    - functionName:    ofputil_port_from_ofp11
      functionSourceFile: '/src/openvswitch/lib/ofp-port.c'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 104
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          84
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - ntohl
        - ofp11_to_u32
        - ofp_to_u16
        - u16_to_ofp
        - vlog_rate_limit
      functionUses:    30
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-port.c:85,29'
          Dst:             ntohl
        - Src:             'lib/ofp-port.c:87,24'
          Dst:             ofp_to_u16
        - Src:             'lib/ofp-port.c:88,23'
          Dst:             u16_to_ofp
        - Src:             'lib/ofp-port.c:90,32'
          Dst:             ofp11_to_u32
        - Src:             'lib/ofp-port.c:91,23'
          Dst:             u16_to_ofp
        - Src:             'lib/ofp-port.c:97,9'
          Dst:             ofp_to_u16
        - Src:             'lib/ofp-port.c:97,9'
          Dst:             ofp11_to_u32
        - Src:             'lib/ofp-port.c:97,9'
          Dst:             vlog_rate_limit
    - functionName:    u16_to_ofp
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 214
      functionLinenumberEnd: 215
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofp_to_u16
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 196
      functionLinenumberEnd: 197
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    18
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofp11_to_u32
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 208
      functionLinenumberEnd: 209
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    print_port_stat_cond
      functionSourceFile: '/src/openvswitch/lib/ofp-port.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1702
      functionLinenumberEnd: 1706
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_format
      functionUses:    21
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-port.c:1704,9'
          Dst:             ds_put_format
    - functionName:    print_port_stat
      functionSourceFile: '/src/openvswitch/lib/ofp-port.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1686
      functionLinenumberEnd: 1698
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ds_put_char
        - ds_put_cstr
        - ds_put_format
      functionUses:    12
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-port.c:1687,5'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-port.c:1689,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-port.c:1691,9'
          Dst:             ds_put_char
        - Src:             'lib/ofp-port.c:1694,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-port.c:1696,9'
          Dst:             ds_put_cstr
    - functionName:    ds_put_char
      functionSourceFile: '/src/openvswitch/./include/openvswitch/dynamic-string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_char__
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/dynamic-string.h:99,9'
          Dst:             ds_put_char__
    - functionName:    ofputil_format_port_stats
      functionSourceFile: '/src/openvswitch/lib/ofp-port.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1712
      functionLinenumberEnd: 1826
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          398
      EdgeCount:       36
      CyclomaticComplexity: 10
      functionsReached:
        - ds_destroy
        - ds_init
        - ds_put_buffer
        - ds_put_char
        - ds_put_cstr
        - ds_put_format
        - ofp_print_duration
        - ofp_to_u16
        - ofputil_format_port
        - print_port_stat
        - print_port_stat_cond
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-port.c:1713,5'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-port.c:1714,9'
          Dst:             ofp_to_u16
        - Src:             'lib/ofp-port.c:1715,9'
          Dst:             ds_put_char
        - Src:             'lib/ofp-port.c:1717,5'
          Dst:             ofputil_format_port
        - Src:             'lib/ofp-port.c:1719,5'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-port.c:1720,5'
          Dst:             print_port_stat
        - Src:             'lib/ofp-port.c:1721,5'
          Dst:             print_port_stat
        - Src:             'lib/ofp-port.c:1722,5'
          Dst:             print_port_stat
        - Src:             'lib/ofp-port.c:1723,5'
          Dst:             print_port_stat
        - Src:             'lib/ofp-port.c:1724,5'
          Dst:             print_port_stat
        - Src:             'lib/ofp-port.c:1725,5'
          Dst:             print_port_stat
        - Src:             'lib/ofp-port.c:1726,5'
          Dst:             print_port_stat
        - Src:             'lib/ofp-port.c:1728,5'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-port.c:1729,5'
          Dst:             print_port_stat
        - Src:             'lib/ofp-port.c:1730,5'
          Dst:             print_port_stat
        - Src:             'lib/ofp-port.c:1731,5'
          Dst:             print_port_stat
        - Src:             'lib/ofp-port.c:1732,5'
          Dst:             print_port_stat
        - Src:             'lib/ofp-port.c:1733,5'
          Dst:             print_port_stat
        - Src:             'lib/ofp-port.c:1736,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-port.c:1737,9'
          Dst:             ofp_print_duration
        - Src:             'lib/ofp-port.c:1738,9'
          Dst:             ds_put_char
        - Src:             'lib/ofp-port.c:1742,5'
          Dst:             ds_init
        - Src:             'lib/ofp-port.c:1744,5'
          Dst:             print_port_stat_cond
        - Src:             'lib/ofp-port.c:1746,5'
          Dst:             print_port_stat_cond
        - Src:             'lib/ofp-port.c:1748,5'
          Dst:             print_port_stat_cond
        - Src:             'lib/ofp-port.c:1750,5'
          Dst:             print_port_stat_cond
        - Src:             'lib/ofp-port.c:1752,5'
          Dst:             print_port_stat_cond
        - Src:             'lib/ofp-port.c:1754,5'
          Dst:             print_port_stat_cond
        - Src:             'lib/ofp-port.c:1756,5'
          Dst:             print_port_stat_cond
        - Src:             'lib/ofp-port.c:1758,5'
          Dst:             print_port_stat_cond
        - Src:             'lib/ofp-port.c:1760,5'
          Dst:             print_port_stat_cond
        - Src:             'lib/ofp-port.c:1762,5'
          Dst:             print_port_stat_cond
        - Src:             'lib/ofp-port.c:1764,5'
          Dst:             print_port_stat_cond
        - Src:             'lib/ofp-port.c:1766,5'
          Dst:             print_port_stat_cond
        - Src:             'lib/ofp-port.c:1771,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-port.c:1772,9'
          Dst:             ds_put_buffer
        - Src:             'lib/ofp-port.c:1774,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-port.c:1775,9'
          Dst:             ds_destroy
        - Src:             'lib/ofp-port.c:1778,5'
          Dst:             ds_init
        - Src:             'lib/ofp-port.c:1780,5'
          Dst:             print_port_stat_cond
        - Src:             'lib/ofp-port.c:1782,5'
          Dst:             print_port_stat_cond
        - Src:             'lib/ofp-port.c:1784,5'
          Dst:             print_port_stat_cond
        - Src:             'lib/ofp-port.c:1786,5'
          Dst:             print_port_stat_cond
        - Src:             'lib/ofp-port.c:1788,5'
          Dst:             print_port_stat_cond
        - Src:             'lib/ofp-port.c:1790,5'
          Dst:             print_port_stat_cond
        - Src:             'lib/ofp-port.c:1792,5'
          Dst:             print_port_stat_cond
        - Src:             'lib/ofp-port.c:1794,5'
          Dst:             print_port_stat_cond
        - Src:             'lib/ofp-port.c:1796,5'
          Dst:             print_port_stat_cond
        - Src:             'lib/ofp-port.c:1801,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-port.c:1802,9'
          Dst:             ds_put_buffer
        - Src:             'lib/ofp-port.c:1804,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-port.c:1805,9'
          Dst:             ds_destroy
        - Src:             'lib/ofp-port.c:1809,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-port.c:1814,21'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-port.c:1815,21'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-port.c:1817,21'
          Dst:             ds_put_char
        - Src:             'lib/ofp-port.c:1819,17'
          Dst:             ds_put_format
        - Src:             'lib/ofp-port.c:1824,9'
          Dst:             ds_put_cstr
    - functionName:    ofputil_format_port
      functionSourceFile: '/src/openvswitch/lib/ofp-port.c'
      linkageType:     InternalLinkage
      functionLinenumber: 246
      functionLinenumberEnd: 260
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          53
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - ds_put_cstr
        - ds_put_format
        - namemap_put_name
        - ofputil_port_get_reserved_name
        - ofputil_port_map_get_name
      functionUses:    25
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-port.c:247,33'
          Dst:             ofputil_port_get_reserved_name
        - Src:             'lib/ofp-port.c:249,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-port.c:253,29'
          Dst:             ofputil_port_map_get_name
        - Src:             'lib/ofp-port.c:255,9'
          Dst:             namemap_put_name
        - Src:             'lib/ofp-port.c:259,5'
          Dst:             ds_put_format
    - functionName:    ofputil_port_get_reserved_name
      functionSourceFile: '/src/openvswitch/lib/ofp-port.c'
      linkageType:     InternalLinkage
      functionLinenumber: 229
      functionLinenumberEnd: 238
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          62
      EdgeCount:       22
      CyclomaticComplexity: 12
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/ofp-port.c:230,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    ofputil_port_map_get_name
      functionSourceFile: '/src/openvswitch/lib/ofp-port.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 58
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          60
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - namemap_find_by_number
        - ofp_to_u16
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-port.c:56,48'
          Dst:             ofp_to_u16
        - Src:             'lib/ofp-port.c:56,14'
          Dst:             namemap_find_by_number
    - functionName:    ofputil_port_stats_from_ofp10
      functionSourceFile: '/src/openvswitch/lib/ofp-port.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1370
      functionLinenumberEnd: 1388
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          125
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_32aligned_be64
        - ntohll
        - ntohs
        - u16_to_ofp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-port.c:1372,31'
          Dst:             ntohs
        - Src:             'lib/ofp-port.c:1372,20'
          Dst:             u16_to_ofp
        - Src:             'lib/ofp-port.c:1373,36'
          Dst:             get_32aligned_be64
        - Src:             'lib/ofp-port.c:1373,29'
          Dst:             ntohll
        - Src:             'lib/ofp-port.c:1374,36'
          Dst:             get_32aligned_be64
        - Src:             'lib/ofp-port.c:1374,29'
          Dst:             ntohll
        - Src:             'lib/ofp-port.c:1375,34'
          Dst:             get_32aligned_be64
        - Src:             'lib/ofp-port.c:1375,27'
          Dst:             ntohll
        - Src:             'lib/ofp-port.c:1376,34'
          Dst:             get_32aligned_be64
        - Src:             'lib/ofp-port.c:1376,27'
          Dst:             ntohll
        - Src:             'lib/ofp-port.c:1377,36'
          Dst:             get_32aligned_be64
        - Src:             'lib/ofp-port.c:1377,29'
          Dst:             ntohll
        - Src:             'lib/ofp-port.c:1378,36'
          Dst:             get_32aligned_be64
        - Src:             'lib/ofp-port.c:1378,29'
          Dst:             ntohll
        - Src:             'lib/ofp-port.c:1379,35'
          Dst:             get_32aligned_be64
        - Src:             'lib/ofp-port.c:1379,28'
          Dst:             ntohll
        - Src:             'lib/ofp-port.c:1380,35'
          Dst:             get_32aligned_be64
        - Src:             'lib/ofp-port.c:1380,28'
          Dst:             ntohll
        - Src:             'lib/ofp-port.c:1382,16'
          Dst:             get_32aligned_be64
        - Src:             'lib/ofp-port.c:1382,9'
          Dst:             ntohll
        - Src:             'lib/ofp-port.c:1383,40'
          Dst:             get_32aligned_be64
        - Src:             'lib/ofp-port.c:1383,33'
          Dst:             ntohll
        - Src:             'lib/ofp-port.c:1384,39'
          Dst:             get_32aligned_be64
        - Src:             'lib/ofp-port.c:1384,32'
          Dst:             ntohll
        - Src:             'lib/ofp-port.c:1385,36'
          Dst:             get_32aligned_be64
        - Src:             'lib/ofp-port.c:1385,29'
          Dst:             ntohll
    - functionName:    ofputil_port_stats_from_ofp11
      functionSourceFile: '/src/openvswitch/lib/ofp-port.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1394
      functionLinenumberEnd: 1417
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          142
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ntohll
        - ofputil_port_from_ofp11
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-port.c:1397,13'
          Dst:             ofputil_port_from_ofp11
        - Src:             'lib/ofp-port.c:1402,29'
          Dst:             ntohll
        - Src:             'lib/ofp-port.c:1403,29'
          Dst:             ntohll
        - Src:             'lib/ofp-port.c:1404,27'
          Dst:             ntohll
        - Src:             'lib/ofp-port.c:1405,27'
          Dst:             ntohll
        - Src:             'lib/ofp-port.c:1406,29'
          Dst:             ntohll
        - Src:             'lib/ofp-port.c:1407,29'
          Dst:             ntohll
        - Src:             'lib/ofp-port.c:1408,28'
          Dst:             ntohll
        - Src:             'lib/ofp-port.c:1409,28'
          Dst:             ntohll
        - Src:             'lib/ofp-port.c:1410,34'
          Dst:             ntohll
        - Src:             'lib/ofp-port.c:1411,33'
          Dst:             ntohll
        - Src:             'lib/ofp-port.c:1412,32'
          Dst:             ntohll
        - Src:             'lib/ofp-port.c:1413,29'
          Dst:             ntohll
    - functionName:    ofputil_port_stats_from_ofp13
      functionSourceFile: '/src/openvswitch/lib/ofp-port.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1422
      functionLinenumberEnd: 1428
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          48
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ntohl
        - ofputil_port_stats_from_ofp11
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-port.c:1423,25'
          Dst:             ofputil_port_stats_from_ofp11
        - Src:             'lib/ofp-port.c:1425,29'
          Dst:             ntohl
        - Src:             'lib/ofp-port.c:1426,30'
          Dst:             ntohl
    - functionName:    ofputil_pull_ofp14_port_stats
      functionSourceFile: '/src/openvswitch/lib/ofp-port.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1538
      functionLinenumberEnd: 1600
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         25
      ICount:          241
      EdgeCount:       31
      CyclomaticComplexity: 8
      functionsReached:
        - netdev_free_custom_stats_counters
        - ntohl
        - ntohll
        - ntohs
        - ofpbuf_const_initializer
        - ofpbuf_pull
        - ofpbuf_try_pull
        - ofpprop_pull
        - ofpprop_unknown
        - ofputil_port_from_ofp11
        - parse_intel_port_custom_property
        - parse_intel_port_stats_rfc2819_property
        - parse_ofp14_port_stats_ethernet_property
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-port.c:1578,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-port.c:1539,43'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/ofp-port.c:1544,18'
          Dst:             ntohs
        - Src:             'lib/ofp-port.c:1550,25'
          Dst:             ofputil_port_from_ofp11
        - Src:             'lib/ofp-port.c:1555,25'
          Dst:             ntohl
        - Src:             'lib/ofp-port.c:1556,26'
          Dst:             ntohl
        - Src:             'lib/ofp-port.c:1557,29'
          Dst:             ntohll
        - Src:             'lib/ofp-port.c:1558,29'
          Dst:             ntohll
        - Src:             'lib/ofp-port.c:1559,27'
          Dst:             ntohll
        - Src:             'lib/ofp-port.c:1560,27'
          Dst:             ntohll
        - Src:             'lib/ofp-port.c:1561,29'
          Dst:             ntohll
        - Src:             'lib/ofp-port.c:1562,29'
          Dst:             ntohll
        - Src:             'lib/ofp-port.c:1563,28'
          Dst:             ntohll
        - Src:             'lib/ofp-port.c:1564,28'
          Dst:             ntohll
        - Src:             'lib/ofp-port.c:1567,57'
          Dst:             ofpbuf_pull
        - Src:             'lib/ofp-port.c:1567,32'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/ofp-port.c:1573,17'
          Dst:             ofpprop_pull
        - Src:             'lib/ofp-port.c:1575,13'
          Dst:             netdev_free_custom_stats_counters
        - Src:             'lib/ofp-port.c:1580,21'
          Dst:             parse_ofp14_port_stats_ethernet_property
        - Src:             'lib/ofp-port.c:1583,21'
          Dst:             parse_intel_port_stats_rfc2819_property
        - Src:             'lib/ofp-port.c:1586,21'
          Dst:             parse_intel_port_custom_property
        - Src:             'lib/ofp-port.c:1589,21'
          Dst:             ofpprop_unknown
        - Src:             'lib/ofp-port.c:1594,13'
          Dst:             netdev_free_custom_stats_counters
    - functionName:    ofputil_decode_port_stats
      functionSourceFile: '/src/openvswitch/lib/ofp-port.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1634
      functionLinenumberEnd: 1682
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         31
      ICount:          180
      EdgeCount:       41
      CyclomaticComplexity: 12
      functionsReached:
        - abort
        - ofpbuf_try_pull
        - ofpraw_decode
        - ofpraw_pull
        - ofputil_port_stats_from_ofp10
        - ofputil_port_stats_from_ofp11
        - ofputil_port_stats_from_ofp13
        - ofputil_pull_ofp14_port_stats
        - vlog_rate_limit
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-port.c:1641,28'
          Dst:             ofpraw_decode
        - Src:             'lib/ofp-port.c:1642,16'
          Dst:             ofpraw_pull
        - Src:             'lib/ofp-port.c:1650,16'
          Dst:             ofputil_pull_ofp14_port_stats
        - Src:             'lib/ofp-port.c:1653,16'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/ofp-port.c:1657,16'
          Dst:             ofputil_port_stats_from_ofp13
        - Src:             'lib/ofp-port.c:1661,16'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/ofp-port.c:1665,16'
          Dst:             ofputil_port_stats_from_ofp11
        - Src:             'lib/ofp-port.c:1669,16'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/ofp-port.c:1673,16'
          Dst:             ofputil_port_stats_from_ofp10
        - Src:             'lib/ofp-port.c:1675,9'
          Dst:             abort
        - Src:             'lib/ofp-port.c:1679,5'
          Dst:             vlog_rate_limit
    - functionName:    ofputil_count_port_stats
      functionSourceFile: '/src/openvswitch/lib/ofp-port.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1606
      functionLinenumberEnd: 1616
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          44
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - netdev_free_custom_stats_counters
        - ntohs
        - ofpbuf_const_initializer
        - ofpraw_pull_assert
        - ofputil_decode_port_stats
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-port.c:1607,52'
          Dst:             ntohs
        - Src:             'lib/ofp-port.c:1607,23'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/ofp-port.c:1608,5'
          Dst:             ofpraw_pull_assert
        - Src:             'lib/ofp-port.c:1612,13'
          Dst:             ofputil_decode_port_stats
        - Src:             'lib/ofp-port.c:1615,9'
          Dst:             netdev_free_custom_stats_counters
    - functionName:    ofputil_append_ofp14_port_stats
      functionSourceFile: '/src/openvswitch/lib/ofp-port.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1216
      functionLinenumberEnd: 1331
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          465
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - htonl
        - htonll
        - htons
        - ofpbuf_at_assert
        - ofpbuf_from_list
        - ofpbuf_put
        - ofpbuf_put_uninit
        - ofpmp_postappend
        - ofpprop_end
        - ofpprop_put_zeros
        - ofputil_port_to_ofp11
        - ovs_list_back
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-port.c:1226,30'
          Dst:             ovs_list_back
        - Src:             'lib/ofp-port.c:1226,13'
          Dst:             ofpbuf_from_list
        - Src:             'lib/ofp-port.c:1229,12'
          Dst:             ofpbuf_put_uninit
        - Src:             'lib/ofp-port.c:1232,21'
          Dst:             ofputil_port_to_ofp11
        - Src:             'lib/ofp-port.c:1233,26'
          Dst:             htonl
        - Src:             'lib/ofp-port.c:1234,27'
          Dst:             htonl
        - Src:             'lib/ofp-port.c:1235,24'
          Dst:             htonll
        - Src:             'lib/ofp-port.c:1236,24'
          Dst:             htonll
        - Src:             'lib/ofp-port.c:1237,22'
          Dst:             htonll
        - Src:             'lib/ofp-port.c:1238,22'
          Dst:             htonll
        - Src:             'lib/ofp-port.c:1239,24'
          Dst:             htonll
        - Src:             'lib/ofp-port.c:1240,24'
          Dst:             htonll
        - Src:             'lib/ofp-port.c:1241,23'
          Dst:             htonll
        - Src:             'lib/ofp-port.c:1242,23'
          Dst:             htonll
        - Src:             'lib/ofp-port.c:1244,11'
          Dst:             ofpprop_put_zeros
        - Src:             'lib/ofp-port.c:1245,25'
          Dst:             htonll
        - Src:             'lib/ofp-port.c:1246,24'
          Dst:             htonll
        - Src:             'lib/ofp-port.c:1247,23'
          Dst:             htonll
        - Src:             'lib/ofp-port.c:1248,23'
          Dst:             htonll
        - Src:             'lib/ofp-port.c:1253,21'
          Dst:             ofpprop_put_zeros
        - Src:             'lib/ofp-port.c:1257,41'
          Dst:             htonll
        - Src:             'lib/ofp-port.c:1259,9'
          Dst:             htonll
        - Src:             'lib/ofp-port.c:1261,9'
          Dst:             htonll
        - Src:             'lib/ofp-port.c:1263,9'
          Dst:             htonll
        - Src:             'lib/ofp-port.c:1265,9'
          Dst:             htonll
        - Src:             'lib/ofp-port.c:1267,9'
          Dst:             htonll
        - Src:             'lib/ofp-port.c:1269,9'
          Dst:             htonll
        - Src:             'lib/ofp-port.c:1271,41'
          Dst:             htonll
        - Src:             'lib/ofp-port.c:1273,9'
          Dst:             htonll
        - Src:             'lib/ofp-port.c:1275,9'
          Dst:             htonll
        - Src:             'lib/ofp-port.c:1277,9'
          Dst:             htonll
        - Src:             'lib/ofp-port.c:1279,9'
          Dst:             htonll
        - Src:             'lib/ofp-port.c:1281,9'
          Dst:             htonll
        - Src:             'lib/ofp-port.c:1283,9'
          Dst:             htonll
        - Src:             'lib/ofp-port.c:1286,9'
          Dst:             htonll
        - Src:             'lib/ofp-port.c:1288,9'
          Dst:             htonll
        - Src:             'lib/ofp-port.c:1290,9'
          Dst:             htonll
        - Src:             'lib/ofp-port.c:1292,9'
          Dst:             htonll
        - Src:             'lib/ofp-port.c:1294,9'
          Dst:             htonll
        - Src:             'lib/ofp-port.c:1296,9'
          Dst:             htonll
        - Src:             'lib/ofp-port.c:1298,9'
          Dst:             htonll
        - Src:             'lib/ofp-port.c:1306,24'
          Dst:             ofpprop_put_zeros
        - Src:             'lib/ofp-port.c:1309,42'
          Dst:             htons
        - Src:             'lib/ofp-port.c:1312,36'
          Dst:             strlen
        - Src:             'lib/ofp-port.c:1314,13'
          Dst:             ofpbuf_put
        - Src:             'lib/ofp-port.c:1316,13'
          Dst:             ofpbuf_put
        - Src:             'lib/ofp-port.c:1319,29'
          Dst:             htonll
        - Src:             'lib/ofp-port.c:1320,13'
          Dst:             ofpbuf_put
        - Src:             'lib/ofp-port.c:1324,9'
          Dst:             ofpprop_end
        - Src:             'lib/ofp-port.c:1327,12'
          Dst:             ofpbuf_at_assert
        - Src:             'lib/ofp-port.c:1328,20'
          Dst:             htons
        - Src:             'lib/ofp-port.c:1330,5'
          Dst:             ofpmp_postappend
    - functionName:    ovs_list_back
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 295
      functionLinenumberEnd: 300
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovs_list_is_empty
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/list.h:298,17'
          Dst:             ovs_list_is_empty
        - Src:             './include/openvswitch/list.h:298,5'
          Dst:             ovs_ignore
    - functionName:    ofpbuf_from_list
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 280
      functionLinenumberEnd: 281
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofputil_port_to_ofp11
      functionSourceFile: '/src/openvswitch/lib/ofp-port.c'
      linkageType:     InternalLinkage
      functionLinenumber: 112
      functionLinenumberEnd: 115
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
        - ofp_to_u16
      functionUses:    32
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-port.c:113,18'
          Dst:             ofp_to_u16
        - Src:             'lib/ofp-port.c:113,43'
          Dst:             ofp_to_u16
        - Src:             'lib/ofp-port.c:114,20'
          Dst:             ofp_to_u16
        - Src:             'lib/ofp-port.c:115,20'
          Dst:             ofp_to_u16
        - Src:             'lib/ofp-port.c:113,12'
          Dst:             htonl
    - functionName:    ofputil_port_stats_to_ofp10
      functionSourceFile: '/src/openvswitch/lib/ofp-port.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1166
      functionLinenumberEnd: 1182
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          123
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonll
        - htons
        - ofp_to_u16
        - put_32aligned_be64
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-port.c:1167,27'
          Dst:             ofp_to_u16
        - Src:             'lib/ofp-port.c:1167,21'
          Dst:             htons
        - Src:             'lib/ofp-port.c:1169,43'
          Dst:             htonll
        - Src:             'lib/ofp-port.c:1169,5'
          Dst:             put_32aligned_be64
        - Src:             'lib/ofp-port.c:1170,43'
          Dst:             htonll
        - Src:             'lib/ofp-port.c:1170,5'
          Dst:             put_32aligned_be64
        - Src:             'lib/ofp-port.c:1171,41'
          Dst:             htonll
        - Src:             'lib/ofp-port.c:1171,5'
          Dst:             put_32aligned_be64
        - Src:             'lib/ofp-port.c:1172,41'
          Dst:             htonll
        - Src:             'lib/ofp-port.c:1172,5'
          Dst:             put_32aligned_be64
        - Src:             'lib/ofp-port.c:1173,43'
          Dst:             htonll
        - Src:             'lib/ofp-port.c:1173,5'
          Dst:             put_32aligned_be64
        - Src:             'lib/ofp-port.c:1174,43'
          Dst:             htonll
        - Src:             'lib/ofp-port.c:1174,5'
          Dst:             put_32aligned_be64
        - Src:             'lib/ofp-port.c:1175,42'
          Dst:             htonll
        - Src:             'lib/ofp-port.c:1175,5'
          Dst:             put_32aligned_be64
        - Src:             'lib/ofp-port.c:1176,42'
          Dst:             htonll
        - Src:             'lib/ofp-port.c:1176,5'
          Dst:             put_32aligned_be64
        - Src:             'lib/ofp-port.c:1178,24'
          Dst:             htonll
        - Src:             'lib/ofp-port.c:1177,5'
          Dst:             put_32aligned_be64
        - Src:             'lib/ofp-port.c:1179,44'
          Dst:             htonll
        - Src:             'lib/ofp-port.c:1179,5'
          Dst:             put_32aligned_be64
        - Src:             'lib/ofp-port.c:1180,43'
          Dst:             htonll
        - Src:             'lib/ofp-port.c:1180,5'
          Dst:             put_32aligned_be64
        - Src:             'lib/ofp-port.c:1181,43'
          Dst:             htonll
        - Src:             'lib/ofp-port.c:1181,5'
          Dst:             put_32aligned_be64
    - functionName:    ofputil_port_stats_to_ofp11
      functionSourceFile: '/src/openvswitch/lib/ofp-port.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1187
      functionLinenumberEnd: 1202
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          122
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonll
        - ofputil_port_to_ofp11
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-port.c:1188,21'
          Dst:             ofputil_port_to_ofp11
        - Src:             'lib/ofp-port.c:1190,24'
          Dst:             htonll
        - Src:             'lib/ofp-port.c:1191,24'
          Dst:             htonll
        - Src:             'lib/ofp-port.c:1192,22'
          Dst:             htonll
        - Src:             'lib/ofp-port.c:1193,22'
          Dst:             htonll
        - Src:             'lib/ofp-port.c:1194,24'
          Dst:             htonll
        - Src:             'lib/ofp-port.c:1195,24'
          Dst:             htonll
        - Src:             'lib/ofp-port.c:1196,23'
          Dst:             htonll
        - Src:             'lib/ofp-port.c:1197,23'
          Dst:             htonll
        - Src:             'lib/ofp-port.c:1198,26'
          Dst:             htonll
        - Src:             'lib/ofp-port.c:1199,25'
          Dst:             htonll
        - Src:             'lib/ofp-port.c:1200,24'
          Dst:             htonll
        - Src:             'lib/ofp-port.c:1201,24'
          Dst:             htonll
    - functionName:    ofputil_port_stats_to_ofp13
      functionSourceFile: '/src/openvswitch/lib/ofp-port.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1207
      functionLinenumberEnd: 1211
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
        - ofputil_port_stats_to_ofp11
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-port.c:1208,5'
          Dst:             ofputil_port_stats_to_ofp11
        - Src:             'lib/ofp-port.c:1209,26'
          Dst:             htonl
        - Src:             'lib/ofp-port.c:1210,27'
          Dst:             htonl
    - functionName:    ofputil_append_port_stat
      functionSourceFile: '/src/openvswitch/lib/ofp-port.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1337
      functionLinenumberEnd: 1365
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          75
      EdgeCount:       24
      CyclomaticComplexity: 13
      functionsReached:
        - abort
        - ofpmp_append
        - ofpmp_version
        - ofputil_append_ofp14_port_stats
        - ofputil_port_stats_to_ofp10
        - ofputil_port_stats_to_ofp11
        - ofputil_port_stats_to_ofp13
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib/ofp-port.c:1338,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-port.c:1338,13'
          Dst:             ofpmp_version
        - Src:             'lib/ofp-port.c:1340,42'
          Dst:             ofpmp_append
        - Src:             'lib/ofp-port.c:1341,9'
          Dst:             ofputil_port_stats_to_ofp13
        - Src:             'lib/ofp-port.c:1346,42'
          Dst:             ofpmp_append
        - Src:             'lib/ofp-port.c:1347,9'
          Dst:             ofputil_port_stats_to_ofp11
        - Src:             'lib/ofp-port.c:1352,42'
          Dst:             ofpmp_append
        - Src:             'lib/ofp-port.c:1353,9'
          Dst:             ofputil_port_stats_to_ofp10
        - Src:             'lib/ofp-port.c:1359,9'
          Dst:             ofputil_append_ofp14_port_stats
        - Src:             'lib/ofp-port.c:1363,9'
          Dst:             abort
    - functionName:    ofputil_encode_dump_ports_request
      functionSourceFile: '/src/openvswitch/lib/ofp-port.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1134
      functionLinenumberEnd: 1160
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          78
      EdgeCount:       22
      CyclomaticComplexity: 12
      functionsReached:
        - abort
        - htons
        - ofp_to_u16
        - ofpbuf_put_zeros
        - ofpraw_alloc
        - ofputil_port_to_ofp11
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib/ofp-port.c:1137,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-port.c:1140,19'
          Dst:             ofpraw_alloc
        - Src:             'lib/ofp-port.c:1141,15'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-port.c:1142,30'
          Dst:             ofp_to_u16
        - Src:             'lib/ofp-port.c:1142,24'
          Dst:             htons
        - Src:             'lib/ofp-port.c:1151,19'
          Dst:             ofpraw_alloc
        - Src:             'lib/ofp-port.c:1152,15'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-port.c:1153,24'
          Dst:             ofputil_port_to_ofp11
        - Src:             'lib/ofp-port.c:1157,9'
          Dst:             abort
    - functionName:    ofputil_port_mod_format
      functionSourceFile: '/src/openvswitch/lib/ofp-port.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1108
      functionLinenumberEnd: 1126
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          100
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_cstr
        - ds_put_format
        - netdev_features_format
        - ofputil_format_port
        - ofputil_port_config_format
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-port.c:1109,5'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-port.c:1110,5'
          Dst:             ofputil_format_port
        - Src:             'lib/ofp-port.c:1111,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-port.c:1114,5'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-port.c:1115,5'
          Dst:             ofputil_port_config_format
        - Src:             'lib/ofp-port.c:1117,5'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-port.c:1118,5'
          Dst:             ofputil_port_config_format
        - Src:             'lib/ofp-port.c:1120,5'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-port.c:1122,9'
          Dst:             netdev_features_format
        - Src:             'lib/ofp-port.c:1124,9'
          Dst:             ds_put_cstr
    - functionName:    ofputil_port_config_format
      functionSourceFile: '/src/openvswitch/lib/ofp-port.c'
      linkageType:     InternalLinkage
      functionLinenumber: 311
      functionLinenumberEnd: 314
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_char
        - ofp_print_bit_names
        - ofputil_port_config_to_name
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-port.c:312,5'
          Dst:             ofp_print_bit_names
        - Src:             'lib/ofp-port.c:312,5'
          Dst:             ofputil_port_config_to_name
        - Src:             'lib/ofp-port.c:313,5'
          Dst:             ds_put_char
    - functionName:    ofputil_port_config_to_name
      functionSourceFile: '/src/openvswitch/lib/ofp-port.c'
      linkageType:     InternalLinkage
      functionLinenumber: 293
      functionLinenumberEnd: 307
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          55
      EdgeCount:       18
      CyclomaticComplexity: 10
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-port.c:296,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    netdev_port_features_to_ofp10
      functionSourceFile: '/src/openvswitch/lib/ofp-port.c'
      linkageType:     InternalLinkage
      functionLinenumber: 393
      functionLinenumberEnd: 394
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-port.c:394,12'
          Dst:             htonl
    - functionName:    ofputil_encode_port_mod
      functionSourceFile: '/src/openvswitch/lib/ofp-port.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1049
      functionLinenumberEnd: 1102
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          199
      EdgeCount:       31
      CyclomaticComplexity: 17
      functionsReached:
        - abort
        - htonl
        - htons
        - netdev_port_features_to_ofp10
        - netdev_port_features_to_ofp11
        - ofp_to_u16
        - ofpbuf_put_zeros
        - ofpprop_put_be32
        - ofpraw_alloc
        - ofputil_port_to_ofp11
        - ofputil_protocol_to_ofp_version
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib/ofp-port.c:1053,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-port.c:1050,36'
          Dst:             ofputil_protocol_to_ofp_version
        - Src:             'lib/ofp-port.c:1057,13'
          Dst:             ofpraw_alloc
        - Src:             'lib/ofp-port.c:1058,15'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-port.c:1059,30'
          Dst:             ofp_to_u16
        - Src:             'lib/ofp-port.c:1059,24'
          Dst:             htons
        - Src:             'lib/ofp-port.c:1061,23'
          Dst:             htonl
        - Src:             'lib/ofp-port.c:1062,21'
          Dst:             htonl
        - Src:             'lib/ofp-port.c:1063,26'
          Dst:             netdev_port_features_to_ofp10
        - Src:             'lib/ofp-port.c:1072,13'
          Dst:             ofpraw_alloc
        - Src:             'lib/ofp-port.c:1073,15'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-port.c:1074,24'
          Dst:             ofputil_port_to_ofp11
        - Src:             'lib/ofp-port.c:1076,23'
          Dst:             htonl
        - Src:             'lib/ofp-port.c:1077,21'
          Dst:             htonl
        - Src:             'lib/ofp-port.c:1078,26'
          Dst:             netdev_port_features_to_ofp11
        - Src:             'lib/ofp-port.c:1085,13'
          Dst:             ofpraw_alloc
        - Src:             'lib/ofp-port.c:1086,15'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-port.c:1087,24'
          Dst:             ofputil_port_to_ofp11
        - Src:             'lib/ofp-port.c:1089,23'
          Dst:             htonl
        - Src:             'lib/ofp-port.c:1090,21'
          Dst:             htonl
        - Src:             'lib/ofp-port.c:1094,30'
          Dst:             netdev_port_features_to_ofp11
        - Src:             'lib/ofp-port.c:1093,13'
          Dst:             ofpprop_put_be32
        - Src:             'lib/ofp-port.c:1099,9'
          Dst:             abort
    - functionName:    ofputil_decode_ofp14_port_mod
      functionSourceFile: '/src/openvswitch/lib/ofp-port.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1003
      functionLinenumberEnd: 1015
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          73
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ntohl
        - ofpbuf_pull
        - ofputil_decode_ofp14_port_mod_properties
        - ofputil_port_from_ofp11
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-port.c:1004,40'
          Dst:             ofpbuf_pull
        - Src:             'lib/ofp-port.c:1005,25'
          Dst:             ofputil_port_from_ofp11
        - Src:             'lib/ofp-port.c:1011,18'
          Dst:             ntohl
        - Src:             'lib/ofp-port.c:1012,16'
          Dst:             ntohl
        - Src:             'lib/ofp-port.c:1014,12'
          Dst:             ofputil_decode_ofp14_port_mod_properties
    - functionName:    ofputil_decode_ofp11_port_mod
      functionSourceFile: '/src/openvswitch/lib/ofp-port.c'
      linkageType:     InternalLinkage
      functionLinenumber: 953
      functionLinenumberEnd: 967
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          68
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - netdev_port_features_from_ofp11
        - ntohl
        - ofputil_port_from_ofp11
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-port.c:956,13'
          Dst:             ofputil_port_from_ofp11
        - Src:             'lib/ofp-port.c:962,18'
          Dst:             ntohl
        - Src:             'lib/ofp-port.c:963,16'
          Dst:             ntohl
        - Src:             'lib/ofp-port.c:964,21'
          Dst:             netdev_port_features_from_ofp11
    - functionName:    ofputil_decode_ofp10_port_mod
      functionSourceFile: '/src/openvswitch/lib/ofp-port.c'
      linkageType:     InternalLinkage
      functionLinenumber: 941
      functionLinenumberEnd: 947
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          51
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - netdev_port_features_from_ofp10
        - ntohl
        - ntohs
        - u16_to_ofp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-port.c:942,30'
          Dst:             ntohs
        - Src:             'lib/ofp-port.c:942,19'
          Dst:             u16_to_ofp
        - Src:             'lib/ofp-port.c:944,18'
          Dst:             ntohl
        - Src:             'lib/ofp-port.c:945,16'
          Dst:             ntohl
        - Src:             'lib/ofp-port.c:946,21'
          Dst:             netdev_port_features_from_ofp10
    - functionName:    ofputil_decode_port_mod
      functionSourceFile: '/src/openvswitch/lib/ofp-port.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1022
      functionLinenumberEnd: 1040
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          87
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - ntohs
        - ofpbuf_const_initializer
        - ofpraw_pull_assert
        - ofputil_decode_ofp10_port_mod
        - ofputil_decode_ofp11_port_mod
        - ofputil_decode_ofp14_port_mod
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-port.c:1025,52'
          Dst:             ntohs
        - Src:             'lib/ofp-port.c:1025,23'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/ofp-port.c:1026,23'
          Dst:             ofpraw_pull_assert
        - Src:             'lib/ofp-port.c:1030,17'
          Dst:             ofputil_decode_ofp10_port_mod
        - Src:             'lib/ofp-port.c:1032,17'
          Dst:             ofputil_decode_ofp11_port_mod
        - Src:             'lib/ofp-port.c:1034,17'
          Dst:             ofputil_decode_ofp14_port_mod
    - functionName:    ofputil_port_status_format
      functionSourceFile: '/src/openvswitch/lib/ofp-port.c'
      linkageType:     InternalLinkage
      functionLinenumber: 910
      functionLinenumberEnd: 920
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          61
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - ds_put_format
        - ofputil_phy_port_format
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-port.c:912,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-port.c:914,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-port.c:916,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-port.c:919,5'
          Dst:             ofputil_phy_port_format
    - functionName:    ofputil_phy_port_format
      functionSourceFile: '/src/openvswitch/lib/ofp-port.c'
      linkageType:     InternalLinkage
      functionLinenumber: 752
      functionLinenumberEnd: 795
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         22
      ICount:          218
      EdgeCount:       28
      CyclomaticComplexity: 8
      functionsReached:
        - __ctype_b_loc
        - ds_put_char
        - ds_put_cstr
        - ds_put_format
        - netdev_features_format
        - ofputil_format_port
        - ofputil_port_config_format
        - ofputil_port_state_format
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-port.c:758,14'
          Dst:             __ctype_b_loc
        - Src:             'lib/ofp-port.c:764,5'
          Dst:             ds_put_char
        - Src:             'lib/ofp-port.c:765,5'
          Dst:             ofputil_format_port
        - Src:             'lib/ofp-port.c:766,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-port.c:769,5'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-port.c:770,5'
          Dst:             ofputil_port_config_format
        - Src:             'lib/ofp-port.c:772,5'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-port.c:773,5'
          Dst:             ofputil_port_state_format
        - Src:             'lib/ofp-port.c:776,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-port.c:777,9'
          Dst:             netdev_features_format
        - Src:             'lib/ofp-port.c:780,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-port.c:781,9'
          Dst:             netdev_features_format
        - Src:             'lib/ofp-port.c:784,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-port.c:785,9'
          Dst:             netdev_features_format
        - Src:             'lib/ofp-port.c:788,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-port.c:789,9'
          Dst:             netdev_features_format
        - Src:             'lib/ofp-port.c:791,5'
          Dst:             ds_put_format
    - 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:    39
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofputil_port_state_format
      functionSourceFile: '/src/openvswitch/lib/ofp-port.c'
      linkageType:     InternalLinkage
      functionLinenumber: 341
      functionLinenumberEnd: 364
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          71
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - ds_put_char
        - ds_put_cstr
        - ofp_print_bit_names
        - ofputil_port_state_to_name
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-port.c:353,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-port.c:358,13'
          Dst:             ofp_print_bit_names
        - Src:             'lib/ofp-port.c:358,13'
          Dst:             ofputil_port_state_to_name
        - Src:             'lib/ofp-port.c:361,9'
          Dst:             ofp_print_bit_names
        - Src:             'lib/ofp-port.c:361,9'
          Dst:             ofputil_port_state_to_name
        - Src:             'lib/ofp-port.c:363,5'
          Dst:             ds_put_char
    - functionName:    ofputil_port_state_to_name
      functionSourceFile: '/src/openvswitch/lib/ofp-port.c'
      linkageType:     InternalLinkage
      functionLinenumber: 320
      functionLinenumberEnd: 337
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          53
      EdgeCount:       20
      CyclomaticComplexity: 11
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/ofp-port.c:323,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    ofputil_encode_port_status
      functionSourceFile: '/src/openvswitch/lib/ofp-port.c'
      linkageType:     InternalLinkage
      functionLinenumber: 872
      functionLinenumberEnd: 904
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          84
      EdgeCount:       24
      CyclomaticComplexity: 13
      functionsReached:
        - abort
        - htonl
        - ofpbuf_put_zeros
        - ofpmsg_update_length
        - ofpraw_alloc_xid
        - ofputil_protocol_to_ofp_version
        - ofputil_put_phy_port
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib/ofp-port.c:879,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-port.c:878,15'
          Dst:             ofputil_protocol_to_ofp_version
        - Src:             'lib/ofp-port.c:896,9'
          Dst:             abort
        - Src:             'lib/ofp-port.c:899,40'
          Dst:             htonl
        - Src:             'lib/ofp-port.c:899,9'
          Dst:             ofpraw_alloc_xid
        - Src:             'lib/ofp-port.c:900,11'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-port.c:902,5'
          Dst:             ofputil_put_phy_port
        - Src:             'lib/ofp-port.c:903,5'
          Dst:             ofpmsg_update_length
    - functionName:    ofputil_put_phy_port
      functionSourceFile: '/src/openvswitch/lib/ofp-port.c'
      linkageType:     InternalLinkage
      functionLinenumber: 633
      functionLinenumberEnd: 657
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          69
      EdgeCount:       24
      CyclomaticComplexity: 13
      functionsReached:
        - abort
        - ofpbuf_put_uninit
        - ofputil_encode_ofp10_phy_port
        - ofputil_encode_ofp11_port
        - ofputil_put_ofp14_port
      functionUses:    3
      BranchProfiles:
        - Branch String:   'lib/ofp-port.c:634,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-port.c:636,38'
          Dst:             ofpbuf_put_uninit
        - Src:             'lib/ofp-port.c:637,9'
          Dst:             ofputil_encode_ofp10_phy_port
        - Src:             'lib/ofp-port.c:644,33'
          Dst:             ofpbuf_put_uninit
        - Src:             'lib/ofp-port.c:645,9'
          Dst:             ofputil_encode_ofp11_port
        - Src:             'lib/ofp-port.c:651,9'
          Dst:             ofputil_put_ofp14_port
        - Src:             'lib/ofp-port.c:655,9'
          Dst:             abort
    - functionName:    ofputil_encode_ofp10_phy_port
      functionSourceFile: '/src/openvswitch/lib/ofp-port.c'
      linkageType:     InternalLinkage
      functionLinenumber: 559
      functionLinenumberEnd: 573
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          81
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
        - htons
        - netdev_port_features_to_ofp10
        - ofp_to_u16
        - ovs_strlcpy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-port.c:562,26'
          Dst:             ofp_to_u16
        - Src:             'lib/ofp-port.c:562,20'
          Dst:             htons
        - Src:             'lib/ofp-port.c:564,5'
          Dst:             ovs_strlcpy
        - Src:             'lib/ofp-port.c:566,19'
          Dst:             htonl
        - Src:             'lib/ofp-port.c:567,18'
          Dst:             htonl
        - Src:             'lib/ofp-port.c:569,17'
          Dst:             netdev_port_features_to_ofp10
        - Src:             'lib/ofp-port.c:570,23'
          Dst:             netdev_port_features_to_ofp10
        - Src:             'lib/ofp-port.c:571,22'
          Dst:             netdev_port_features_to_ofp10
        - Src:             'lib/ofp-port.c:572,17'
          Dst:             netdev_port_features_to_ofp10
    - functionName:    ofputil_encode_ofp11_port
      functionSourceFile: '/src/openvswitch/lib/ofp-port.c'
      linkageType:     InternalLinkage
      functionLinenumber: 578
      functionLinenumberEnd: 595
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          94
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
        - netdev_port_features_to_ofp11
        - ofputil_port_to_ofp11
        - ovs_strlcpy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-port.c:581,19'
          Dst:             ofputil_port_to_ofp11
        - Src:             'lib/ofp-port.c:583,5'
          Dst:             ovs_strlcpy
        - Src:             'lib/ofp-port.c:585,18'
          Dst:             htonl
        - Src:             'lib/ofp-port.c:586,17'
          Dst:             htonl
        - Src:             'lib/ofp-port.c:588,16'
          Dst:             netdev_port_features_to_ofp11
        - Src:             'lib/ofp-port.c:589,22'
          Dst:             netdev_port_features_to_ofp11
        - Src:             'lib/ofp-port.c:590,21'
          Dst:             netdev_port_features_to_ofp11
        - Src:             'lib/ofp-port.c:591,16'
          Dst:             netdev_port_features_to_ofp11
        - Src:             'lib/ofp-port.c:593,22'
          Dst:             htonl
        - Src:             'lib/ofp-port.c:594,21'
          Dst:             htonl
    - functionName:    ofputil_put_ofp14_port
      functionSourceFile: '/src/openvswitch/lib/ofp-port.c'
      linkageType:     InternalLinkage
      functionLinenumber: 612
      functionLinenumberEnd: 628
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          67
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
        - htons
        - ofpbuf_prealloc_tailroom
        - ofpbuf_put_zeros
        - ofpprop_put_zeros
        - ofputil_encode_ofp14_port_ethernet_prop
        - ofputil_port_to_ofp11
        - ovs_strlcpy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-port.c:616,5'
          Dst:             ofpbuf_prealloc_tailroom
        - Src:             'lib/ofp-port.c:618,10'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-port.c:619,19'
          Dst:             ofputil_port_to_ofp11
        - Src:             'lib/ofp-port.c:620,18'
          Dst:             htons
        - Src:             'lib/ofp-port.c:622,5'
          Dst:             ovs_strlcpy
        - Src:             'lib/ofp-port.c:623,18'
          Dst:             htonl
        - Src:             'lib/ofp-port.c:624,17'
          Dst:             htonl
        - Src:             'lib/ofp-port.c:626,11'
          Dst:             ofpprop_put_zeros
        - Src:             'lib/ofp-port.c:627,5'
          Dst:             ofputil_encode_ofp14_port_ethernet_prop
    - functionName:    ofputil_decode_port_status
      functionSourceFile: '/src/openvswitch/lib/ofp-port.c'
      linkageType:     InternalLinkage
      functionLinenumber: 849
      functionLinenumberEnd: 864
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          90
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - ntohs
        - ofpbuf_const_initializer
        - ofpbuf_pull
        - ofpraw_pull_assert
        - ofputil_pull_phy_port
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-port.c:850,52'
          Dst:             ntohs
        - Src:             'lib/ofp-port.c:850,23'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/ofp-port.c:851,5'
          Dst:             ofpraw_pull_assert
        - Src:             'lib/ofp-port.c:853,41'
          Dst:             ofpbuf_pull
        - Src:             'lib/ofp-port.c:861,18'
          Dst:             ofputil_pull_phy_port
        - Src:             'lib/ofp-port.c:862,5'
          Dst:             ovs_ignore
    - functionName:    ofputil_pull_phy_port
      functionSourceFile: '/src/openvswitch/lib/ofp-port.c'
      linkageType:     InternalLinkage
      functionLinenumber: 728
      functionLinenumberEnd: 748
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          112
      EdgeCount:       23
      CyclomaticComplexity: 3
      functionsReached:
        - abort
        - ofpbuf_try_pull
        - ofputil_decode_ofp10_phy_port
        - ofputil_decode_ofp11_port
        - ofputil_pull_ofp14_port
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/ofp-port.c:731,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-port.c:733,44'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/ofp-port.c:734,22'
          Dst:             ofputil_decode_ofp10_phy_port
        - Src:             'lib/ofp-port.c:739,39'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/ofp-port.c:740,21'
          Dst:             ofputil_decode_ofp11_port
        - Src:             'lib/ofp-port.c:744,26'
          Dst:             ofputil_pull_ofp14_port
        - Src:             'lib/ofp-port.c:746,9'
          Dst:             abort
    - functionName:    ofputil_decode_ofp10_phy_port
      functionSourceFile: '/src/openvswitch/lib/ofp-port.c'
      linkageType:     InternalLinkage
      functionLinenumber: 429
      functionLinenumberEnd: 445
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          97
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - netdev_features_to_bps
        - netdev_port_features_from_ofp10
        - ntohl
        - ntohs
        - ovs_strlcpy
        - u16_to_ofp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-port.c:430,30'
          Dst:             ntohs
        - Src:             'lib/ofp-port.c:430,19'
          Dst:             u16_to_ofp
        - Src:             'lib/ofp-port.c:432,5'
          Dst:             ovs_strlcpy
        - Src:             'lib/ofp-port.c:434,18'
          Dst:             ntohl
        - Src:             'lib/ofp-port.c:435,17'
          Dst:             ntohl
        - Src:             'lib/ofp-port.c:437,16'
          Dst:             netdev_port_features_from_ofp10
        - Src:             'lib/ofp-port.c:438,22'
          Dst:             netdev_port_features_from_ofp10
        - Src:             'lib/ofp-port.c:439,21'
          Dst:             netdev_port_features_from_ofp10
        - Src:             'lib/ofp-port.c:440,16'
          Dst:             netdev_port_features_from_ofp10
        - Src:             'lib/ofp-port.c:442,22'
          Dst:             netdev_features_to_bps
        - Src:             'lib/ofp-port.c:443,21'
          Dst:             netdev_features_to_bps
    - functionName:    ofputil_decode_ofp11_port
      functionSourceFile: '/src/openvswitch/lib/ofp-port.c'
      linkageType:     InternalLinkage
      functionLinenumber: 451
      functionLinenumberEnd: 473
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          110
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - netdev_port_features_from_ofp11
        - ntohl
        - ofputil_port_from_ofp11
        - ovs_strlcpy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-port.c:454,13'
          Dst:             ofputil_port_from_ofp11
        - Src:             'lib/ofp-port.c:459,5'
          Dst:             ovs_strlcpy
        - Src:             'lib/ofp-port.c:461,18'
          Dst:             ntohl
        - Src:             'lib/ofp-port.c:462,17'
          Dst:             ntohl
        - Src:             'lib/ofp-port.c:464,16'
          Dst:             netdev_port_features_from_ofp11
        - Src:             'lib/ofp-port.c:465,22'
          Dst:             netdev_port_features_from_ofp11
        - Src:             'lib/ofp-port.c:466,21'
          Dst:             netdev_port_features_from_ofp11
        - Src:             'lib/ofp-port.c:467,16'
          Dst:             netdev_port_features_from_ofp11
        - Src:             'lib/ofp-port.c:469,22'
          Dst:             ntohl
        - Src:             'lib/ofp-port.c:470,21'
          Dst:             ntohl
    - functionName:    ofputil_pull_ofp14_port
      functionSourceFile: '/src/openvswitch/lib/ofp-port.c'
      linkageType:     InternalLinkage
      functionLinenumber: 531
      functionLinenumberEnd: 554
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          119
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - ntohl
        - ntohs
        - ofpbuf_pull
        - ofpbuf_try_pull
        - ofputil_port_from_ofp11
        - ofputil_pull_ofp14_port_properties
        - ovs_strlcpy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-port.c:532,35'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/ofp-port.c:537,18'
          Dst:             ntohs
        - Src:             'lib/ofp-port.c:543,25'
          Dst:             ofputil_port_from_ofp11
        - Src:             'lib/ofp-port.c:548,5'
          Dst:             ovs_strlcpy
        - Src:             'lib/ofp-port.c:550,18'
          Dst:             ntohl
        - Src:             'lib/ofp-port.c:551,17'
          Dst:             ntohl
        - Src:             'lib/ofp-port.c:553,47'
          Dst:             ofpbuf_pull
        - Src:             'lib/ofp-port.c:553,12'
          Dst:             ofputil_pull_ofp14_port_properties
    - functionName:    compare_ports
      functionSourceFile: '/src/openvswitch/lib/ofp-port.c'
      linkageType:     InternalLinkage
      functionLinenumber: 800
      functionLinenumberEnd: 806
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofp_to_u16
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-port.c:803,19'
          Dst:             ofp_to_u16
        - Src:             'lib/ofp-port.c:804,19'
          Dst:             ofp_to_u16
    - functionName:    ofputil_phy_ports_format
      functionSourceFile: '/src/openvswitch/lib/ofp-port.c'
      linkageType:     InternalLinkage
      functionLinenumber: 814
      functionLinenumberEnd: 839
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - char
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          102
      EdgeCount:       22
      CyclomaticComplexity: 6
      functionsReached:
        - compare_ports
        - ofputil_phy_port_format
        - ofputil_pull_phy_port
        - qsort
        - x2nrealloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-port.c:824,21'
          Dst:             x2nrealloc
        - Src:             'lib/ofp-port.c:827,18'
          Dst:             ofputil_pull_phy_port
        - Src:             'lib/ofp-port.c:833,5'
          Dst:             qsort
        - Src:             'lib/ofp-port.c:833,5'
          Dst:             compare_ports
        - Src:             'lib/ofp-port.c:835,9'
          Dst:             ofputil_phy_port_format
    - 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:    17
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofputil_append_port_desc_stats_reply
      functionSourceFile: '/src/openvswitch/lib/ofp-port.c'
      linkageType:     InternalLinkage
      functionLinenumber: 712
      functionLinenumberEnd: 718
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpbuf_from_list
        - ofpmp_postappend
        - ofpmp_version
        - ofputil_put_phy_port
        - ovs_list_back
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-port.c:713,45'
          Dst:             ovs_list_back
        - Src:             'lib/ofp-port.c:713,28'
          Dst:             ofpbuf_from_list
        - Src:             'lib/ofp-port.c:716,26'
          Dst:             ofpmp_version
        - Src:             'lib/ofp-port.c:716,5'
          Dst:             ofputil_put_phy_port
        - Src:             'lib/ofp-port.c:717,5'
          Dst:             ofpmp_postappend
    - functionName:    ofputil_encode_port_desc_stats_request
      functionSourceFile: '/src/openvswitch/lib/ofp-port.c'
      linkageType:     InternalLinkage
      functionLinenumber: 682
      functionLinenumberEnd: 706
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          68
      EdgeCount:       22
      CyclomaticComplexity: 12
      functionsReached:
        - abort
        - ofpbuf_put_zeros
        - ofpraw_alloc
        - ofputil_port_to_ofp11
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib/ofp-port.c:685,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-port.c:691,19'
          Dst:             ofpraw_alloc
        - Src:             'lib/ofp-port.c:696,19'
          Dst:             ofpraw_alloc
        - Src:             'lib/ofp-port.c:698,15'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-port.c:699,24'
          Dst:             ofputil_port_to_ofp11
        - Src:             'lib/ofp-port.c:703,9'
          Dst:             abort
    - functionName:    ofputil_decode_port_desc_stats_request
      functionSourceFile: '/src/openvswitch/lib/ofp-port.c'
      linkageType:     InternalLinkage
      functionLinenumber: 662
      functionLinenumberEnd: 677
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          60
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - abort
        - ntohs
        - ofpbuf_const_initializer
        - ofpbuf_pull
        - ofpraw_pull_assert
        - ofputil_port_from_ofp11
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-port.c:664,48'
          Dst:             ntohs
        - Src:             'lib/ofp-port.c:663,23'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/ofp-port.c:665,23'
          Dst:             ofpraw_pull_assert
        - Src:             'lib/ofp-port.c:672,22'
          Dst:             ofpbuf_pull
        - Src:             'lib/ofp-port.c:673,16'
          Dst:             ofputil_port_from_ofp11
        - Src:             'lib/ofp-port.c:675,9'
          Dst:             abort
    - functionName:    ovsthread_once_start
      functionSourceFile: '/src/openvswitch/./include/openvswitch/thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsthread_once_start__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/thread.h:161,12'
          Dst:             ovsthread_once_start__
    - functionName:    ofputil_port_to_string
      functionSourceFile: '/src/openvswitch/lib/ofp-port.c'
      linkageType:     InternalLinkage
      functionLinenumber: 270
      functionLinenumberEnd: 287
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          63
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - ds_cstr
        - ds_destroy
        - namemap_put_name
        - ofputil_port_get_reserved_name
        - ofputil_port_map_get_name
        - ovs_strlcpy
        - snprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-port.c:271,33'
          Dst:             ofputil_port_get_reserved_name
        - Src:             'lib/ofp-port.c:273,9'
          Dst:             ovs_strlcpy
        - Src:             'lib/ofp-port.c:277,29'
          Dst:             ofputil_port_map_get_name
        - Src:             'lib/ofp-port.c:280,9'
          Dst:             namemap_put_name
        - Src:             'lib/ofp-port.c:281,30'
          Dst:             ds_cstr
        - Src:             'lib/ofp-port.c:281,9'
          Dst:             ovs_strlcpy
        - Src:             'lib/ofp-port.c:282,9'
          Dst:             ds_destroy
        - Src:             'lib/ofp-port.c:286,5'
          Dst:             snprintf
    - functionName:    ofputil_port_from_string
      functionSourceFile: '/src/openvswitch/lib/ofp-port.c'
      linkageType:     InternalLinkage
      functionLinenumber: 152
      functionLinenumberEnd: 225
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         58
      ICount:          292
      EdgeCount:       75
      CyclomaticComplexity: 19
      functionsReached:
        - json_string_unescape
        - ofp11_to_u32
        - ofp_to_u16
        - ofputil_port_map_get_number
        - ofputil_port_to_string
        - ovsthread_once_done
        - ovsthread_once_start
        - str_to_uint
        - strcasecmp
        - strlen
        - u16_to_ofp
        - vlog
      functionUses:    12
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-port.c:156,9'
          Dst:             vlog
        - Src:             'lib/ofp-port.c:160,9'
          Dst:             str_to_uint
        - Src:             'lib/ofp-port.c:161,22'
          Dst:             ofp_to_u16
        - Src:             'lib/ofp-port.c:163,29'
          Dst:             ofp_to_u16
        - Src:             'lib/ofp-port.c:164,13'
          Dst:             vlog
        - Src:             'lib/ofp-port.c:167,30'
          Dst:             ofp_to_u16
        - Src:             'lib/ofp-port.c:170,36'
          Dst:             u16_to_ofp
        - Src:             'lib/ofp-port.c:170,13'
          Dst:             ofputil_port_to_string
        - Src:             'lib/ofp-port.c:172,13'
          Dst:             ovsthread_once_start
        - Src:             'lib/ofp-port.c:172,13'
          Dst:             vlog
        - Src:             'lib/ofp-port.c:172,13'
          Dst:             ovsthread_once_done
        - Src:             'lib/ofp-port.c:175,29'
          Dst:             ofp11_to_u32
        - Src:             'lib/ofp-port.c:176,13'
          Dst:             ofp11_to_u32
        - Src:             'lib/ofp-port.c:176,13'
          Dst:             vlog
        - Src:             'lib/ofp-port.c:184,18'
          Dst:             u16_to_ofp
        - Src:             'lib/ofp-port.c:199,18'
          Dst:             strcasecmp
        - Src:             'lib/ofp-port.c:207,24'
          Dst:             ofputil_port_map_get_number
        - Src:             'lib/ofp-port.c:209,29'
          Dst:             strlen
        - Src:             'lib/ofp-port.c:213,20'
          Dst:             json_string_unescape
        - Src:             'lib/ofp-port.c:214,28'
          Dst:             ofputil_port_map_get_number
    - 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:    135
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofputil_port_map_get_number
      functionSourceFile: '/src/openvswitch/lib/ofp-port.c'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 67
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          60
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - namemap_find_by_name
        - u16_to_ofp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-port.c:66,17'
          Dst:             namemap_find_by_name
        - Src:             'lib/ofp-port.c:67,39'
          Dst:             u16_to_ofp
    - functionName:    ofputil_port_map_destroy
      functionSourceFile: '/src/openvswitch/lib/ofp-port.c'
      linkageType:     InternalLinkage
      functionLinenumber: 72
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - namemap_destroy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-port.c:73,5'
          Dst:             namemap_destroy
    - functionName:    ofputil_port_map_put
      functionSourceFile: '/src/openvswitch/lib/ofp-port.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 48
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - namemap_put
        - ofp_to_u16
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-port.c:47,28'
          Dst:             ofp_to_u16
        - Src:             'lib/ofp-port.c:47,5'
          Dst:             namemap_put
    - functionName:    ofputil_port_map_init
      functionSourceFile: '/src/openvswitch/lib/ofp-port.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 41
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - namemap_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-port.c:40,5'
          Dst:             namemap_init
    - functionName:    ofpbuf_const_initializer
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 97
      functionLinenumberEnd: 105
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          30
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    13
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofp_print_nxt_ct_flush
      functionSourceFile: '/src/openvswitch/lib/ofp-print.c'
      linkageType:     InternalLinkage
      functionLinenumber: 955
      functionLinenumberEnd: 968
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_format
        - ofp_ct_match_decode
        - ofp_ct_match_format
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-print.c:959,25'
          Dst:             ofp_ct_match_decode
        - Src:             'lib/ofp-print.c:964,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-print.c:965,5'
          Dst:             ofp_ct_match_format
    - functionName:    ofp_print_nxt_ct_flush_zone
      functionSourceFile: '/src/openvswitch/lib/ofp-print.c'
      linkageType:     InternalLinkage
      functionLinenumber: 948
      functionLinenumberEnd: 950
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_format
        - ntohs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-print.c:949,47'
          Dst:             ntohs
        - Src:             'lib/ofp-print.c:949,5'
          Dst:             ds_put_format
    - functionName:    ofp_print_nxst_ipfix_flow_reply
      functionSourceFile: '/src/openvswitch/lib/ofp-print.c'
      linkageType:     InternalLinkage
      functionLinenumber: 930
      functionLinenumberEnd: 942
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ds_put_format
        - ntohs
        - ofpbuf_const_initializer
        - ofputil_count_ipfix_stats
        - ofputil_format_ipfix_stats_flow
        - ofputil_pull_ipfix_stats
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-print.c:931,49'
          Dst:             ofputil_count_ipfix_stats
        - Src:             'lib/ofp-print.c:931,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-print.c:933,52'
          Dst:             ntohs
        - Src:             'lib/ofp-print.c:933,23'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/ofp-print.c:938,18'
          Dst:             ofputil_pull_ipfix_stats
        - Src:             'lib/ofp-print.c:942,9'
          Dst:             ofputil_format_ipfix_stats_flow
    - functionName:    ofp_print_nxst_ipfix_bridge_reply
      functionSourceFile: '/src/openvswitch/lib/ofp-print.c'
      linkageType:     InternalLinkage
      functionLinenumber: 914
      functionLinenumberEnd: 924
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          51
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ntohs
        - ofpbuf_const_initializer
        - ofputil_format_ipfix_stats_bridge
        - ofputil_pull_ipfix_stats
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-print.c:915,52'
          Dst:             ntohs
        - Src:             'lib/ofp-print.c:915,23'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/ofp-print.c:920,18'
          Dst:             ofputil_pull_ipfix_stats
        - Src:             'lib/ofp-print.c:924,9'
          Dst:             ofputil_format_ipfix_stats_bridge
    - functionName:    ofp_print_tlv_table_reply
      functionSourceFile: '/src/openvswitch/lib/ofp-print.c'
      linkageType:     InternalLinkage
      functionLinenumber: 885
      functionLinenumberEnd: 892
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofputil_decode_tlv_table_reply
        - ofputil_format_tlv_table_reply
        - ofputil_uninit_tlv_table
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-print.c:887,17'
          Dst:             ofputil_decode_tlv_table_reply
        - Src:             'lib/ofp-print.c:889,9'
          Dst:             ofputil_format_tlv_table_reply
        - Src:             'lib/ofp-print.c:890,9'
          Dst:             ofputil_uninit_tlv_table
    - functionName:    ofp_print_tlv_table_mod
      functionSourceFile: '/src/openvswitch/lib/ofp-print.c'
      linkageType:     InternalLinkage
      functionLinenumber: 873
      functionLinenumberEnd: 880
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofputil_decode_tlv_table_mod
        - ofputil_format_tlv_table_mod
        - ofputil_uninit_tlv_table
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-print.c:875,17'
          Dst:             ofputil_decode_tlv_table_mod
        - Src:             'lib/ofp-print.c:877,9'
          Dst:             ofputil_format_tlv_table_mod
        - Src:             'lib/ofp-print.c:878,9'
          Dst:             ofputil_uninit_tlv_table
    - functionName:    ofp_print_bundle_add
      functionSourceFile: '/src/openvswitch/lib/ofp-print.c'
      linkageType:     InternalLinkage
      functionLinenumber: 862
      functionLinenumberEnd: 868
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofputil_decode_bundle_add
        - ofputil_format_bundle_add
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-print.c:864,17'
          Dst:             ofputil_decode_bundle_add
        - Src:             'lib/ofp-print.c:866,9'
          Dst:             ofputil_format_bundle_add
    - functionName:    ofp_print_bundle_ctrl
      functionSourceFile: '/src/openvswitch/lib/ofp-print.c'
      linkageType:     InternalLinkage
      functionLinenumber: 845
      functionLinenumberEnd: 855
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofputil_decode_bundle_ctrl
        - ofputil_format_bundle_ctrl_request
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-print.c:849,13'
          Dst:             ofputil_decode_bundle_ctrl
        - Src:             'lib/ofp-print.c:853,5'
          Dst:             ofputil_format_bundle_ctrl_request
    - functionName:    ofp_print_flow_monitor_reply
      functionSourceFile: '/src/openvswitch/lib/ofp-print.c'
      linkageType:     InternalLinkage
      functionLinenumber: 773
      functionLinenumberEnd: 785
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          80
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ntohs
        - ofpbuf_const_initializer
        - ofpbuf_uninit
        - ofputil_decode_flow_update
        - ofputil_flow_update_format
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-print.c:776,52'
          Dst:             ntohs
        - Src:             'lib/ofp-print.c:776,23'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/ofp-print.c:780,22'
          Dst:             ofputil_decode_flow_update
        - Src:             'lib/ofp-print.c:782,13'
          Dst:             ofpbuf_uninit
        - Src:             'lib/ofp-print.c:785,9'
          Dst:             ofputil_flow_update_format
    - functionName:    ofp_print_flow_monitor_request
      functionSourceFile: '/src/openvswitch/lib/ofp-print.c'
      linkageType:     InternalLinkage
      functionLinenumber: 752
      functionLinenumberEnd: 764
      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:
        - ntohs
        - ofpbuf_const_initializer
        - ofputil_decode_flow_monitor_request
        - ofputil_flow_monitor_request_format
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-print.c:753,52'
          Dst:             ntohs
        - Src:             'lib/ofp-print.c:753,23'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/ofp-print.c:758,18'
          Dst:             ofputil_decode_flow_monitor_request
        - Src:             'lib/ofp-print.c:763,9'
          Dst:             ofputil_flow_monitor_request_format
    - functionName:    ofp_print_nxt_flow_monitor_cancel
      functionSourceFile: '/src/openvswitch/lib/ofp-print.c'
      linkageType:     InternalLinkage
      functionLinenumber: 741
      functionLinenumberEnd: 744
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_format
        - ofputil_decode_flow_monitor_cancel
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-print.c:743,19'
          Dst:             ofputil_decode_flow_monitor_cancel
        - Src:             'lib/ofp-print.c:742,5'
          Dst:             ds_put_format
    - functionName:    ofp_print_set_async_config
      functionSourceFile: '/src/openvswitch/lib/ofp-print.c'
      linkageType:     InternalLinkage
      functionLinenumber: 716
      functionLinenumberEnd: 728
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofputil_decode_set_async_config
        - ofputil_format_set_async_config
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-print.c:721,25'
          Dst:             ofputil_decode_set_async_config
        - Src:             'lib/ofp-print.c:726,5'
          Dst:             ofputil_format_set_async_config
    - functionName:    ofp_print_nxt_set_controller_id
      functionSourceFile: '/src/openvswitch/lib/ofp-print.c'
      linkageType:     InternalLinkage
      functionLinenumber: 733
      functionLinenumberEnd: 735
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_format
        - ntohs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-print.c:734,42'
          Dst:             ntohs
        - Src:             'lib/ofp-print.c:734,5'
          Dst:             ds_put_format
    - functionName:    ofp_print_nxt_set_packet_in_format
      functionSourceFile: '/src/openvswitch/lib/ofp-print.c'
      linkageType:     InternalLinkage
      functionLinenumber: 703
      functionLinenumberEnd: 710
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_format
        - ofputil_decode_set_packet_in_format
        - ofputil_packet_in_format_to_string
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-print.c:705,25'
          Dst:             ofputil_decode_set_packet_in_format
        - Src:             'lib/ofp-print.c:708,23'
          Dst:             ofputil_packet_in_format_to_string
        - Src:             'lib/ofp-print.c:707,9'
          Dst:             ds_put_format
    - functionName:    ofp_print_nxt_set_flow_format
      functionSourceFile: '/src/openvswitch/lib/ofp-print.c'
      linkageType:     InternalLinkage
      functionLinenumber: 691
      functionLinenumberEnd: 697
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_format
        - ofputil_decode_nx_set_flow_format
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-print.c:692,31'
          Dst:             ofputil_decode_nx_set_flow_format
        - Src:             'lib/ofp-print.c:693,5'
          Dst:             ds_put_format
    - functionName:    ofp_print_nxt_flow_mod_table_id
      functionSourceFile: '/src/openvswitch/lib/ofp-print.c'
      linkageType:     InternalLinkage
      functionLinenumber: 683
      functionLinenumberEnd: 686
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_format
        - ofputil_decode_nx_flow_mod_table_id
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-print.c:684,19'
          Dst:             ofputil_decode_nx_flow_mod_table_id
        - Src:             'lib/ofp-print.c:685,5'
          Dst:             ds_put_format
    - functionName:    ofp_print_ofpst_port_desc_reply
      functionSourceFile: '/src/openvswitch/lib/ofp-print.c'
      linkageType:     InternalLinkage
      functionLinenumber: 620
      functionLinenumberEnd: 624
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_char
        - ntohs
        - ofpbuf_const_initializer
        - ofpraw_pull_assert
        - ofputil_phy_ports_format
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-print.c:621,52'
          Dst:             ntohs
        - Src:             'lib/ofp-print.c:621,23'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/ofp-print.c:622,5'
          Dst:             ofpraw_pull_assert
        - Src:             'lib/ofp-print.c:623,5'
          Dst:             ds_put_char
        - Src:             'lib/ofp-print.c:624,12'
          Dst:             ofputil_phy_ports_format
    - functionName:    ds_put_char
      functionSourceFile: '/src/openvswitch/./include/openvswitch/dynamic-string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_char__
      functionUses:    12
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/dynamic-string.h:99,9'
          Dst:             ds_put_char__
    - functionName:    ofp_print_ofpst_port_desc_request
      functionSourceFile: '/src/openvswitch/lib/ofp-print.c'
      linkageType:     InternalLinkage
      functionLinenumber: 602
      functionLinenumberEnd: 615
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_cstr
        - ofputil_decode_port_desc_stats_request
        - ofputil_format_port
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-print.c:606,13'
          Dst:             ofputil_decode_port_desc_stats_request
        - Src:             'lib/ofp-print.c:611,5'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-print.c:612,5'
          Dst:             ofputil_format_port
    - functionName:    ofp_print_aggregate_stats_reply
      functionSourceFile: '/src/openvswitch/lib/ofp-print.c'
      linkageType:     InternalLinkage
      functionLinenumber: 514
      functionLinenumberEnd: 522
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofputil_aggregate_stats_format
        - ofputil_decode_aggregate_stats_reply
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-print.c:518,13'
          Dst:             ofputil_decode_aggregate_stats_reply
        - Src:             'lib/ofp-print.c:520,9'
          Dst:             ofputil_aggregate_stats_format
    - functionName:    ofp_print_table_stats_reply
      functionSourceFile: '/src/openvswitch/lib/ofp-print.c'
      linkageType:     InternalLinkage
      functionLinenumber: 570
      functionLinenumberEnd: 595
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          98
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - ntohs
        - ofpbuf_const_initializer
        - ofpraw_pull_assert
        - ofputil_decode_table_stats_reply
        - ofputil_table_features_format
        - ofputil_table_features_format_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-print.c:571,52'
          Dst:             ntohs
        - Src:             'lib/ofp-print.c:571,23'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/ofp-print.c:572,5'
          Dst:             ofpraw_pull_assert
        - Src:             'lib/ofp-print.c:582,18'
          Dst:             ofputil_decode_table_stats_reply
        - Src:             'lib/ofp-print.c:584,13'
          Dst:             ofputil_table_features_format_finish
        - Src:             'lib/ofp-print.c:589,9'
          Dst:             ofputil_table_features_format
    - functionName:    ofp_print_ofpst_port_reply
      functionSourceFile: '/src/openvswitch/lib/ofp-print.c'
      linkageType:     InternalLinkage
      functionLinenumber: 547
      functionLinenumberEnd: 566
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          75
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - ds_put_format
        - netdev_free_custom_stats_counters
        - ntohs
        - ofpbuf_const_initializer
        - ofputil_count_port_stats
        - ofputil_decode_port_stats
        - ofputil_format_port_stats
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-print.c:549,19'
          Dst:             ofputil_count_port_stats
        - Src:             'lib/ofp-print.c:548,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-print.c:554,52'
          Dst:             ntohs
        - Src:             'lib/ofp-print.c:554,23'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/ofp-print.c:559,18'
          Dst:             ofputil_decode_port_stats
        - Src:             'lib/ofp-print.c:563,9'
          Dst:             ofputil_format_port_stats
        - Src:             'lib/ofp-print.c:564,9'
          Dst:             netdev_free_custom_stats_counters
    - functionName:    ofp_print_flow_stats_reply
      functionSourceFile: '/src/openvswitch/lib/ofp-print.c'
      linkageType:     InternalLinkage
      functionLinenumber: 491
      functionLinenumberEnd: 509
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          63
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ds_put_cstr
        - ntohs
        - ofpbuf_const_initializer
        - ofpbuf_init
        - ofpbuf_uninit
        - ofputil_decode_flow_stats_reply
        - ofputil_flow_stats_format
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-print.c:492,52'
          Dst:             ntohs
        - Src:             'lib/ofp-print.c:492,23'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/ofp-print.c:496,5'
          Dst:             ofpbuf_init
        - Src:             'lib/ofp-print.c:500,18'
          Dst:             ofputil_decode_flow_stats_reply
        - Src:             'lib/ofp-print.c:504,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-print.c:505,9'
          Dst:             ofputil_flow_stats_format
        - Src:             'lib/ofp-print.c:507,5'
          Dst:             ofpbuf_uninit
    - functionName:    ofp_print_ofpst_desc_reply
      functionSourceFile: '/src/openvswitch/lib/ofp-print.c'
      linkageType:     InternalLinkage
      functionLinenumber: 455
      functionLinenumberEnd: 470
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_char
        - ds_put_format
        - ofpmsg_body
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-print.c:456,40'
          Dst:             ofpmsg_body
        - Src:             'lib/ofp-print.c:458,5'
          Dst:             ds_put_char
        - Src:             'lib/ofp-print.c:459,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-print.c:461,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-print.c:463,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-print.c:465,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-print.c:467,5'
          Dst:             ds_put_format
    - functionName:    ofp_print_ofpst_port_request
      functionSourceFile: '/src/openvswitch/lib/ofp-print.c'
      linkageType:     InternalLinkage
      functionLinenumber: 528
      functionLinenumberEnd: 541
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_cstr
        - ofputil_decode_port_stats_request
        - ofputil_format_port
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-print.c:532,13'
          Dst:             ofputil_decode_port_stats_request
        - Src:             'lib/ofp-print.c:537,5'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-print.c:538,5'
          Dst:             ofputil_format_port
    - functionName:    ofp_print_flow_stats_request
      functionSourceFile: '/src/openvswitch/lib/ofp-print.c'
      linkageType:     InternalLinkage
      functionLinenumber: 477
      functionLinenumberEnd: 484
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofputil_decode_flow_stats_request
        - ofputil_flow_stats_request_format
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-print.c:479,25'
          Dst:             ofputil_decode_flow_stats_request
        - Src:             'lib/ofp-print.c:482,9'
          Dst:             ofputil_flow_stats_request_format
    - functionName:    ofp_print_meter_features_reply
      functionSourceFile: '/src/openvswitch/lib/ofp-print.c'
      linkageType:     InternalLinkage
      functionLinenumber: 360
      functionLinenumberEnd: 364
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofputil_decode_meter_features
        - ofputil_format_meter_features
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-print.c:362,5'
          Dst:             ofputil_decode_meter_features
        - Src:             'lib/ofp-print.c:363,5'
          Dst:             ofputil_format_meter_features
    - functionName:    ofp_print_meter_config_reply
      functionSourceFile: '/src/openvswitch/lib/ofp-print.c'
      linkageType:     InternalLinkage
      functionLinenumber: 369
      functionLinenumberEnd: 387
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          57
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ds_put_char
        - ntohs
        - ofpbuf_const_initializer
        - ofpbuf_init
        - ofpbuf_uninit
        - ofputil_decode_meter_config
        - ofputil_format_meter_config
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-print.c:370,52'
          Dst:             ntohs
        - Src:             'lib/ofp-print.c:370,23'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/ofp-print.c:374,5'
          Dst:             ofpbuf_init
        - Src:             'lib/ofp-print.c:378,18'
          Dst:             ofputil_decode_meter_config
        - Src:             'lib/ofp-print.c:382,9'
          Dst:             ds_put_char
        - Src:             'lib/ofp-print.c:383,9'
          Dst:             ofputil_format_meter_config
        - Src:             'lib/ofp-print.c:385,5'
          Dst:             ofpbuf_uninit
    - functionName:    ofp_print_meter_stats_reply
      functionSourceFile: '/src/openvswitch/lib/ofp-print.c'
      linkageType:     InternalLinkage
      functionLinenumber: 392
      functionLinenumberEnd: 410
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          57
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ds_put_char
        - ntohs
        - ofpbuf_const_initializer
        - ofpbuf_init
        - ofpbuf_uninit
        - ofputil_decode_meter_stats
        - ofputil_format_meter_stats
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-print.c:393,52'
          Dst:             ntohs
        - Src:             'lib/ofp-print.c:393,23'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/ofp-print.c:397,5'
          Dst:             ofpbuf_init
        - Src:             'lib/ofp-print.c:401,18'
          Dst:             ofputil_decode_meter_stats
        - Src:             'lib/ofp-print.c:405,9'
          Dst:             ds_put_char
        - Src:             'lib/ofp-print.c:406,9'
          Dst:             ofputil_format_meter_stats
        - Src:             'lib/ofp-print.c:408,5'
          Dst:             ofpbuf_uninit
    - functionName:    ofp_print_meter_stats_request
      functionSourceFile: '/src/openvswitch/lib/ofp-print.c'
      linkageType:     InternalLinkage
      functionLinenumber: 347
      functionLinenumberEnd: 355
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_char
        - ofputil_decode_meter_request
        - ofputil_format_meter_id
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-print.c:350,5'
          Dst:             ofputil_decode_meter_request
        - Src:             'lib/ofp-print.c:351,5'
          Dst:             ds_put_char
        - Src:             'lib/ofp-print.c:353,5'
          Dst:             ofputil_format_meter_id
    - functionName:    ofp_print_table_status_message
      functionSourceFile: '/src/openvswitch/lib/ofp-print.c'
      linkageType:     InternalLinkage
      functionLinenumber: 320
      functionLinenumberEnd: 326
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofputil_decode_table_status
        - ofputil_format_table_status
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-print.c:322,25'
          Dst:             ofputil_decode_table_status
        - Src:             'lib/ofp-print.c:324,9'
          Dst:             ofputil_format_table_status
    - functionName:    ofp_print_requestforward
      functionSourceFile: '/src/openvswitch/lib/ofp-print.c'
      linkageType:     InternalLinkage
      functionLinenumber: 901
      functionLinenumberEnd: 909
      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:
        - ofputil_decode_requestforward
        - ofputil_destroy_requestforward
        - ofputil_format_requestforward
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-print.c:903,25'
          Dst:             ofputil_decode_requestforward
        - Src:             'lib/ofp-print.c:905,9'
          Dst:             ofputil_format_requestforward
        - Src:             'lib/ofp-print.c:907,9'
          Dst:             ofputil_destroy_requestforward
    - functionName:    ofp_print_role_status_message
      functionSourceFile: '/src/openvswitch/lib/ofp-print.c'
      linkageType:     InternalLinkage
      functionLinenumber: 672
      functionLinenumberEnd: 678
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofputil_decode_role_status
        - ofputil_format_role_status
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-print.c:674,25'
          Dst:             ofputil_decode_role_status
        - Src:             'lib/ofp-print.c:676,9'
          Dst:             ofputil_format_role_status
    - functionName:    ofp_print_role_message
      functionSourceFile: '/src/openvswitch/lib/ofp-print.c'
      linkageType:     InternalLinkage
      functionLinenumber: 661
      functionLinenumberEnd: 667
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofputil_decode_role_message
        - ofputil_format_role_message
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-print.c:663,25'
          Dst:             ofputil_decode_role_message
        - Src:             'lib/ofp-print.c:665,9'
          Dst:             ofputil_format_role_message
    - functionName:    ofp_print_meter_mod
      functionSourceFile: '/src/openvswitch/lib/ofp-print.c'
      linkageType:     InternalLinkage
      functionLinenumber: 331
      functionLinenumberEnd: 342
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofpbuf_init
        - ofpbuf_uninit
        - ofputil_decode_meter_mod
        - ofputil_format_meter_mod
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-print.c:335,5'
          Dst:             ofpbuf_init
        - Src:             'lib/ofp-print.c:336,25'
          Dst:             ofputil_decode_meter_mod
        - Src:             'lib/ofp-print.c:338,9'
          Dst:             ofputil_format_meter_mod
        - Src:             'lib/ofp-print.c:340,5'
          Dst:             ofpbuf_uninit
    - functionName:    ofp_print_table_mod
      functionSourceFile: '/src/openvswitch/lib/ofp-print.c'
      linkageType:     InternalLinkage
      functionLinenumber: 308
      functionLinenumberEnd: 314
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofputil_decode_table_mod
        - ofputil_table_mod_format
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-print.c:310,25'
          Dst:             ofputil_decode_table_mod
        - Src:             'lib/ofp-print.c:312,9'
          Dst:             ofputil_table_mod_format
    - functionName:    ofp_print_port_mod
      functionSourceFile: '/src/openvswitch/lib/ofp-print.c'
      linkageType:     InternalLinkage
      functionLinenumber: 296
      functionLinenumberEnd: 302
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofputil_decode_port_mod
        - ofputil_port_mod_format
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-print.c:298,25'
          Dst:             ofputil_decode_port_mod
        - Src:             'lib/ofp-print.c:300,9'
          Dst:             ofputil_port_mod_format
    - functionName:    ofp_print_packet_out
      functionSourceFile: '/src/openvswitch/lib/ofp-print.c'
      linkageType:     InternalLinkage
      functionLinenumber: 143
      functionLinenumberEnd: 154
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofpbuf_init
        - ofpbuf_uninit
        - ofputil_decode_packet_out
        - ofputil_packet_out_format
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-print.c:148,5'
          Dst:             ofpbuf_init
        - Src:             'lib/ofp-print.c:149,13'
          Dst:             ofputil_decode_packet_out
        - Src:             'lib/ofp-print.c:151,9'
          Dst:             ofputil_packet_out_format
        - Src:             'lib/ofp-print.c:153,5'
          Dst:             ofpbuf_uninit
    - functionName:    ofp_print_port_status
      functionSourceFile: '/src/openvswitch/lib/ofp-print.c'
      linkageType:     InternalLinkage
      functionLinenumber: 444
      functionLinenumberEnd: 450
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofputil_decode_port_status
        - ofputil_port_status_format
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-print.c:446,25'
          Dst:             ofputil_decode_port_status
        - Src:             'lib/ofp-print.c:448,9'
          Dst:             ofputil_port_status_format
    - functionName:    ofp_print_flow_removed
      functionSourceFile: '/src/openvswitch/lib/ofp-print.c'
      linkageType:     InternalLinkage
      functionLinenumber: 284
      functionLinenumberEnd: 290
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofputil_decode_flow_removed
        - ofputil_flow_removed_format
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-print.c:286,25'
          Dst:             ofputil_decode_flow_removed
        - Src:             'lib/ofp-print.c:288,9'
          Dst:             ofputil_flow_removed_format
    - functionName:    ofp_print_packet_in
      functionSourceFile: '/src/openvswitch/lib/ofp-print.c'
      linkageType:     InternalLinkage
      functionLinenumber: 124
      functionLinenumberEnd: 136
      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:
        - ofputil_decode_packet_in_private
        - ofputil_packet_in_private_destroy
        - ofputil_packet_in_private_format
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-print.c:128,25'
          Dst:             ofputil_decode_packet_in_private
        - Src:             'lib/ofp-print.c:132,9'
          Dst:             ofputil_packet_in_private_format
        - Src:             'lib/ofp-print.c:134,9'
          Dst:             ofputil_packet_in_private_destroy
    - functionName:    ofp_print_set_config
      functionSourceFile: '/src/openvswitch/lib/ofp-print.c'
      linkageType:     InternalLinkage
      functionLinenumber: 208
      functionLinenumberEnd: 218
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofputil_decode_set_config
        - ofputil_switch_config_format
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-print.c:212,13'
          Dst:             ofputil_decode_set_config
        - Src:             'lib/ofp-print.c:216,5'
          Dst:             ofputil_switch_config_format
    - functionName:    ofp_print_get_config_reply
      functionSourceFile: '/src/openvswitch/lib/ofp-print.c'
      linkageType:     InternalLinkage
      functionLinenumber: 222
      functionLinenumberEnd: 226
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofputil_decode_get_config_reply
        - ofputil_switch_config_format
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-print.c:224,5'
          Dst:             ofputil_decode_get_config_reply
        - Src:             'lib/ofp-print.c:225,5'
          Dst:             ofputil_switch_config_format
    - functionName:    ofp_print_switch_features
      functionSourceFile: '/src/openvswitch/lib/ofp-print.c'
      linkageType:     InternalLinkage
      functionLinenumber: 195
      functionLinenumberEnd: 203
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          48
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ntohs
        - ofpbuf_const_initializer
        - ofputil_phy_ports_format
        - ofputil_pull_switch_features
        - ofputil_switch_features_format
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-print.c:197,52'
          Dst:             ntohs
        - Src:             'lib/ofp-print.c:197,23'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/ofp-print.c:198,25'
          Dst:             ofputil_pull_switch_features
        - Src:             'lib/ofp-print.c:200,9'
          Dst:             ofputil_switch_features_format
        - Src:             'lib/ofp-print.c:201,17'
          Dst:             ofputil_phy_ports_format
    - functionName:    ofp_print_echo
      functionSourceFile: '/src/openvswitch/lib/ofp-print.c'
      linkageType:     InternalLinkage
      functionLinenumber: 648
      functionLinenumberEnd: 656
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_format
        - ds_put_hex_dump
        - ntohs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-print.c:649,18'
          Dst:             ntohs
        - Src:             'lib/ofp-print.c:651,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-print.c:653,9'
          Dst:             ds_put_hex_dump
    - functionName:    ofp_print_error_msg
      functionSourceFile: '/src/openvswitch/lib/ofp-print.c'
      linkageType:     InternalLinkage
      functionLinenumber: 430
      functionLinenumberEnd: 440
      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:
        - ofpbuf_uninit
        - ofperr_decode_msg
        - ofperr_msg_format
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-print.c:432,25'
          Dst:             ofperr_decode_msg
        - Src:             'lib/ofp-print.c:436,5'
          Dst:             ofperr_msg_format
        - Src:             'lib/ofp-print.c:437,5'
          Dst:             ofpbuf_uninit
    - functionName:    ofp_print_hello
      functionSourceFile: '/src/openvswitch/lib/ofp-print.c'
      linkageType:     InternalLinkage
      functionLinenumber: 421
      functionLinenumberEnd: 423
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofputil_hello_format
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-print.c:422,5'
          Dst:             ofputil_hello_format
    - functionName:    ofp_print_table_desc_reply
      functionSourceFile: '/src/openvswitch/lib/ofp-print.c'
      linkageType:     InternalLinkage
      functionLinenumber: 829
      functionLinenumberEnd: 839
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          58
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ntohs
        - ofpbuf_const_initializer
        - ofputil_decode_table_desc
        - ofputil_table_desc_format
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-print.c:830,52'
          Dst:             ntohs
        - Src:             'lib/ofp-print.c:830,23'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/ofp-print.c:835,18'
          Dst:             ofputil_decode_table_desc
        - Src:             'lib/ofp-print.c:839,9'
          Dst:             ofputil_table_desc_format
    - functionName:    ofp_print_table_features_reply
      functionSourceFile: '/src/openvswitch/lib/ofp-print.c'
      linkageType:     InternalLinkage
      functionLinenumber: 231
      functionLinenumberEnd: 248
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          82
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - ntohs
        - ofpbuf_const_initializer
        - ofputil_decode_table_features
        - ofputil_table_features_format
        - ofputil_table_features_format_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-print.c:232,52'
          Dst:             ntohs
        - Src:             'lib/ofp-print.c:232,23'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/ofp-print.c:239,22'
          Dst:             ofputil_decode_table_features
        - Src:             'lib/ofp-print.c:241,13'
          Dst:             ofputil_table_features_format_finish
        - Src:             'lib/ofp-print.c:245,9'
          Dst:             ofputil_table_features_format
    - functionName:    ofp_print_stats
      functionSourceFile: '/src/openvswitch/lib/ofp-print.c'
      linkageType:     InternalLinkage
      functionLinenumber: 629
      functionLinenumberEnd: 644
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          89
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - ds_put_cstr
        - ds_put_format
        - ofpmp_flags
        - ofpmsg_is_stat_request
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-print.c:630,22'
          Dst:             ofpmp_flags
        - Src:             'lib/ofp-print.c:633,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-print.c:634,15'
          Dst:             ofpmsg_is_stat_request
        - Src:             'lib/ofp-print.c:636,13'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-print.c:640,13'
          Dst:             ds_put_format
    - functionName:    dp_packet_base
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 750
      functionLinenumberEnd: 751
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __packet_data
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 774
      functionLinenumberEnd: 775
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_l2_pad_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 432
      functionLinenumberEnd: 433
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_tail
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 326
      functionLinenumberEnd: 327
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_data
        - dp_packet_size
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:327,21'
          Dst:             dp_packet_data
        - Src:             'lib/dp-packet.h:327,41'
          Dst:             dp_packet_size
    - functionName:    dp_packet_data
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 845
      functionLinenumberEnd: 847
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __packet_data
        - dp_packet_base
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:846,12'
          Dst:             __packet_data
        - Src:             'lib/dp-packet.h:847,23'
          Dst:             dp_packet_base
        - Src:             'lib/dp-packet.h:847,43'
          Dst:             __packet_data
    - functionName:    dp_packet_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 762
      functionLinenumberEnd: 763
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofp_print_dp_packet
      functionSourceFile: '/src/openvswitch/lib/ofp-print.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1323
      functionLinenumberEnd: 1325
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofp_dp_packet_to_string
        - print_and_free
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-print.c:1324,28'
          Dst:             ofp_dp_packet_to_string
        - Src:             'lib/ofp-print.c:1324,5'
          Dst:             print_and_free
    - functionName:    ofp_dp_packet_to_string
      functionSourceFile: '/src/openvswitch/lib/ofp-print.c'
      linkageType:     InternalLinkage
      functionLinenumber: 114
      functionLinenumberEnd: 117
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_data
        - dp_packet_size
        - ofp_packet_to_string
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-print.c:115,33'
          Dst:             dp_packet_data
        - Src:             'lib/ofp-print.c:116,33'
          Dst:             dp_packet_size
        - Src:             'lib/ofp-print.c:115,12'
          Dst:             ofp_packet_to_string
    - functionName:    print_and_free
      functionSourceFile: '/src/openvswitch/lib/ofp-print.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1295
      functionLinenumberEnd: 1298
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - fputs
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-print.c:1296,5'
          Dst:             fputs
    - functionName:    ofp_packet_to_string
      functionSourceFile: '/src/openvswitch/lib/ofp-print.c'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         32
      ICount:          192
      EdgeCount:       42
      CyclomaticComplexity: 12
      functionsReached:
        - dp_packet_l4
        - dp_packet_l4_size
        - dp_packet_use_const
        - ds_cstr
        - ds_put_char
        - ds_put_format
        - flow_extract
        - flow_format
        - get_16aligned_be32
        - ntohl
        - ntohs
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-print.c:80,5'
          Dst:             dp_packet_use_const
        - Src:             'lib/ofp-print.c:82,5'
          Dst:             flow_extract
        - Src:             'lib/ofp-print.c:83,5'
          Dst:             flow_format
        - Src:             'lib/ofp-print.c:85,15'
          Dst:             dp_packet_l4_size
        - Src:             'lib/ofp-print.c:88,33'
          Dst:             dp_packet_l4
        - Src:             'lib/ofp-print.c:89,49'
          Dst:             ntohs
        - Src:             'lib/ofp-print.c:89,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-print.c:91,33'
          Dst:             dp_packet_l4
        - Src:             'lib/ofp-print.c:92,49'
          Dst:             ntohs
        - Src:             'lib/ofp-print.c:92,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-print.c:94,34'
          Dst:             dp_packet_l4
        - Src:             'lib/ofp-print.c:96,29'
          Dst:             get_16aligned_be32
        - Src:             'lib/ofp-print.c:96,23'
          Dst:             ntohl
        - Src:             'lib/ofp-print.c:95,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-print.c:98,37'
          Dst:             dp_packet_l4
        - Src:             'lib/ofp-print.c:100,23'
          Dst:             ntohs
        - Src:             'lib/ofp-print.c:99,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-print.c:102,39'
          Dst:             dp_packet_l4
        - Src:             'lib/ofp-print.c:104,23'
          Dst:             ntohs
        - Src:             'lib/ofp-print.c:103,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-print.c:107,5'
          Dst:             ds_put_char
        - Src:             'lib/ofp-print.c:109,12'
          Dst:             ds_cstr
    - functionName:    dp_packet_l4_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 502
      functionLinenumberEnd: 505
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_l2_pad_size
        - dp_packet_l4
        - dp_packet_tail
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:504,25'
          Dst:             dp_packet_tail
        - Src:             'lib/dp-packet.h:504,59'
          Dst:             dp_packet_l4
        - Src:             'lib/dp-packet.h:505,11'
          Dst:             dp_packet_l2_pad_size
    - functionName:    dp_packet_l4
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 475
      functionLinenumberEnd: 477
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_data
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:477,23'
          Dst:             dp_packet_data
    - functionName:    get_16aligned_be32
      functionSourceFile: '/src/openvswitch/lib/unaligned.h'
      linkageType:     InternalLinkage
      functionLinenumber: 246
      functionLinenumberEnd: 250
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofp_print_packet
      functionSourceFile: '/src/openvswitch/lib/ofp-print.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1317
      functionLinenumberEnd: 1319
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofp_packet_to_string
        - print_and_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-print.c:1318,28'
          Dst:             ofp_packet_to_string
        - Src:             'lib/ofp-print.c:1318,5'
          Dst:             print_and_free
    - functionName:    ofp_print
      functionSourceFile: '/src/openvswitch/lib/ofp-print.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1307
      functionLinenumberEnd: 1310
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofp_to_string
        - print_and_free
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-print.c:1308,28'
          Dst:             ofp_to_string
        - Src:             'lib/ofp-print.c:1308,5'
          Dst:             print_and_free
    - functionName:    ofp_to_string
      functionSourceFile: '/src/openvswitch/lib/ofp-print.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1229
      functionLinenumberEnd: 1291
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         34
      ICount:          203
      EdgeCount:       44
      CyclomaticComplexity: 12
      functionsReached:
        - add_newline
        - ds_chomp
        - ds_put_char
        - ds_put_cstr
        - ds_put_format
        - ds_put_hex_dump
        - ds_steal_cstr
        - ntohs
        - ofp_header_to_string__
        - ofp_print_error
        - ofp_to_string__
        - ofpraw_decode
        - ofpraw_decode_partial
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-print.c:1234,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-print.c:1236,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-print.c:1238,16'
          Dst:             ntohs
        - Src:             'lib/ofp-print.c:1242,17'
          Dst:             ofpraw_decode_partial
        - Src:             'lib/ofp-print.c:1244,13'
          Dst:             ofp_header_to_string__
        - Src:             'lib/ofp-print.c:1245,13'
          Dst:             ds_put_char
        - Src:             'lib/ofp-print.c:1250,28'
          Dst:             ntohs
        - Src:             'lib/ofp-print.c:1248,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-print.c:1251,16'
          Dst:             ntohs
        - Src:             'lib/ofp-print.c:1254,23'
          Dst:             ntohs
        - Src:             'lib/ofp-print.c:1252,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-print.c:1259,17'
          Dst:             ofpraw_decode
        - Src:             'lib/ofp-print.c:1261,13'
          Dst:             ofp_header_to_string__
        - Src:             'lib/ofp-print.c:1264,21'
          Dst:             ofp_to_string__
        - Src:             'lib/ofp-print.c:1268,21'
          Dst:             ds_chomp
        - Src:             'lib/ofp-print.c:1269,21'
          Dst:             add_newline
        - Src:             'lib/ofp-print.c:1271,21'
          Dst:             ds_put_char
        - Src:             'lib/ofp-print.c:1273,17'
          Dst:             ofp_print_error
        - Src:             'lib/ofp-print.c:1275,17'
          Dst:             ds_chomp
        - Src:             'lib/ofp-print.c:1278,13'
          Dst:             ofp_print_error
        - Src:             'lib/ofp-print.c:1282,13'
          Dst:             add_newline
        - Src:             'lib/ofp-print.c:1283,13'
          Dst:             ds_put_hex_dump
        - Src:             'lib/ofp-print.c:1286,9'
          Dst:             add_newline
        - Src:             'lib/ofp-print.c:1287,16'
          Dst:             ds_steal_cstr
        - Src:             'lib/ofp-print.c:1289,5'
          Dst:             ds_put_hex_dump
        - Src:             'lib/ofp-print.c:1290,12'
          Dst:             ds_steal_cstr
    - functionName:    ofp_header_to_string__
      functionSourceFile: '/src/openvswitch/lib/ofp-print.c'
      linkageType:     InternalLinkage
      functionLinenumber: 821
      functionLinenumberEnd: 824
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_cstr
        - ofp_print_version
        - ofpraw_get_name
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-print.c:822,25'
          Dst:             ofpraw_get_name
        - Src:             'lib/ofp-print.c:822,5'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-print.c:823,5'
          Dst:             ofp_print_version
    - functionName:    ofp_to_string__
      functionSourceFile: '/src/openvswitch/lib/ofp-print.c'
      linkageType:     InternalLinkage
      functionLinenumber: 975
      functionLinenumberEnd: 1210
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         101
      ICount:          684
      EdgeCount:       101
      CyclomaticComplexity: 2
      functionsReached:
        - ofp_print_aggregate_stats_reply
        - ofp_print_bundle_add
        - ofp_print_bundle_ctrl
        - ofp_print_echo
        - ofp_print_error_msg
        - ofp_print_flow_monitor_reply
        - ofp_print_flow_monitor_request
        - ofp_print_flow_removed
        - ofp_print_flow_stats_reply
        - ofp_print_flow_stats_request
        - ofp_print_get_config_reply
        - ofp_print_hello
        - ofp_print_meter_config_reply
        - ofp_print_meter_features_reply
        - ofp_print_meter_mod
        - ofp_print_meter_stats_reply
        - ofp_print_meter_stats_request
        - ofp_print_nxst_ipfix_bridge_reply
        - ofp_print_nxst_ipfix_flow_reply
        - ofp_print_nxt_ct_flush
        - ofp_print_nxt_ct_flush_zone
        - ofp_print_nxt_flow_mod_table_id
        - ofp_print_nxt_flow_monitor_cancel
        - ofp_print_nxt_set_controller_id
        - ofp_print_nxt_set_flow_format
        - ofp_print_nxt_set_packet_in_format
        - ofp_print_ofpst_desc_reply
        - ofp_print_ofpst_port_desc_reply
        - ofp_print_ofpst_port_desc_request
        - ofp_print_ofpst_port_reply
        - ofp_print_ofpst_port_request
        - ofp_print_packet_in
        - ofp_print_packet_out
        - ofp_print_port_mod
        - ofp_print_port_status
        - ofp_print_requestforward
        - ofp_print_role_message
        - ofp_print_role_status_message
        - ofp_print_set_async_config
        - ofp_print_set_config
        - ofp_print_stats
        - ofp_print_switch_features
        - ofp_print_table_desc_reply
        - ofp_print_table_features_reply
        - ofp_print_table_mod
        - ofp_print_table_stats_reply
        - ofp_print_table_status_message
        - ofp_print_tlv_table_mod
        - ofp_print_tlv_table_reply
        - ofpmsg_body
        - ofpmsg_is_stat
        - ofptype_from_ofpraw
        - ofputil_flow_mod_format
        - ofputil_group_desc_format
        - ofputil_group_desc_request_format
        - ofputil_group_features_format
        - ofputil_group_mod_format
        - ofputil_group_stats_format
        - ofputil_group_stats_request_format
        - ofputil_queue_get_config_reply_format
        - ofputil_queue_get_config_request_format
        - ofputil_queue_stats_reply_format
        - ofputil_queue_stats_request_format
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-print.c:982,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-print.c:976,9'
          Dst:             ofpmsg_is_stat
        - Src:             'lib/ofp-print.c:977,9'
          Dst:             ofp_print_stats
        - Src:             'lib/ofp-print.c:981,25'
          Dst:             ofptype_from_ofpraw
        - Src:             'lib/ofp-print.c:984,16'
          Dst:             ofputil_group_stats_request_format
        - Src:             'lib/ofp-print.c:987,16'
          Dst:             ofputil_group_stats_format
        - Src:             'lib/ofp-print.c:990,16'
          Dst:             ofputil_group_desc_request_format
        - Src:             'lib/ofp-print.c:993,16'
          Dst:             ofputil_group_desc_format
        - Src:             'lib/ofp-print.c:999,16'
          Dst:             ofputil_group_features_format
        - Src:             'lib/ofp-print.c:1002,16'
          Dst:             ofputil_group_mod_format
        - Src:             'lib/ofp-print.c:1006,16'
          Dst:             ofp_print_table_features_reply
        - Src:             'lib/ofp-print.c:1010,16'
          Dst:             ofp_print_table_desc_reply
        - Src:             'lib/ofp-print.c:1013,16'
          Dst:             ofp_print_hello
        - Src:             'lib/ofp-print.c:1016,16'
          Dst:             ofp_print_error_msg
        - Src:             'lib/ofp-print.c:1020,16'
          Dst:             ofp_print_echo
        - Src:             'lib/ofp-print.c:1026,16'
          Dst:             ofp_print_switch_features
        - Src:             'lib/ofp-print.c:1032,16'
          Dst:             ofp_print_get_config_reply
        - Src:             'lib/ofp-print.c:1035,16'
          Dst:             ofp_print_set_config
        - Src:             'lib/ofp-print.c:1038,16'
          Dst:             ofp_print_packet_in
        - Src:             'lib/ofp-print.c:1041,16'
          Dst:             ofp_print_flow_removed
        - Src:             'lib/ofp-print.c:1044,16'
          Dst:             ofp_print_port_status
        - Src:             'lib/ofp-print.c:1047,16'
          Dst:             ofp_print_packet_out
        - Src:             'lib/ofp-print.c:1051,16'
          Dst:             ofputil_flow_mod_format
        - Src:             'lib/ofp-print.c:1055,16'
          Dst:             ofp_print_port_mod
        - Src:             'lib/ofp-print.c:1058,16'
          Dst:             ofp_print_table_mod
        - Src:             'lib/ofp-print.c:1061,16'
          Dst:             ofp_print_meter_mod
        - Src:             'lib/ofp-print.c:1068,16'
          Dst:             ofputil_queue_get_config_request_format
        - Src:             'lib/ofp-print.c:1071,16'
          Dst:             ofputil_queue_get_config_reply_format
        - Src:             'lib/ofp-print.c:1075,16'
          Dst:             ofp_print_role_message
        - Src:             'lib/ofp-print.c:1077,16'
          Dst:             ofp_print_role_status_message
        - Src:             'lib/ofp-print.c:1080,16'
          Dst:             ofp_print_requestforward
        - Src:             'lib/ofp-print.c:1083,16'
          Dst:             ofp_print_table_status_message
        - Src:             'lib/ofp-print.c:1087,16'
          Dst:             ofp_print_meter_stats_request
        - Src:             'lib/ofp-print.c:1090,16'
          Dst:             ofp_print_meter_stats_reply
        - Src:             'lib/ofp-print.c:1093,16'
          Dst:             ofp_print_meter_config_reply
        - Src:             'lib/ofp-print.c:1096,16'
          Dst:             ofp_print_meter_features_reply
        - Src:             'lib/ofp-print.c:1104,16'
          Dst:             ofp_print_flow_stats_request
        - Src:             'lib/ofp-print.c:1110,16'
          Dst:             ofp_print_ofpst_port_request
        - Src:             'lib/ofp-print.c:1113,16'
          Dst:             ofputil_queue_stats_request_format
        - Src:             'lib/ofp-print.c:1116,16'
          Dst:             ofp_print_ofpst_desc_reply
        - Src:             'lib/ofp-print.c:1119,16'
          Dst:             ofp_print_flow_stats_reply
        - Src:             'lib/ofp-print.c:1122,16'
          Dst:             ofputil_queue_stats_reply_format
        - Src:             'lib/ofp-print.c:1126,16'
          Dst:             ofp_print_ofpst_port_reply
        - Src:             'lib/ofp-print.c:1129,16'
          Dst:             ofp_print_table_stats_reply
        - Src:             'lib/ofp-print.c:1132,16'
          Dst:             ofp_print_aggregate_stats_reply
        - Src:             'lib/ofp-print.c:1135,16'
          Dst:             ofp_print_ofpst_port_desc_request
        - Src:             'lib/ofp-print.c:1138,16'
          Dst:             ofp_print_ofpst_port_desc_reply
        - Src:             'lib/ofp-print.c:1141,16'
          Dst:             ofp_print_nxt_flow_mod_table_id
        - Src:             'lib/ofp-print.c:1144,16'
          Dst:             ofp_print_nxt_set_flow_format
        - Src:             'lib/ofp-print.c:1147,16'
          Dst:             ofp_print_nxt_set_packet_in_format
        - Src:             'lib/ofp-print.c:1153,56'
          Dst:             ofpmsg_body
        - Src:             'lib/ofp-print.c:1153,16'
          Dst:             ofp_print_nxt_set_controller_id
        - Src:             'lib/ofp-print.c:1157,16'
          Dst:             ofp_print_set_async_config
        - Src:             'lib/ofp-print.c:1161,16'
          Dst:             ofp_print_nxt_flow_monitor_cancel
        - Src:             'lib/ofp-print.c:1168,16'
          Dst:             ofp_print_flow_monitor_request
        - Src:             'lib/ofp-print.c:1172,16'
          Dst:             ofp_print_flow_monitor_reply
        - Src:             'lib/ofp-print.c:1176,16'
          Dst:             ofp_print_bundle_ctrl
        - Src:             'lib/ofp-print.c:1179,16'
          Dst:             ofp_print_bundle_add
        - Src:             'lib/ofp-print.c:1183,16'
          Dst:             ofp_print_tlv_table_mod
        - Src:             'lib/ofp-print.c:1189,16'
          Dst:             ofp_print_tlv_table_reply
        - Src:             'lib/ofp-print.c:1192,16'
          Dst:             ofp_print_packet_in
        - Src:             'lib/ofp-print.c:1197,16'
          Dst:             ofp_print_nxst_ipfix_bridge_reply
        - Src:             'lib/ofp-print.c:1201,16'
          Dst:             ofp_print_nxst_ipfix_flow_reply
        - Src:             'lib/ofp-print.c:1204,52'
          Dst:             ofpmsg_body
        - Src:             'lib/ofp-print.c:1204,16'
          Dst:             ofp_print_nxt_ct_flush_zone
        - Src:             'lib/ofp-print.c:1206,16'
          Dst:             ofp_print_nxt_ct_flush
    - functionName:    add_newline
      functionSourceFile: '/src/openvswitch/lib/ofp-print.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1214
      functionLinenumberEnd: 1218
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          46
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - ds_put_char
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-print.c:1216,9'
          Dst:             ds_put_char
    - functionName:    ofp_print_error
      functionSourceFile: '/src/openvswitch/lib/ofp-print.c'
      linkageType:     InternalLinkage
      functionLinenumber: 415
      functionLinenumberEnd: 417
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_format
        - ofperr_get_name
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-print.c:416,55'
          Dst:             ofperr_get_name
        - Src:             'lib/ofp-print.c:416,5'
          Dst:             ds_put_format
    - functionName:    ofp_print_version
      functionSourceFile: '/src/openvswitch/lib/ofp-print.c'
      linkageType:     InternalLinkage
      functionLinenumber: 792
      functionLinenumberEnd: 816
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          72
      EdgeCount:       21
      CyclomaticComplexity: 12
      functionsReached:
        - ds_put_cstr
        - ds_put_format
        - ntohl
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-print.c:793,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-print.c:797,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-print.c:800,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-print.c:803,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-print.c:806,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-print.c:809,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-print.c:812,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-print.c:815,50'
          Dst:             ntohl
        - Src:             'lib/ofp-print.c:815,5'
          Dst:             ds_put_format
    - functionName:    ofp_print_duration
      functionSourceFile: '/src/openvswitch/lib/ofp-print.c'
      linkageType:     InternalLinkage
      functionLinenumber: 253
      functionLinenumberEnd: 278
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          77
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - ds_put_char
        - ds_put_format
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-print.c:254,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-print.c:269,13'
          Dst:             ds_put_format
        - Src:             'lib/ofp-print.c:271,13'
          Dst:             ds_put_format
        - Src:             'lib/ofp-print.c:277,5'
          Dst:             ds_put_char
    - functionName:    ofp_print_bit_names
      functionSourceFile: '/src/openvswitch/lib/ofp-print.c'
      linkageType:     InternalLinkage
      functionLinenumber: 161
      functionLinenumberEnd: 191
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          128
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - ds_put_char
        - ds_put_cstr
        - ds_put_format
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-print.c:166,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-print.c:177,21'
          Dst:             ds_put_char
        - Src:             'lib/ofp-print.c:179,17'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-print.c:187,13'
          Dst:             ds_put_char
        - Src:             'lib/ofp-print.c:189,9'
          Dst:             ds_put_format
    - functionName:    raw_ctz
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 261
      functionLinenumberEnd: 267
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          36
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ctz64
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 291
      functionLinenumberEnd: 292
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          28
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - raw_ctz
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.h:292,16'
          Dst:             raw_ctz
    - functionName:    ofpbuf_tail
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 203
      functionLinenumberEnd: 205
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          56
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:204,5'
          Dst:             ovs_ignore
    - functionName:    ofpprop_unknown
      functionSourceFile: '/src/openvswitch/lib/ofp-prop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 528
      functionLinenumberEnd: 549
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          71
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ofpprop_is_experimenter
        - ofpprop_type_to_exp_id
        - ofpprop_type_to_exp_type
        - vlog_rate_limit
      functionUses:    14
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-prop.c:529,28'
          Dst:             ofpprop_is_experimenter
        - Src:             'lib/ofp-prop.c:534,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-prop.c:540,25'
          Dst:             ofpprop_type_to_exp_id
        - Src:             'lib/ofp-prop.c:541,25'
          Dst:             ofpprop_type_to_exp_type
        - Src:             'lib/ofp-prop.c:537,9'
          Dst:             vlog_rate_limit
    - functionName:    ofpprop_is_experimenter
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-prop.h'
      linkageType:     InternalLinkage
      functionLinenumber: 73
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofpprop_type_to_exp_id
      functionSourceFile: '/src/openvswitch/lib/ofp-prop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45
      functionLinenumberEnd: 46
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofpprop_type_to_exp_type
      functionSourceFile: '/src/openvswitch/lib/ofp-prop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofpbuf_at_assert
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 195
      functionLinenumberEnd: 198
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:196,5'
          Dst:             ovs_ignore
        - Src:             './include/openvswitch/ofpbuf.h:197,5'
          Dst:             ovs_ignore
    - functionName:    ofpprop_start_nested
      functionSourceFile: '/src/openvswitch/lib/ofp-prop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 519
      functionLinenumberEnd: 522
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpbuf_padto
        - ofpprop_start
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-prop.c:520,24'
          Dst:             ofpprop_start
        - Src:             'lib/ofp-prop.c:521,5'
          Dst:             ofpbuf_padto
    - functionName:    ofpprop_start
      functionSourceFile: '/src/openvswitch/lib/ofp-prop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 478
      functionLinenumberEnd: 492
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          71
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
        - htons
        - ofpbuf_put_uninit
        - ofpprop_is_experimenter
        - ofpprop_type_to_exp_id
        - ofpprop_type_to_exp_type
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-prop.c:480,10'
          Dst:             ofpprop_is_experimenter
        - Src:             'lib/ofp-prop.c:481,39'
          Dst:             ofpbuf_put_uninit
        - Src:             'lib/ofp-prop.c:482,21'
          Dst:             htons
        - Src:             'lib/ofp-prop.c:483,20'
          Dst:             htons
        - Src:             'lib/ofp-prop.c:486,15'
          Dst:             ofpbuf_put_uninit
        - Src:             'lib/ofp-prop.c:487,21'
          Dst:             htons
        - Src:             'lib/ofp-prop.c:488,20'
          Dst:             htons
        - Src:             'lib/ofp-prop.c:489,35'
          Dst:             ofpprop_type_to_exp_id
        - Src:             'lib/ofp-prop.c:489,29'
          Dst:             htonl
        - Src:             'lib/ofp-prop.c:490,31'
          Dst:             ofpprop_type_to_exp_type
        - Src:             'lib/ofp-prop.c:490,25'
          Dst:             htonl
    - functionName:    ofpprop_put_nested
      functionSourceFile: '/src/openvswitch/lib/ofp-prop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 466
      functionLinenumberEnd: 470
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpbuf_put
        - ofpprop_end
        - ofpprop_start_nested
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-prop.c:467,20'
          Dst:             ofpprop_start_nested
        - Src:             'lib/ofp-prop.c:468,5'
          Dst:             ofpbuf_put
        - Src:             'lib/ofp-prop.c:469,5'
          Dst:             ofpprop_end
    - functionName:    ofpprop_end
      functionSourceFile: '/src/openvswitch/lib/ofp-prop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 501
      functionLinenumberEnd: 507
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          40
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htons
        - ofpbuf_at_assert
        - ofpbuf_padto
      functionUses:    13
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-prop.c:504,11'
          Dst:             ofpbuf_at_assert
        - Src:             'lib/ofp-prop.c:505,16'
          Dst:             htons
        - Src:             'lib/ofp-prop.c:506,5'
          Dst:             ofpbuf_padto
    - functionName:    ofpprop_put_uuid
      functionSourceFile: '/src/openvswitch/lib/ofp-prop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 456
      functionLinenumberEnd: 458
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpprop_put
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-prop.c:457,5'
          Dst:             ofpprop_put
    - functionName:    ofpprop_put
      functionSourceFile: '/src/openvswitch/lib/ofp-prop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 323
      functionLinenumberEnd: 327
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpbuf_put
        - ofpprop_end
        - ofpprop_start
      functionUses:    12
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-prop.c:324,24'
          Dst:             ofpprop_start
        - Src:             'lib/ofp-prop.c:325,5'
          Dst:             ofpbuf_put
        - Src:             'lib/ofp-prop.c:326,5'
          Dst:             ofpprop_end
    - functionName:    ofpprop_put_flag
      functionSourceFile: '/src/openvswitch/lib/ofp-prop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 447
      functionLinenumberEnd: 450
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpprop_end
        - ofpprop_start
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-prop.c:448,20'
          Dst:             ofpprop_start
        - Src:             'lib/ofp-prop.c:449,5'
          Dst:             ofpprop_end
    - functionName:    zero_rightmost_1bit
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 390
      functionLinenumberEnd: 391
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rightmost_1bit_idx
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 398
      functionLinenumberEnd: 399
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ctz64
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.h:399,12'
          Dst:             ctz64
    - functionName:    ofpprop_put_bitmap
      functionSourceFile: '/src/openvswitch/lib/ofp-prop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 433
      functionLinenumberEnd: 440
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          46
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - ofpprop_end
        - ofpprop_start
        - rightmost_1bit_idx
        - zero_rightmost_1bit
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-prop.c:434,24'
          Dst:             ofpprop_start
        - Src:             'lib/ofp-prop.c:437,28'
          Dst:             rightmost_1bit_idx
        - Src:             'lib/ofp-prop.c:437,9'
          Dst:             ofpprop_start
        - Src:             'lib/ofp-prop.c:436,29'
          Dst:             zero_rightmost_1bit
        - Src:             'lib/ofp-prop.c:439,5'
          Dst:             ofpprop_end
    - functionName:    hton128
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 48
      functionLinenumberEnd: 53
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonll
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byte-order.h:51,19'
          Dst:             htonll
        - Src:             'lib/byte-order.h:52,19'
          Dst:             htonll
    - functionName:    htonll
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 30
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byte-order.h:30,12'
          Dst:             htonl
        - Src:             'lib/byte-order.h:30,44'
          Dst:             htonl
        - Src:             'lib/byte-order.h:30,62'
          Dst:             htonl
    - functionName:    ofpprop_put_u128
      functionSourceFile: '/src/openvswitch/lib/ofp-prop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 425
      functionLinenumberEnd: 427
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          40
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hton128
        - ofpprop_put_be128
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-prop.c:426,34'
          Dst:             hton128
        - Src:             'lib/ofp-prop.c:426,5'
          Dst:             ofpprop_put_be128
    - functionName:    ofpprop_put_be128
      functionSourceFile: '/src/openvswitch/lib/ofp-prop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 388
      functionLinenumberEnd: 390
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpprop_put
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-prop.c:389,5'
          Dst:             ofpprop_put
    - functionName:    ofpprop_put_u64
      functionSourceFile: '/src/openvswitch/lib/ofp-prop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 418
      functionLinenumberEnd: 420
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonll
        - ofpprop_put_be64
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-prop.c:419,33'
          Dst:             htonll
        - Src:             'lib/ofp-prop.c:419,5'
          Dst:             ofpprop_put_be64
    - functionName:    ofpprop_put_be64
      functionSourceFile: '/src/openvswitch/lib/ofp-prop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 378
      functionLinenumberEnd: 383
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpbuf_put
        - ofpbuf_put_zeros
        - ofpprop_end
        - ofpprop_start
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-prop.c:379,20'
          Dst:             ofpprop_start
        - Src:             'lib/ofp-prop.c:380,5'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-prop.c:381,5'
          Dst:             ofpbuf_put
        - Src:             'lib/ofp-prop.c:382,5'
          Dst:             ofpprop_end
    - functionName:    ofpprop_put_u32
      functionSourceFile: '/src/openvswitch/lib/ofp-prop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 411
      functionLinenumberEnd: 413
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
        - ofpprop_put_be32
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-prop.c:412,33'
          Dst:             htonl
        - Src:             'lib/ofp-prop.c:412,5'
          Dst:             ofpprop_put_be32
    - functionName:    ofpprop_put_be32
      functionSourceFile: '/src/openvswitch/lib/ofp-prop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 371
      functionLinenumberEnd: 373
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpprop_put
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-prop.c:372,5'
          Dst:             ofpprop_put
    - functionName:    ofpprop_put_u16
      functionSourceFile: '/src/openvswitch/lib/ofp-prop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 404
      functionLinenumberEnd: 406
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htons
        - ofpprop_put_be16
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-prop.c:405,33'
          Dst:             htons
        - Src:             'lib/ofp-prop.c:405,5'
          Dst:             ofpprop_put_be16
    - functionName:    ofpprop_put_be16
      functionSourceFile: '/src/openvswitch/lib/ofp-prop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 354
      functionLinenumberEnd: 366
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofpprop_is_experimenter
        - ofpprop_put
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-prop.c:355,10'
          Dst:             ofpprop_is_experimenter
        - Src:             'lib/ofp-prop.c:360,9'
          Dst:             ofpprop_put
        - Src:             'lib/ofp-prop.c:364,9'
          Dst:             ofpprop_put
    - functionName:    ofpprop_put_u8
      functionSourceFile: '/src/openvswitch/lib/ofp-prop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 395
      functionLinenumberEnd: 399
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpprop_put
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-prop.c:398,5'
          Dst:             ofpprop_put
    - functionName:    ofpprop_put_zeros
      functionSourceFile: '/src/openvswitch/lib/ofp-prop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 335
      functionLinenumberEnd: 348
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          77
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
        - htons
        - ofpbuf_put_zeros
        - ofpprop_is_experimenter
        - ofpprop_type_to_exp_id
        - ofpprop_type_to_exp_type
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-prop.c:336,20'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-prop.c:337,10'
          Dst:             ofpprop_is_experimenter
        - Src:             'lib/ofp-prop.c:339,21'
          Dst:             htons
        - Src:             'lib/ofp-prop.c:340,20'
          Dst:             htons
        - Src:             'lib/ofp-prop.c:343,21'
          Dst:             htons
        - Src:             'lib/ofp-prop.c:344,20'
          Dst:             htons
        - Src:             'lib/ofp-prop.c:345,35'
          Dst:             ofpprop_type_to_exp_id
        - Src:             'lib/ofp-prop.c:345,29'
          Dst:             htonl
        - Src:             'lib/ofp-prop.c:346,31'
          Dst:             ofpprop_type_to_exp_type
        - Src:             'lib/ofp-prop.c:346,25'
          Dst:             htonl
    - functionName:    ofpprop_parse_nested
      functionSourceFile: '/src/openvswitch/lib/ofp-prop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 308
      functionLinenumberEnd: 317
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofpbuf_headersize
        - ofpbuf_pull
        - ofpbuf_use_const
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-prop.c:309,28'
          Dst:             ofpbuf_headersize
        - Src:             'lib/ofp-prop.c:314,5'
          Dst:             ofpbuf_use_const
        - Src:             'lib/ofp-prop.c:315,5'
          Dst:             ofpbuf_pull
    - functionName:    ofpbuf_headersize
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 236
      functionLinenumberEnd: 237
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofpbuf_pull
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 258
      functionLinenumberEnd: 269
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          64
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:259,5'
          Dst:             ovs_ignore
    - functionName:    ofpprop_parse_uuid
      functionSourceFile: '/src/openvswitch/lib/ofp-prop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 289
      functionLinenumberEnd: 296
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofpbuf_msgsize
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-prop.c:291,9'
          Dst:             ofpbuf_msgsize
    - functionName:    ofpbuf_msgsize
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 244
      functionLinenumberEnd: 245
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpbuf_tail
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:245,20'
          Dst:             ofpbuf_tail
    - functionName:    ntoh128
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 58
      functionLinenumberEnd: 63
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohll
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byte-order.h:61,18'
          Dst:             ntohll
        - Src:             'lib/byte-order.h:62,18'
          Dst:             ntohll
    - functionName:    ntohll
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
        - ntohl
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byte-order.h:36,12'
          Dst:             htonl
        - Src:             'lib/byte-order.h:36,44'
          Dst:             ntohl
        - Src:             'lib/byte-order.h:36,62'
          Dst:             ntohl
    - functionName:    ofpprop_parse_u128
      functionSourceFile: '/src/openvswitch/lib/ofp-prop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 274
      functionLinenumberEnd: 281
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ntoh128
        - ofpprop_parse_be128
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-prop.c:275,25'
          Dst:             ofpprop_parse_be128
        - Src:             'lib/ofp-prop.c:278,18'
          Dst:             ntoh128
    - functionName:    ofpprop_parse_be128
      functionSourceFile: '/src/openvswitch/lib/ofp-prop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 193
      functionLinenumberEnd: 201
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - get_32aligned_be128
        - ofpbuf_msgsize
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-prop.c:196,9'
          Dst:             ofpbuf_msgsize
        - Src:             'lib/ofp-prop.c:199,14'
          Dst:             get_32aligned_be128
    - functionName:    get_32aligned_be128
      functionSourceFile: '/src/openvswitch/lib/unaligned.h'
      linkageType:     InternalLinkage
      functionLinenumber: 294
      functionLinenumberEnd: 300
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          33
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofpprop_parse_u64
      functionSourceFile: '/src/openvswitch/lib/ofp-prop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 257
      functionLinenumberEnd: 267
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          55
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ntohll
        - ofpbuf_headersize
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-prop.c:259,26'
          Dst:             ofpbuf_headersize
        - Src:             'lib/ofp-prop.c:265,14'
          Dst:             ntohll
    - functionName:    ofpprop_parse_u32
      functionSourceFile: '/src/openvswitch/lib/ofp-prop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 243
      functionLinenumberEnd: 250
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ntohl
        - ofpbuf_msgsize
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-prop.c:245,9'
          Dst:             ofpbuf_msgsize
        - Src:             'lib/ofp-prop.c:248,14'
          Dst:             ntohl
    - functionName:    ofpprop_parse_u16
      functionSourceFile: '/src/openvswitch/lib/ofp-prop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 226
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ntohs
        - ofpbuf_msgsize
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-prop.c:231,9'
          Dst:             ofpbuf_msgsize
        - Src:             'lib/ofp-prop.c:234,14'
          Dst:             ntohs
    - functionName:    ofpprop_parse_u8
      functionSourceFile: '/src/openvswitch/lib/ofp-prop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 208
      functionLinenumberEnd: 219
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofpbuf_msgsize
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-prop.c:214,9'
          Dst:             ofpbuf_msgsize
    - functionName:    ofpprop_parse_be64
      functionSourceFile: '/src/openvswitch/lib/ofp-prop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 176
      functionLinenumberEnd: 186
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofpbuf_headersize
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-prop.c:178,26'
          Dst:             ofpbuf_headersize
    - functionName:    ofpprop_parse_be32
      functionSourceFile: '/src/openvswitch/lib/ofp-prop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 162
      functionLinenumberEnd: 169
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofpbuf_msgsize
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-prop.c:164,9'
          Dst:             ofpbuf_msgsize
    - functionName:    ofpprop_parse_be16
      functionSourceFile: '/src/openvswitch/lib/ofp-prop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 145
      functionLinenumberEnd: 155
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofpbuf_msgsize
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-prop.c:150,9'
          Dst:             ofpbuf_msgsize
    - functionName:    ofpprop_pull
      functionSourceFile: '/src/openvswitch/lib/ofp-prop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 136
      functionLinenumberEnd: 137
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpprop_pull__
      functionUses:    14
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-prop.c:137,12'
          Dst:             ofpprop_pull__
    - functionName:    ofpprop_pull__
      functionSourceFile: '/src/openvswitch/lib/ofp-prop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 75
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          187
      EdgeCount:       28
      CyclomaticComplexity: 9
      functionsReached:
        - ntohl
        - ntohs
        - ofpbuf_pull
        - ofpbuf_use_const
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-prop.c:85,11'
          Dst:             ntohs
        - Src:             'lib/ofp-prop.c:91,21'
          Dst:             ntohs
        - Src:             'lib/ofp-prop.c:106,18'
          Dst:             ntohl
        - Src:             'lib/ofp-prop.c:106,18'
          Dst:             ntohl
        - Src:             'lib/ofp-prop.c:110,9'
          Dst:             ofpbuf_use_const
        - Src:             'lib/ofp-prop.c:117,5'
          Dst:             ofpbuf_pull
    - functionName:    init_this_module_ofp_protocol
      functionSourceFile: '/src/openvswitch/lib/ofp-protocol.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27
      functionLinenumberEnd: 27
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-protocol.c:27,1'
          Dst:             vlog_insert_module
    - functionName:    raw_ctz
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 261
      functionLinenumberEnd: 267
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          36
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ctz64
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 291
      functionLinenumberEnd: 292
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          28
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - raw_ctz
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.h:292,16'
          Dst:             raw_ctz
    - functionName:    ofputil_decode_nx_flow_mod_table_id
      functionSourceFile: '/src/openvswitch/lib/ofp-protocol.c'
      linkageType:     InternalLinkage
      functionLinenumber: 712
      functionLinenumberEnd: 716
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohs
        - ofpbuf_const_initializer
        - ofpbuf_pull
        - ofpraw_pull_assert
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-protocol.c:713,52'
          Dst:             ntohs
        - Src:             'lib/ofp-protocol.c:713,23'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/ofp-protocol.c:714,16'
          Dst:             ofpraw_pull_assert
        - Src:             'lib/ofp-protocol.c:714,5'
          Dst:             ovs_ignore
        - Src:             'lib/ofp-protocol.c:715,23'
          Dst:             ofpbuf_pull
    - functionName:    ofpbuf_const_initializer
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 97
      functionLinenumberEnd: 105
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          30
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofpbuf_pull
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 258
      functionLinenumberEnd: 269
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          64
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:259,5'
          Dst:             ovs_ignore
    - functionName:    ofputil_decode_nx_set_flow_format
      functionSourceFile: '/src/openvswitch/lib/ofp-protocol.c'
      linkageType:     InternalLinkage
      functionLinenumber: 635
      functionLinenumberEnd: 653
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          74
      EdgeCount:       12
      CyclomaticComplexity: 2
      functionsReached:
        - ntohl
        - ntohs
        - ofpbuf_const_initializer
        - ofpbuf_pull
        - ofpraw_pull_assert
        - ovs_ignore
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-protocol.c:641,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-protocol.c:636,52'
          Dst:             ntohs
        - Src:             'lib/ofp-protocol.c:636,23'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/ofp-protocol.c:637,16'
          Dst:             ofpraw_pull_assert
        - Src:             'lib/ofp-protocol.c:637,5'
          Dst:             ovs_ignore
        - Src:             'lib/ofp-protocol.c:639,30'
          Dst:             ofpbuf_pull
        - Src:             'lib/ofp-protocol.c:640,28'
          Dst:             ntohl
        - Src:             'lib/ofp-protocol.c:649,9'
          Dst:             vlog_rate_limit
    - functionName:    ofputil_encode_nx_flow_mod_table_id
      functionSourceFile: '/src/openvswitch/lib/ofp-protocol.c'
      linkageType:     InternalLinkage
      functionLinenumber: 699
      functionLinenumberEnd: 704
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - bool
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpbuf_put_zeros
        - ofpraw_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-protocol.c:700,26'
          Dst:             ofpraw_alloc
        - Src:             'lib/ofp-protocol.c:702,18'
          Dst:             ofpbuf_put_zeros
    - functionName:    ofputil_encode_nx_set_flow_format
      functionSourceFile: '/src/openvswitch/lib/ofp-protocol.c'
      linkageType:     InternalLinkage
      functionLinenumber: 615
      functionLinenumberEnd: 627
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          49
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - abort
        - htonl
        - ofpbuf_put_uninit
        - ofpraw_alloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-protocol.c:616,26'
          Dst:             ofpraw_alloc
        - Src:             'lib/ofp-protocol.c:618,22'
          Dst:             ofpbuf_put_uninit
        - Src:             'lib/ofp-protocol.c:620,17'
          Dst:             htonl
        - Src:             'lib/ofp-protocol.c:622,17'
          Dst:             htonl
        - Src:             'lib/ofp-protocol.c:624,9'
          Dst:             abort
    - functionName:    ofputil_encode_set_protocol
      functionSourceFile: '/src/openvswitch/lib/ofp-protocol.c'
      linkageType:     InternalLinkage
      functionLinenumber: 557
      functionLinenumberEnd: 604
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          164
      EdgeCount:       24
      CyclomaticComplexity: 2
      functionsReached:
        - abort
        - ofputil_encode_nx_flow_mod_table_id
        - ofputil_encode_nx_set_flow_format
        - ofputil_protocol_set_base
        - ofputil_protocol_set_tid
        - ofputil_protocol_to_base
        - ofputil_protocol_to_ofp_version
        - ovs_ignore
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib/ofp-protocol.c:573,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-protocol.c:562,19'
          Dst:             ofputil_protocol_to_ofp_version
        - Src:             'lib/ofp-protocol.c:563,20'
          Dst:             ofputil_protocol_to_ofp_version
        - Src:             'lib/ofp-protocol.c:569,16'
          Dst:             ofputil_protocol_to_base
        - Src:             'lib/ofp-protocol.c:570,17'
          Dst:             ofputil_protocol_to_base
        - Src:             'lib/ofp-protocol.c:572,17'
          Dst:             ofputil_protocol_set_base
        - Src:             'lib/ofp-protocol.c:576,20'
          Dst:             ofputil_encode_nx_set_flow_format
        - Src:             'lib/ofp-protocol.c:585,13'
          Dst:             abort
        - Src:             'lib/ofp-protocol.c:589,13'
          Dst:             abort
        - Src:             'lib/ofp-protocol.c:596,17'
          Dst:             ofputil_protocol_set_tid
        - Src:             'lib/ofp-protocol.c:597,16'
          Dst:             ofputil_encode_nx_flow_mod_table_id
        - Src:             'lib/ofp-protocol.c:600,5'
          Dst:             ovs_ignore
    - functionName:    ofputil_protocol_to_ofp_version
      functionSourceFile: '/src/openvswitch/lib/ofp-protocol.c'
      linkageType:     InternalLinkage
      functionLinenumber: 99
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          67
      EdgeCount:       28
      CyclomaticComplexity: 15
      functionsReached:
        - abort
      functionUses:    23
      BranchProfiles:
        - Branch String:   'lib/ofp-protocol.c:100,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-protocol.c:118,5'
          Dst:             abort
    - functionName:    ofputil_protocol_to_base
      functionSourceFile: '/src/openvswitch/lib/ofp-protocol.c'
      linkageType:     InternalLinkage
      functionLinenumber: 209
      functionLinenumberEnd: 210
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofputil_protocol_set_tid
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-protocol.c:210,12'
          Dst:             ofputil_protocol_set_tid
    - functionName:    ofputil_protocol_set_base
      functionSourceFile: '/src/openvswitch/lib/ofp-protocol.c'
      linkageType:     InternalLinkage
      functionLinenumber: 217
      functionLinenumberEnd: 247
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          99
      EdgeCount:       30
      CyclomaticComplexity: 16
      functionsReached:
        - abort
        - ofputil_protocol_set_tid
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-protocol.c:220,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-protocol.c:223,16'
          Dst:             ofputil_protocol_set_tid
        - Src:             'lib/ofp-protocol.c:227,16'
          Dst:             ofputil_protocol_set_tid
        - Src:             'lib/ofp-protocol.c:230,16'
          Dst:             ofputil_protocol_set_tid
        - Src:             'lib/ofp-protocol.c:233,16'
          Dst:             ofputil_protocol_set_tid
        - Src:             'lib/ofp-protocol.c:236,16'
          Dst:             ofputil_protocol_set_tid
        - Src:             'lib/ofp-protocol.c:239,16'
          Dst:             ofputil_protocol_set_tid
        - Src:             'lib/ofp-protocol.c:242,16'
          Dst:             ofputil_protocol_set_tid
        - Src:             'lib/ofp-protocol.c:245,9'
          Dst:             abort
    - functionName:    ofputil_protocol_set_tid
      functionSourceFile: '/src/openvswitch/lib/ofp-protocol.c'
      linkageType:     InternalLinkage
      functionLinenumber: 173
      functionLinenumberEnd: 201
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          80
      EdgeCount:       30
      CyclomaticComplexity: 16
      functionsReached:
        - abort
      functionUses:    10
      BranchProfiles:
        - Branch String:   'lib/ofp-protocol.c:174,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-protocol.c:199,9'
          Dst:             abort
    - functionName:    ofputil_format_version_bitmap_names
      functionSourceFile: '/src/openvswitch/lib/ofp-protocol.c'
      linkageType:     InternalLinkage
      functionLinenumber: 540
      functionLinenumberEnd: 542
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofputil_format_version_bitmap__
        - ofputil_format_version_name
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-protocol.c:541,5'
          Dst:             ofputil_format_version_bitmap__
        - Src:             'lib/ofp-protocol.c:541,5'
          Dst:             ofputil_format_version_name
    - functionName:    ofputil_format_version_name
      functionSourceFile: '/src/openvswitch/lib/ofp-protocol.c'
      linkageType:     InternalLinkage
      functionLinenumber: 514
      functionLinenumberEnd: 516
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_cstr
        - ofputil_version_to_string
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-protocol.c:515,22'
          Dst:             ofputil_version_to_string
        - Src:             'lib/ofp-protocol.c:515,5'
          Dst:             ds_put_cstr
    - functionName:    ofputil_format_version_bitmap__
      functionSourceFile: '/src/openvswitch/lib/ofp-protocol.c'
      linkageType:     InternalLinkage
      functionLinenumber: 522
      functionLinenumberEnd: 530
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          53
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ds_put_cstr
        - raw_ctz
        - zero_rightmost_1bit
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-protocol.c:524,29'
          Dst:             raw_ctz
        - Src:             'lib/ofp-protocol.c:525,18'
          Dst:             zero_rightmost_1bit
        - Src:             'lib/ofp-protocol.c:527,13'
          Dst:             ds_put_cstr
    - functionName:    zero_rightmost_1bit
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 390
      functionLinenumberEnd: 391
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofputil_version_to_string
      functionSourceFile: '/src/openvswitch/lib/ofp-protocol.c'
      linkageType:     InternalLinkage
      functionLinenumber: 487
      functionLinenumberEnd: 504
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          54
      EdgeCount:       20
      CyclomaticComplexity: 11
      functionsReached:
        - abort
      functionUses:    3
      BranchProfiles:
        - Branch String:   'lib/ofp-protocol.c:488,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-protocol.c:502,9'
          Dst:             abort
    - functionName:    ofputil_format_version_bitmap
      functionSourceFile: '/src/openvswitch/lib/ofp-protocol.c'
      linkageType:     InternalLinkage
      functionLinenumber: 534
      functionLinenumberEnd: 536
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofputil_format_version
        - ofputil_format_version_bitmap__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-protocol.c:535,5'
          Dst:             ofputil_format_version_bitmap__
        - Src:             'lib/ofp-protocol.c:535,5'
          Dst:             ofputil_format_version
    - functionName:    ofputil_format_version
      functionSourceFile: '/src/openvswitch/lib/ofp-protocol.c'
      linkageType:     InternalLinkage
      functionLinenumber: 508
      functionLinenumberEnd: 510
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_format
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-protocol.c:509,5'
          Dst:             ds_put_format
    - functionName:    ofputil_versions_from_strings
      functionSourceFile: '/src/openvswitch/lib/ofp-protocol.c'
      linkageType:     InternalLinkage
      functionLinenumber: 470
      functionLinenumberEnd: 482
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          76
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - ofputil_version_from_string
        - vlog
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-protocol.c:474,23'
          Dst:             ofputil_version_from_string
        - Src:             'lib/ofp-protocol.c:476,13'
          Dst:             vlog
    - functionName:    ofputil_version_from_string
      functionSourceFile: '/src/openvswitch/lib/ofp-protocol.c'
      linkageType:     InternalLinkage
      functionLinenumber: 408
      functionLinenumberEnd: 428
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         16
      ICount:          80
      EdgeCount:       22
      CyclomaticComplexity: 8
      functionsReached:
        - strcasecmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-protocol.c:409,10'
          Dst:             strcasecmp
        - Src:             'lib/ofp-protocol.c:412,10'
          Dst:             strcasecmp
        - Src:             'lib/ofp-protocol.c:415,10'
          Dst:             strcasecmp
        - Src:             'lib/ofp-protocol.c:418,10'
          Dst:             strcasecmp
        - Src:             'lib/ofp-protocol.c:421,10'
          Dst:             strcasecmp
        - Src:             'lib/ofp-protocol.c:424,10'
          Dst:             strcasecmp
    - functionName:    is_delimiter
      functionSourceFile: '/src/openvswitch/lib/ofp-protocol.c'
      linkageType:     InternalLinkage
      functionLinenumber: 432
      functionLinenumberEnd: 433
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __ctype_b_loc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-protocol.c:433,12'
          Dst:             __ctype_b_loc
    - functionName:    ofputil_versions_from_string
      functionSourceFile: '/src/openvswitch/lib/ofp-protocol.c'
      linkageType:     InternalLinkage
      functionLinenumber: 438
      functionLinenumberEnd: 465
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         16
      ICount:          115
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - is_delimiter
        - ofputil_version_from_string
        - vlog_fatal
        - xmemdup0
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-protocol.c:447,13'
          Dst:             is_delimiter
        - Src:             'lib/ofp-protocol.c:452,29'
          Dst:             is_delimiter
        - Src:             'lib/ofp-protocol.c:455,15'
          Dst:             xmemdup0
        - Src:             'lib/ofp-protocol.c:456,19'
          Dst:             ofputil_version_from_string
        - Src:             'lib/ofp-protocol.c:458,13'
          Dst:             vlog_fatal
    - functionName:    ofputil_protocol_from_string__
      functionSourceFile: '/src/openvswitch/lib/ofp-protocol.c'
      linkageType:     InternalLinkage
      functionLinenumber: 348
      functionLinenumberEnd: 368
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         24
      ICount:          127
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - ofputil_protocol_to_string
        - strlen
        - strncasecmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-protocol.c:354,28'
          Dst:             ofputil_protocol_to_string
        - Src:             'lib/ofp-protocol.c:356,26'
          Dst:             strlen
        - Src:             'lib/ofp-protocol.c:356,43'
          Dst:             strncasecmp
        - Src:             'lib/ofp-protocol.c:362,18'
          Dst:             strlen
        - Src:             'lib/ofp-protocol.c:362,38'
          Dst:             strncasecmp
    - functionName:    ofputil_protocol_to_string
      functionSourceFile: '/src/openvswitch/lib/ofp-protocol.c'
      linkageType:     InternalLinkage
      functionLinenumber: 254
      functionLinenumberEnd: 296
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         18
      ICount:          91
      EdgeCount:       18
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/ofp-protocol.c:259,5'
          Branch Sides:    []
      Callsites:       []
    - 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:    13
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofputil_protocols_from_string
      functionSourceFile: '/src/openvswitch/lib/ofp-protocol.c'
      linkageType:     InternalLinkage
      functionLinenumber: 376
      functionLinenumberEnd: 403
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          80
      EdgeCount:       14
      CyclomaticComplexity: 4
      functionsReached:
        - ofputil_protocol_from_string__
        - ovs_fatal
        - strcspn
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-protocol.c:385,13'
          Dst:             strcspn
        - Src:             'lib/ofp-protocol.c:391,13'
          Dst:             ofputil_protocol_from_string__
        - Src:             'lib/ofp-protocol.c:393,13'
          Dst:             ovs_fatal
        - Src:             'lib/ofp-protocol.c:401,9'
          Dst:             ovs_fatal
    - 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:    20
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ds_put_char
      functionSourceFile: '/src/openvswitch/./include/openvswitch/dynamic-string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_char__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/dynamic-string.h:99,9'
          Dst:             ds_put_char__
    - functionName:    ofputil_protocols_to_string
      functionSourceFile: '/src/openvswitch/lib/ofp-protocol.c'
      linkageType:     InternalLinkage
      functionLinenumber: 305
      functionLinenumberEnd: 344
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         25
      ICount:          142
      EdgeCount:       31
      CyclomaticComplexity: 8
      functionsReached:
        - abort
        - ds_init
        - ds_put_char
        - ds_put_cstr
        - ds_steal_cstr
        - ofputil_protocol_to_string
        - ovs_ignore
        - xstrdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-protocol.c:308,5'
          Dst:             ovs_ignore
        - Src:             'lib/ofp-protocol.c:310,16'
          Dst:             xstrdup
        - Src:             'lib/ofp-protocol.c:313,5'
          Dst:             ds_init
        - Src:             'lib/ofp-protocol.c:319,13'
          Dst:             ds_put_char
        - Src:             'lib/ofp-protocol.c:324,17'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-protocol.c:334,33'
          Dst:             ofputil_protocol_to_string
        - Src:             'lib/ofp-protocol.c:334,17'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-protocol.c:339,9'
          Dst:             abort
        - Src:             'lib/ofp-protocol.c:343,12'
          Dst:             ds_steal_cstr
    - functionName:    is_pow2
      functionSourceFile: '/src/openvswitch/./include/openvswitch/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 399
      functionLinenumberEnd: 400
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          26
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofputil_protocol_is_valid
      functionSourceFile: '/src/openvswitch/lib/ofp-protocol.c'
      linkageType:     InternalLinkage
      functionLinenumber: 157
      functionLinenumberEnd: 158
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - is_pow2
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-protocol.c:158,40'
          Dst:             is_pow2
    - functionName:    rightmost_1bit_idx
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 398
      functionLinenumberEnd: 399
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ctz64
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.h:399,12'
          Dst:             ctz64
    - functionName:    ofputil_protocols_from_version_bitmap
      functionSourceFile: '/src/openvswitch/lib/ofp-protocol.c'
      linkageType:     InternalLinkage
      functionLinenumber: 141
      functionLinenumberEnd: 150
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          44
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - ofputil_protocols_from_ofp_version
        - rightmost_1bit_idx
        - zero_rightmost_1bit
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-protocol.c:145,36'
          Dst:             rightmost_1bit_idx
        - Src:             'lib/ofp-protocol.c:147,22'
          Dst:             ofputil_protocols_from_ofp_version
        - Src:             'lib/ofp-protocol.c:144,29'
          Dst:             zero_rightmost_1bit
    - functionName:    ofputil_protocols_from_ofp_version
      functionSourceFile: '/src/openvswitch/lib/ofp-protocol.c'
      linkageType:     InternalLinkage
      functionLinenumber: 65
      functionLinenumberEnd: 82
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          47
      EdgeCount:       16
      CyclomaticComplexity: 9
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/ofp-protocol.c:66,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    ofputil_protocols_to_version_bitmap
      functionSourceFile: '/src/openvswitch/lib/ofp-protocol.c'
      linkageType:     InternalLinkage
      functionLinenumber: 125
      functionLinenumberEnd: 134
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          46
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - ofputil_protocol_to_ofp_version
        - rightmost_1bit
        - zero_rightmost_1bit
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-protocol.c:129,42'
          Dst:             rightmost_1bit
        - Src:             'lib/ofp-protocol.c:131,25'
          Dst:             ofputil_protocol_to_ofp_version
        - Src:             'lib/ofp-protocol.c:128,35'
          Dst:             zero_rightmost_1bit
    - functionName:    rightmost_1bit
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 382
      functionLinenumberEnd: 383
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofputil_protocol_from_ofp_version
      functionSourceFile: '/src/openvswitch/lib/ofp-protocol.c'
      linkageType:     InternalLinkage
      functionLinenumber: 91
      functionLinenumberEnd: 92
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofputil_protocols_from_ofp_version
        - rightmost_1bit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-protocol.c:92,27'
          Dst:             ofputil_protocols_from_ofp_version
        - Src:             'lib/ofp-protocol.c:92,12'
          Dst:             rightmost_1bit
    - functionName:    init_this_module_ofp_queue
      functionSourceFile: '/src/openvswitch/lib/ofp-queue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 29
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-queue.c:29,1'
          Dst:             vlog_insert_module
    - functionName:    put_32aligned_be64
      functionSourceFile: '/src/openvswitch/lib/unaligned.h'
      linkageType:     InternalLinkage
      functionLinenumber: 281
      functionLinenumberEnd: 289
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          19
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    htonll
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 30
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byte-order.h:30,12'
          Dst:             htonl
        - Src:             'lib/byte-order.h:30,44'
          Dst:             htonl
        - Src:             'lib/byte-order.h:30,62'
          Dst:             htonl
    - functionName:    get_32aligned_be64
      functionSourceFile: '/src/openvswitch/lib/unaligned.h'
      linkageType:     InternalLinkage
      functionLinenumber: 270
      functionLinenumberEnd: 274
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ntohll
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
        - ntohl
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byte-order.h:36,12'
          Dst:             htonl
        - Src:             'lib/byte-order.h:36,44'
          Dst:             ntohl
        - Src:             'lib/byte-order.h:36,62'
          Dst:             ntohl
    - functionName:    parse_ofp10_queue_rate
      functionSourceFile: '/src/openvswitch/lib/ofp-queue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 268
      functionLinenumberEnd: 278
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htons
        - ntohs
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-queue.c:271,21'
          Dst:             htons
        - Src:             'lib/ofp-queue.c:273,17'
          Dst:             ntohs
    - functionName:    ofpbuf_at_assert
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 195
      functionLinenumberEnd: 198
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:196,5'
          Dst:             ovs_ignore
        - Src:             './include/openvswitch/ofpbuf.h:197,5'
          Dst:             ovs_ignore
    - functionName:    ovs_list_is_empty
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 320
      functionLinenumberEnd: 321
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_list_insert
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 169
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    print_queue_stat
      functionSourceFile: '/src/openvswitch/lib/ofp-queue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 866
      functionLinenumberEnd: 878
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ds_put_char
        - ds_put_cstr
        - ds_put_format
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-queue.c:867,5'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-queue.c:869,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-queue.c:871,9'
          Dst:             ds_put_char
        - Src:             'lib/ofp-queue.c:874,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-queue.c:876,9'
          Dst:             ds_put_cstr
    - functionName:    ds_put_char
      functionSourceFile: '/src/openvswitch/./include/openvswitch/dynamic-string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_char__
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/dynamic-string.h:99,9'
          Dst:             ds_put_char__
    - functionName:    ofputil_queue_stats_reply_format
      functionSourceFile: '/src/openvswitch/lib/ofp-queue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 885
      functionLinenumberEnd: 920
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          120
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - ds_put_char
        - ds_put_cstr
        - ds_put_format
        - ntohs
        - ofp_print_duration
        - ofp_print_queue_name
        - ofpbuf_const_initializer
        - ofputil_count_queue_stats
        - ofputil_decode_queue_stats
        - ofputil_format_port
        - print_queue_stat
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-queue.c:887,19'
          Dst:             ofputil_count_queue_stats
        - Src:             'lib/ofp-queue.c:886,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-queue.c:892,52'
          Dst:             ntohs
        - Src:             'lib/ofp-queue.c:892,23'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/ofp-queue.c:897,18'
          Dst:             ofputil_decode_queue_stats
        - Src:             'lib/ofp-queue.c:902,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-queue.c:903,9'
          Dst:             ofputil_format_port
        - Src:             'lib/ofp-queue.c:904,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-queue.c:905,9'
          Dst:             ofp_print_queue_name
        - Src:             'lib/ofp-queue.c:906,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-queue.c:908,9'
          Dst:             print_queue_stat
        - Src:             'lib/ofp-queue.c:909,9'
          Dst:             print_queue_stat
        - Src:             'lib/ofp-queue.c:910,9'
          Dst:             print_queue_stat
        - Src:             'lib/ofp-queue.c:912,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-queue.c:914,13'
          Dst:             ofp_print_duration
        - Src:             'lib/ofp-queue.c:916,13'
          Dst:             ds_put_char
        - Src:             'lib/ofp-queue.c:918,9'
          Dst:             ds_put_char
    - functionName:    ofputil_count_queue_stats
      functionSourceFile: '/src/openvswitch/lib/ofp-queue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 637
      functionLinenumberEnd: 646
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          42
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - ntohs
        - ofpbuf_const_initializer
        - ofpraw_pull_assert
        - ofputil_decode_queue_stats
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-queue.c:638,52'
          Dst:             ntohs
        - Src:             'lib/ofp-queue.c:638,23'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/ofp-queue.c:639,5'
          Dst:             ofpraw_pull_assert
        - Src:             'lib/ofp-queue.c:643,13'
          Dst:             ofputil_decode_queue_stats
    - functionName:    ofpbuf_const_initializer
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 97
      functionLinenumberEnd: 105
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          30
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofputil_decode_queue_stats
      functionSourceFile: '/src/openvswitch/lib/ofp-queue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 731
      functionLinenumberEnd: 777
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         31
      ICount:          174
      EdgeCount:       41
      CyclomaticComplexity: 12
      functionsReached:
        - abort
        - ofpbuf_try_pull
        - ofpraw_decode
        - ofpraw_pull
        - ofputil_pull_ofp14_queue_stats
        - ofputil_queue_stats_from_ofp10
        - ofputil_queue_stats_from_ofp11
        - ofputil_queue_stats_from_ofp13
        - vlog_rate_limit
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-queue.c:735,28'
          Dst:             ofpraw_decode
        - Src:             'lib/ofp-queue.c:736,16'
          Dst:             ofpraw_pull
        - Src:             'lib/ofp-queue.c:744,16'
          Dst:             ofputil_pull_ofp14_queue_stats
        - Src:             'lib/ofp-queue.c:748,16'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/ofp-queue.c:752,16'
          Dst:             ofputil_queue_stats_from_ofp13
        - Src:             'lib/ofp-queue.c:756,16'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/ofp-queue.c:760,16'
          Dst:             ofputil_queue_stats_from_ofp11
        - Src:             'lib/ofp-queue.c:764,16'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/ofp-queue.c:768,16'
          Dst:             ofputil_queue_stats_from_ofp10
        - Src:             'lib/ofp-queue.c:770,9'
          Dst:             abort
        - Src:             'lib/ofp-queue.c:774,5'
          Dst:             vlog_rate_limit
    - functionName:    ofp_print_queue_name
      functionSourceFile: '/src/openvswitch/lib/ofp-queue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 41
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_cstr
        - ds_put_format
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-queue.c:37,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-queue.c:39,9'
          Dst:             ds_put_format
    - functionName:    ofputil_pull_ofp14_queue_stats
      functionSourceFile: '/src/openvswitch/lib/ofp-queue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 699
      functionLinenumberEnd: 717
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          72
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - ntohs
        - ofpbuf_pull
        - ofpbuf_try_pull
        - ofputil_queue_stats_from_ofp13
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-queue.c:703,12'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/ofp-queue.c:708,11'
          Dst:             ntohs
        - Src:             'lib/ofp-queue.c:712,5'
          Dst:             ofpbuf_pull
        - Src:             'lib/ofp-queue.c:716,12'
          Dst:             ofputil_queue_stats_from_ofp13
    - functionName:    ofpbuf_try_pull
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 275
      functionLinenumberEnd: 276
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofpbuf_pull
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:276,30'
          Dst:             ofpbuf_pull
    - functionName:    ofputil_queue_stats_from_ofp13
      functionSourceFile: '/src/openvswitch/lib/ofp-queue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 686
      functionLinenumberEnd: 693
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          48
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ntohl
        - ofputil_queue_stats_from_ofp11
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-queue.c:687,25'
          Dst:             ofputil_queue_stats_from_ofp11
        - Src:             'lib/ofp-queue.c:689,29'
          Dst:             ntohl
        - Src:             'lib/ofp-queue.c:690,30'
          Dst:             ntohl
    - functionName:    ofputil_queue_stats_from_ofp11
      functionSourceFile: '/src/openvswitch/lib/ofp-queue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 666
      functionLinenumberEnd: 681
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          74
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ntohl
        - ntohll
        - ofputil_port_from_ofp11
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-queue.c:669,13'
          Dst:             ofputil_port_from_ofp11
        - Src:             'lib/ofp-queue.c:674,21'
          Dst:             ntohl
        - Src:             'lib/ofp-queue.c:675,21'
          Dst:             ntohll
        - Src:             'lib/ofp-queue.c:676,23'
          Dst:             ntohll
        - Src:             'lib/ofp-queue.c:677,22'
          Dst:             ntohll
    - functionName:    ofputil_queue_stats_from_ofp10
      functionSourceFile: '/src/openvswitch/lib/ofp-queue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 652
      functionLinenumberEnd: 660
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          57
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_32aligned_be64
        - ntohl
        - ntohll
        - ntohs
        - u16_to_ofp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-queue.c:653,31'
          Dst:             ntohs
        - Src:             'lib/ofp-queue.c:653,20'
          Dst:             u16_to_ofp
        - Src:             'lib/ofp-queue.c:654,21'
          Dst:             ntohl
        - Src:             'lib/ofp-queue.c:655,28'
          Dst:             get_32aligned_be64
        - Src:             'lib/ofp-queue.c:655,21'
          Dst:             ntohll
        - Src:             'lib/ofp-queue.c:656,30'
          Dst:             get_32aligned_be64
        - Src:             'lib/ofp-queue.c:656,23'
          Dst:             ntohll
        - Src:             'lib/ofp-queue.c:657,29'
          Dst:             get_32aligned_be64
        - Src:             'lib/ofp-queue.c:657,22'
          Dst:             ntohll
    - functionName:    u16_to_ofp
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 214
      functionLinenumberEnd: 215
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofpbuf_pull
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 258
      functionLinenumberEnd: 269
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          64
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:259,5'
          Dst:             ovs_ignore
    - functionName:    ofputil_queue_stats_to_ofp14
      functionSourceFile: '/src/openvswitch/lib/ofp-queue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 819
      functionLinenumberEnd: 823
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htons
        - ofputil_queue_stats_to_ofp13
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-queue.c:820,20'
          Dst:             htons
        - Src:             'lib/ofp-queue.c:822,5'
          Dst:             ofputil_queue_stats_to_ofp13
    - functionName:    ofputil_queue_stats_to_ofp13
      functionSourceFile: '/src/openvswitch/lib/ofp-queue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 805
      functionLinenumberEnd: 814
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
        - ofputil_queue_stats_to_ofp11
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-queue.c:806,5'
          Dst:             ofputil_queue_stats_to_ofp11
        - Src:             'lib/ofp-queue.c:808,30'
          Dst:             htonl
        - Src:             'lib/ofp-queue.c:809,31'
          Dst:             htonl
    - functionName:    ofputil_queue_stats_to_ofp11
      functionSourceFile: '/src/openvswitch/lib/ofp-queue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 794
      functionLinenumberEnd: 800
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          50
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
        - htonll
        - ofputil_port_to_ofp11
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-queue.c:795,21'
          Dst:             ofputil_port_to_ofp11
        - Src:             'lib/ofp-queue.c:796,22'
          Dst:             htonl
        - Src:             'lib/ofp-queue.c:797,22'
          Dst:             htonll
        - Src:             'lib/ofp-queue.c:798,24'
          Dst:             htonll
        - Src:             'lib/ofp-queue.c:799,23'
          Dst:             htonll
    - functionName:    ofputil_queue_stats_to_ofp10
      functionSourceFile: '/src/openvswitch/lib/ofp-queue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 782
      functionLinenumberEnd: 789
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          55
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
        - htonll
        - htons
        - ofp_to_u16
        - put_32aligned_be64
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-queue.c:783,27'
          Dst:             ofp_to_u16
        - Src:             'lib/ofp-queue.c:783,21'
          Dst:             htons
        - Src:             'lib/ofp-queue.c:785,22'
          Dst:             htonl
        - Src:             'lib/ofp-queue.c:786,41'
          Dst:             htonll
        - Src:             'lib/ofp-queue.c:786,5'
          Dst:             put_32aligned_be64
        - Src:             'lib/ofp-queue.c:787,43'
          Dst:             htonll
        - Src:             'lib/ofp-queue.c:787,5'
          Dst:             put_32aligned_be64
        - Src:             'lib/ofp-queue.c:788,42'
          Dst:             htonll
        - Src:             'lib/ofp-queue.c:788,5'
          Dst:             put_32aligned_be64
    - functionName:    ofp_to_u16
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 196
      functionLinenumberEnd: 197
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofputil_append_queue_stat
      functionSourceFile: '/src/openvswitch/lib/ofp-queue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 830
      functionLinenumberEnd: 861
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          79
      EdgeCount:       24
      CyclomaticComplexity: 13
      functionsReached:
        - abort
        - ofpmp_append
        - ofpmp_version
        - ofputil_queue_stats_to_ofp10
        - ofputil_queue_stats_to_ofp11
        - ofputil_queue_stats_to_ofp13
        - ofputil_queue_stats_to_ofp14
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib/ofp-queue.c:831,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-queue.c:831,13'
          Dst:             ofpmp_version
        - Src:             'lib/ofp-queue.c:833,43'
          Dst:             ofpmp_append
        - Src:             'lib/ofp-queue.c:834,9'
          Dst:             ofputil_queue_stats_to_ofp13
        - Src:             'lib/ofp-queue.c:840,43'
          Dst:             ofpmp_append
        - Src:             'lib/ofp-queue.c:841,9'
          Dst:             ofputil_queue_stats_to_ofp11
        - Src:             'lib/ofp-queue.c:846,43'
          Dst:             ofpmp_append
        - Src:             'lib/ofp-queue.c:847,9'
          Dst:             ofputil_queue_stats_to_ofp10
        - Src:             'lib/ofp-queue.c:853,43'
          Dst:             ofpmp_append
        - Src:             'lib/ofp-queue.c:854,9'
          Dst:             ofputil_queue_stats_to_ofp14
        - Src:             'lib/ofp-queue.c:859,9'
          Dst:             abort
    - functionName:    ofputil_queue_stats_request_format
      functionSourceFile: '/src/openvswitch/lib/ofp-queue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 615
      functionLinenumberEnd: 631
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_cstr
        - ofp_print_queue_name
        - ofputil_decode_queue_stats_request
        - ofputil_format_port
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-queue.c:619,13'
          Dst:             ofputil_decode_queue_stats_request
        - Src:             'lib/ofp-queue.c:624,5'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-queue.c:625,5'
          Dst:             ofputil_format_port
        - Src:             'lib/ofp-queue.c:627,5'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-queue.c:628,5'
          Dst:             ofp_print_queue_name
    - functionName:    ofputil_decode_queue_stats_request
      functionSourceFile: '/src/openvswitch/lib/ofp-queue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 543
      functionLinenumberEnd: 569
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          106
      EdgeCount:       29
      CyclomaticComplexity: 16
      functionsReached:
        - abort
        - ntohl
        - ntohs
        - ofpmsg_body
        - ofputil_port_from_ofp11
        - u16_to_ofp
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-queue.c:544,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-queue.c:550,57'
          Dst:             ofpmsg_body
        - Src:             'lib/ofp-queue.c:551,26'
          Dst:             ntohl
        - Src:             'lib/ofp-queue.c:552,16'
          Dst:             ofputil_port_from_ofp11
        - Src:             'lib/ofp-queue.c:556,57'
          Dst:             ofpmsg_body
        - Src:             'lib/ofp-queue.c:557,26'
          Dst:             ntohl
        - Src:             'lib/ofp-queue.c:558,36'
          Dst:             ntohs
        - Src:             'lib/ofp-queue.c:558,25'
          Dst:             u16_to_ofp
        - Src:             'lib/ofp-queue.c:567,9'
          Dst:             abort
    - functionName:    ofputil_encode_queue_stats_request
      functionSourceFile: '/src/openvswitch/lib/ofp-queue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 578
      functionLinenumberEnd: 608
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          108
      EdgeCount:       29
      CyclomaticComplexity: 16
      functionsReached:
        - abort
        - htonl
        - htons
        - ofp_to_u16
        - ofpbuf_put_zeros
        - ofpraw_alloc
        - ofputil_port_to_ofp11
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib/ofp-queue.c:581,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-queue.c:588,19'
          Dst:             ofpraw_alloc
        - Src:             'lib/ofp-queue.c:589,15'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-queue.c:590,24'
          Dst:             ofputil_port_to_ofp11
        - Src:             'lib/ofp-queue.c:591,25'
          Dst:             htonl
        - Src:             'lib/ofp-queue.c:596,19'
          Dst:             ofpraw_alloc
        - Src:             'lib/ofp-queue.c:597,15'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-queue.c:599,30'
          Dst:             ofp_to_u16
        - Src:             'lib/ofp-queue.c:599,24'
          Dst:             htons
        - Src:             'lib/ofp-queue.c:601,25'
          Dst:             htonl
        - Src:             'lib/ofp-queue.c:605,9'
          Dst:             abort
    - functionName:    print_queue_rate
      functionSourceFile: '/src/openvswitch/lib/ofp-queue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 463
      functionLinenumberEnd: 469
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          48
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ds_put_format
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-queue.c:465,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-queue.c:467,9'
          Dst:             ds_put_format
    - functionName:    compare_queues
      functionSourceFile: '/src/openvswitch/lib/ofp-queue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 474
      functionLinenumberEnd: 487
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          86
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ofp_to_u16
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-queue.c:478,19'
          Dst:             ofp_to_u16
        - Src:             'lib/ofp-queue.c:479,19'
          Dst:             ofp_to_u16
    - functionName:    ofputil_queue_get_config_reply_format
      functionSourceFile: '/src/openvswitch/lib/ofp-queue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 493
      functionLinenumberEnd: 535
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          155
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - compare_queues
        - ds_chomp
        - ds_put_char
        - ds_put_cstr
        - ds_put_format
        - ntohs
        - ofpbuf_const_initializer
        - ofputil_format_port
        - ofputil_pull_queue_get_config_reply
        - print_queue_rate
        - qsort
        - x2nrealloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-queue.c:494,52'
          Dst:             ntohs
        - Src:             'lib/ofp-queue.c:494,23'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/ofp-queue.c:503,22'
          Dst:             x2nrealloc
        - Src:             'lib/ofp-queue.c:505,18'
          Dst:             ofputil_pull_queue_get_config_reply
        - Src:             'lib/ofp-queue.c:512,5'
          Dst:             qsort
        - Src:             'lib/ofp-queue.c:512,5'
          Dst:             compare_queues
        - Src:             'lib/ofp-queue.c:514,5'
          Dst:             ds_put_char
        - Src:             'lib/ofp-queue.c:521,13'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-queue.c:522,13'
          Dst:             ofputil_format_port
        - Src:             'lib/ofp-queue.c:523,13'
          Dst:             ds_put_char
        - Src:             'lib/ofp-queue.c:526,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-queue.c:527,9'
          Dst:             print_queue_rate
        - Src:             'lib/ofp-queue.c:528,9'
          Dst:             print_queue_rate
        - Src:             'lib/ofp-queue.c:529,9'
          Dst:             ds_put_char
        - Src:             'lib/ofp-queue.c:532,5'
          Dst:             ds_chomp
    - functionName:    ofputil_pull_queue_get_config_reply
      functionSourceFile: '/src/openvswitch/lib/ofp-queue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 430
      functionLinenumberEnd: 459
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          102
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - ofpbuf_pull
        - ofpraw_decode_assert
        - ofpraw_pull_assert
        - ofputil_pull_queue_get_config_reply10
        - ofputil_pull_queue_get_config_reply14
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-queue.c:434,15'
          Dst:             ofpraw_pull_assert
        - Src:             'lib/ofp-queue.c:439,13'
          Dst:             ofpbuf_pull
        - Src:             'lib/ofp-queue.c:441,13'
          Dst:             ofpbuf_pull
        - Src:             'lib/ofp-queue.c:443,13'
          Dst:             ovs_ignore
        - Src:             'lib/ofp-queue.c:446,15'
          Dst:             ofpraw_decode_assert
        - Src:             'lib/ofp-queue.c:455,16'
          Dst:             ofputil_pull_queue_get_config_reply14
        - Src:             'lib/ofp-queue.c:457,16'
          Dst:             ofputil_pull_queue_get_config_reply10
    - functionName:    ofputil_pull_queue_get_config_reply14
      functionSourceFile: '/src/openvswitch/lib/ofp-queue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 369
      functionLinenumberEnd: 418
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         26
      ICount:          171
      EdgeCount:       33
      CyclomaticComplexity: 9
      functionsReached:
        - ntohl
        - ntohs
        - ofpbuf_const_initializer
        - ofpbuf_pull
        - ofpbuf_try_pull
        - ofpprop_parse_u16
        - ofpprop_pull
        - ofpprop_unknown
        - ofputil_port_from_ofp11
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-queue.c:398,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-queue.c:370,38'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/ofp-queue.c:374,25'
          Dst:             ofputil_port_from_ofp11
        - Src:             'lib/ofp-queue.c:378,20'
          Dst:             ntohl
        - Src:             'lib/ofp-queue.c:381,24'
          Dst:             ntohs
        - Src:             'lib/ofp-queue.c:387,57'
          Dst:             ofpbuf_pull
        - Src:             'lib/ofp-queue.c:387,32'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/ofp-queue.c:393,17'
          Dst:             ofpprop_pull
        - Src:             'lib/ofp-queue.c:400,21'
          Dst:             ofpprop_parse_u16
        - Src:             'lib/ofp-queue.c:404,21'
          Dst:             ofpprop_parse_u16
        - Src:             'lib/ofp-queue.c:408,21'
          Dst:             ofpprop_unknown
    - functionName:    ofputil_pull_queue_get_config_reply10
      functionSourceFile: '/src/openvswitch/lib/ofp-queue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 283
      functionLinenumberEnd: 364
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         44
      ICount:          305
      EdgeCount:       57
      CyclomaticComplexity: 15
      functionsReached:
        - ntohl
        - ntohs
        - ofpbuf_at_assert
        - ofpbuf_pull
        - ofpbuf_try_pull
        - ofputil_port_from_ofp11
        - parse_ofp10_queue_rate
        - u16_to_ofp
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-queue.c:343,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-queue.c:291,34'
          Dst:             ntohs
        - Src:             'lib/ofp-queue.c:291,23'
          Dst:             u16_to_ofp
        - Src:             'lib/ofp-queue.c:294,29'
          Dst:             ofputil_port_from_ofp11
        - Src:             'lib/ofp-queue.c:304,17'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/ofp-queue.c:308,24'
          Dst:             ntohl
        - Src:             'lib/ofp-queue.c:309,15'
          Dst:             ntohs
        - Src:             'lib/ofp-queue.c:313,17'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/ofp-queue.c:317,24'
          Dst:             ntohl
        - Src:             'lib/ofp-queue.c:318,15'
          Dst:             ntohs
        - Src:             'lib/ofp-queue.c:336,15'
          Dst:             ofpbuf_at_assert
        - Src:             'lib/ofp-queue.c:337,20'
          Dst:             ntohs
        - Src:             'lib/ofp-queue.c:342,20'
          Dst:             ntohs
        - Src:             'lib/ofp-queue.c:345,21'
          Dst:             parse_ofp10_queue_rate
        - Src:             'lib/ofp-queue.c:349,21'
          Dst:             parse_ofp10_queue_rate
        - Src:             'lib/ofp-queue.c:353,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-queue.c:360,9'
          Dst:             ofpbuf_pull
    - functionName:    ofpbuf_at
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 183
      functionLinenumberEnd: 189
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:185,9'
          Dst:             ovs_ignore
    - functionName:    put_ofp14_queue_rate
      functionSourceFile: '/src/openvswitch/lib/ofp-queue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 214
      functionLinenumberEnd: 218
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofpprop_put_u16
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-queue.c:216,9'
          Dst:             ofpprop_put_u16
    - functionName:    put_ofp10_queue_rate
      functionSourceFile: '/src/openvswitch/lib/ofp-queue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 200
      functionLinenumberEnd: 209
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htons
        - ofpbuf_put_zeros
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-queue.c:204,16'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-queue.c:205,38'
          Dst:             htons
        - Src:             'lib/ofp-queue.c:206,33'
          Dst:             htons
        - Src:             'lib/ofp-queue.c:207,22'
          Dst:             htons
    - functionName:    ovs_list_back
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 295
      functionLinenumberEnd: 300
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovs_list_is_empty
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/list.h:298,17'
          Dst:             ovs_list_is_empty
        - Src:             './include/openvswitch/list.h:298,5'
          Dst:             ovs_ignore
    - functionName:    ofpbuf_from_list
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 280
      functionLinenumberEnd: 281
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofputil_append_queue_get_config_reply
      functionSourceFile: '/src/openvswitch/lib/ofp-queue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 223
      functionLinenumberEnd: 263
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          176
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - htonl
        - htons
        - ofpbuf_at
        - ofpbuf_from_list
        - ofpbuf_put_zeros
        - ofpmp_postappend
        - ofpmp_version
        - ofputil_port_to_ofp11
        - ovs_list_back
        - put_ofp10_queue_rate
        - put_ofp14_queue_rate
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-queue.c:224,36'
          Dst:             ofpmp_version
        - Src:             'lib/ofp-queue.c:225,45'
          Dst:             ovs_list_back
        - Src:             'lib/ofp-queue.c:225,28'
          Dst:             ofpbuf_from_list
        - Src:             'lib/ofp-queue.c:234,21'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-queue.c:235,31'
          Dst:             htonl
        - Src:             'lib/ofp-queue.c:240,21'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-queue.c:241,27'
          Dst:             ofputil_port_to_ofp11
        - Src:             'lib/ofp-queue.c:242,31'
          Dst:             htonl
        - Src:             'lib/ofp-queue.c:246,9'
          Dst:             put_ofp10_queue_rate
        - Src:             'lib/ofp-queue.c:247,9'
          Dst:             put_ofp10_queue_rate
        - Src:             'lib/ofp-queue.c:249,40'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-queue.c:250,24'
          Dst:             ofputil_port_to_ofp11
        - Src:             'lib/ofp-queue.c:251,25'
          Dst:             htonl
        - Src:             'lib/ofp-queue.c:253,9'
          Dst:             put_ofp14_queue_rate
        - Src:             'lib/ofp-queue.c:254,9'
          Dst:             put_ofp14_queue_rate
        - Src:             'lib/ofp-queue.c:257,11'
          Dst:             ofpbuf_at
        - Src:             'lib/ofp-queue.c:258,12'
          Dst:             htons
        - Src:             'lib/ofp-queue.c:261,9'
          Dst:             ofpmp_postappend
    - functionName:    ovs_list_push_back
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 204
      functionLinenumberEnd: 206
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_list_insert
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/list.h:205,5'
          Dst:             ovs_list_insert
    - functionName:    ovs_list_init
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofputil_start_queue_get_config_reply
      functionSourceFile: '/src/openvswitch/lib/ofp-queue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 159
      functionLinenumberEnd: 195
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          83
      EdgeCount:       14
      CyclomaticComplexity: 8
      functionsReached:
        - abort
        - htons
        - ofp_to_u16
        - ofpbuf_put_zeros
        - ofpraw_alloc_reply
        - ofpraw_alloc_stats_reply
        - ofpraw_decode_assert
        - ofputil_decode_queue_get_config_request
        - ofputil_port_to_ofp11
        - ovs_ignore
        - ovs_list_init
        - ovs_list_push_back
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib/ofp-queue.c:168,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-queue.c:164,17'
          Dst:             ofputil_decode_queue_get_config_request
        - Src:             'lib/ofp-queue.c:164,5'
          Dst:             ovs_ignore
        - Src:             'lib/ofp-queue.c:167,23'
          Dst:             ofpraw_decode_assert
        - Src:             'lib/ofp-queue.c:170,17'
          Dst:             ofpraw_alloc_reply
        - Src:             'lib/ofp-queue.c:173,15'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-queue.c:174,30'
          Dst:             ofp_to_u16
        - Src:             'lib/ofp-queue.c:174,24'
          Dst:             htons
        - Src:             'lib/ofp-queue.c:178,17'
          Dst:             ofpraw_alloc_reply
        - Src:             'lib/ofp-queue.c:181,15'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-queue.c:182,24'
          Dst:             ofputil_port_to_ofp11
        - Src:             'lib/ofp-queue.c:186,17'
          Dst:             ofpraw_alloc_stats_reply
        - Src:             'lib/ofp-queue.c:190,9'
          Dst:             abort
        - Src:             'lib/ofp-queue.c:193,5'
          Dst:             ovs_list_init
        - Src:             'lib/ofp-queue.c:194,5'
          Dst:             ovs_list_push_back
    - functionName:    ofputil_decode_queue_get_config_request
      functionSourceFile: '/src/openvswitch/lib/ofp-queue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 90
      functionLinenumberEnd: 125
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          125
      EdgeCount:       14
      CyclomaticComplexity: 2
      functionsReached:
        - abort
        - ntohl
        - ntohs
        - ofp_to_u16
        - ofpbuf_const_initializer
        - ofpraw_pull_assert
        - ofputil_port_from_ofp11
        - u16_to_ofp
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/ofp-queue.c:97,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-queue.c:94,52'
          Dst:             ntohs
        - Src:             'lib/ofp-queue.c:94,23'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/ofp-queue.c:95,23'
          Dst:             ofpraw_pull_assert
        - Src:             'lib/ofp-queue.c:100,28'
          Dst:             ntohs
        - Src:             'lib/ofp-queue.c:100,17'
          Dst:             u16_to_ofp
        - Src:             'lib/ofp-queue.c:107,29'
          Dst:             ofputil_port_from_ofp11
        - Src:             'lib/ofp-queue.c:115,18'
          Dst:             ntohl
        - Src:             'lib/ofp-queue.c:116,16'
          Dst:             ofputil_port_from_ofp11
        - Src:             'lib/ofp-queue.c:119,9'
          Dst:             abort
        - Src:             'lib/ofp-queue.c:122,13'
          Dst:             ofp_to_u16
        - Src:             'lib/ofp-queue.c:122,33'
          Dst:             ofp_to_u16
    - functionName:    ofputil_queue_get_config_request_format
      functionSourceFile: '/src/openvswitch/lib/ofp-queue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 131
      functionLinenumberEnd: 150
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          60
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ds_put_cstr
        - ofp_print_queue_name
        - ofputil_decode_queue_get_config_request
        - ofputil_format_port
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-queue.c:136,13'
          Dst:             ofputil_decode_queue_get_config_request
        - Src:             'lib/ofp-queue.c:141,5'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-queue.c:142,5'
          Dst:             ofputil_format_port
        - Src:             'lib/ofp-queue.c:145,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-queue.c:146,9'
          Dst:             ofp_print_queue_name
    - functionName:    ofputil_encode_queue_get_config_request
      functionSourceFile: '/src/openvswitch/lib/ofp-queue.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 81
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          85
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - htonl
        - htons
        - ofp_to_u16
        - ofpbuf_put_zeros
        - ofpraw_alloc
        - ofputil_port_to_ofp11
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-queue.c:60,19'
          Dst:             ofpraw_alloc
        - Src:             'lib/ofp-queue.c:62,18'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-queue.c:63,30'
          Dst:             ofp_to_u16
        - Src:             'lib/ofp-queue.c:63,24'
          Dst:             htons
        - Src:             'lib/ofp-queue.c:67,19'
          Dst:             ofpraw_alloc
        - Src:             'lib/ofp-queue.c:69,18'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-queue.c:70,24'
          Dst:             ofputil_port_to_ofp11
        - Src:             'lib/ofp-queue.c:74,19'
          Dst:             ofpraw_alloc
        - Src:             'lib/ofp-queue.c:76,17'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-queue.c:77,23'
          Dst:             ofputil_port_to_ofp11
        - Src:             'lib/ofp-queue.c:78,24'
          Dst:             htonl
    - functionName:    ofpbuf_const_initializer
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 97
      functionLinenumberEnd: 105
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          30
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofputil_switch_config_format
      functionSourceFile: '/src/openvswitch/lib/ofp-switch.c'
      linkageType:     InternalLinkage
      functionLinenumber: 386
      functionLinenumberEnd: 395
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_format
        - ofputil_frag_handling_to_string
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-switch.c:388,19'
          Dst:             ofputil_frag_handling_to_string
        - Src:             'lib/ofp-switch.c:387,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-switch.c:391,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-switch.c:394,5'
          Dst:             ds_put_format
    - functionName:    ofputil_frag_handling_to_string
      functionSourceFile: '/src/openvswitch/lib/ofp-switch.c'
      linkageType:     InternalLinkage
      functionLinenumber: 279
      functionLinenumberEnd: 288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          44
      EdgeCount:       16
      CyclomaticComplexity: 9
      functionsReached:
        - abort
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-switch.c:280,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-switch.c:287,5'
          Dst:             abort
    - functionName:    ofputil_encode_set_config
      functionSourceFile: '/src/openvswitch/lib/ofp-switch.c'
      linkageType:     InternalLinkage
      functionLinenumber: 378
      functionLinenumberEnd: 380
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpraw_alloc
        - ofputil_put_switch_config
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-switch.c:379,24'
          Dst:             ofpraw_alloc
        - Src:             'lib/ofp-switch.c:380,12'
          Dst:             ofputil_put_switch_config
    - functionName:    ofputil_put_switch_config
      functionSourceFile: '/src/openvswitch/lib/ofp-switch.c'
      linkageType:     InternalLinkage
      functionLinenumber: 355
      functionLinenumberEnd: 363
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          74
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - htons
        - ofpbuf_put_zeros
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-switch.c:357,37'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-switch.c:358,18'
          Dst:             htons
        - Src:             'lib/ofp-switch.c:360,23'
          Dst:             htons
        - Src:             'lib/ofp-switch.c:362,26'
          Dst:             htons
    - functionName:    ofputil_encode_get_config_reply
      functionSourceFile: '/src/openvswitch/lib/ofp-switch.c'
      linkageType:     InternalLinkage
      functionLinenumber: 369
      functionLinenumberEnd: 372
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpraw_alloc_reply
        - ofputil_put_switch_config
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-switch.c:370,24'
          Dst:             ofpraw_alloc_reply
        - Src:             'lib/ofp-switch.c:372,12'
          Dst:             ofputil_put_switch_config
    - functionName:    ofputil_decode_set_config
      functionSourceFile: '/src/openvswitch/lib/ofp-switch.c'
      linkageType:     InternalLinkage
      functionLinenumber: 346
      functionLinenumberEnd: 347
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofputil_decode_switch_config
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-switch.c:347,13'
          Dst:             ofputil_decode_switch_config
    - functionName:    ofputil_decode_switch_config
      functionSourceFile: '/src/openvswitch/lib/ofp-switch.c'
      linkageType:     InternalLinkage
      functionLinenumber: 316
      functionLinenumberEnd: 333
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          98
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htons
        - ntohs
        - ofpbuf_const_initializer
        - ofpbuf_pull
        - ofpraw_pull_assert
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-switch.c:317,52'
          Dst:             ntohs
        - Src:             'lib/ofp-switch.c:317,23'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/ofp-switch.c:318,5'
          Dst:             ofpraw_pull_assert
        - Src:             'lib/ofp-switch.c:320,43'
          Dst:             ofpbuf_pull
        - Src:             'lib/ofp-switch.c:321,20'
          Dst:             ntohs
        - Src:             'lib/ofp-switch.c:322,29'
          Dst:             ntohs
        - Src:             'lib/ofp-switch.c:324,27'
          Dst:             htons
        - Src:             'lib/ofp-switch.c:326,34'
          Dst:             htons
    - functionName:    ofpbuf_pull
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 258
      functionLinenumberEnd: 269
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          64
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:259,5'
          Dst:             ovs_ignore
    - functionName:    ofputil_decode_get_config_reply
      functionSourceFile: '/src/openvswitch/lib/ofp-switch.c'
      linkageType:     InternalLinkage
      functionLinenumber: 339
      functionLinenumberEnd: 341
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofputil_decode_switch_config
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-switch.c:340,5'
          Dst:             ofputil_decode_switch_config
    - functionName:    ofputil_frag_handling_from_string
      functionSourceFile: '/src/openvswitch/lib/ofp-switch.c'
      linkageType:     InternalLinkage
      functionLinenumber: 293
      functionLinenumberEnd: 306
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          71
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - strcasecmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-switch.c:294,10'
          Dst:             strcasecmp
        - Src:             'lib/ofp-switch.c:296,17'
          Dst:             strcasecmp
        - Src:             'lib/ofp-switch.c:298,17'
          Dst:             strcasecmp
        - Src:             'lib/ofp-switch.c:300,17'
          Dst:             strcasecmp
    - functionName:    ofputil_capabilities_to_name
      functionSourceFile: '/src/openvswitch/lib/ofp-switch.c'
      linkageType:     InternalLinkage
      functionLinenumber: 232
      functionLinenumberEnd: 250
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          75
      EdgeCount:       26
      CyclomaticComplexity: 14
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-switch.c:235,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    ds_put_char
      functionSourceFile: '/src/openvswitch/./include/openvswitch/dynamic-string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_char__
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/dynamic-string.h:99,9'
          Dst:             ds_put_char__
    - functionName:    ofputil_switch_features_format
      functionSourceFile: '/src/openvswitch/lib/ofp-switch.c'
      linkageType:     InternalLinkage
      functionLinenumber: 255
      functionLinenumberEnd: 275
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          83
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ds_put_char
        - ds_put_cstr
        - ds_put_format
        - ofp_print_bit_names
        - ofpact_bitmap_format
        - ofputil_capabilities_to_name
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-switch.c:256,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-switch.c:258,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-switch.c:261,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-switch.c:263,5'
          Dst:             ds_put_char
        - Src:             'lib/ofp-switch.c:265,5'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-switch.c:266,5'
          Dst:             ofp_print_bit_names
        - Src:             'lib/ofp-switch.c:266,5'
          Dst:             ofputil_capabilities_to_name
        - Src:             'lib/ofp-switch.c:268,5'
          Dst:             ds_put_char
        - Src:             'lib/ofp-switch.c:271,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-switch.c:272,9'
          Dst:             ofpact_bitmap_format
        - Src:             'lib/ofp-switch.c:273,9'
          Dst:             ds_put_char
    - functionName:    ofputil_put_switch_features_port
      functionSourceFile: '/src/openvswitch/lib/ofp-switch.c'
      linkageType:     InternalLinkage
      functionLinenumber: 215
      functionLinenumberEnd: 228
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          64
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ofputil_put_phy_port
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-switch.c:223,9'
          Dst:             ofputil_put_phy_port
    - functionName:    htonll
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 30
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byte-order.h:30,12'
          Dst:             htonl
        - Src:             'lib/byte-order.h:30,44'
          Dst:             htonl
        - Src:             'lib/byte-order.h:30,62'
          Dst:             htonl
    - functionName:    ofputil_encode_switch_features
      functionSourceFile: '/src/openvswitch/lib/ofp-switch.c'
      linkageType:     InternalLinkage
      functionLinenumber: 152
      functionLinenumberEnd: 206
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          189
      EdgeCount:       56
      CyclomaticComplexity: 29
      functionsReached:
        - abort
        - htonl
        - htonll
        - ofpact_bitmap_to_openflow
        - ofpbuf_put_zeros
        - ofpraw_alloc_xid
        - ofputil_capabilities_mask
        - ofputil_protocol_to_ofp_version
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib/ofp-switch.c:159,5'
          Branch Sides:    []
        - Branch String:   'lib/ofp-switch.c:183,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-switch.c:158,15'
          Dst:             ofputil_protocol_to_ofp_version
        - Src:             'lib/ofp-switch.c:173,9'
          Dst:             abort
        - Src:             'lib/ofp-switch.c:175,9'
          Dst:             ofpraw_alloc_xid
        - Src:             'lib/ofp-switch.c:176,11'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-switch.c:177,24'
          Dst:             htonll
        - Src:             'lib/ofp-switch.c:178,22'
          Dst:             htonl
        - Src:             'lib/ofp-switch.c:182,31'
          Dst:             ofputil_capabilities_mask
        - Src:             'lib/ofp-switch.c:181,25'
          Dst:             htonl
        - Src:             'lib/ofp-switch.c:186,34'
          Dst:             htonl
        - Src:             'lib/ofp-switch.c:188,24'
          Dst:             ofpact_bitmap_to_openflow
        - Src:             'lib/ofp-switch.c:199,34'
          Dst:             htonl
        - Src:             'lib/ofp-switch.c:203,9'
          Dst:             abort
    - functionName:    ofputil_capabilities_mask
      functionSourceFile: '/src/openvswitch/lib/ofp-switch.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 61
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          47
      EdgeCount:       22
      CyclomaticComplexity: 12
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/ofp-switch.c:46,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    ofputil_switch_features_has_ports
      functionSourceFile: '/src/openvswitch/lib/ofp-switch.c'
      linkageType:     InternalLinkage
      functionLinenumber: 119
      functionLinenumberEnd: 143
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          67
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - ntohs
        - ofpmsg_update_length
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-switch.c:131,9'
          Dst:             ntohs
        - Src:             'lib/ofp-switch.c:141,5'
          Dst:             ofpmsg_update_length
    - functionName:    ntohll
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
        - ntohl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byte-order.h:36,12'
          Dst:             htonl
        - Src:             'lib/byte-order.h:36,44'
          Dst:             ntohl
        - Src:             'lib/byte-order.h:36,62'
          Dst:             ntohl
    - functionName:    ofputil_pull_switch_features
      functionSourceFile: '/src/openvswitch/lib/ofp-switch.c'
      linkageType:     InternalLinkage
      functionLinenumber: 71
      functionLinenumberEnd: 103
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         22
      ICount:          169
      EdgeCount:       28
      CyclomaticComplexity: 8
      functionsReached:
        - htonl
        - ntohl
        - ntohll
        - ofpact_bitmap_from_openflow
        - ofpbuf_pull
        - ofpraw_pull_assert
        - ofputil_capabilities_mask
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-switch.c:73,23'
          Dst:             ofpraw_pull_assert
        - Src:             'lib/ofp-switch.c:74,45'
          Dst:             ofpbuf_pull
        - Src:             'lib/ofp-switch.c:75,29'
          Dst:             ntohll
        - Src:             'lib/ofp-switch.c:76,27'
          Dst:             ntohl
        - Src:             'lib/ofp-switch.c:80,30'
          Dst:             ntohl
        - Src:             'lib/ofp-switch.c:81,9'
          Dst:             ofputil_capabilities_mask
        - Src:             'lib/ofp-switch.c:84,33'
          Dst:             htonl
        - Src:             'lib/ofp-switch.c:87,29'
          Dst:             ofpact_bitmap_from_openflow
        - Src:             'lib/ofp-switch.c:91,33'
          Dst:             htonl
    - functionName:    init_this_module_ofp_table
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 31
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-table.c:31,1'
          Dst:             vlog_insert_module
    - functionName:    mf_bitmap_from_of11
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1998
      functionLinenumberEnd: 2008
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          58
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - bitmap_set1
        - ntohl
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-table.c:2001,21'
          Dst:             ntohl
        - Src:             'lib/ofp-table.c:2005,13'
          Dst:             bitmap_set1
    - functionName:    bitmap_set1
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 96
      functionLinenumberEnd: 98
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - bitmap_bit__
        - bitmap_unit__
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/bitmap.h:97,39'
          Dst:             bitmap_bit__
        - Src:             'lib/bitmap.h:97,6'
          Dst:             bitmap_unit__
    - functionName:    bitmap_bit__
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 32
      functionLinenumberEnd: 33
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    bitmap_unit__
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 26
      functionLinenumberEnd: 27
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_32aligned_be64
      functionSourceFile: '/src/openvswitch/lib/unaligned.h'
      linkageType:     InternalLinkage
      functionLinenumber: 270
      functionLinenumberEnd: 274
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mf_bitmap_from_of10
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1927
      functionLinenumberEnd: 1937
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          58
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - bitmap_set1
        - ntohl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-table.c:1930,21'
          Dst:             ntohl
        - Src:             'lib/ofp-table.c:1934,13'
          Dst:             bitmap_set1
    - functionName:    mf_bitmap_to_of11
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1984
      functionLinenumberEnd: 1993
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          57
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - bitmap_is_set
        - htonl
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-table.c:1989,13'
          Dst:             bitmap_is_set
        - Src:             'lib/ofp-table.c:1993,12'
          Dst:             htonl
    - functionName:    bitmap_is_set
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 90
      functionLinenumberEnd: 91
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - bitmap_bit__
        - bitmap_unit__
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/bitmap.h:91,14'
          Dst:             bitmap_unit__
        - Src:             'lib/bitmap.h:91,46'
          Dst:             bitmap_bit__
    - functionName:    bitmap_not
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 191
      functionLinenumberEnd: 200
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          58
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    htonll
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 30
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byte-order.h:30,12'
          Dst:             htonl
        - Src:             'lib/byte-order.h:30,44'
          Dst:             htonl
        - Src:             'lib/byte-order.h:30,62'
          Dst:             htonl
    - functionName:    put_32aligned_be64
      functionSourceFile: '/src/openvswitch/lib/unaligned.h'
      linkageType:     InternalLinkage
      functionLinenumber: 281
      functionLinenumberEnd: 289
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          19
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mf_bitmap_to_of10
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1913
      functionLinenumberEnd: 1922
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          57
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - bitmap_is_set
        - htonl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-table.c:1918,13'
          Dst:             bitmap_is_set
        - Src:             'lib/ofp-table.c:1922,12'
          Dst:             htonl
    - functionName:    wild_or_nonmatchable_fields
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1884
      functionLinenumberEnd: 1888
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - bitmap_not
        - bitmap_or
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-table.c:1886,5'
          Dst:             bitmap_not
        - Src:             'lib/ofp-table.c:1887,5'
          Dst:             bitmap_or
    - functionName:    bitmap_or
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 179
      functionLinenumberEnd: 185
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         5
      ICount:          42
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofputil_table_action_features_is_superset
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1838
      functionLinenumberEnd: 1840
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - mf_bitmap_is_superset
        - uint_is_superset
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-table.c:1839,13'
          Dst:             uint_is_superset
        - Src:             'lib/ofp-table.c:1840,16'
          Dst:             mf_bitmap_is_superset
    - functionName:    uint_is_superset
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 422
      functionLinenumberEnd: 423
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    bitmap_is_superset
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 259
      functionLinenumberEnd: 267
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          59
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - bitmap_n_longs
        - uint_is_superset
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/bitmap.h:260,22'
          Dst:             bitmap_n_longs
        - Src:             'lib/bitmap.h:262,14'
          Dst:             uint_is_superset
    - functionName:    bitmap_n_longs
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    is_all_digits
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1337
      functionLinenumberEnd: 1338
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - strspn
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-table.c:1338,22'
          Dst:             strspn
    - functionName:    are_names_sequential
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1345
      functionLinenumberEnd: 1359
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          94
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - atoi
        - is_all_digits
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-table.c:1354,13'
          Dst:             is_all_digits
        - Src:             'lib/ofp-table.c:1355,16'
          Dst:             is_all_digits
        - Src:             'lib/ofp-table.c:1356,16'
          Dst:             strlen
        - Src:             'lib/ofp-table.c:1357,16'
          Dst:             strlen
        - Src:             'lib/ofp-table.c:1358,16'
          Dst:             atoi
        - Src:             'lib/ofp-table.c:1358,31'
          Dst:             atoi
    - 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:    28
      BranchProfiles:  []
      Callsites:       []
    - functionName:    count_common_prefix
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1378
      functionLinenumberEnd: 1386
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          70
      EdgeCount:       14
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    count_sequential_suffix_run
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1365
      functionLinenumberEnd: 1371
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          64
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - are_names_sequential
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-table.c:1367,24'
          Dst:             are_names_sequential
    - functionName:    count_common_prefix_run
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1400
      functionLinenumberEnd: 1425
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          118
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - count_common_prefix
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-table.c:1406,31'
          Dst:             count_common_prefix
        - Src:             'lib/ofp-table.c:1414,23'
          Dst:             count_common_prefix
    - functionName:    print_names
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1439
      functionLinenumberEnd: 1472
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          146
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - count_common_prefix_run
        - count_sequential_suffix_run
        - ds_put_char
        - ds_put_format
        - print_names
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-table.c:1443,13'
          Dst:             ds_put_char
        - Src:             'lib/ofp-table.c:1453,29'
          Dst:             count_common_prefix_run
        - Src:             'lib/ofp-table.c:1455,29'
          Dst:             count_sequential_suffix_run
        - Src:             'lib/ofp-table.c:1458,13'
          Dst:             ds_put_format
        - Src:             'lib/ofp-table.c:1460,17'
          Dst:             ds_put_format
        - Src:             'lib/ofp-table.c:1463,13'
          Dst:             ds_put_format
        - Src:             'lib/ofp-table.c:1465,13'
          Dst:             print_names
        - Src:             'lib/ofp-table.c:1466,13'
          Dst:             ds_put_char
    - functionName:    ds_put_char
      functionSourceFile: '/src/openvswitch/./include/openvswitch/dynamic-string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_char__
      functionUses:    14
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/dynamic-string.h:99,9'
          Dst:             ds_put_char__
    - functionName:    mf_from_id
      functionSourceFile: '/src/openvswitch/./include/openvswitch/meta-flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2363
      functionLinenumberEnd: 2366
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/meta-flow.h:2365,5'
          Dst:             ovs_ignore
    - functionName:    print_mf_bitmap
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1476
      functionLinenumberEnd: 1489
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          72
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - bitmap_scan
        - ds_put_char
        - mf_from_id
        - print_names
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-table.c:1481,5'
          Dst:             bitmap_scan
        - Src:             'lib/ofp-table.c:1482,20'
          Dst:             mf_from_id
        - Src:             'lib/ofp-table.c:1481,5'
          Dst:             bitmap_scan
        - Src:             'lib/ofp-table.c:1486,9'
          Dst:             ds_put_char
        - Src:             'lib/ofp-table.c:1487,9'
          Dst:             print_names
    - functionName:    bitmap_scan
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 227
      functionLinenumberEnd: 252
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - bool
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          160
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - bitmap_unit__
        - raw_ctz
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/bitmap.h:231,13'
          Dst:             bitmap_unit__
        - Src:             'lib/bitmap.h:246,18'
          Dst:             raw_ctz
    - functionName:    raw_ctz
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 261
      functionLinenumberEnd: 267
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          36
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    print_table_action_features
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1494
      functionLinenumberEnd: 1506
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          60
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - bitmap_is_all_zeros
        - ds_put_char
        - ds_put_cstr
        - ofpact_bitmap_format
        - print_mf_bitmap
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-table.c:1496,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-table.c:1497,9'
          Dst:             ofpact_bitmap_format
        - Src:             'lib/ofp-table.c:1498,9'
          Dst:             ds_put_char
        - Src:             'lib/ofp-table.c:1501,10'
          Dst:             bitmap_is_all_zeros
        - Src:             'lib/ofp-table.c:1502,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-table.c:1503,9'
          Dst:             print_mf_bitmap
        - Src:             'lib/ofp-table.c:1504,9'
          Dst:             ds_put_char
    - functionName:    bitmap_is_all_zeros
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 273
      functionLinenumberEnd: 274
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - bitmap_scan
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/bitmap.h:274,12'
          Dst:             bitmap_scan
    - functionName:    table_action_features_empty
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1518
      functionLinenumberEnd: 1519
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - bitmap_is_all_zeros
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-table.c:1519,29'
          Dst:             bitmap_is_all_zeros
    - functionName:    table_action_features_equal
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1511
      functionLinenumberEnd: 1513
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - bitmap_equal
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-table.c:1513,16'
          Dst:             bitmap_equal
    - functionName:    bitmap_equal
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 207
      functionLinenumberEnd: 218
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          71
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - bitmap_unit__
        - memcmp
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/bitmap.h:208,9'
          Dst:             memcmp
        - Src:             'lib/bitmap.h:213,31'
          Dst:             bitmap_unit__
        - Src:             'lib/bitmap.h:213,54'
          Dst:             bitmap_unit__
    - functionName:    table_instruction_features_next_equal
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1615
      functionLinenumberEnd: 1635
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          135
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - bitmap_bit__
        - bitmap_equal
        - bitmap_is_set
        - table_instruction_features_next_equal
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-table.c:1617,12'
          Dst:             bitmap_is_set
        - Src:             'lib/ofp-table.c:1618,13'
          Dst:             bitmap_is_set
        - Src:             'lib/ofp-table.c:1622,26'
          Dst:             bitmap_bit__
        - Src:             'lib/ofp-table.c:1630,16'
          Dst:             table_instruction_features_next_equal
        - Src:             'lib/ofp-table.c:1633,16'
          Dst:             bitmap_equal
    - functionName:    ofputil_eviction_flag_to_string
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 847
      functionLinenumberEnd: 857
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       10
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-table.c:850,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    put_table_action_features
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 624
      functionLinenumberEnd: 630
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          44
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohl
        - ofpact_bitmap_to_openflow
        - ofpprop_put_bitmap
        - put_fields_property
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-table.c:626,30'
          Dst:             ofpact_bitmap_to_openflow
        - Src:             'lib/ofp-table.c:626,24'
          Dst:             ntohl
        - Src:             'lib/ofp-table.c:625,5'
          Dst:             ofpprop_put_bitmap
        - Src:             'lib/ofp-table.c:628,5'
          Dst:             put_fields_property
    - functionName:    put_fields_property
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 606
      functionLinenumberEnd: 616
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          83
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - bitmap_is_set
        - bitmap_scan
        - nx_put_header
        - ofpprop_end
        - ofpprop_start
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-table.c:610,17'
          Dst:             ofpprop_start
        - Src:             'lib/ofp-table.c:611,5'
          Dst:             bitmap_scan
        - Src:             'lib/ofp-table.c:613,32'
          Dst:             bitmap_is_set
        - Src:             'lib/ofp-table.c:612,9'
          Dst:             nx_put_header
        - Src:             'lib/ofp-table.c:611,5'
          Dst:             bitmap_scan
        - Src:             'lib/ofp-table.c:615,5'
          Dst:             ofpprop_end
    - functionName:    ovs_list_is_empty
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 320
      functionLinenumberEnd: 321
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ctz64
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 291
      functionLinenumberEnd: 292
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          28
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - raw_ctz
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.h:292,16'
          Dst:             raw_ctz
    - functionName:    bitmap_n_bytes
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - bitmap_n_longs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/bitmap.h:45,12'
          Dst:             bitmap_n_longs
    - functionName:    ofputil_format_table_status
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2401
      functionLinenumberEnd: 2410
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          53
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ds_put_format
        - ofputil_table_desc_format
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-table.c:2403,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-table.c:2405,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-table.c:2408,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-table.c:2409,5'
          Dst:             ofputil_table_desc_format
    - functionName:    ofputil_table_desc_format
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 875
      functionLinenumberEnd: 894
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          83
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_char
        - ds_put_cstr
        - ds_put_format
        - ofputil_format_table
        - ofputil_put_eviction_flags
        - ofputil_table_eviction_to_string
        - ofputil_table_vacancy_to_string
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-table.c:876,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-table.c:877,5'
          Dst:             ofputil_format_table
        - Src:             'lib/ofp-table.c:878,5'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-table.c:880,19'
          Dst:             ofputil_table_eviction_to_string
        - Src:             'lib/ofp-table.c:879,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-table.c:881,5'
          Dst:             ofputil_put_eviction_flags
        - Src:             'lib/ofp-table.c:882,5'
          Dst:             ds_put_char
        - Src:             'lib/ofp-table.c:884,19'
          Dst:             ofputil_table_vacancy_to_string
        - Src:             'lib/ofp-table.c:883,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-table.c:886,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-table.c:888,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-table.c:890,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-table.c:893,5'
          Dst:             ds_put_char
    - functionName:    ofputil_format_table
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 201
      functionLinenumberEnd: 208
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - char
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_format
        - namemap_put_name
        - ofputil_table_map_get_name
      functionUses:    14
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-table.c:202,30'
          Dst:             ofputil_table_map_get_name
        - Src:             'lib/ofp-table.c:204,9'
          Dst:             namemap_put_name
        - Src:             'lib/ofp-table.c:206,9'
          Dst:             ds_put_format
    - functionName:    ofputil_table_eviction_to_string
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58
      functionLinenumberEnd: 65
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          32
      EdgeCount:       10
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/ofp-table.c:59,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    ofputil_put_eviction_flags
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 863
      functionLinenumberEnd: 870
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_cstr
        - ofp_print_bit_names
        - ofputil_eviction_flag_to_string
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-table.c:865,9'
          Dst:             ofp_print_bit_names
        - Src:             'lib/ofp-table.c:865,9'
          Dst:             ofputil_eviction_flag_to_string
        - Src:             'lib/ofp-table.c:868,9'
          Dst:             ds_put_cstr
    - functionName:    ofputil_table_vacancy_to_string
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 69
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          32
      EdgeCount:       10
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/ofp-table.c:70,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    ofputil_table_map_get_name
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 123
      functionLinenumberEnd: 126
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          59
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - namemap_find_by_number
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-table.c:125,17'
          Dst:             namemap_find_by_number
    - functionName:    ofputil_decode_table_status
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2373
      functionLinenumberEnd: 2395
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          86
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - ntohs
        - ofpbuf_pull
        - ofpbuf_use_const
        - ofpraw_pull_assert
        - ofputil_decode_table_desc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-table.c:2379,30'
          Dst:             ntohs
        - Src:             'lib/ofp-table.c:2379,5'
          Dst:             ofpbuf_use_const
        - Src:             'lib/ofp-table.c:2380,11'
          Dst:             ofpraw_pull_assert
        - Src:             'lib/ofp-table.c:2381,11'
          Dst:             ofpbuf_pull
        - Src:             'lib/ofp-table.c:2390,17'
          Dst:             ofputil_decode_table_desc
    - functionName:    ofpbuf_pull
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 258
      functionLinenumberEnd: 269
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          64
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:259,5'
          Dst:             ovs_ignore
    - functionName:    ofputil_decode_table_desc
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 729
      functionLinenumberEnd: 792
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         37
      ICount:          233
      EdgeCount:       46
      CyclomaticComplexity: 11
      functionsReached:
        - ntohs
        - ofpbuf_const_initializer
        - ofpbuf_pull
        - ofpbuf_try_pull
        - ofpprop_parse_u32
        - ofpprop_pull
        - ofpprop_unknown
        - ofpraw_pull_assert
        - ofputil_decode_table_eviction
        - ofputil_decode_table_vacancy
        - parse_table_desc_vacancy_property
        - vlog_rate_limit
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/ofp-table.c:772,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-table.c:733,9'
          Dst:             ofpraw_pull_assert
        - Src:             'lib/ofp-table.c:740,36'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/ofp-table.c:742,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-table.c:748,21'
          Dst:             ntohs
        - Src:             'lib/ofp-table.c:750,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-table.c:756,20'
          Dst:             ofputil_decode_table_eviction
        - Src:             'lib/ofp-table.c:757,19'
          Dst:             ofputil_decode_table_vacancy
        - Src:             'lib/ofp-table.c:761,9'
          Dst:             ofpbuf_pull
        - Src:             'lib/ofp-table.c:760,32'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/ofp-table.c:767,17'
          Dst:             ofpprop_pull
        - Src:             'lib/ofp-table.c:774,21'
          Dst:             ofpprop_parse_u32
        - Src:             'lib/ofp-table.c:778,21'
          Dst:             parse_table_desc_vacancy_property
        - Src:             'lib/ofp-table.c:782,21'
          Dst:             ofpprop_unknown
    - functionName:    ofpbuf_try_pull
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 275
      functionLinenumberEnd: 276
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofpbuf_pull
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:276,30'
          Dst:             ofpbuf_pull
    - functionName:    ofputil_decode_table_eviction
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 956
      functionLinenumberEnd: 958
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-table.c:958,24'
          Dst:             htonl
    - functionName:    ofputil_decode_table_vacancy
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 941
      functionLinenumberEnd: 943
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-table.c:943,24'
          Dst:             htonl
    - functionName:    ofpbuf_const_initializer
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 97
      functionLinenumberEnd: 105
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          30
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    parse_table_desc_vacancy_property
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 708
      functionLinenumberEnd: 719
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          53
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofputil_put_ofp14_table_desc
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2316
      functionLinenumberEnd: 2339
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          96
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htons
        - ofpbuf_at_assert
        - ofpbuf_put_zeros
        - ofpprop_put_u32
        - ofputil_encode_table_config
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-table.c:2322,5'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-table.c:2324,5'
          Dst:             ofpprop_put_u32
        - Src:             'lib/ofp-table.c:2326,11'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-table.c:2327,17'
          Dst:             htons
        - Src:             'lib/ofp-table.c:2328,19'
          Dst:             htons
        - Src:             'lib/ofp-table.c:2333,11'
          Dst:             ofpbuf_at_assert
        - Src:             'lib/ofp-table.c:2334,19'
          Dst:             htons
        - Src:             'lib/ofp-table.c:2336,19'
          Dst:             ofputil_encode_table_config
    - functionName:    ofpbuf_at_assert
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 195
      functionLinenumberEnd: 198
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:196,5'
          Dst:             ovs_ignore
        - Src:             './include/openvswitch/ofpbuf.h:197,5'
          Dst:             ovs_ignore
    - functionName:    ofputil_encode_table_config
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 970
      functionLinenumberEnd: 1016
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          126
      EdgeCount:       51
      CyclomaticComplexity: 27
      functionsReached:
        - abort
        - htonl
      functionUses:    5
      BranchProfiles:
        - Branch String:   'lib/ofp-table.c:974,5'
          Branch Sides:    []
        - Branch String:   'lib/ofp-table.c:982,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-table.c:977,16'
          Dst:             htonl
        - Src:             'lib/ofp-table.c:989,20'
          Dst:             htonl
        - Src:             'lib/ofp-table.c:991,20'
          Dst:             htonl
        - Src:             'lib/ofp-table.c:993,20'
          Dst:             htonl
        - Src:             'lib/ofp-table.c:1000,16'
          Dst:             htonl
        - Src:             'lib/ofp-table.c:1012,16'
          Dst:             htonl
        - Src:             'lib/ofp-table.c:1015,5'
          Dst:             abort
    - functionName:    ofputil_encode_table_status
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2347
      functionLinenumberEnd: 2366
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          63
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
        - ofpbuf_put_zeros
        - ofpmsg_update_length
        - ofpraw_alloc_xid
        - ofputil_protocol_to_ofp_version
        - ofputil_put_ofp14_table_desc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-table.c:2351,15'
          Dst:             ofputil_protocol_to_ofp_version
        - Src:             'lib/ofp-table.c:2357,44'
          Dst:             htonl
        - Src:             'lib/ofp-table.c:2357,13'
          Dst:             ofpraw_alloc_xid
        - Src:             'lib/ofp-table.c:2358,15'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-table.c:2360,9'
          Dst:             ofputil_put_ofp14_table_desc
        - Src:             'lib/ofp-table.c:2361,9'
          Dst:             ofpmsg_update_length
    - functionName:    ofp_table_reason_to_string
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2299
      functionLinenumberEnd: 2311
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          43
      EdgeCount:       13
      CyclomaticComplexity: 8
      functionsReached:
        - snprintf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-table.c:2300,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-table.c:2308,9'
          Dst:             snprintf
    - functionName:    ofputil_decode_ofp13_table_stats
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2234
      functionLinenumberEnd: 2250
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          69
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ntohl
        - ntohll
        - ofpbuf_try_pull
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-table.c:2237,11'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/ofp-table.c:2245,27'
          Dst:             ntohl
        - Src:             'lib/ofp-table.c:2246,27'
          Dst:             ntohll
        - Src:             'lib/ofp-table.c:2247,28'
          Dst:             ntohll
    - functionName:    ntohll
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
        - ntohl
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byte-order.h:36,12'
          Dst:             htonl
        - Src:             'lib/byte-order.h:36,44'
          Dst:             ntohl
        - Src:             'lib/byte-order.h:36,62'
          Dst:             ntohl
    - functionName:    ofputil_decode_ofp12_table_stats
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2189
      functionLinenumberEnd: 2228
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          178
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - bitmap_or
        - ntohl
        - ntohll
        - ofpact_bitmap_from_openflow
        - ofpbuf_try_pull
        - ofputil_decode_table_miss
        - ovs_strlcpy
        - ovsinst_bitmap_from_openflow
        - oxm_bitmap_to_mf_bitmap
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-table.c:2192,11'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/ofp-table.c:2198,5'
          Dst:             ovs_strlcpy
        - Src:             'lib/ofp-table.c:2201,29'
          Dst:             ofputil_decode_table_miss
        - Src:             'lib/ofp-table.c:2203,29'
          Dst:             ntohl
        - Src:             'lib/ofp-table.c:2205,38'
          Dst:             ovsinst_bitmap_from_openflow
        - Src:             'lib/ofp-table.c:2207,39'
          Dst:             ofpact_bitmap_from_openflow
        - Src:             'lib/ofp-table.c:2209,39'
          Dst:             ofpact_bitmap_from_openflow
        - Src:             'lib/ofp-table.c:2211,42'
          Dst:             oxm_bitmap_to_mf_bitmap
        - Src:             'lib/ofp-table.c:2213,42'
          Dst:             oxm_bitmap_to_mf_bitmap
        - Src:             'lib/ofp-table.c:2217,23'
          Dst:             oxm_bitmap_to_mf_bitmap
        - Src:             'lib/ofp-table.c:2218,26'
          Dst:             oxm_bitmap_to_mf_bitmap
        - Src:             'lib/ofp-table.c:2220,5'
          Dst:             bitmap_or
        - Src:             'lib/ofp-table.c:2223,27'
          Dst:             ntohl
        - Src:             'lib/ofp-table.c:2224,27'
          Dst:             ntohll
        - Src:             'lib/ofp-table.c:2225,28'
          Dst:             ntohll
    - functionName:    ofputil_decode_table_miss
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1027
      functionLinenumberEnd: 1048
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          87
      EdgeCount:       20
      CyclomaticComplexity: 4
      functionsReached:
        - ntohl
        - vlog_rate_limit
      functionUses:    4
      BranchProfiles:
        - Branch String:   'lib/ofp-table.c:1031,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-table.c:1028,23'
          Dst:             ntohl
        - Src:             'lib/ofp-table.c:1042,13'
          Dst:             vlog_rate_limit
    - functionName:    ofputil_decode_ofp11_table_stats
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2153
      functionLinenumberEnd: 2183
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          146
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - bitmap_or
        - mf_bitmap_from_of11
        - ntohl
        - ntohll
        - ofpact_bitmap_from_openflow
        - ofpbuf_try_pull
        - ofputil_decode_table_miss
        - ovs_strlcpy
        - ovsinst_bitmap_from_openflow
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-table.c:2156,11'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/ofp-table.c:2162,5'
          Dst:             ovs_strlcpy
        - Src:             'lib/ofp-table.c:2163,29'
          Dst:             ntohl
        - Src:             'lib/ofp-table.c:2164,38'
          Dst:             ovsinst_bitmap_from_openflow
        - Src:             'lib/ofp-table.c:2166,39'
          Dst:             ofpact_bitmap_from_openflow
        - Src:             'lib/ofp-table.c:2168,39'
          Dst:             ofpact_bitmap_from_openflow
        - Src:             'lib/ofp-table.c:2171,29'
          Dst:             ofputil_decode_table_miss
        - Src:             'lib/ofp-table.c:2173,23'
          Dst:             mf_bitmap_from_of11
        - Src:             'lib/ofp-table.c:2174,26'
          Dst:             mf_bitmap_from_of11
        - Src:             'lib/ofp-table.c:2175,5'
          Dst:             bitmap_or
        - Src:             'lib/ofp-table.c:2178,27'
          Dst:             ntohl
        - Src:             'lib/ofp-table.c:2179,27'
          Dst:             ntohll
        - Src:             'lib/ofp-table.c:2180,28'
          Dst:             ntohll
    - functionName:    ofputil_decode_ofp10_table_stats
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2128
      functionLinenumberEnd: 2147
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          94
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - get_32aligned_be64
        - mf_bitmap_from_of10
        - ntohl
        - ntohll
        - ofpbuf_try_pull
        - ovs_strlcpy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-table.c:2131,11'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/ofp-table.c:2137,5'
          Dst:             ovs_strlcpy
        - Src:             'lib/ofp-table.c:2138,29'
          Dst:             ntohl
        - Src:             'lib/ofp-table.c:2139,44'
          Dst:             mf_bitmap_from_of10
        - Src:             'lib/ofp-table.c:2142,27'
          Dst:             ntohl
        - Src:             'lib/ofp-table.c:2143,34'
          Dst:             get_32aligned_be64
        - Src:             'lib/ofp-table.c:2143,27'
          Dst:             ntohll
        - Src:             'lib/ofp-table.c:2144,35'
          Dst:             get_32aligned_be64
        - Src:             'lib/ofp-table.c:2144,28'
          Dst:             ntohll
    - functionName:    ofputil_decode_table_stats_reply
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2256
      functionLinenumberEnd: 2291
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          117
      EdgeCount:       17
      CyclomaticComplexity: 2
      functionsReached:
        - abort
        - ofpraw_pull_assert
        - ofputil_decode_ofp10_table_stats
        - ofputil_decode_ofp11_table_stats
        - ofputil_decode_ofp12_table_stats
        - ofputil_decode_ofp13_table_stats
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-table.c:2273,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-table.c:2260,9'
          Dst:             ofpraw_pull_assert
        - Src:             'lib/ofp-table.c:2275,16'
          Dst:             ofputil_decode_ofp10_table_stats
        - Src:             'lib/ofp-table.c:2278,16'
          Dst:             ofputil_decode_ofp11_table_stats
        - Src:             'lib/ofp-table.c:2281,16'
          Dst:             ofputil_decode_ofp12_table_stats
        - Src:             'lib/ofp-table.c:2286,16'
          Dst:             ofputil_decode_ofp13_table_stats
        - Src:             'lib/ofp-table.c:2289,9'
          Dst:             abort
    - functionName:    ofputil_put_ofp13_table_stats
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2075
      functionLinenumberEnd: 2083
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
        - htonll
        - ofpbuf_put_zeros
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-table.c:2078,11'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-table.c:2080,25'
          Dst:             htonl
        - Src:             'lib/ofp-table.c:2081,25'
          Dst:             htonll
        - Src:             'lib/ofp-table.c:2082,26'
          Dst:             htonll
    - functionName:    ofputil_put_ofp12_table_stats
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2041
      functionLinenumberEnd: 2070
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          135
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
        - htonll
        - ofpact_bitmap_to_openflow
        - ofpbuf_put_zeros
        - ofputil_encode_table_config
        - ovs_strlcpy
        - ovsinst_bitmap_to_openflow
        - oxm_bitmap_from_mf_bitmap
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-table.c:2044,11'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-table.c:2046,5'
          Dst:             ovs_strlcpy
        - Src:             'lib/ofp-table.c:2047,18'
          Dst:             oxm_bitmap_from_mf_bitmap
        - Src:             'lib/ofp-table.c:2048,22'
          Dst:             oxm_bitmap_from_mf_bitmap
        - Src:             'lib/ofp-table.c:2050,26'
          Dst:             ofpact_bitmap_to_openflow
        - Src:             'lib/ofp-table.c:2052,26'
          Dst:             ofpact_bitmap_to_openflow
        - Src:             'lib/ofp-table.c:2054,28'
          Dst:             oxm_bitmap_from_mf_bitmap
        - Src:             'lib/ofp-table.c:2056,28'
          Dst:             oxm_bitmap_from_mf_bitmap
        - Src:             'lib/ofp-table.c:2060,25'
          Dst:             ovsinst_bitmap_to_openflow
        - Src:             'lib/ofp-table.c:2062,19'
          Dst:             ofputil_encode_table_config
        - Src:             'lib/ofp-table.c:2066,24'
          Dst:             htonl
        - Src:             'lib/ofp-table.c:2067,25'
          Dst:             htonl
        - Src:             'lib/ofp-table.c:2068,25'
          Dst:             htonll
        - Src:             'lib/ofp-table.c:2069,26'
          Dst:             htonll
    - functionName:    ofputil_put_ofp11_table_stats
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2015
      functionLinenumberEnd: 2035
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          108
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
        - htonll
        - mf_bitmap_to_of11
        - ofpact_bitmap_to_openflow
        - ofpbuf_put_zeros
        - ovs_strlcpy
        - ovsinst_bitmap_to_openflow
        - wild_or_nonmatchable_fields
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-table.c:2016,27'
          Dst:             wild_or_nonmatchable_fields
        - Src:             'lib/ofp-table.c:2019,11'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-table.c:2021,5'
          Dst:             ovs_strlcpy
        - Src:             'lib/ofp-table.c:2022,22'
          Dst:             mf_bitmap_to_of11
        - Src:             'lib/ofp-table.c:2023,18'
          Dst:             mf_bitmap_to_of11
        - Src:             'lib/ofp-table.c:2024,25'
          Dst:             ovsinst_bitmap_to_openflow
        - Src:             'lib/ofp-table.c:2026,26'
          Dst:             ofpact_bitmap_to_openflow
        - Src:             'lib/ofp-table.c:2028,26'
          Dst:             ofpact_bitmap_to_openflow
        - Src:             'lib/ofp-table.c:2030,19'
          Dst:             htonl
        - Src:             'lib/ofp-table.c:2031,24'
          Dst:             htonl
        - Src:             'lib/ofp-table.c:2032,25'
          Dst:             htonl
        - Src:             'lib/ofp-table.c:2033,25'
          Dst:             htonll
        - Src:             'lib/ofp-table.c:2034,26'
          Dst:             htonll
    - functionName:    ofputil_put_ofp10_table_stats
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1944
      functionLinenumberEnd: 1956
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          69
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
        - htonll
        - mf_bitmap_to_of10
        - ofpbuf_put_zeros
        - ovs_strlcpy
        - put_32aligned_be64
        - wild_or_nonmatchable_fields
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-table.c:1945,27'
          Dst:             wild_or_nonmatchable_fields
        - Src:             'lib/ofp-table.c:1948,11'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-table.c:1950,5'
          Dst:             ovs_strlcpy
        - Src:             'lib/ofp-table.c:1951,22'
          Dst:             mf_bitmap_to_of10
        - Src:             'lib/ofp-table.c:1952,24'
          Dst:             htonl
        - Src:             'lib/ofp-table.c:1953,25'
          Dst:             htonl
        - Src:             'lib/ofp-table.c:1954,44'
          Dst:             htonll
        - Src:             'lib/ofp-table.c:1954,5'
          Dst:             put_32aligned_be64
        - Src:             'lib/ofp-table.c:1955,45'
          Dst:             htonll
        - Src:             'lib/ofp-table.c:1955,5'
          Dst:             put_32aligned_be64
    - functionName:    ofputil_append_table_stats_reply
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2095
      functionLinenumberEnd: 2122
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          85
      EdgeCount:       22
      CyclomaticComplexity: 12
      functionsReached:
        - abort
        - ofputil_put_ofp10_table_stats
        - ofputil_put_ofp11_table_stats
        - ofputil_put_ofp12_table_stats
        - ofputil_put_ofp13_table_stats
        - ovs_ignore
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib/ofp-table.c:2100,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-table.c:2098,5'
          Dst:             ovs_ignore
        - Src:             'lib/ofp-table.c:2102,9'
          Dst:             ofputil_put_ofp10_table_stats
        - Src:             'lib/ofp-table.c:2106,9'
          Dst:             ofputil_put_ofp11_table_stats
        - Src:             'lib/ofp-table.c:2110,9'
          Dst:             ofputil_put_ofp12_table_stats
        - Src:             'lib/ofp-table.c:2116,9'
          Dst:             ofputil_put_ofp13_table_stats
        - Src:             'lib/ofp-table.c:2120,9'
          Dst:             abort
    - functionName:    ofputil_encode_table_stats_reply
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2087
      functionLinenumberEnd: 2088
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpraw_alloc_stats_reply
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-table.c:2088,12'
          Dst:             ofpraw_alloc_stats_reply
    - functionName:    ofputil_table_instruction_features_is_superset
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1848
      functionLinenumberEnd: 1854
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          61
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - bitmap_is_superset
        - ofputil_table_action_features_is_superset
        - uint_is_superset
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-table.c:1849,13'
          Dst:             bitmap_is_superset
        - Src:             'lib/ofp-table.c:1850,16'
          Dst:             uint_is_superset
        - Src:             'lib/ofp-table.c:1851,16'
          Dst:             ofputil_table_action_features_is_superset
        - Src:             'lib/ofp-table.c:1853,16'
          Dst:             ofputil_table_action_features_is_superset
    - functionName:    be64_is_superset
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 446
      functionLinenumberEnd: 447
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofputil_table_features_are_superset
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1862
      functionLinenumberEnd: 1874
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         22
      ICount:          128
      EdgeCount:       31
      CyclomaticComplexity: 11
      functionsReached:
        - be64_is_superset
        - mf_bitmap_is_superset
        - ofputil_table_instruction_features_is_superset
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-table.c:1863,13'
          Dst:             be64_is_superset
        - Src:             'lib/ofp-table.c:1864,16'
          Dst:             be64_is_superset
        - Src:             'lib/ofp-table.c:1868,16'
          Dst:             ofputil_table_instruction_features_is_superset
        - Src:             'lib/ofp-table.c:1870,16'
          Dst:             ofputil_table_instruction_features_is_superset
        - Src:             'lib/ofp-table.c:1872,16'
          Dst:             mf_bitmap_is_superset
        - Src:             'lib/ofp-table.c:1873,16'
          Dst:             mf_bitmap_is_superset
        - Src:             'lib/ofp-table.c:1874,16'
          Dst:             mf_bitmap_is_superset
    - functionName:    print_matches
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1591
      functionLinenumberEnd: 1601
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          84
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - bitmap_is_all_zeros
        - ds_put_char
        - ds_put_format
        - mf_bitmap_and
        - mf_bitmap_not
        - print_mf_bitmap
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-table.c:1592,49'
          Dst:             mf_bitmap_not
        - Src:             'lib/ofp-table.c:1593,51'
          Dst:             mf_bitmap_not
        - Src:             'lib/ofp-table.c:1594,57'
          Dst:             mf_bitmap_and
        - Src:             'lib/ofp-table.c:1594,33'
          Dst:             mf_bitmap_and
        - Src:             'lib/ofp-table.c:1596,10'
          Dst:             bitmap_is_all_zeros
        - Src:             'lib/ofp-table.c:1597,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-table.c:1598,9'
          Dst:             print_mf_bitmap
        - Src:             'lib/ofp-table.c:1599,9'
          Dst:             ds_put_char
    - functionName:    print_table_instruction_features
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1527
      functionLinenumberEnd: 1586
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         54
      ICount:          305
      EdgeCount:       71
      CyclomaticComplexity: 19
      functionsReached:
        - bitmap_is_all_zeros
        - bitmap_scan
        - ds_chomp
        - ds_last
        - ds_put_char
        - ds_put_cstr
        - ds_put_format
        - ovs_instruction_name_from_type
        - print_table_action_features
        - table_action_features_equal
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-table.c:1530,10'
          Dst:             bitmap_is_all_zeros
        - Src:             'lib/ofp-table.c:1531,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-table.c:1532,22'
          Dst:             bitmap_scan
        - Src:             'lib/ofp-table.c:1534,19'
          Dst:             bitmap_scan
        - Src:             'lib/ofp-table.c:1536,17'
          Dst:             ds_put_format
        - Src:             'lib/ofp-table.c:1538,17'
          Dst:             ds_put_format
        - Src:             'lib/ofp-table.c:1533,22'
          Dst:             bitmap_scan
        - Src:             'lib/ofp-table.c:1541,9'
          Dst:             ds_chomp
        - Src:             'lib/ofp-table.c:1542,13'
          Dst:             ds_last
        - Src:             'lib/ofp-table.c:1543,13'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-table.c:1545,9'
          Dst:             ds_put_char
        - Src:             'lib/ofp-table.c:1550,13'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-table.c:1552,13'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-table.c:1557,40'
          Dst:             ovs_instruction_name_from_type
        - Src:             'lib/ofp-table.c:1559,25'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-table.c:1561,25'
          Dst:             ds_put_format
        - Src:             'lib/ofp-table.c:1563,21'
          Dst:             ds_put_char
        - Src:             'lib/ofp-table.c:1566,13'
          Dst:             ds_chomp
        - Src:             'lib/ofp-table.c:1567,13'
          Dst:             ds_put_char
        - Src:             'lib/ofp-table.c:1572,12'
          Dst:             table_action_features_equal
        - Src:             'lib/ofp-table.c:1573,12'
          Dst:             table_action_features_equal
        - Src:             'lib/ofp-table.c:1574,13'
          Dst:             bitmap_is_all_zeros
        - Src:             'lib/ofp-table.c:1575,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-table.c:1576,17'
          Dst:             table_action_features_equal
        - Src:             'lib/ofp-table.c:1577,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-table.c:1578,9'
          Dst:             print_table_action_features
        - Src:             'lib/ofp-table.c:1579,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-table.c:1580,9'
          Dst:             print_table_action_features
        - Src:             'lib/ofp-table.c:1582,20'
          Dst:             bitmap_is_all_zeros
        - Src:             'lib/ofp-table.c:1583,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-table.c:1584,9'
          Dst:             print_table_action_features
    - functionName:    table_instruction_features_empty
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1652
      functionLinenumberEnd: 1656
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          48
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - bitmap_is_all_zeros
        - table_action_features_empty
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-table.c:1653,13'
          Dst:             bitmap_is_all_zeros
        - Src:             'lib/ofp-table.c:1655,16'
          Dst:             table_action_features_empty
        - Src:             'lib/ofp-table.c:1656,16'
          Dst:             table_action_features_empty
    - functionName:    table_instruction_features_equal
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1641
      functionLinenumberEnd: 1646
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          66
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - table_action_features_equal
        - table_instruction_features_next_equal
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-table.c:1642,13'
          Dst:             table_instruction_features_next_equal
        - Src:             'lib/ofp-table.c:1645,16'
          Dst:             table_action_features_equal
        - Src:             'lib/ofp-table.c:1646,16'
          Dst:             table_action_features_equal
    - functionName:    table_features_empty
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1678
      functionLinenumberEnd: 1687
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         20
      ICount:          99
      EdgeCount:       28
      CyclomaticComplexity: 10
      functionsReached:
        - bitmap_is_all_zeros
        - table_instruction_features_empty
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-table.c:1685,16'
          Dst:             table_instruction_features_empty
        - Src:             'lib/ofp-table.c:1686,16'
          Dst:             table_instruction_features_empty
        - Src:             'lib/ofp-table.c:1687,16'
          Dst:             bitmap_is_all_zeros
    - functionName:    ofputil_table_features_format_finish
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1820
      functionLinenumberEnd: 1831
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - ds_put_char
        - ds_put_format
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-table.c:1825,5'
          Dst:             ds_put_char
        - Src:             'lib/ofp-table.c:1827,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-table.c:1829,9'
          Dst:             ds_put_format
    - functionName:    table_features_equal
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1662
      functionLinenumberEnd: 1673
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         20
      ICount:          143
      EdgeCount:       28
      CyclomaticComplexity: 10
      functionsReached:
        - bitmap_equal
        - table_instruction_features_equal
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-table.c:1669,16'
          Dst:             table_instruction_features_equal
        - Src:             'lib/ofp-table.c:1671,16'
          Dst:             table_instruction_features_equal
        - Src:             'lib/ofp-table.c:1673,16'
          Dst:             bitmap_equal
    - functionName:    table_stats_equal
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1693
      functionLinenumberEnd: 1696
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofp15_table_features_command_to_string
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 95
      functionLinenumberEnd: 103
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          37
      EdgeCount:       12
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-table.c:96,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    ofputil_table_features_format
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1707
      functionLinenumberEnd: 1815
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         96
      ICount:          557
      EdgeCount:       129
      CyclomaticComplexity: 35
      functionsReached:
        - bitmap_equal
        - bitmap_is_all_zeros
        - ds_put_char
        - ds_put_cstr
        - ds_put_format
        - ntohll
        - ofp15_table_features_command_to_string
        - ofputil_table_features_format_finish
        - ofputil_table_miss_to_string
        - print_matches
        - print_table_instruction_features
        - table_features_empty
        - table_features_equal
        - table_instruction_features_empty
        - table_instruction_features_equal
        - table_stats_equal
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-table.c:1710,23'
          Dst:             ofp15_table_features_command_to_string
        - Src:             'lib/ofp-table.c:1709,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-table.c:1718,37'
          Dst:             table_stats_equal
        - Src:             'lib/ofp-table.c:1719,43'
          Dst:             table_features_equal
        - Src:             'lib/ofp-table.c:1728,5'
          Dst:             ofputil_table_features_format_finish
        - Src:             'lib/ofp-table.c:1731,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-table.c:1733,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-table.c:1735,5'
          Dst:             ds_put_char
        - Src:             'lib/ofp-table.c:1738,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-table.c:1741,5'
          Dst:             ds_put_char
        - Src:             'lib/ofp-table.c:1743,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-table.c:1744,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-table.c:1745,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-table.c:1748,14'
          Dst:             table_features_empty
        - Src:             'lib/ofp-table.c:1749,13'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-table.c:1755,23'
          Dst:             ntohll
        - Src:             'lib/ofp-table.c:1756,23'
          Dst:             ntohll
        - Src:             'lib/ofp-table.c:1754,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-table.c:1761,23'
          Dst:             ofputil_table_miss_to_string
        - Src:             'lib/ofp-table.c:1760,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-table.c:1765,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-table.c:1770,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-table.c:1776,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-table.c:1784,12'
          Dst:             table_instruction_features_equal
        - Src:             'lib/ofp-table.c:1786,12'
          Dst:             table_instruction_features_equal
        - Src:             'lib/ofp-table.c:1788,14'
          Dst:             table_instruction_features_empty
        - Src:             'lib/ofp-table.c:1789,13'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-table.c:1791,17'
          Dst:             table_instruction_features_equal
        - Src:             'lib/ofp-table.c:1793,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-table.c:1794,9'
          Dst:             print_table_instruction_features
        - Src:             'lib/ofp-table.c:1795,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-table.c:1796,9'
          Dst:             print_table_instruction_features
        - Src:             'lib/ofp-table.c:1797,17'
          Dst:             table_instruction_features_empty
        - Src:             'lib/ofp-table.c:1798,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-table.c:1799,9'
          Dst:             print_table_instruction_features
        - Src:             'lib/ofp-table.c:1802,10'
          Dst:             bitmap_is_all_zeros
        - Src:             'lib/ofp-table.c:1804,16'
          Dst:             bitmap_equal
        - Src:             'lib/ofp-table.c:1806,13'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-table.c:1808,13'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-table.c:1810,13'
          Dst:             print_matches
        - Src:             'lib/ofp-table.c:1811,13'
          Dst:             print_matches
        - Src:             'lib/ofp-table.c:1812,13'
          Dst:             print_matches
    - functionName:    ofputil_table_miss_to_string
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          37
      EdgeCount:       12
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/ofp-table.c:47,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    parse_ofp_table_vacancy
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1212
      functionLinenumberEnd: 1255
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         25
      ICount:          142
      EdgeCount:       34
      CyclomaticComplexity: 11
      functionsReached:
        - ofperr_to_string
        - str_to_int
        - strtok_r
        - xasprintf
        - xstrdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-table.c:1215,19'
          Dst:             xstrdup
        - Src:             'lib/ofp-table.c:1219,5'
          Dst:             strtok_r
        - Src:             'lib/ofp-table.c:1220,16'
          Dst:             strtok_r
        - Src:             'lib/ofp-table.c:1222,19'
          Dst:             xasprintf
        - Src:             'lib/ofp-table.c:1225,10'
          Dst:             str_to_int
        - Src:             'lib/ofp-table.c:1227,19'
          Dst:             xasprintf
        - Src:             'lib/ofp-table.c:1230,14'
          Dst:             strtok_r
        - Src:             'lib/ofp-table.c:1232,19'
          Dst:             xasprintf
        - Src:             'lib/ofp-table.c:1235,10'
          Dst:             str_to_int
        - Src:             'lib/ofp-table.c:1237,19'
          Dst:             xasprintf
        - Src:             'lib/ofp-table.c:1243,29'
          Dst:             ofperr_to_string
        - Src:             'lib/ofp-table.c:1241,19'
          Dst:             xasprintf
    - functionName:    parse_ofp_table_mod
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1272
      functionLinenumberEnd: 1332
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         43
      ICount:          266
      EdgeCount:       57
      CyclomaticComplexity: 16
      functionsReached:
        - ofputil_table_from_string
        - parse_ofp_table_vacancy
        - strcasecmp
        - strcmp
        - strcspn
        - strncmp
        - xasprintf
        - xstrdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-table.c:1275,10'
          Dst:             strcasecmp
        - Src:             'lib/ofp-table.c:1277,17'
          Dst:             ofputil_table_from_string
        - Src:             'lib/ofp-table.c:1279,16'
          Dst:             xasprintf
        - Src:             'lib/ofp-table.c:1293,10'
          Dst:             strcmp
        - Src:             'lib/ofp-table.c:1296,17'
          Dst:             strcmp
        - Src:             'lib/ofp-table.c:1299,17'
          Dst:             strcmp
        - Src:             'lib/ofp-table.c:1302,17'
          Dst:             strcmp
        - Src:             'lib/ofp-table.c:1305,17'
          Dst:             strcmp
        - Src:             'lib/ofp-table.c:1308,45'
          Dst:             strcspn
        - Src:             'lib/ofp-table.c:1308,17'
          Dst:             strncmp
        - Src:             'lib/ofp-table.c:1311,23'
          Dst:             parse_ofp_table_vacancy
        - Src:             'lib/ofp-table.c:1315,17'
          Dst:             strcmp
        - Src:             'lib/ofp-table.c:1318,46'
          Dst:             strncmp
        - Src:             'lib/ofp-table.c:1323,16'
          Dst:             xasprintf
        - Src:             'lib/ofp-table.c:1328,16'
          Dst:             xstrdup
    - functionName:    ofputil_table_from_string
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 158
      functionLinenumberEnd: 194
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         32
      ICount:          177
      EdgeCount:       42
      CyclomaticComplexity: 12
      functionsReached:
        - json_string_unescape
        - ofputil_table_map_get_number
        - str_to_uint
        - strlen
        - vlog
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-table.c:161,9'
          Dst:             vlog
        - Src:             'lib/ofp-table.c:166,9'
          Dst:             str_to_uint
        - Src:             'lib/ofp-table.c:168,13'
          Dst:             vlog
        - Src:             'lib/ofp-table.c:176,21'
          Dst:             ofputil_table_map_get_number
        - Src:             'lib/ofp-table.c:178,29'
          Dst:             strlen
        - Src:             'lib/ofp-table.c:182,20'
          Dst:             json_string_unescape
        - Src:             'lib/ofp-table.c:183,25'
          Dst:             ofputil_table_map_get_number
    - functionName:    ofputil_table_map_get_number
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 132
      functionLinenumberEnd: 135
      functionDepth:   0
      returnType:      char
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          59
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - namemap_find_by_name
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-table.c:134,17'
          Dst:             namemap_find_by_name
    - functionName:    ofputil_table_mod_format
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1171
      functionLinenumberEnd: 1200
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          146
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - ds_put_cstr
        - ds_put_format
        - ofputil_format_table
        - ofputil_put_eviction_flags
        - ofputil_table_eviction_to_string
        - ofputil_table_miss_to_string
        - ofputil_table_vacancy_to_string
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-table.c:1173,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-table.c:1175,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-table.c:1176,9'
          Dst:             ofputil_format_table
        - Src:             'lib/ofp-table.c:1181,23'
          Dst:             ofputil_table_miss_to_string
        - Src:             'lib/ofp-table.c:1180,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-table.c:1185,23'
          Dst:             ofputil_table_eviction_to_string
        - Src:             'lib/ofp-table.c:1184,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-table.c:1188,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-table.c:1189,9'
          Dst:             ofputil_put_eviction_flags
        - Src:             'lib/ofp-table.c:1193,23'
          Dst:             ofputil_table_vacancy_to_string
        - Src:             'lib/ofp-table.c:1192,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-table.c:1195,13'
          Dst:             ds_put_format
    - functionName:    ofputil_encode_table_mod
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1117
      functionLinenumberEnd: 1165
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          164
      EdgeCount:       37
      CyclomaticComplexity: 20
      functionsReached:
        - abort
        - ofpbuf_put_zeros
        - ofpprop_put_u32
        - ofpprop_put_zeros
        - ofpraw_alloc
        - ofputil_encode_table_config
        - ofputil_protocol_to_ofp_version
        - ovs_fatal
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib/ofp-table.c:1121,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-table.c:1118,36'
          Dst:             ofputil_protocol_to_ofp_version
        - Src:             'lib/ofp-table.c:1123,9'
          Dst:             ovs_fatal
        - Src:             'lib/ofp-table.c:1132,13'
          Dst:             ofpraw_alloc
        - Src:             'lib/ofp-table.c:1133,15'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-table.c:1135,23'
          Dst:             ofputil_encode_table_config
        - Src:             'lib/ofp-table.c:1143,13'
          Dst:             ofpraw_alloc
        - Src:             'lib/ofp-table.c:1144,15'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-table.c:1146,23'
          Dst:             ofputil_encode_table_config
        - Src:             'lib/ofp-table.c:1150,13'
          Dst:             ofpprop_put_u32
        - Src:             'lib/ofp-table.c:1155,19'
          Dst:             ofpprop_put_zeros
        - Src:             'lib/ofp-table.c:1162,9'
          Dst:             abort
    - functionName:    parse_table_mod_vacancy_property
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 904
      functionLinenumberEnd: 930
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         30
      ICount:          176
      EdgeCount:       38
      CyclomaticComplexity: 10
      functionsReached:
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-table.c:913,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-table.c:919,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-table.c:925,9'
          Dst:             vlog_rate_limit
    - functionName:    ofputil_decode_table_mod
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1055
      functionLinenumberEnd: 1109
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          186
      EdgeCount:       25
      CyclomaticComplexity: 6
      functionsReached:
        - ntohs
        - ofpbuf_const_initializer
        - ofpbuf_pull
        - ofpprop_parse_u32
        - ofpprop_pull
        - ofpraw_pull_assert
        - ofputil_decode_table_eviction
        - ofputil_decode_table_miss
        - ofputil_decode_table_vacancy
        - parse_table_mod_vacancy_property
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-table.c:1086,13'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-table.c:1062,52'
          Dst:             ntohs
        - Src:             'lib/ofp-table.c:1062,23'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/ofp-table.c:1063,23'
          Dst:             ofpraw_pull_assert
        - Src:             'lib/ofp-table.c:1068,20'
          Dst:             ofputil_decode_table_miss
        - Src:             'lib/ofp-table.c:1070,45'
          Dst:             ofpbuf_pull
        - Src:             'lib/ofp-table.c:1073,20'
          Dst:             ofputil_decode_table_miss
        - Src:             'lib/ofp-table.c:1074,24'
          Dst:             ofputil_decode_table_eviction
        - Src:             'lib/ofp-table.c:1075,23'
          Dst:             ofputil_decode_table_vacancy
        - Src:             'lib/ofp-table.c:1081,21'
          Dst:             ofpprop_pull
        - Src:             'lib/ofp-table.c:1088,25'
          Dst:             ofpprop_parse_u32
        - Src:             'lib/ofp-table.c:1092,25'
          Dst:             parse_table_mod_vacancy_property
    - functionName:    ofputil_append_table_desc_reply
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 817
      functionLinenumberEnd: 843
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          124
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - htons
        - ofpbuf_at_assert
        - ofpbuf_from_list
        - ofpbuf_put_zeros
        - ofpmp_postappend
        - ofpprop_put_u32
        - ofpprop_put_zeros
        - ofputil_encode_table_config
        - ovs_list_back
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-table.c:818,45'
          Dst:             ovs_list_back
        - Src:             'lib/ofp-table.c:818,28'
          Dst:             ofpbuf_from_list
        - Src:             'lib/ofp-table.c:823,5'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-table.c:825,9'
          Dst:             ofpprop_put_u32
        - Src:             'lib/ofp-table.c:830,15'
          Dst:             ofpprop_put_zeros
        - Src:             'lib/ofp-table.c:836,11'
          Dst:             ofpbuf_at_assert
        - Src:             'lib/ofp-table.c:837,19'
          Dst:             htons
        - Src:             'lib/ofp-table.c:839,19'
          Dst:             ofputil_encode_table_config
        - Src:             'lib/ofp-table.c:842,5'
          Dst:             ofpmp_postappend
    - functionName:    ovs_list_back
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 295
      functionLinenumberEnd: 300
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovs_list_is_empty
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/list.h:298,17'
          Dst:             ovs_list_is_empty
        - Src:             './include/openvswitch/list.h:298,5'
          Dst:             ovs_ignore
    - functionName:    ofpbuf_from_list
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 280
      functionLinenumberEnd: 281
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofputil_encode_table_desc_request
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 798
      functionLinenumberEnd: 809
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       6
      CyclomaticComplexity: 2
      functionsReached:
        - ofpraw_alloc
        - ovs_fatal
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-table.c:802,19'
          Dst:             ofpraw_alloc
        - Src:             'lib/ofp-table.c:805,9'
          Dst:             ovs_fatal
    - functionName:    put_table_instruction_features
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 636
      functionLinenumberEnd: 656
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          86
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - bitmap_scan
        - ntohl
        - ofpbuf_put
        - ofpprop_end
        - ofpprop_put_bitmap
        - ofpprop_start
        - ovsinst_bitmap_to_openflow
        - put_table_action_features
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-table.c:641,30'
          Dst:             ovsinst_bitmap_to_openflow
        - Src:             'lib/ofp-table.c:641,24'
          Dst:             ntohl
        - Src:             'lib/ofp-table.c:640,5'
          Dst:             ofpprop_put_bitmap
        - Src:             'lib/ofp-table.c:644,17'
          Dst:             ofpprop_start
        - Src:             'lib/ofp-table.c:645,5'
          Dst:             bitmap_scan
        - Src:             'lib/ofp-table.c:646,9'
          Dst:             ofpbuf_put
        - Src:             'lib/ofp-table.c:645,5'
          Dst:             bitmap_scan
        - Src:             'lib/ofp-table.c:648,5'
          Dst:             ofpprop_end
        - Src:             'lib/ofp-table.c:650,5'
          Dst:             put_table_action_features
        - Src:             'lib/ofp-table.c:653,5'
          Dst:             put_table_action_features
    - functionName:    ofputil_append_table_features
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 666
      functionLinenumberEnd: 703
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          207
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - htonl
        - htons
        - ofpbuf_at_assert
        - ofpbuf_from_list
        - ofpbuf_put
        - ofpbuf_put_zeros
        - ofpmp_postappend
        - ofpmp_version
        - ovs_list_back
        - ovs_strlcpy
        - put_fields_property
        - put_table_instruction_features
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-table.c:667,43'
          Dst:             ovs_list_back
        - Src:             'lib/ofp-table.c:667,26'
          Dst:             ofpbuf_from_list
        - Src:             'lib/ofp-table.c:668,32'
          Dst:             ofpmp_version
        - Src:             'lib/ofp-table.c:672,11'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-table.c:675,5'
          Dst:             ovs_strlcpy
        - Src:             'lib/ofp-table.c:680,34'
          Dst:             htonl
        - Src:             'lib/ofp-table.c:683,34'
          Dst:             htonl
        - Src:             'lib/ofp-table.c:686,24'
          Dst:             htonl
        - Src:             'lib/ofp-table.c:689,9'
          Dst:             ofpbuf_put
        - Src:             'lib/ofp-table.c:691,9'
          Dst:             put_table_instruction_features
        - Src:             'lib/ofp-table.c:692,9'
          Dst:             put_table_instruction_features
        - Src:             'lib/ofp-table.c:694,9'
          Dst:             put_fields_property
        - Src:             'lib/ofp-table.c:696,9'
          Dst:             put_fields_property
        - Src:             'lib/ofp-table.c:700,11'
          Dst:             ofpbuf_at_assert
        - Src:             'lib/ofp-table.c:701,19'
          Dst:             htons
        - Src:             'lib/ofp-table.c:702,5'
          Dst:             ofpmp_postappend
    - functionName:    ofputil_encode_table_features_request
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 578
      functionLinenumberEnd: 597
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          59
      EdgeCount:       23
      CyclomaticComplexity: 12
      functionsReached:
        - abort
        - ofpraw_alloc
        - ovs_fatal
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib/ofp-table.c:581,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-table.c:585,9'
          Dst:             ovs_fatal
        - Src:             'lib/ofp-table.c:590,19'
          Dst:             ofpraw_alloc
        - Src:             'lib/ofp-table.c:594,9'
          Dst:             abort
    - functionName:    bitmap_and
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 167
      functionLinenumberEnd: 173
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         5
      ICount:          42
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rightmost_1bit_idx
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 398
      functionLinenumberEnd: 399
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ctz64
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.h:399,12'
          Dst:             ctz64
    - functionName:    count_1bits
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 332
      functionLinenumberEnd: 347
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          37
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    parse_oxms
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 321
      functionLinenumberEnd: 348
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          134
      EdgeCount:       37
      CyclomaticComplexity: 11
      functionsReached:
        - bitmap_is_all_zeros
        - bitmap_set1
        - nx_pull_header
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-table.c:330,17'
          Dst:             nx_pull_header
        - Src:             'lib/ofp-table.c:332,13'
          Dst:             bitmap_set1
        - Src:             'lib/ofp-table.c:339,17'
          Dst:             bitmap_is_all_zeros
        - Src:             'lib/ofp-table.c:344,17'
          Dst:             bitmap_is_all_zeros
    - functionName:    parse_action_bitmap
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 248
      functionLinenumberEnd: 266
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          73
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - htonl
        - ofpact_bitmap_from_openflow
        - ofpprop_pull__
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-table.c:255,17'
          Dst:             ofpprop_pull__
        - Src:             'lib/ofp-table.c:264,44'
          Dst:             htonl
        - Src:             'lib/ofp-table.c:264,16'
          Dst:             ofpact_bitmap_from_openflow
    - functionName:    parse_table_features_next_table
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 304
      functionLinenumberEnd: 316
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          66
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - bitmap_n_bytes
        - bitmap_set1
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-table.c:307,28'
          Dst:             bitmap_n_bytes
        - Src:             'lib/ofp-table.c:313,9'
          Dst:             bitmap_set1
    - functionName:    parse_instruction_ids
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 270
      functionLinenumberEnd: 299
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          82
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - ofpprop_pull__
        - ovs_instruction_type_from_inst_type
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-table.c:286,17'
          Dst:             ofpprop_pull__
        - Src:             'lib/ofp-table.c:291,17'
          Dst:             ovs_instruction_type_from_inst_type
    - functionName:    pull_table_feature_property
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 235
      functionLinenumberEnd: 242
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          54
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - ofpbuf_pull
        - ofpprop_pull
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-table.c:238,13'
          Dst:             ofpprop_pull
        - Src:             'lib/ofp-table.c:240,9'
          Dst:             ofpbuf_pull
    - functionName:    ofp15_table_features_command_is_valid
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 80
      functionLinenumberEnd: 91
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          35
      EdgeCount:       14
      CyclomaticComplexity: 8
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-table.c:81,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    ofputil_decode_table_features
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 375
      functionLinenumberEnd: 572
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         97
      ICount:          766
      EdgeCount:       123
      CyclomaticComplexity: 28
      functionsReached:
        - bitmap_and
        - bitmap_or
        - count_1bits
        - ntohl
        - ntohs
        - ofp15_table_features_command_is_valid
        - ofpbuf_const_initializer
        - ofpbuf_pull
        - ofpprop_unknown
        - ofpraw_pull_assert
        - ovs_strlcpy
        - parse_action_bitmap
        - parse_instruction_ids
        - parse_oxms
        - parse_table_features_next_table
        - pull_table_feature_property
        - rightmost_1bit_idx
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-table.c:453,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-table.c:381,9'
          Dst:             ofpraw_pull_assert
        - Src:             'lib/ofp-table.c:394,24'
          Dst:             ntohs
        - Src:             'lib/ofp-table.c:400,14'
          Dst:             ofp15_table_features_command_is_valid
        - Src:             'lib/ofp-table.c:413,5'
          Dst:             ovs_strlcpy
        - Src:             'lib/ofp-table.c:418,25'
          Dst:             ntohl
        - Src:             'lib/ofp-table.c:425,23'
          Dst:             ntohl
        - Src:             'lib/ofp-table.c:427,57'
          Dst:             ofpbuf_pull
        - Src:             'lib/ofp-table.c:427,32'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/ofp-table.c:429,5'
          Dst:             ofpbuf_pull
        - Src:             'lib/ofp-table.c:440,17'
          Dst:             pull_table_feature_property
        - Src:             'lib/ofp-table.c:455,21'
          Dst:             parse_instruction_ids
        - Src:             'lib/ofp-table.c:459,21'
          Dst:             parse_instruction_ids
        - Src:             'lib/ofp-table.c:464,21'
          Dst:             parse_table_features_next_table
        - Src:             'lib/ofp-table.c:468,21'
          Dst:             parse_table_features_next_table
        - Src:             'lib/ofp-table.c:472,21'
          Dst:             parse_action_bitmap
        - Src:             'lib/ofp-table.c:476,21'
          Dst:             parse_action_bitmap
        - Src:             'lib/ofp-table.c:481,21'
          Dst:             parse_action_bitmap
        - Src:             'lib/ofp-table.c:485,21'
          Dst:             parse_action_bitmap
        - Src:             'lib/ofp-table.c:490,21'
          Dst:             parse_oxms
        - Src:             'lib/ofp-table.c:493,21'
          Dst:             parse_oxms
        - Src:             'lib/ofp-table.c:497,21'
          Dst:             parse_oxms
        - Src:             'lib/ofp-table.c:501,21'
          Dst:             parse_oxms
        - Src:             'lib/ofp-table.c:505,21'
          Dst:             parse_oxms
        - Src:             'lib/ofp-table.c:509,21'
          Dst:             parse_oxms
        - Src:             'lib/ofp-table.c:516,21'
          Dst:             ofpprop_unknown
        - Src:             'lib/ofp-table.c:528,9'
          Dst:             count_1bits
        - Src:             'lib/ofp-table.c:528,9'
          Dst:             rightmost_1bit_idx
        - Src:             'lib/ofp-table.c:528,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-table.c:567,5'
          Dst:             bitmap_or
        - Src:             'lib/ofp-table.c:568,5'
          Dst:             bitmap_or
        - Src:             'lib/ofp-table.c:569,5'
          Dst:             bitmap_and
    - functionName:    ofputil_table_to_string
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 217
      functionLinenumberEnd: 228
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - char
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_cstr
        - ds_destroy
        - namemap_put_name
        - ofputil_table_map_get_name
        - ovs_strlcpy
        - snprintf
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-table.c:218,30'
          Dst:             ofputil_table_map_get_name
        - Src:             'lib/ofp-table.c:221,9'
          Dst:             namemap_put_name
        - Src:             'lib/ofp-table.c:222,30'
          Dst:             ds_cstr
        - Src:             'lib/ofp-table.c:222,9'
          Dst:             ovs_strlcpy
        - Src:             'lib/ofp-table.c:223,9'
          Dst:             ds_destroy
        - Src:             'lib/ofp-table.c:227,5'
          Dst:             snprintf
    - functionName:    ofputil_table_map_destroy
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 140
      functionLinenumberEnd: 142
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - namemap_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-table.c:141,5'
          Dst:             namemap_destroy
    - functionName:    ofputil_table_map_put
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 116
      functionLinenumberEnd: 118
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - char
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - namemap_put
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-table.c:117,5'
          Dst:             namemap_put
    - functionName:    ofputil_table_map_init
      functionSourceFile: '/src/openvswitch/lib/ofp-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 109
      functionLinenumberEnd: 111
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - namemap_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-table.c:110,5'
          Dst:             namemap_init
    - functionName:    init_this_module_ofp_util
      functionSourceFile: '/src/openvswitch/lib/ofp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-util.c:55,1'
          Dst:             vlog_insert_module
    - functionName:    is_pow2
      functionSourceFile: '/src/openvswitch/./include/openvswitch/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 399
      functionLinenumberEnd: 400
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          26
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    raw_clz64
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 272
      functionLinenumberEnd: 273
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    log_2_floor
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 314
      functionLinenumberEnd: 315
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - raw_clz64
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.h:315,17'
          Dst:             raw_clz64
    - functionName:    ofputil_encode_barrier_request
      functionSourceFile: '/src/openvswitch/lib/ofp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 218
      functionLinenumberEnd: 238
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          54
      EdgeCount:       22
      CyclomaticComplexity: 12
      functionsReached:
        - abort
        - ofpraw_alloc
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib/ofp-util.c:221,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-util.c:235,9'
          Dst:             abort
        - Src:             'lib/ofp-util.c:238,12'
          Dst:             ofpraw_alloc
    - functionName:    ofputil_encode_echo_reply
      functionSourceFile: '/src/openvswitch/lib/ofp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 206
      functionLinenumberEnd: 213
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohs
        - ofpbuf_const_initializer
        - ofpbuf_put
        - ofpraw_alloc_reply
        - ofpraw_pull_assert
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-util.c:207,57'
          Dst:             ntohs
        - Src:             'lib/ofp-util.c:207,28'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/ofp-util.c:208,5'
          Dst:             ofpraw_pull_assert
        - Src:             'lib/ofp-util.c:210,28'
          Dst:             ofpraw_alloc_reply
        - Src:             'lib/ofp-util.c:212,5'
          Dst:             ofpbuf_put
    - functionName:    ofpbuf_const_initializer
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 97
      functionLinenumberEnd: 105
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          30
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofputil_encode_echo_request
      functionSourceFile: '/src/openvswitch/lib/ofp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 197
      functionLinenumberEnd: 199
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
        - ofpraw_alloc_xid
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-util.c:199,29'
          Dst:             htonl
        - Src:             'lib/ofp-util.c:198,12'
          Dst:             ofpraw_alloc_xid
    - functionName:    ofputil_hello_format
      functionSourceFile: '/src/openvswitch/lib/ofp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 179
      functionLinenumberEnd: 192
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_cstr
        - ds_put_hex_dump
        - ntohs
        - ofputil_decode_hello
        - ofputil_format_version_bitmap
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-util.c:183,10'
          Dst:             ofputil_decode_hello
        - Src:             'lib/ofp-util.c:185,5'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-util.c:186,5'
          Dst:             ofputil_format_version_bitmap
        - Src:             'lib/ofp-util.c:189,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-util.c:190,37'
          Dst:             ntohs
        - Src:             'lib/ofp-util.c:190,9'
          Dst:             ds_put_hex_dump
    - functionName:    ofputil_decode_hello
      functionSourceFile: '/src/openvswitch/lib/ofp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 112
      functionLinenumberEnd: 140
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         20
      ICount:          120
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - htons
        - ntohs
        - ofpbuf_const_initializer
        - ofpbuf_pull
        - ofpbuf_try_pull
        - ofputil_decode_hello_bitmap
        - version_bitmap_from_version
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-util.c:113,54'
          Dst:             ntohs
        - Src:             'lib/ofp-util.c:113,25'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/ofp-util.c:114,5'
          Dst:             ofpbuf_pull
        - Src:             'lib/ofp-util.c:116,25'
          Dst:             version_bitmap_from_version
        - Src:             'lib/ofp-util.c:128,15'
          Dst:             ntohs
        - Src:             'lib/ofp-util.c:129,36'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/ofp-util.c:133,27'
          Dst:             htons
        - Src:             'lib/ofp-util.c:134,17'
          Dst:             ofputil_decode_hello_bitmap
    - functionName:    ofpbuf_pull
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 258
      functionLinenumberEnd: 269
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          64
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:259,5'
          Dst:             ovs_ignore
    - functionName:    version_bitmap_from_version
      functionSourceFile: '/src/openvswitch/lib/ofp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 99
      functionLinenumberEnd: 100
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          25
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofpbuf_try_pull
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 275
      functionLinenumberEnd: 276
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofpbuf_pull
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:276,30'
          Dst:             ofpbuf_pull
    - functionName:    ofputil_decode_hello_bitmap
      functionSourceFile: '/src/openvswitch/lib/ofp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 95
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         24
      ICount:          127
      EdgeCount:       30
      CyclomaticComplexity: 8
      functionsReached:
        - ntohl
        - ntohs
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-util.c:65,27'
          Dst:             ntohs
        - Src:             'lib/ofp-util.c:78,24'
          Dst:             ntohl
        - Src:             'lib/ofp-util.c:82,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-util.c:88,9'
          Dst:             vlog_rate_limit
    - functionName:    should_send_version_bitmap
      functionSourceFile: '/src/openvswitch/lib/ofp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 146
      functionLinenumberEnd: 147
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - is_pow2
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-util.c:147,13'
          Dst:             is_pow2
    - functionName:    leftmost_1bit_idx
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 406
      functionLinenumberEnd: 407
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - log_2_floor
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.h:407,12'
          Dst:             log_2_floor
    - functionName:    ofputil_encode_hello
      functionSourceFile: '/src/openvswitch/lib/ofp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 154
      functionLinenumberEnd: 174
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          66
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
        - htons
        - leftmost_1bit_idx
        - ofpbuf_put_zeros
        - ofpmsg_update_length
        - ofpraw_alloc
        - should_send_version_bitmap
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-util.c:158,19'
          Dst:             leftmost_1bit_idx
        - Src:             'lib/ofp-util.c:159,11'
          Dst:             ofpraw_alloc
        - Src:             'lib/ofp-util.c:161,9'
          Dst:             should_send_version_bitmap
        - Src:             'lib/ofp-util.c:166,16'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-util.c:167,22'
          Dst:             htons
        - Src:             'lib/ofp-util.c:168,24'
          Dst:             htons
        - Src:             'lib/ofp-util.c:169,47'
          Dst:             htonl
        - Src:             'lib/ofp-util.c:171,9'
          Dst:             ofpmsg_update_length
    - functionName:    ovs_list_remove
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 251
      functionLinenumberEnd: 254
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          25
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofpbuf_copy__
      functionSourceFile: '/src/openvswitch/lib/ofpbuf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 236
      functionLinenumberEnd: 246
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          87
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ofpbuf_headroom
        - ofpbuf_tailroom
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofpbuf.c:238,27'
          Dst:             ofpbuf_headroom
        - Src:             'lib/ofpbuf.c:239,27'
          Dst:             ofpbuf_tailroom
    - functionName:    ofpbuf_headroom
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 221
      functionLinenumberEnd: 222
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofpbuf_tailroom
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 228
      functionLinenumberEnd: 229
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpbuf_end
        - ofpbuf_tail
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:229,19'
          Dst:             ofpbuf_end
        - Src:             './include/openvswitch/ofpbuf.h:229,42'
          Dst:             ofpbuf_tail
    - functionName:    ofpbuf_end
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 211
      functionLinenumberEnd: 213
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          56
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:212,5'
          Dst:             ovs_ignore
    - functionName:    ofpbuf_tail
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 203
      functionLinenumberEnd: 205
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          56
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ovs_ignore
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:204,5'
          Dst:             ovs_ignore
    - functionName:    ovs_list_poison
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 157
      functionLinenumberEnd: 159
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofpbuf_init__
      functionSourceFile: '/src/openvswitch/lib/ofpbuf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26
      functionLinenumberEnd: 32
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_list_poison
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofpbuf.c:31,5'
          Dst:             ovs_list_poison
    - functionName:    ofpbuf_delete
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 172
      functionLinenumberEnd: 177
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          28
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofpbuf_uninit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:174,9'
          Dst:             ofpbuf_uninit
    - functionName:    ofpbuf_uninit
      functionSourceFile: '/src/openvswitch/lib/ofpbuf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 147
      functionLinenumberEnd: 153
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          40
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    116
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_list_pop_front
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 261
      functionLinenumberEnd: 265
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_list_remove
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/list.h:264,5'
          Dst:             ovs_list_remove
    - functionName:    ovs_list_is_empty
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 320
      functionLinenumberEnd: 321
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofpbuf_list_delete
      functionSourceFile: '/src/openvswitch/lib/ofpbuf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 574
      functionLinenumberEnd: 580
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          44
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ofpbuf_delete
        - ovs_list_is_empty
        - ovs_list_pop_front
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofpbuf.c:577,5'
          Dst:             ovs_list_is_empty
        - Src:             'lib/ofpbuf.c:577,5'
          Dst:             ovs_list_pop_front
        - Src:             'lib/ofpbuf.c:578,9'
          Dst:             ofpbuf_delete
    - functionName:    ofpbuf_to_string
      functionSourceFile: '/src/openvswitch/lib/ofpbuf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 559
      functionLinenumberEnd: 567
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          55
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_cstr
        - ds_init
        - ds_put_format
        - ds_put_hex_dump
        - ofpbuf_headroom
        - ofpbuf_tailroom
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofpbuf.c:562,5'
          Dst:             ds_init
        - Src:             'lib/ofpbuf.c:565,19'
          Dst:             ofpbuf_headroom
        - Src:             'lib/ofpbuf.c:565,39'
          Dst:             ofpbuf_tailroom
        - Src:             'lib/ofpbuf.c:563,5'
          Dst:             ds_put_format
        - Src:             'lib/ofpbuf.c:566,5'
          Dst:             ds_put_hex_dump
        - Src:             'lib/ofpbuf.c:567,12'
          Dst:             ds_cstr
    - functionName:    ofpbuf_steal_data
      functionSourceFile: '/src/openvswitch/lib/ofpbuf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 537
      functionLinenumberEnd: 552
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          87
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - xmemdup
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofpbuf.c:543,13'
          Dst:             xmemdup
    - functionName:    ofpbuf_insert
      functionSourceFile: '/src/openvswitch/lib/ofpbuf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 520
      functionLinenumberEnd: 530
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          79
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofpbuf_put
        - ofpbuf_put_uninit
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofpbuf.c:522,9'
          Dst:             ofpbuf_put_uninit
        - Src:             'lib/ofpbuf.c:527,9'
          Dst:             ovs_ignore
        - Src:             'lib/ofpbuf.c:528,9'
          Dst:             ofpbuf_put
    - functionName:    ofpbuf_put_uninit
      functionSourceFile: '/src/openvswitch/lib/ofpbuf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 401
      functionLinenumberEnd: 406
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpbuf_prealloc_tailroom
        - ofpbuf_tail
      functionUses:    57
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofpbuf.c:403,5'
          Dst:             ofpbuf_prealloc_tailroom
        - Src:             'lib/ofpbuf.c:404,9'
          Dst:             ofpbuf_tail
    - functionName:    ofpbuf_put
      functionSourceFile: '/src/openvswitch/lib/ofpbuf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 425
      functionLinenumberEnd: 433
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofpbuf_put_uninit
        - ofpbuf_tail
      functionUses:    52
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofpbuf.c:427,16'
          Dst:             ofpbuf_tail
        - Src:             'lib/ofpbuf.c:430,17'
          Dst:             ofpbuf_put_uninit
    - functionName:    ofpbuf_prealloc_tailroom
      functionSourceFile: '/src/openvswitch/lib/ofpbuf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 306
      functionLinenumberEnd: 310
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          44
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ofpbuf_headroom
        - ofpbuf_resize__
        - ofpbuf_tailroom
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofpbuf.c:307,16'
          Dst:             ofpbuf_tailroom
        - Src:             'lib/ofpbuf.c:308,28'
          Dst:             ofpbuf_headroom
        - Src:             'lib/ofpbuf.c:308,9'
          Dst:             ofpbuf_resize__
    - functionName:    ofpbuf_resize__
      functionSourceFile: '/src/openvswitch/lib/ofpbuf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 252
      functionLinenumberEnd: 299
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          182
      EdgeCount:       21
      CyclomaticComplexity: 3
      functionsReached:
        - abort
        - ofpbuf_copy__
        - ofpbuf_headroom
        - xmalloc
        - xrealloc
      functionUses:    4
      BranchProfiles:
        - Branch String:   'lib/ofpbuf.c:258,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofpbuf.c:260,29'
          Dst:             ofpbuf_headroom
        - Src:             'lib/ofpbuf.c:261,24'
          Dst:             xrealloc
        - Src:             'lib/ofpbuf.c:263,24'
          Dst:             xmalloc
        - Src:             'lib/ofpbuf.c:264,13'
          Dst:             ofpbuf_copy__
        - Src:             'lib/ofpbuf.c:270,9'
          Dst:             abort
        - Src:             'lib/ofpbuf.c:274,20'
          Dst:             xmalloc
        - Src:             'lib/ofpbuf.c:275,9'
          Dst:             ofpbuf_copy__
        - Src:             'lib/ofpbuf.c:279,9'
          Dst:             abort
    - functionName:    ofpbuf_push
      functionSourceFile: '/src/openvswitch/lib/ofpbuf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 508
      functionLinenumberEnd: 511
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpbuf_push_uninit
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofpbuf.c:509,17'
          Dst:             ofpbuf_push_uninit
    - functionName:    ofpbuf_push_uninit
      functionSourceFile: '/src/openvswitch/lib/ofpbuf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 481
      functionLinenumberEnd: 490
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          57
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofpbuf_prealloc_headroom
      functionUses:    14
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofpbuf.c:486,5'
          Dst:             ofpbuf_prealloc_headroom
    - functionName:    ofpbuf_prealloc_headroom
      functionSourceFile: '/src/openvswitch/lib/ofpbuf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 317
      functionLinenumberEnd: 321
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          44
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ofpbuf_headroom
        - ofpbuf_resize__
        - ofpbuf_tailroom
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofpbuf.c:318,16'
          Dst:             ofpbuf_headroom
        - Src:             'lib/ofpbuf.c:319,43'
          Dst:             ofpbuf_tailroom
        - Src:             'lib/ofpbuf.c:319,9'
          Dst:             ofpbuf_resize__
    - functionName:    ofpbuf_push_zeros
      functionSourceFile: '/src/openvswitch/lib/ofpbuf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 497
      functionLinenumberEnd: 500
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpbuf_push_uninit
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofpbuf.c:498,17'
          Dst:             ofpbuf_push_uninit
    - functionName:    ofpbuf_put_hex
      functionSourceFile: '/src/openvswitch/lib/ofpbuf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 442
      functionLinenumberEnd: 458
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          67
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - hexits_value
        - ofpbuf_put
        - strspn
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofpbuf.c:448,14'
          Dst:             strspn
        - Src:             'lib/ofpbuf.c:449,16'
          Dst:             hexits_value
        - Src:             'lib/ofpbuf.c:457,9'
          Dst:             ofpbuf_put
    - functionName:    nullable_memset
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 198
      functionLinenumberEnd: 202
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          27
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofpbuf_shift
      functionSourceFile: '/src/openvswitch/lib/ofpbuf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 384
      functionLinenumberEnd: 394
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          89
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - ofpbuf_headroom
        - ofpbuf_tailroom
        - ovs_ignore
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofpbuf.c:385,37'
          Dst:             ofpbuf_tailroom
        - Src:             'lib/ofpbuf.c:386,40'
          Dst:             ofpbuf_headroom
        - Src:             'lib/ofpbuf.c:385,5'
          Dst:             ovs_ignore
    - functionName:    ofpbuf_put_zeros
      functionSourceFile: '/src/openvswitch/lib/ofpbuf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 414
      functionLinenumberEnd: 417
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nullable_memset
        - ofpbuf_put_uninit
      functionUses:    124
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofpbuf.c:415,17'
          Dst:             ofpbuf_put_uninit
        - Src:             'lib/ofpbuf.c:416,5'
          Dst:             nullable_memset
    - functionName:    ofpbuf_padto
      functionSourceFile: '/src/openvswitch/lib/ofpbuf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 368
      functionLinenumberEnd: 372
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofpbuf_put_zeros
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofpbuf.c:370,9'
          Dst:             ofpbuf_put_zeros
    - functionName:    ofpbuf_align
      functionSourceFile: '/src/openvswitch/lib/ofpbuf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 349
      functionLinenumberEnd: 362
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          40
      EdgeCount:       16
      CyclomaticComplexity: 9
      functionsReached:
        - abort
        - ofpbuf_resize__
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofpbuf.c:350,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofpbuf.c:356,9'
          Dst:             ofpbuf_resize__
        - Src:             'lib/ofpbuf.c:359,9'
          Dst:             abort
    - functionName:    ofpbuf_trim
      functionSourceFile: '/src/openvswitch/lib/ofpbuf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 336
      functionLinenumberEnd: 341
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          49
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - ofpbuf_headroom
        - ofpbuf_resize__
        - ofpbuf_tailroom
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofpbuf.c:338,13'
          Dst:             ofpbuf_headroom
        - Src:             'lib/ofpbuf.c:338,35'
          Dst:             ofpbuf_tailroom
        - Src:             'lib/ofpbuf.c:339,9'
          Dst:             ofpbuf_resize__
    - functionName:    ofpbuf_clone_data
      functionSourceFile: '/src/openvswitch/lib/ofpbuf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 218
      functionLinenumberEnd: 219
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpbuf_clone_data_with_headroom
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofpbuf.c:219,12'
          Dst:             ofpbuf_clone_data_with_headroom
    - functionName:    ofpbuf_clone_data_with_headroom
      functionSourceFile: '/src/openvswitch/lib/ofpbuf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 227
      functionLinenumberEnd: 230
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpbuf_new_with_headroom
        - ofpbuf_put
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofpbuf.c:228,24'
          Dst:             ofpbuf_new_with_headroom
        - Src:             'lib/ofpbuf.c:229,5'
          Dst:             ofpbuf_put
    - functionName:    ofpbuf_new_with_headroom
      functionSourceFile: '/src/openvswitch/lib/ofpbuf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 177
      functionLinenumberEnd: 180
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpbuf_new
        - ofpbuf_reserve
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofpbuf.c:178,24'
          Dst:             ofpbuf_new
        - Src:             'lib/ofpbuf.c:179,5'
          Dst:             ofpbuf_reserve
    - functionName:    ofpbuf_new
      functionSourceFile: '/src/openvswitch/lib/ofpbuf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 167
      functionLinenumberEnd: 170
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpbuf_init
        - xmalloc
      functionUses:    14
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofpbuf.c:168,24'
          Dst:             xmalloc
        - Src:             'lib/ofpbuf.c:169,5'
          Dst:             ofpbuf_init
    - functionName:    ofpbuf_reserve
      functionSourceFile: '/src/openvswitch/lib/ofpbuf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 466
      functionLinenumberEnd: 474
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofpbuf_prealloc_tailroom
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofpbuf.c:467,5'
          Dst:             ovs_ignore
        - Src:             'lib/ofpbuf.c:472,5'
          Dst:             ofpbuf_prealloc_tailroom
    - functionName:    ofpbuf_init
      functionSourceFile: '/src/openvswitch/lib/ofpbuf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 140
      functionLinenumberEnd: 142
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofpbuf_use
        - xmalloc
      functionUses:    67
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofpbuf.c:141,26'
          Dst:             xmalloc
        - Src:             'lib/ofpbuf.c:141,5'
          Dst:             ofpbuf_use
    - functionName:    ofpbuf_use
      functionSourceFile: '/src/openvswitch/lib/ofpbuf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51
      functionLinenumberEnd: 53
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpbuf_use__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofpbuf.c:52,5'
          Dst:             ofpbuf_use__
    - functionName:    ofpbuf_use__
      functionSourceFile: '/src/openvswitch/lib/ofpbuf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37
      functionLinenumberEnd: 43
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          38
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpbuf_init__
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofpbuf.c:42,5'
          Dst:             ofpbuf_init__
    - functionName:    ofpbuf_clone_with_headroom
      functionSourceFile: '/src/openvswitch/lib/ofpbuf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 196
      functionLinenumberEnd: 211
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          109
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - ofpbuf_clone_data_with_headroom
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofpbuf.c:199,18'
          Dst:             ofpbuf_clone_data_with_headroom
    - functionName:    ofpbuf_clone
      functionSourceFile: '/src/openvswitch/lib/ofpbuf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 188
      functionLinenumberEnd: 189
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpbuf_clone_with_headroom
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofpbuf.c:189,12'
          Dst:             ofpbuf_clone_with_headroom
    - functionName:    ofpbuf_reinit
      functionSourceFile: '/src/openvswitch/lib/ofpbuf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 158
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpbuf_init
        - ofpbuf_uninit
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofpbuf.c:159,5'
          Dst:             ofpbuf_uninit
        - Src:             'lib/ofpbuf.c:160,5'
          Dst:             ofpbuf_init
    - functionName:    ofpbuf_use_data
      functionSourceFile: '/src/openvswitch/lib/ofpbuf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 132
      functionLinenumberEnd: 134
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpbuf_use__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofpbuf.c:133,5'
          Dst:             ofpbuf_use__
    - functionName:    ofpbuf_use_const
      functionSourceFile: '/src/openvswitch/lib/ofpbuf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 114
      functionLinenumberEnd: 116
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpbuf_use__
      functionUses:    12
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofpbuf.c:115,5'
          Dst:             ofpbuf_use__
    - functionName:    ofpbuf_use_stub
      functionSourceFile: '/src/openvswitch/lib/ofpbuf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 103
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpbuf_use__
      functionUses:    18
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofpbuf.c:102,5'
          Dst:             ofpbuf_use__
    - functionName:    ofpbuf_use_stack
      functionSourceFile: '/src/openvswitch/lib/ofpbuf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 81
      functionLinenumberEnd: 83
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpbuf_use__
      functionUses:    15
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofpbuf.c:82,5'
          Dst:             ofpbuf_use__
    - functionName:    ofpbuf_use_ds
      functionSourceFile: '/src/openvswitch/lib/ofpbuf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 61
      functionLinenumberEnd: 63
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpbuf_use__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofpbuf.c:62,5'
          Dst:             ofpbuf_use__
    - functionName:    init_this_module_ovs_rcu
      functionSourceFile: '/src/openvswitch/lib/ovs-rcu.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 31
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-rcu.c:31,1'
          Dst:             vlog_insert_module
    - functionName:    ovs_list_init
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrcu_cancel_thread_exit_cb
      functionSourceFile: '/src/openvswitch/lib/ovs-rcu.c'
      linkageType:     InternalLinkage
      functionLinenumber: 421
      functionLinenumberEnd: 423
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - pthread_setspecific
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-rcu.c:422,5'
          Dst:             pthread_setspecific
    - functionName:    pthread_setspecific
      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:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrcu_thread_exit_cb
      functionSourceFile: '/src/openvswitch/lib/ovs-rcu.c'
      linkageType:     InternalLinkage
      functionLinenumber: 414
      functionLinenumberEnd: 416
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrcu_unregister__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-rcu.c:415,5'
          Dst:             ovsrcu_unregister__
    - functionName:    ovsrcu_unregister__
      functionSourceFile: '/src/openvswitch/lib/ovs-rcu.c'
      linkageType:     InternalLinkage
      functionLinenumber: 398
      functionLinenumberEnd: 410
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_list_remove
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovsrcu_flush_cbset
        - seq_change
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-rcu.c:400,9'
          Dst:             ovsrcu_flush_cbset
        - Src:             'lib/ovs-rcu.c:403,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/ovs-rcu.c:404,5'
          Dst:             ovs_list_remove
        - Src:             'lib/ovs-rcu.c:405,5'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/ovs-rcu.c:409,5'
          Dst:             seq_change
    - functionName:    ovsrcu_flush_cbset
      functionSourceFile: '/src/openvswitch/lib/ovs-rcu.c'
      linkageType:     InternalLinkage
      functionLinenumber: 392
      functionLinenumberEnd: 394
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrcu_flush_cbset__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-rcu.c:393,5'
          Dst:             ovsrcu_flush_cbset__
    - functionName:    ovs_list_remove
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 251
      functionLinenumberEnd: 254
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          25
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrcu_flush_cbset__
      functionSourceFile: '/src/openvswitch/lib/ovs-rcu.c'
      linkageType:     InternalLinkage
      functionLinenumber: 375
      functionLinenumberEnd: 388
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          50
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - guarded_list_push_back
        - seq_change
        - seq_change_protected
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-rcu.c:379,9'
          Dst:             guarded_list_push_back
        - Src:             'lib/ovs-rcu.c:383,13'
          Dst:             seq_change_protected
        - Src:             'lib/ovs-rcu.c:385,13'
          Dst:             seq_change
    - functionName:    ovs_list_pop_front
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 261
      functionLinenumberEnd: 265
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_list_remove
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/list.h:264,5'
          Dst:             ovs_list_remove
    - functionName:    ovs_list_is_empty
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 320
      functionLinenumberEnd: 321
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrcu_postpone_thread
      functionSourceFile: '/src/openvswitch/lib/ovs-rcu.c'
      linkageType:     InternalLinkage
      functionLinenumber: 357
      functionLinenumberEnd: 370
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          43
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - latch_is_set
        - latch_wait_at
        - ovs_barrier_block
        - ovsrcu_call_postponed
        - poll_block
        - pthread_detach
        - pthread_self
        - seq_read
        - seq_wait_at
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-rcu.c:358,20'
          Dst:             pthread_self
        - Src:             'lib/ovs-rcu.c:358,5'
          Dst:             pthread_detach
        - Src:             'lib/ovs-rcu.c:360,13'
          Dst:             latch_is_set
        - Src:             'lib/ovs-rcu.c:361,26'
          Dst:             seq_read
        - Src:             'lib/ovs-rcu.c:362,14'
          Dst:             ovsrcu_call_postponed
        - Src:             'lib/ovs-rcu.c:363,13'
          Dst:             seq_wait_at
        - Src:             'lib/ovs-rcu.c:364,13'
          Dst:             latch_wait_at
        - Src:             'lib/ovs-rcu.c:365,13'
          Dst:             poll_block
        - Src:             'lib/ovs-rcu.c:369,5'
          Dst:             ovs_barrier_block
    - functionName:    pthread_self
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pthread_detach
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrcu_call_postponed
      functionSourceFile: '/src/openvswitch/lib/ovs-rcu.c'
      linkageType:     InternalLinkage
      functionLinenumber: 331
      functionLinenumberEnd: 353
      functionDepth:   0
      returnType:      bool
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         16
      ICount:          93
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - guarded_list_pop_all
        - ovs_list_is_empty
        - ovs_list_pop_front
        - ovsrcu_synchronize
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-rcu.c:335,5'
          Dst:             guarded_list_pop_all
        - Src:             'lib/ovs-rcu.c:336,9'
          Dst:             ovs_list_is_empty
        - Src:             'lib/ovs-rcu.c:340,5'
          Dst:             ovsrcu_synchronize
        - Src:             'lib/ovs-rcu.c:342,5'
          Dst:             ovs_list_is_empty
        - Src:             'lib/ovs-rcu.c:342,5'
          Dst:             ovs_list_pop_front
    - functionName:    ovsrcu_synchronize
      functionSourceFile: '/src/openvswitch/lib/ovs-rcu.c'
      linkageType:     InternalLinkage
      functionLinenumber: 194
      functionLinenumberEnd: 240
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         28
      ICount:          153
      EdgeCount:       35
      CyclomaticComplexity: 9
      functionsReached:
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovs_strlcpy
        - ovsrcu_quiesce_end
        - ovsrcu_quiesce_start
        - poll_block
        - poll_timer_wait_until_at
        - seq_read
        - seq_wait_at
        - single_threaded
        - time_msec
        - vlog
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-rcu.c:199,9'
          Dst:             single_threaded
        - Src:             'lib/ovs-rcu.c:203,20'
          Dst:             seq_read
        - Src:             'lib/ovs-rcu.c:204,5'
          Dst:             ovsrcu_quiesce_start
        - Src:             'lib/ovs-rcu.c:205,13'
          Dst:             time_msec
        - Src:             'lib/ovs-rcu.c:208,30'
          Dst:             seq_read
        - Src:             'lib/ovs-rcu.c:214,9'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/ovs-rcu.c:217,17'
          Dst:             ovs_strlcpy
        - Src:             'lib/ovs-rcu.c:222,9'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/ovs-rcu.c:228,19'
          Dst:             time_msec
        - Src:             'lib/ovs-rcu.c:230,13'
          Dst:             vlog
        - Src:             'lib/ovs-rcu.c:234,9'
          Dst:             poll_timer_wait_until_at
        - Src:             'lib/ovs-rcu.c:236,9'
          Dst:             seq_wait_at
        - Src:             'lib/ovs-rcu.c:237,9'
          Dst:             poll_block
        - Src:             'lib/ovs-rcu.c:239,5'
          Dst:             ovsrcu_quiesce_end
    - functionName:    ovsrcu_quiesce_start
      functionSourceFile: '/src/openvswitch/lib/ovs-rcu.c'
      linkageType:     InternalLinkage
      functionLinenumber: 131
      functionLinenumberEnd: 142
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsrcu_init_module
        - ovsrcu_quiesced
        - ovsrcu_unregister__
        - pthread_getspecific
        - pthread_setspecific
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-rcu.c:134,5'
          Dst:             ovsrcu_init_module
        - Src:             'lib/ovs-rcu.c:135,17'
          Dst:             pthread_getspecific
        - Src:             'lib/ovs-rcu.c:137,9'
          Dst:             pthread_setspecific
        - Src:             'lib/ovs-rcu.c:138,9'
          Dst:             ovsrcu_unregister__
        - Src:             'lib/ovs-rcu.c:141,5'
          Dst:             ovsrcu_quiesced
    - functionName:    ovsrcu_quiesce_end
      functionSourceFile: '/src/openvswitch/lib/ovs-rcu.c'
      linkageType:     InternalLinkage
      functionLinenumber: 107
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrcu_perthread_get
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-rcu.c:108,5'
          Dst:             ovsrcu_perthread_get
    - functionName:    ovsrcu_perthread_get
      functionSourceFile: '/src/openvswitch/lib/ovs-rcu.c'
      linkageType:     InternalLinkage
      functionLinenumber: 76
      functionLinenumberEnd: 97
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         9
      ICount:          67
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - get_subprogram_name
        - ovs_list_push_back
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovs_strlcpy
        - ovsrcu_init_module
        - pthread_getspecific
        - pthread_setspecific
        - seq_read
        - xmalloc
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-rcu.c:79,5'
          Dst:             ovsrcu_init_module
        - Src:             'lib/ovs-rcu.c:81,17'
          Dst:             pthread_getspecific
        - Src:             'lib/ovs-rcu.c:83,28'
          Dst:             get_subprogram_name
        - Src:             'lib/ovs-rcu.c:85,21'
          Dst:             xmalloc
        - Src:             'lib/ovs-rcu.c:86,28'
          Dst:             seq_read
        - Src:             'lib/ovs-rcu.c:88,9'
          Dst:             ovs_strlcpy
        - Src:             'lib/ovs-rcu.c:91,9'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/ovs-rcu.c:92,9'
          Dst:             ovs_list_push_back
        - Src:             'lib/ovs-rcu.c:93,9'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/ovs-rcu.c:95,9'
          Dst:             pthread_setspecific
    - functionName:    ovsrcu_init_module
      functionSourceFile: '/src/openvswitch/lib/ovs-rcu.c'
      linkageType:     InternalLinkage
      functionLinenumber: 427
      functionLinenumberEnd: 441
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - fatal_signal_add_hook
        - guarded_list_init
        - ovs_list_init
        - ovs_mutex_init
        - ovsrcu_cancel_thread_exit_cb
        - ovsrcu_thread_exit_cb
        - ovsthread_once_done
        - ovsthread_once_start
        - seq_create
        - xpthread_key_create
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-rcu.c:429,9'
          Dst:             ovsthread_once_start
        - Src:             'lib/ovs-rcu.c:430,24'
          Dst:             seq_create
        - Src:             'lib/ovs-rcu.c:431,9'
          Dst:             xpthread_key_create
        - Src:             'lib/ovs-rcu.c:431,9'
          Dst:             ovsrcu_thread_exit_cb
        - Src:             'lib/ovs-rcu.c:432,9'
          Dst:             fatal_signal_add_hook
        - Src:             'lib/ovs-rcu.c:432,9'
          Dst:             ovsrcu_cancel_thread_exit_cb
        - Src:             'lib/ovs-rcu.c:433,9'
          Dst:             ovs_list_init
        - Src:             'lib/ovs-rcu.c:434,9'
          Dst:             ovs_mutex_init
        - Src:             'lib/ovs-rcu.c:436,9'
          Dst:             guarded_list_init
        - Src:             'lib/ovs-rcu.c:437,30'
          Dst:             seq_create
        - Src:             'lib/ovs-rcu.c:439,9'
          Dst:             ovsthread_once_done
    - functionName:    pthread_getspecific
      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:    10
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_list_push_back
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 204
      functionLinenumberEnd: 206
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_list_insert
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/list.h:205,5'
          Dst:             ovs_list_insert
    - functionName:    ovs_list_insert
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 169
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsthread_once_start
      functionSourceFile: '/src/openvswitch/./include/openvswitch/thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsthread_once_start__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/thread.h:161,12'
          Dst:             ovsthread_once_start__
    - functionName:    ovsrcu_quiesced
      functionSourceFile: '/src/openvswitch/lib/ovs-rcu.c'
      linkageType:     InternalLinkage
      functionLinenumber: 113
      functionLinenumberEnd: 125
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         9
      ICount:          33
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - latch_init
        - ovs_barrier_init
        - ovs_thread_create
        - ovsrcu_call_postponed
        - ovsrcu_postpone_thread
        - ovsthread_once_done
        - ovsthread_once_start
        - single_threaded
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-rcu.c:114,9'
          Dst:             single_threaded
        - Src:             'lib/ovs-rcu.c:115,9'
          Dst:             ovsrcu_call_postponed
        - Src:             'lib/ovs-rcu.c:118,13'
          Dst:             ovsthread_once_start
        - Src:             'lib/ovs-rcu.c:119,13'
          Dst:             latch_init
        - Src:             'lib/ovs-rcu.c:120,13'
          Dst:             ovs_barrier_init
        - Src:             'lib/ovs-rcu.c:121,13'
          Dst:             ovs_thread_create
        - Src:             'lib/ovs-rcu.c:121,13'
          Dst:             ovsrcu_postpone_thread
        - Src:             'lib/ovs-rcu.c:122,13'
          Dst:             ovsthread_once_done
    - functionName:    ovsrcu_barrier_func
      functionSourceFile: '/src/openvswitch/lib/ovs-rcu.c'
      linkageType:     InternalLinkage
      functionLinenumber: 445
      functionLinenumberEnd: 448
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - seq_change
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-rcu.c:447,5'
          Dst:             seq_change
    - functionName:    ovsrcu_barrier
      functionSourceFile: '/src/openvswitch/lib/ovs-rcu.c'
      linkageType:     InternalLinkage
      functionLinenumber: 462
      functionLinenumberEnd: 478
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         7
      ICount:          41
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - ovsrcu_barrier_func
        - ovsrcu_postpone__
        - ovsrcu_synchronize
        - poll_block
        - seq_create
        - seq_destroy
        - seq_read
        - seq_wait_at
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-rcu.c:463,23'
          Dst:             seq_create
        - Src:             'lib/ovs-rcu.c:465,5'
          Dst:             ovsrcu_synchronize
        - Src:             'lib/ovs-rcu.c:469,22'
          Dst:             seq_read
        - Src:             'lib/ovs-rcu.c:470,5'
          Dst:             ovsrcu_postpone__
        - Src:             'lib/ovs-rcu.c:470,5'
          Dst:             ovsrcu_barrier_func
        - Src:             'lib/ovs-rcu.c:473,9'
          Dst:             seq_wait_at
        - Src:             'lib/ovs-rcu.c:474,9'
          Dst:             poll_block
        - Src:             'lib/ovs-rcu.c:475,23'
          Dst:             seq_read
        - Src:             'lib/ovs-rcu.c:477,5'
          Dst:             seq_destroy
    - functionName:    ovsrcu_postpone__
      functionSourceFile: '/src/openvswitch/lib/ovs-rcu.c'
      linkageType:     InternalLinkage
      functionLinenumber: 306
      functionLinenumberEnd: 327
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          96
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ovsrcu_perthread_get
        - x2nrealloc
        - xmalloc
      functionUses:    52
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-rcu.c:307,42'
          Dst:             ovsrcu_perthread_get
        - Src:             'lib/ovs-rcu.c:313,36'
          Dst:             xmalloc
        - Src:             'lib/ovs-rcu.c:314,22'
          Dst:             xmalloc
        - Src:             'lib/ovs-rcu.c:320,22'
          Dst:             x2nrealloc
    - functionName:    ovsrcu_exit
      functionSourceFile: '/src/openvswitch/lib/ovs-rcu.c'
      linkageType:     InternalLinkage
      functionLinenumber: 255
      functionLinenumberEnd: 283
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         13
      ICount:          50
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - latch_set
        - ovs_barrier_block
        - ovsrcu_call_postponed
        - ovsrcu_quiesced
        - ovsrcu_synchronize
        - single_threaded
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-rcu.c:258,10'
          Dst:             single_threaded
        - Src:             'lib/ovs-rcu.c:259,9'
          Dst:             ovsrcu_quiesced
        - Src:             'lib/ovs-rcu.c:260,9'
          Dst:             latch_set
        - Src:             'lib/ovs-rcu.c:261,9'
          Dst:             ovs_barrier_block
        - Src:             'lib/ovs-rcu.c:278,9'
          Dst:             ovsrcu_synchronize
        - Src:             'lib/ovs-rcu.c:279,14'
          Dst:             ovsrcu_call_postponed
    - functionName:    ovsrcu_is_quiescent
      functionSourceFile: '/src/openvswitch/lib/ovs-rcu.c'
      linkageType:     InternalLinkage
      functionLinenumber: 187
      functionLinenumberEnd: 189
      functionDepth:   0
      returnType:      bool
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrcu_init_module
        - pthread_getspecific
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-rcu.c:188,5'
          Dst:             ovsrcu_init_module
        - Src:             'lib/ovs-rcu.c:189,12'
          Dst:             pthread_getspecific
    - functionName:    ovsrcu_try_quiesce
      functionSourceFile: '/src/openvswitch/lib/ovs-rcu.c'
      linkageType:     InternalLinkage
      functionLinenumber: 166
      functionLinenumberEnd: 182
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         9
      ICount:          54
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ovs_ignore
        - ovsrcu_flush_cbset__
        - ovsrcu_perthread_get
        - ovsrcu_quiesced
        - seq_change_protected
        - seq_read
        - seq_try_lock
        - seq_unlock
        - single_threaded
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-rcu.c:170,17'
          Dst:             single_threaded
        - Src:             'lib/ovs-rcu.c:170,5'
          Dst:             ovs_ignore
        - Src:             'lib/ovs-rcu.c:171,17'
          Dst:             ovsrcu_perthread_get
        - Src:             'lib/ovs-rcu.c:172,10'
          Dst:             seq_try_lock
        - Src:             'lib/ovs-rcu.c:173,28'
          Dst:             seq_read
        - Src:             'lib/ovs-rcu.c:175,13'
          Dst:             ovsrcu_flush_cbset__
        - Src:             'lib/ovs-rcu.c:177,9'
          Dst:             seq_change_protected
        - Src:             'lib/ovs-rcu.c:178,9'
          Dst:             seq_unlock
        - Src:             'lib/ovs-rcu.c:179,9'
          Dst:             ovsrcu_quiesced
    - functionName:    ovsrcu_quiesce
      functionSourceFile: '/src/openvswitch/lib/ovs-rcu.c'
      linkageType:     InternalLinkage
      functionLinenumber: 151
      functionLinenumberEnd: 162
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsrcu_flush_cbset
        - ovsrcu_perthread_get
        - ovsrcu_quiesced
        - seq_change
        - seq_read
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-rcu.c:154,17'
          Dst:             ovsrcu_perthread_get
        - Src:             'lib/ovs-rcu.c:155,24'
          Dst:             seq_read
        - Src:             'lib/ovs-rcu.c:157,9'
          Dst:             ovsrcu_flush_cbset
        - Src:             'lib/ovs-rcu.c:159,5'
          Dst:             seq_change
        - Src:             'lib/ovs-rcu.c:161,5'
          Dst:             ovsrcu_quiesced
    - functionName:    init_this_module_ovs_router
      functionSourceFile: '/src/openvswitch/lib/ovs-router.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 53
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-router.c:53,1'
          Dst:             vlog_insert_module
    - functionName:    standard_table_name
      functionSourceFile: '/src/openvswitch/lib/ovs-router.c'
      linkageType:     InternalLinkage
      functionLinenumber: 892
      functionLinenumberEnd: 903
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          32
      EdgeCount:       10
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ovs-router.c:893,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    ovs_router_rules_show_text
      functionSourceFile: '/src/openvswitch/lib/ovs-router.c'
      linkageType:     InternalLinkage
      functionLinenumber: 907
      functionLinenumberEnd: 941
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         33
      ICount:          209
      EdgeCount:       44
      CyclomaticComplexity: 13
      functionsReached:
        - ds_put_cstr
        - ds_put_format
        - htonl
        - ipv6_format_mapped
        - is_standard_table
        - pvector_cursor_init
        - pvector_cursor_next
        - standard_table_name
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-router.c:910,5'
          Dst:             pvector_cursor_init
        - Src:             'lib/ovs-router.c:910,5'
          Dst:             pvector_cursor_next
        - Src:             'lib/ovs-router.c:915,13'
          Dst:             ds_put_format
        - Src:             'lib/ovs-router.c:917,13'
          Dst:             ds_put_format
        - Src:             'lib/ovs-router.c:919,9'
          Dst:             ds_put_format
        - Src:             'lib/ovs-router.c:921,13'
          Dst:             ds_put_format
        - Src:             'lib/ovs-router.c:923,9'
          Dst:             ds_put_format
        - Src:             'lib/ovs-router.c:925,13'
          Dst:             ipv6_format_mapped
        - Src:             'lib/ovs-router.c:926,20'
          Dst:             htonl
        - Src:             'lib/ovs-router.c:928,17'
          Dst:             ds_put_format
        - Src:             'lib/ovs-router.c:931,13'
          Dst:             ds_put_cstr
        - Src:             'lib/ovs-router.c:933,9'
          Dst:             ds_put_format
        - Src:             'lib/ovs-router.c:934,13'
          Dst:             is_standard_table
        - Src:             'lib/ovs-router.c:936,27'
          Dst:             standard_table_name
        - Src:             'lib/ovs-router.c:935,13'
          Dst:             ds_put_format
        - Src:             'lib/ovs-router.c:938,13'
          Dst:             ds_put_format
    - functionName:    pvector_cursor_init
      functionSourceFile: '/src/openvswitch/lib/pvector.h'
      linkageType:     InternalLinkage
      functionLinenumber: 183
      functionLinenumberEnd: 204
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          82
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_prefetch_range
        - pvector_cursor_lookahead
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/pvector.h:194,5'
          Dst:             ovs_prefetch_range
        - Src:             'lib/pvector.h:202,9'
          Dst:             pvector_cursor_lookahead
    - functionName:    pvector_cursor_next
      functionSourceFile: '/src/openvswitch/lib/pvector.h'
      linkageType:     InternalLinkage
      functionLinenumber: 210
      functionLinenumberEnd: 219
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          83
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - pvector_cursor_lookahead
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/pvector.h:214,13'
          Dst:             pvector_cursor_lookahead
    - functionName:    is_standard_table
      functionSourceFile: '/src/openvswitch/lib/ovs-router.c'
      linkageType:     InternalLinkage
      functionLinenumber: 728
      functionLinenumberEnd: 731
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pvector_cursor_lookahead
      functionSourceFile: '/src/openvswitch/lib/pvector.h'
      linkageType:     InternalLinkage
      functionLinenumber: 223
      functionLinenumberEnd: 227
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_prefetch_range
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/pvector.h:225,9'
          Dst:             ovs_prefetch_range
    - functionName:    ovs_prefetch_range
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 81
      functionLinenumberEnd: 88
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         5
      ICount:          34
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_router_rules_show_json
      functionSourceFile: '/src/openvswitch/lib/ovs-router.c'
      linkageType:     InternalLinkage
      functionLinenumber: 856
      functionLinenumberEnd: 888
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          115
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - ds_cstr_ro
        - ds_destroy
        - ds_init
        - ipv6_format_mapped
        - json_array_add
        - json_boolean_create
        - json_integer_create
        - json_object_create
        - json_object_put
        - json_object_put_string
        - pvector_cursor_init
        - pvector_cursor_next
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-router.c:860,5'
          Dst:             pvector_cursor_init
        - Src:             'lib/ovs-router.c:860,5'
          Dst:             pvector_cursor_next
        - Src:             'lib/ovs-router.c:866,17'
          Dst:             json_object_create
        - Src:             'lib/ovs-router.c:868,44'
          Dst:             json_integer_create
        - Src:             'lib/ovs-router.c:868,9'
          Dst:             json_object_put
        - Src:             'lib/ovs-router.c:869,40'
          Dst:             json_boolean_create
        - Src:             'lib/ovs-router.c:869,9'
          Dst:             json_object_put
        - Src:             'lib/ovs-router.c:870,42'
          Dst:             json_boolean_create
        - Src:             'lib/ovs-router.c:870,9'
          Dst:             json_object_put
        - Src:             'lib/ovs-router.c:871,40'
          Dst:             json_boolean_create
        - Src:             'lib/ovs-router.c:871,9'
          Dst:             json_object_put
        - Src:             'lib/ovs-router.c:873,25'
          Dst:             json_integer_create
        - Src:             'lib/ovs-router.c:872,9'
          Dst:             json_object_put
        - Src:             'lib/ovs-router.c:875,25'
          Dst:             json_integer_create
        - Src:             'lib/ovs-router.c:874,9'
          Dst:             json_object_put
        - Src:             'lib/ovs-router.c:878,13'
          Dst:             ds_init
        - Src:             'lib/ovs-router.c:879,13'
          Dst:             ipv6_format_mapped
        - Src:             'lib/ovs-router.c:880,51'
          Dst:             ds_cstr_ro
        - Src:             'lib/ovs-router.c:880,13'
          Dst:             json_object_put_string
        - Src:             'lib/ovs-router.c:881,13'
          Dst:             ds_destroy
        - Src:             'lib/ovs-router.c:883,13'
          Dst:             json_object_put_string
        - Src:             'lib/ovs-router.c:886,9'
          Dst:             json_array_add
    - functionName:    rt_entry_delete
      functionSourceFile: '/src/openvswitch/lib/ovs-router.c'
      linkageType:     InternalLinkage
      functionLinenumber: 481
      functionLinenumberEnd: 508
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - char
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          71
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - classifier_find_rule_exactly
        - cls_find
        - cls_rule_destroy
        - cls_rule_init
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - rt_entry_delete__
        - rt_init_match
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-router.c:482,35'
          Dst:             cls_find
        - Src:             'lib/ovs-router.c:492,5'
          Dst:             rt_init_match
        - Src:             'lib/ovs-router.c:494,5'
          Dst:             cls_rule_init
        - Src:             'lib/ovs-router.c:497,10'
          Dst:             classifier_find_rule_exactly
        - Src:             'lib/ovs-router.c:499,9'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/ovs-router.c:500,9'
          Dst:             rt_entry_delete__
        - Src:             'lib/ovs-router.c:501,9'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/ovs-router.c:506,5'
          Dst:             cls_rule_destroy
    - functionName:    cls_find
      functionSourceFile: '/src/openvswitch/lib/ovs-router.c'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 111
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          68
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - cmap_find
        - cmap_node_next
        - hash_int
      functionUses:    14
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-router.c:104,5'
          Dst:             hash_int
        - Src:             'lib/ovs-router.c:104,5'
          Dst:             cmap_find
        - Src:             'lib/ovs-router.c:104,5'
          Dst:             cmap_node_next
    - functionName:    rt_init_match
      functionSourceFile: '/src/openvswitch/lib/ovs-router.c'
      linkageType:     InternalLinkage
      functionLinenumber: 272
      functionLinenumberEnd: 284
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          67
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ipv6_addr_bitand
        - ipv6_create_mask
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-router.c:276,12'
          Dst:             ipv6_create_mask
        - Src:             'lib/ovs-router.c:278,11'
          Dst:             ipv6_addr_bitand
    - functionName:    rt_entry_delete__
      functionSourceFile: '/src/openvswitch/lib/ovs-router.c'
      linkageType:     InternalLinkage
      functionLinenumber: 470
      functionLinenumberEnd: 476
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - classifier_remove_assert
        - ovs_router_entry_cast
        - ovsrcu_postpone__
        - rt_entry_free
        - tnl_port_map_delete_ipdev
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-router.c:471,34'
          Dst:             ovs_router_entry_cast
        - Src:             'lib/ovs-router.c:473,5'
          Dst:             tnl_port_map_delete_ipdev
        - Src:             'lib/ovs-router.c:474,5'
          Dst:             classifier_remove_assert
        - Src:             'lib/ovs-router.c:475,5'
          Dst:             ovs_router_entry_cast
        - Src:             'lib/ovs-router.c:475,5'
          Dst:             ovsrcu_postpone__
        - Src:             'lib/ovs-router.c:475,5'
          Dst:             rt_entry_free
    - functionName:    ovs_router_entry_cast
      functionSourceFile: '/src/openvswitch/lib/ovs-router.c'
      linkageType:     InternalLinkage
      functionLinenumber: 144
      functionLinenumberEnd: 145
      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:    rt_entry_free
      functionSourceFile: '/src/openvswitch/lib/ovs-router.c'
      linkageType:     InternalLinkage
      functionLinenumber: 264
      functionLinenumberEnd: 267
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - cls_rule_destroy
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-router.c:265,5'
          Dst:             cls_rule_destroy
    - functionName:    hash_int
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 408
      functionLinenumberEnd: 409
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_2words
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:409,12'
          Dst:             hash_2words
    - functionName:    cmap_node_next
      functionSourceFile: '/src/openvswitch/lib/cmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 67
      functionLinenumberEnd: 68
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          22
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_2words
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 153
      functionLinenumberEnd: 154
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_add
        - hash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:154,33'
          Dst:             hash_add
        - Src:             'lib/hash.h:154,24'
          Dst:             hash_add
        - Src:             'lib/hash.h:154,12'
          Dst:             hash_finish
    - functionName:    hash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 108
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_add
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:109,12'
          Dst:             mhash_add
    - functionName:    hash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:119,12'
          Dst:             mhash_finish
    - functionName:    mhash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_rot
        - mhash_add__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:78,12'
          Dst:             mhash_add__
        - Src:             'lib/hash.h:79,12'
          Dst:             hash_rot
    - functionName:    mhash_add__
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hash_rot
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:71,12'
          Dst:             hash_rot
    - functionName:    hash_rot
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 32
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_router_show_text
      functionSourceFile: '/src/openvswitch/lib/ovs-router.c'
      linkageType:     InternalLinkage
      functionLinenumber: 737
      functionLinenumberEnd: 784
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         45
      ICount:          265
      EdgeCount:       60
      CyclomaticComplexity: 17
      functionsReached:
        - cls_cursor_advance
        - cls_cursor_start
        - ds_put_format
        - htonl
        - ipv6_addr_is_set
        - ipv6_format_mapped
        - is_standard_table
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-router.c:741,13'
          Dst:             is_standard_table
        - Src:             'lib/ovs-router.c:742,13'
          Dst:             ds_put_format
        - Src:             'lib/ovs-router.c:744,13'
          Dst:             ds_put_format
        - Src:             'lib/ovs-router.c:752,5'
          Dst:             cls_cursor_start
        - Src:             'lib/ovs-router.c:752,5'
          Dst:             cls_cursor_advance
        - Src:             'lib/ovs-router.c:755,13'
          Dst:             ds_put_format
        - Src:             'lib/ovs-router.c:757,13'
          Dst:             ds_put_format
        - Src:             'lib/ovs-router.c:759,9'
          Dst:             ipv6_format_mapped
        - Src:             'lib/ovs-router.c:761,13'
          Dst:             htonl
        - Src:             'lib/ovs-router.c:764,9'
          Dst:             ds_put_format
        - Src:             'lib/ovs-router.c:766,13'
          Dst:             ds_put_format
        - Src:             'lib/ovs-router.c:769,9'
          Dst:             ds_put_format
        - Src:             'lib/ovs-router.c:770,13'
          Dst:             ipv6_addr_is_set
        - Src:             'lib/ovs-router.c:771,13'
          Dst:             ds_put_format
        - Src:             'lib/ovs-router.c:772,13'
          Dst:             ipv6_format_mapped
        - Src:             'lib/ovs-router.c:774,9'
          Dst:             ds_put_format
        - Src:             'lib/ovs-router.c:775,9'
          Dst:             ipv6_format_mapped
        - Src:             'lib/ovs-router.c:777,13'
          Dst:             ds_put_format
        - Src:             'lib/ovs-router.c:779,14'
          Dst:             is_standard_table
        - Src:             'lib/ovs-router.c:780,13'
          Dst:             ds_put_format
        - Src:             'lib/ovs-router.c:782,9'
          Dst:             ds_put_format
    - functionName:    ipv6_addr_is_set
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1205
      functionLinenumberEnd: 1206
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ipv6_addr_equals
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:1206,13'
          Dst:             ipv6_addr_equals
    - functionName:    ipv6_addr_equals
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1184
      functionLinenumberEnd: 1186
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          80
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_router_show_json
      functionSourceFile: '/src/openvswitch/lib/ovs-router.c'
      linkageType:     InternalLinkage
      functionLinenumber: 675
      functionLinenumberEnd: 724
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          232
      EdgeCount:       38
      CyclomaticComplexity: 11
      functionsReached:
        - cls_cursor_advance
        - cls_cursor_start
        - ds_clear
        - ds_cstr_ro
        - ds_destroy
        - htonl
        - ipv6_addr_is_set
        - ipv6_format_mapped
        - json_array_add
        - json_array_create_1
        - json_boolean_create
        - json_integer_create
        - json_object_create
        - json_object_put
        - json_object_put_string
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-router.c:683,5'
          Dst:             cls_cursor_start
        - Src:             'lib/ovs-router.c:683,5'
          Dst:             cls_cursor_advance
        - Src:             'lib/ovs-router.c:687,16'
          Dst:             json_object_create
        - Src:             'lib/ovs-router.c:688,14'
          Dst:             json_object_create
        - Src:             'lib/ovs-router.c:690,13'
          Dst:             htonl
        - Src:             'lib/ovs-router.c:694,40'
          Dst:             json_integer_create
        - Src:             'lib/ovs-router.c:694,9'
          Dst:             json_object_put
        - Src:             'lib/ovs-router.c:695,39'
          Dst:             json_boolean_create
        - Src:             'lib/ovs-router.c:695,9'
          Dst:             json_object_put
        - Src:             'lib/ovs-router.c:697,25'
          Dst:             json_boolean_create
        - Src:             'lib/ovs-router.c:696,9'
          Dst:             json_object_put
        - Src:             'lib/ovs-router.c:698,41'
          Dst:             json_integer_create
        - Src:             'lib/ovs-router.c:698,9'
          Dst:             json_object_put
        - Src:             'lib/ovs-router.c:699,9'
          Dst:             json_object_put_string
        - Src:             'lib/ovs-router.c:701,9'
          Dst:             ipv6_format_mapped
        - Src:             'lib/ovs-router.c:702,45'
          Dst:             ds_cstr_ro
        - Src:             'lib/ovs-router.c:702,9'
          Dst:             json_object_put_string
        - Src:             'lib/ovs-router.c:703,9'
          Dst:             ds_clear
        - Src:             'lib/ovs-router.c:705,9'
          Dst:             ipv6_format_mapped
        - Src:             'lib/ovs-router.c:706,49'
          Dst:             ds_cstr_ro
        - Src:             'lib/ovs-router.c:706,9'
          Dst:             json_object_put_string
        - Src:             'lib/ovs-router.c:707,9'
          Dst:             ds_clear
        - Src:             'lib/ovs-router.c:710,43'
          Dst:             json_integer_create
        - Src:             'lib/ovs-router.c:710,13'
          Dst:             json_object_put
        - Src:             'lib/ovs-router.c:713,13'
          Dst:             ipv6_addr_is_set
        - Src:             'lib/ovs-router.c:714,13'
          Dst:             ipv6_format_mapped
        - Src:             'lib/ovs-router.c:715,51'
          Dst:             ds_cstr_ro
        - Src:             'lib/ovs-router.c:715,13'
          Dst:             json_object_put_string
        - Src:             'lib/ovs-router.c:716,13'
          Dst:             ds_clear
        - Src:             'lib/ovs-router.c:719,43'
          Dst:             json_array_create_1
        - Src:             'lib/ovs-router.c:719,9'
          Dst:             json_object_put
        - Src:             'lib/ovs-router.c:720,9'
          Dst:             json_array_add
        - Src:             'lib/ovs-router.c:723,5'
          Dst:             ds_destroy
    - functionName:    scan_ipv6_route
      functionSourceFile: '/src/openvswitch/lib/ovs-router.c'
      linkageType:     InternalLinkage
      functionLinenumber: 512
      functionLinenumberEnd: 519
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ipv6_parse_cidr
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-router.c:513,19'
          Dst:             ipv6_parse_cidr
    - functionName:    scan_ipv4_route
      functionSourceFile: '/src/openvswitch/lib/ovs-router.c'
      linkageType:     InternalLinkage
      functionLinenumber: 523
      functionLinenumberEnd: 530
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ip_parse_cidr
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-router.c:524,19'
          Dst:             ip_parse_cidr
    - functionName:    rule_pvec_prio
      functionSourceFile: '/src/openvswitch/lib/ovs-router.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1301
      functionLinenumberEnd: 1316
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          31
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    classifier_publish
      functionSourceFile: '/src/openvswitch/lib/classifier.h'
      linkageType:     InternalLinkage
      functionLinenumber: 437
      functionLinenumberEnd: 440
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - pvector_publish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier.h:439,5'
          Dst:             pvector_publish
    - functionName:    pvector_publish
      functionSourceFile: '/src/openvswitch/lib/pvector.h'
      linkageType:     InternalLinkage
      functionLinenumber: 243
      functionLinenumberEnd: 247
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          28
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - pvector_publish__
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/pvector.h:245,9'
          Dst:             pvector_publish__
    - functionName:    classifier_defer
      functionSourceFile: '/src/openvswitch/lib/classifier.h'
      linkageType:     InternalLinkage
      functionLinenumber: 431
      functionLinenumberEnd: 433
      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:    clsmap_node_destroy_cb
      functionSourceFile: '/src/openvswitch/lib/ovs-router.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1195
      functionLinenumberEnd: 1198
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - classifier_destroy
        - ovsrcu_postpone__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-router.c:1196,5'
          Dst:             classifier_destroy
        - Src:             'lib/ovs-router.c:1197,5'
          Dst:             ovsrcu_postpone__
    - functionName:    cmap_remove
      functionSourceFile: '/src/openvswitch/lib/cmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 293
      functionLinenumberEnd: 294
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - cmap_replace
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/cmap.h:294,12'
          Dst:             cmap_replace
    - functionName:    cls_flush
      functionSourceFile: '/src/openvswitch/lib/ovs-router.c'
      linkageType:     InternalLinkage
      functionLinenumber: 130
      functionLinenumberEnd: 140
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          76
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - classifier_defer
        - classifier_publish
        - cls_cursor_advance
        - cls_cursor_start
        - rt_entry_delete__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-router.c:133,5'
          Dst:             classifier_defer
        - Src:             'lib/ovs-router.c:134,5'
          Dst:             cls_cursor_start
        - Src:             'lib/ovs-router.c:134,5'
          Dst:             cls_cursor_advance
        - Src:             'lib/ovs-router.c:136,13'
          Dst:             rt_entry_delete__
        - Src:             'lib/ovs-router.c:139,5'
          Dst:             classifier_publish
    - functionName:    cls_create
      functionSourceFile: '/src/openvswitch/lib/ovs-router.c'
      linkageType:     InternalLinkage
      functionLinenumber: 116
      functionLinenumberEnd: 124
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - classifier_init
        - cmap_insert
        - hash_int
        - xmalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-router.c:119,12'
          Dst:             xmalloc
        - Src:             'lib/ovs-router.c:120,5'
          Dst:             classifier_init
        - Src:             'lib/ovs-router.c:122,44'
          Dst:             hash_int
        - Src:             'lib/ovs-router.c:122,5'
          Dst:             cmap_insert
    - functionName:    verify_prefsrc
      functionSourceFile: '/src/openvswitch/lib/ovs-router.c'
      linkageType:     InternalLinkage
      functionLinenumber: 290
      functionLinenumberEnd: 324
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         32
      ICount:          271
      EdgeCount:       43
      CyclomaticComplexity: 13
      functionsReached:
        - ipv6_addr_bitand
        - netdev_close
        - netdev_get_addr_list
        - netdev_open
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-router.c:295,11'
          Dst:             netdev_open
        - Src:             'lib/ovs-router.c:300,11'
          Dst:             netdev_get_addr_list
        - Src:             'lib/ovs-router.c:307,14'
          Dst:             ipv6_addr_bitand
        - Src:             'lib/ovs-router.c:308,14'
          Dst:             ipv6_addr_bitand
        - Src:             'lib/ovs-router.c:322,5'
          Dst:             netdev_close
    - functionName:    count_1bits
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 332
      functionLinenumberEnd: 347
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          37
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    in6_addr_mapped_ipv4
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1215
      functionLinenumberEnd: 1220
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          20
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    in6_addr_set_mapped_ipv4
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1225
      functionLinenumberEnd: 1227
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - in6_addr_mapped_ipv4
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:1226,12'
          Dst:             in6_addr_mapped_ipv4
    - functionName:    ovs_router_rule_del_cmd
      functionSourceFile: '/src/openvswitch/lib/ovs-router.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1051
      functionLinenumberEnd: 1126
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         42
      ICount:          266
      EdgeCount:       56
      CyclomaticComplexity: 16
      functionsReached:
        - ds_cstr_ro
        - ds_destroy
        - ds_put_format
        - in6_addr_set_mapped_ipv4
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovs_router_rule_del
        - ovs_scan
        - ovs_strerror
        - scan_ipv4_route
        - scan_ipv6_route
        - unixctl_command_reply
        - unixctl_command_reply_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-router.c:1062,9'
          Dst:             ovs_scan
        - Src:             'lib/ovs-router.c:1066,9'
          Dst:             ovs_scan
        - Src:             'lib/ovs-router.c:1071,9'
          Dst:             ovs_scan
        - Src:             'lib/ovs-router.c:1073,16'
          Dst:             ovs_scan
        - Src:             'lib/ovs-router.c:1076,13'
          Dst:             scan_ipv4_route
        - Src:             'lib/ovs-router.c:1077,13'
          Dst:             in6_addr_set_mapped_ipv4
        - Src:             'lib/ovs-router.c:1079,20'
          Dst:             scan_ipv6_route
        - Src:             'lib/ovs-router.c:1082,13'
          Dst:             unixctl_command_reply_error
        - Src:             'lib/ovs-router.c:1086,9'
          Dst:             unixctl_command_reply_error
        - Src:             'lib/ovs-router.c:1090,9'
          Dst:             unixctl_command_reply_error
        - Src:             'lib/ovs-router.c:1094,9'
          Dst:             ovs_scan
        - Src:             'lib/ovs-router.c:1096,13'
          Dst:             unixctl_command_reply_error
        - Src:             'lib/ovs-router.c:1101,9'
          Dst:             ovs_scan
        - Src:             'lib/ovs-router.c:1103,16'
          Dst:             ovs_scan
        - Src:             'lib/ovs-router.c:1105,16'
          Dst:             ovs_scan
        - Src:             'lib/ovs-router.c:1107,17'
          Dst:             ovs_scan
        - Src:             'lib/ovs-router.c:1108,9'
          Dst:             unixctl_command_reply_error
        - Src:             'lib/ovs-router.c:1112,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/ovs-router.c:1113,11'
          Dst:             ovs_router_rule_del
        - Src:             'lib/ovs-router.c:1114,5'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/ovs-router.c:1120,23'
          Dst:             ovs_strerror
        - Src:             'lib/ovs-router.c:1119,9'
          Dst:             ds_put_format
        - Src:             'lib/ovs-router.c:1121,43'
          Dst:             ds_cstr_ro
        - Src:             'lib/ovs-router.c:1121,9'
          Dst:             unixctl_command_reply_error
        - Src:             'lib/ovs-router.c:1122,9'
          Dst:             ds_destroy
        - Src:             'lib/ovs-router.c:1124,9'
          Dst:             unixctl_command_reply
    - functionName:    ovs_router_rule_del
      functionSourceFile: '/src/openvswitch/lib/ovs-router.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1357
      functionLinenumberEnd: 1379
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - int
        - bool
        - char
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         31
      ICount:          170
      EdgeCount:       42
      CyclomaticComplexity: 13
      functionsReached:
        - ipv6_addr_equals
        - ovsrcu_postpone__
        - pvector_cursor_init
        - pvector_cursor_next
        - pvector_publish
        - pvector_remove
        - rule_destroy_cb
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-router.c:1360,5'
          Dst:             pvector_cursor_init
        - Src:             'lib/ovs-router.c:1360,5'
          Dst:             pvector_cursor_next
        - Src:             'lib/ovs-router.c:1369,16'
          Dst:             ipv6_addr_equals
        - Src:             'lib/ovs-router.c:1371,13'
          Dst:             pvector_remove
        - Src:             'lib/ovs-router.c:1372,13'
          Dst:             ovsrcu_postpone__
        - Src:             'lib/ovs-router.c:1372,13'
          Dst:             rule_destroy_cb
        - Src:             'lib/ovs-router.c:1373,13'
          Dst:             pvector_publish
    - functionName:    rule_destroy_cb
      functionSourceFile: '/src/openvswitch/lib/ovs-router.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1244
      functionLinenumberEnd: 1246
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrcu_postpone__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-router.c:1245,5'
          Dst:             ovsrcu_postpone__
    - functionName:    ovs_router_rule_add_cmd
      functionSourceFile: '/src/openvswitch/lib/ovs-router.c'
      linkageType:     InternalLinkage
      functionLinenumber: 970
      functionLinenumberEnd: 1046
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         54
      ICount:          310
      EdgeCount:       72
      CyclomaticComplexity: 20
      functionsReached:
        - in6_addr_set_mapped_ipv4
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovs_router_rule_add__
        - ovs_scan
        - pvector_cursor_init
        - pvector_cursor_next
        - scan_ipv4_route
        - scan_ipv6_route
        - unixctl_command_reply
        - unixctl_command_reply_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-router.c:980,9'
          Dst:             ovs_scan
        - Src:             'lib/ovs-router.c:984,9'
          Dst:             ovs_scan
        - Src:             'lib/ovs-router.c:989,9'
          Dst:             ovs_scan
        - Src:             'lib/ovs-router.c:991,16'
          Dst:             ovs_scan
        - Src:             'lib/ovs-router.c:994,13'
          Dst:             scan_ipv4_route
        - Src:             'lib/ovs-router.c:995,13'
          Dst:             in6_addr_set_mapped_ipv4
        - Src:             'lib/ovs-router.c:997,20'
          Dst:             scan_ipv6_route
        - Src:             'lib/ovs-router.c:1000,13'
          Dst:             unixctl_command_reply_error
        - Src:             'lib/ovs-router.c:1004,9'
          Dst:             unixctl_command_reply_error
        - Src:             'lib/ovs-router.c:1008,9'
          Dst:             unixctl_command_reply_error
        - Src:             'lib/ovs-router.c:1012,9'
          Dst:             ovs_scan
        - Src:             'lib/ovs-router.c:1014,13'
          Dst:             unixctl_command_reply_error
        - Src:             'lib/ovs-router.c:1019,9'
          Dst:             ovs_scan
        - Src:             'lib/ovs-router.c:1021,16'
          Dst:             ovs_scan
        - Src:             'lib/ovs-router.c:1023,16'
          Dst:             ovs_scan
        - Src:             'lib/ovs-router.c:1025,17'
          Dst:             ovs_scan
        - Src:             'lib/ovs-router.c:1026,9'
          Dst:             unixctl_command_reply_error
        - Src:             'lib/ovs-router.c:1030,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/ovs-router.c:1035,9'
          Dst:             pvector_cursor_init
        - Src:             'lib/ovs-router.c:1035,9'
          Dst:             pvector_cursor_next
        - Src:             'lib/ovs-router.c:1042,5'
          Dst:             ovs_router_rule_add__
        - Src:             'lib/ovs-router.c:1043,5'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/ovs-router.c:1045,5'
          Dst:             unixctl_command_reply
    - functionName:    ovs_router_rule_add__
      functionSourceFile: '/src/openvswitch/lib/ovs-router.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1323
      functionLinenumberEnd: 1336
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - int
        - bool
        - bool
        - char
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          70
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - pvector_insert
        - pvector_publish
        - rule_pvec_prio
        - xzalloc
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-router.c:1324,32'
          Dst:             xzalloc
        - Src:             'lib/ovs-router.c:1334,34'
          Dst:             rule_pvec_prio
        - Src:             'lib/ovs-router.c:1334,5'
          Dst:             pvector_insert
        - Src:             'lib/ovs-router.c:1335,5'
          Dst:             pvector_publish
    - functionName:    ovs_router_rules_show
      functionSourceFile: '/src/openvswitch/lib/ovs-router.c'
      linkageType:     InternalLinkage
      functionLinenumber: 946
      functionLinenumberEnd: 965
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          75
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - ds_cstr
        - ds_destroy
        - json_array_create_empty
        - ovs_router_rules_show_json
        - ovs_router_rules_show_text
        - ovs_scan
        - unixctl_command_get_output_format
        - unixctl_command_reply
        - unixctl_command_reply_json
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-router.c:949,21'
          Dst:             ovs_scan
        - Src:             'lib/ovs-router.c:953,9'
          Dst:             unixctl_command_get_output_format
        - Src:             'lib/ovs-router.c:954,32'
          Dst:             json_array_create_empty
        - Src:             'lib/ovs-router.c:956,9'
          Dst:             ovs_router_rules_show_json
        - Src:             'lib/ovs-router.c:957,9'
          Dst:             unixctl_command_reply_json
        - Src:             'lib/ovs-router.c:961,9'
          Dst:             ovs_router_rules_show_text
        - Src:             'lib/ovs-router.c:962,37'
          Dst:             ds_cstr
        - Src:             'lib/ovs-router.c:962,9'
          Dst:             unixctl_command_reply
        - Src:             'lib/ovs-router.c:963,9'
          Dst:             ds_destroy
    - functionName:    ovs_router_lookup_cmd
      functionSourceFile: '/src/openvswitch/lib/ovs-router.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1131
      functionLinenumberEnd: 1191
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         37
      ICount:          195
      EdgeCount:       49
      CyclomaticComplexity: 14
      functionsReached:
        - ds_cstr
        - ds_destroy
        - ds_put_format
        - in6_addr_set_mapped_ipv4
        - ipv6_format_mapped
        - ipv6_parse
        - ovs_router_lookup
        - ovs_scan
        - scan_ipv4_route
        - scan_ipv6_route
        - unixctl_command_reply
        - unixctl_command_reply_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-router.c:1143,9'
          Dst:             scan_ipv4_route
        - Src:             'lib/ovs-router.c:1144,9'
          Dst:             in6_addr_set_mapped_ipv4
        - Src:             'lib/ovs-router.c:1146,16'
          Dst:             scan_ipv6_route
        - Src:             'lib/ovs-router.c:1149,9'
          Dst:             unixctl_command_reply_error
        - Src:             'lib/ovs-router.c:1155,13'
          Dst:             ovs_scan
        - Src:             'lib/ovs-router.c:1160,17'
          Dst:             ovs_scan
        - Src:             'lib/ovs-router.c:1161,17'
          Dst:             ipv6_parse
        - Src:             'lib/ovs-router.c:1165,17'
          Dst:             ovs_scan
        - Src:             'lib/ovs-router.c:1170,9'
          Dst:             unixctl_command_reply_error
        - Src:             'lib/ovs-router.c:1175,9'
          Dst:             in6_addr_set_mapped_ipv4
        - Src:             'lib/ovs-router.c:1178,9'
          Dst:             ovs_router_lookup
        - Src:             'lib/ovs-router.c:1181,9'
          Dst:             ds_put_format
        - Src:             'lib/ovs-router.c:1182,9'
          Dst:             ipv6_format_mapped
        - Src:             'lib/ovs-router.c:1183,9'
          Dst:             ds_put_format
        - Src:             'lib/ovs-router.c:1184,9'
          Dst:             ipv6_format_mapped
        - Src:             'lib/ovs-router.c:1185,9'
          Dst:             ds_put_format
        - Src:             'lib/ovs-router.c:1186,37'
          Dst:             ds_cstr
        - Src:             'lib/ovs-router.c:1186,9'
          Dst:             unixctl_command_reply
        - Src:             'lib/ovs-router.c:1187,9'
          Dst:             ds_destroy
        - Src:             'lib/ovs-router.c:1189,9'
          Dst:             unixctl_command_reply_error
    - functionName:    ovs_router_lookup
      functionSourceFile: '/src/openvswitch/lib/ovs-router.c'
      linkageType:     InternalLinkage
      functionLinenumber: 180
      functionLinenumberEnd: 260
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         88
      ICount:          628
      EdgeCount:       120
      CyclomaticComplexity: 34
      functionsReached:
        - classifier_lookup
        - cls_find
        - htonl
        - ipv6_addr_equals_masked
        - ipv6_addr_is_set
        - ovs_router_entry_cast
        - ovs_router_lookup_fallback
        - ovs_strlcpy
        - pvector_cursor_init
        - pvector_cursor_next
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-router.c:186,16'
          Dst:             ipv6_addr_is_set
        - Src:             'lib/ovs-router.c:188,40'
          Dst:             cls_find
        - Src:             'lib/ovs-router.c:195,18'
          Dst:             classifier_lookup
        - Src:             'lib/ovs-router.c:203,13'
          Dst:             htonl
        - Src:             'lib/ovs-router.c:210,5'
          Dst:             pvector_cursor_init
        - Src:             'lib/ovs-router.c:210,5'
          Dst:             pvector_cursor_next
        - Src:             'lib/ovs-router.c:214,14'
          Dst:             htonl
        - Src:             'lib/ovs-router.c:215,15'
          Dst:             htonl
        - Src:             'lib/ovs-router.c:220,20'
          Dst:             ipv6_addr_equals_masked
        - Src:             'lib/ovs-router.c:227,38'
          Dst:             cls_find
        - Src:             'lib/ovs-router.c:233,18'
          Dst:             classifier_lookup
        - Src:             'lib/ovs-router.c:236,46'
          Dst:             ovs_router_entry_cast
        - Src:             'lib/ovs-router.c:241,22'
          Dst:             htonl
        - Src:             'lib/ovs-router.c:242,21'
          Dst:             htonl
        - Src:             'lib/ovs-router.c:250,38'
          Dst:             ovs_router_entry_cast
        - Src:             'lib/ovs-router.c:252,9'
          Dst:             ovs_strlcpy
        - Src:             'lib/ovs-router.c:254,21'
          Dst:             ipv6_addr_is_set
        - Src:             'lib/ovs-router.c:259,12'
          Dst:             ovs_router_lookup_fallback
    - functionName:    ovs_router_lookup_fallback
      functionSourceFile: '/src/openvswitch/lib/ovs-router.c'
      linkageType:     InternalLinkage
      functionLinenumber: 160
      functionLinenumberEnd: 174
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          66
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - in6_addr_set_mapped_ipv4
        - netdev_get_in4_by_name
        - route_table_fallback_lookup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-router.c:164,13'
          Dst:             route_table_fallback_lookup
        - Src:             'lib/ovs-router.c:167,9'
          Dst:             netdev_get_in4_by_name
        - Src:             'lib/ovs-router.c:171,9'
          Dst:             in6_addr_set_mapped_ipv4
    - functionName:    ovs_router_del
      functionSourceFile: '/src/openvswitch/lib/ovs-router.c'
      linkageType:     InternalLinkage
      functionLinenumber: 616
      functionLinenumberEnd: 670
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          165
      EdgeCount:       35
      CyclomaticComplexity: 11
      functionsReached:
        - cls_find
        - ds_cstr_ro
        - ds_destroy
        - ds_put_format
        - in6_addr_set_mapped_ipv4
        - ovs_scan
        - rt_entry_delete
        - scan_ipv4_route
        - scan_ipv6_route
        - seq_change
        - unixctl_command_reply
        - unixctl_command_reply_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-router.c:617,30'
          Dst:             cls_find
        - Src:             'lib/ovs-router.c:625,9'
          Dst:             scan_ipv4_route
        - Src:             'lib/ovs-router.c:626,9'
          Dst:             in6_addr_set_mapped_ipv4
        - Src:             'lib/ovs-router.c:628,17'
          Dst:             scan_ipv6_route
        - Src:             'lib/ovs-router.c:629,9'
          Dst:             unixctl_command_reply_error
        - Src:             'lib/ovs-router.c:635,13'
          Dst:             ovs_scan
        - Src:             'lib/ovs-router.c:639,13'
          Dst:             ovs_scan
        - Src:             'lib/ovs-router.c:640,19'
          Dst:             cls_find
        - Src:             'lib/ovs-router.c:644,17'
          Dst:             ds_put_format
        - Src:             'lib/ovs-router.c:645,51'
          Dst:             ds_cstr_ro
        - Src:             'lib/ovs-router.c:645,17'
          Dst:             unixctl_command_reply_error
        - Src:             'lib/ovs-router.c:646,17'
          Dst:             ds_destroy
        - Src:             'lib/ovs-router.c:650,20'
          Dst:             ovs_scan
        - Src:             'lib/ovs-router.c:651,13'
          Dst:             unixctl_command_reply_error
        - Src:             'lib/ovs-router.c:655,9'
          Dst:             unixctl_command_reply_error
        - Src:             'lib/ovs-router.c:660,9'
          Dst:             unixctl_command_reply_error
        - Src:             'lib/ovs-router.c:664,9'
          Dst:             rt_entry_delete
        - Src:             'lib/ovs-router.c:665,9'
          Dst:             unixctl_command_reply
        - Src:             'lib/ovs-router.c:666,9'
          Dst:             seq_change
        - Src:             'lib/ovs-router.c:668,9'
          Dst:             unixctl_command_reply_error
    - functionName:    ovs_router_show
      functionSourceFile: '/src/openvswitch/lib/ovs-router.c'
      linkageType:     InternalLinkage
      functionLinenumber: 789
      functionLinenumberEnd: 852
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         45
      ICount:          257
      EdgeCount:       60
      CyclomaticComplexity: 17
      functionsReached:
        - cls_find
        - cmap_cursor_advance
        - cmap_cursor_start
        - ds_cstr
        - ds_cstr_ro
        - ds_destroy
        - ds_put_format
        - json_array_create_empty
        - ovs_router_show_json
        - ovs_router_show_text
        - ovs_scan
        - strcmp
        - unixctl_command_get_output_format
        - unixctl_command_reply
        - unixctl_command_reply_error
        - unixctl_command_reply_json
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-router.c:795,14'
          Dst:             strcmp
        - Src:             'lib/ovs-router.c:797,21'
          Dst:             ovs_scan
        - Src:             'lib/ovs-router.c:798,13'
          Dst:             unixctl_command_reply_error
        - Src:             'lib/ovs-router.c:804,15'
          Dst:             cls_find
        - Src:             'lib/ovs-router.c:806,13'
          Dst:             ds_put_format
        - Src:             'lib/ovs-router.c:807,47'
          Dst:             ds_cstr_ro
        - Src:             'lib/ovs-router.c:807,13'
          Dst:             unixctl_command_reply_error
        - Src:             'lib/ovs-router.c:808,13'
          Dst:             ds_destroy
        - Src:             'lib/ovs-router.c:813,9'
          Dst:             unixctl_command_get_output_format
        - Src:             'lib/ovs-router.c:816,18'
          Dst:             json_array_create_empty
        - Src:             'lib/ovs-router.c:821,13'
          Dst:             cmap_cursor_start
        - Src:             'lib/ovs-router.c:821,13'
          Dst:             cmap_cursor_advance
        - Src:             'lib/ovs-router.c:822,17'
          Dst:             ovs_router_show_json
        - Src:             'lib/ovs-router.c:824,42'
          Dst:             cls_find
        - Src:             'lib/ovs-router.c:824,13'
          Dst:             ovs_router_show_json
        - Src:             'lib/ovs-router.c:826,42'
          Dst:             cls_find
        - Src:             'lib/ovs-router.c:826,13'
          Dst:             ovs_router_show_json
        - Src:             'lib/ovs-router.c:827,42'
          Dst:             cls_find
        - Src:             'lib/ovs-router.c:827,13'
          Dst:             ovs_router_show_json
        - Src:             'lib/ovs-router.c:828,42'
          Dst:             cls_find
        - Src:             'lib/ovs-router.c:828,13'
          Dst:             ovs_router_show_json
        - Src:             'lib/ovs-router.c:830,13'
          Dst:             ovs_router_show_json
        - Src:             'lib/ovs-router.c:833,9'
          Dst:             unixctl_command_reply_json
        - Src:             'lib/ovs-router.c:838,13'
          Dst:             cmap_cursor_start
        - Src:             'lib/ovs-router.c:838,13'
          Dst:             cmap_cursor_advance
        - Src:             'lib/ovs-router.c:839,17'
          Dst:             ovs_router_show_text
        - Src:             'lib/ovs-router.c:842,39'
          Dst:             cls_find
        - Src:             'lib/ovs-router.c:842,13'
          Dst:             ovs_router_show_text
        - Src:             'lib/ovs-router.c:843,39'
          Dst:             cls_find
        - Src:             'lib/ovs-router.c:843,13'
          Dst:             ovs_router_show_text
        - Src:             'lib/ovs-router.c:844,39'
          Dst:             cls_find
        - Src:             'lib/ovs-router.c:844,13'
          Dst:             ovs_router_show_text
        - Src:             'lib/ovs-router.c:847,13'
          Dst:             ovs_router_show_text
        - Src:             'lib/ovs-router.c:849,37'
          Dst:             ds_cstr
        - Src:             'lib/ovs-router.c:849,9'
          Dst:             unixctl_command_reply
        - Src:             'lib/ovs-router.c:850,9'
          Dst:             ds_destroy
    - functionName:    ovs_router_add
      functionSourceFile: '/src/openvswitch/lib/ovs-router.c'
      linkageType:     InternalLinkage
      functionLinenumber: 535
      functionLinenumberEnd: 611
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         43
      ICount:          251
      EdgeCount:       58
      CyclomaticComplexity: 17
      functionsReached:
        - in6_addr_set_mapped_ipv4
        - ip_parse
        - ipv6_parse
        - ovs_router_insert__
        - ovs_scan
        - scan_ipv4_route
        - scan_ipv6_route
        - unixctl_command_reply
        - unixctl_command_reply_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-router.c:550,9'
          Dst:             scan_ipv4_route
        - Src:             'lib/ovs-router.c:551,9'
          Dst:             in6_addr_set_mapped_ipv4
        - Src:             'lib/ovs-router.c:554,16'
          Dst:             scan_ipv6_route
        - Src:             'lib/ovs-router.c:557,9'
          Dst:             unixctl_command_reply_error
        - Src:             'lib/ovs-router.c:564,13'
          Dst:             ovs_scan
        - Src:             'lib/ovs-router.c:569,17'
          Dst:             ovs_scan
        - Src:             'lib/ovs-router.c:570,17'
          Dst:             ipv6_parse
        - Src:             'lib/ovs-router.c:573,17'
          Dst:             ipv6_parse
        - Src:             'lib/ovs-router.c:577,17'
          Dst:             ovs_scan
        - Src:             'lib/ovs-router.c:580,17'
          Dst:             ip_parse
        - Src:             'lib/ovs-router.c:585,13'
          Dst:             ovs_scan
        - Src:             'lib/ovs-router.c:587,20'
          Dst:             ovs_scan
        - Src:             'lib/ovs-router.c:588,13'
          Dst:             unixctl_command_reply_error
        - Src:             'lib/ovs-router.c:592,9'
          Dst:             unixctl_command_reply_error
        - Src:             'lib/ovs-router.c:598,9'
          Dst:             in6_addr_set_mapped_ipv4
        - Src:             'lib/ovs-router.c:601,9'
          Dst:             in6_addr_set_mapped_ipv4
        - Src:             'lib/ovs-router.c:604,11'
          Dst:             ovs_router_insert__
        - Src:             'lib/ovs-router.c:607,9'
          Dst:             unixctl_command_reply_error
        - Src:             'lib/ovs-router.c:609,9'
          Dst:             unixctl_command_reply
    - functionName:    ovs_router_insert__
      functionSourceFile: '/src/openvswitch/lib/ovs-router.c'
      linkageType:     InternalLinkage
      functionLinenumber: 381
      functionLinenumberEnd: 442
      functionDepth:   0
      returnType:      int
      argCount:        9
      argTypes:
        - int
        - int
        - char
        - bool
        - 'N/A'
        - char
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          227
      EdgeCount:       36
      CyclomaticComplexity: 10
      functionsReached:
        - classifier_replace
        - cls_create
        - cls_find
        - cls_rule_init
        - ds_cstr
        - ds_destroy
        - ipv6_addr_is_set
        - ipv6_format_mapped
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovs_router_entry_cast
        - ovs_strlcpy
        - ovsrcu_postpone__
        - rt_entry_free
        - rt_init_match
        - seq_change
        - tnl_port_map_insert_ipdev
        - vlog_rate_limit
        - xzalloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-router.c:391,5'
          Dst:             rt_init_match
        - Src:             'lib/ovs-router.c:393,9'
          Dst:             xzalloc
        - Src:             'lib/ovs-router.c:394,5'
          Dst:             ovs_strlcpy
        - Src:             'lib/ovs-router.c:395,9'
          Dst:             ipv6_addr_is_set
        - Src:             'lib/ovs-router.c:404,9'
          Dst:             ipv6_addr_is_set
        - Src:             'lib/ovs-router.c:412,16'
          Dst:             ipv6_addr_is_set
        - Src:             'lib/ovs-router.c:418,9'
          Dst:             ipv6_format_mapped
        - Src:             'lib/ovs-router.c:419,9'
          Dst:             ds_cstr
        - Src:             'lib/ovs-router.c:419,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ovs-router.c:421,9'
          Dst:             ds_destroy
        - Src:             'lib/ovs-router.c:425,5'
          Dst:             cls_rule_init
        - Src:             'lib/ovs-router.c:427,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/ovs-router.c:428,11'
          Dst:             cls_find
        - Src:             'lib/ovs-router.c:430,15'
          Dst:             cls_create
        - Src:             'lib/ovs-router.c:432,10'
          Dst:             classifier_replace
        - Src:             'lib/ovs-router.c:433,5'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/ovs-router.c:437,9'
          Dst:             ovs_router_entry_cast
        - Src:             'lib/ovs-router.c:437,9'
          Dst:             ovsrcu_postpone__
        - Src:             'lib/ovs-router.c:437,9'
          Dst:             rt_entry_free
        - Src:             'lib/ovs-router.c:439,5'
          Dst:             tnl_port_map_insert_ipdev
        - Src:             'lib/ovs-router.c:440,5'
          Dst:             seq_change
    - functionName:    ovs_router_get_netdev_source_address
      functionSourceFile: '/src/openvswitch/lib/ovs-router.c'
      linkageType:     InternalLinkage
      functionLinenumber: 330
      functionLinenumberEnd: 373
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         36
      ICount:          268
      EdgeCount:       48
      CyclomaticComplexity: 14
      functionsReached:
        - bitmap_count1
        - htonl
        - ipv6_addr_bitand
        - memcmp
        - netdev_close
        - netdev_get_addr_list
        - netdev_open
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-router.c:336,11'
          Dst:             netdev_open
        - Src:             'lib/ovs-router.c:341,11'
          Dst:             netdev_get_addr_list
        - Src:             'lib/ovs-router.c:346,15'
          Dst:             htonl
        - Src:             'lib/ovs-router.c:352,25'
          Dst:             htonl
        - Src:             'lib/ovs-router.c:356,14'
          Dst:             ipv6_addr_bitand
        - Src:             'lib/ovs-router.c:357,14'
          Dst:             ipv6_addr_bitand
        - Src:             'lib/ovs-router.c:358,21'
          Dst:             bitmap_count1
        - Src:             'lib/ovs-router.c:360,14'
          Dst:             memcmp
        - Src:             'lib/ovs-router.c:371,5'
          Dst:             netdev_close
    - functionName:    bitmap_count1
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 153
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          48
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - count_1bits
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/bitmap.h:159,18'
          Dst:             count_1bits
    - functionName:    ovs_router_flush_handler
      functionSourceFile: '/src/openvswitch/lib/ovs-router.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1275
      functionLinenumberEnd: 1284
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - cmap_destroy
        - cmap_init
        - cmap_is_empty
        - ovs_ignore
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovs_router_flush_protected
        - ovs_router_rules_flush_protected
        - pvector_destroy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-router.c:1276,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/ovs-router.c:1277,5'
          Dst:             ovs_router_rules_flush_protected
        - Src:             'lib/ovs-router.c:1278,5'
          Dst:             ovs_router_flush_protected
        - Src:             'lib/ovs-router.c:1279,5'
          Dst:             pvector_destroy
        - Src:             'lib/ovs-router.c:1280,16'
          Dst:             cmap_is_empty
        - Src:             'lib/ovs-router.c:1280,5'
          Dst:             ovs_ignore
        - Src:             'lib/ovs-router.c:1281,5'
          Dst:             cmap_destroy
        - Src:             'lib/ovs-router.c:1282,5'
          Dst:             cmap_init
        - Src:             'lib/ovs-router.c:1283,5'
          Dst:             ovs_mutex_unlock
    - functionName:    ovs_router_rules_flush_protected
      functionSourceFile: '/src/openvswitch/lib/ovs-router.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1250
      functionLinenumberEnd: 1260
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - bool
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          52
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - ovsrcu_postpone__
        - pvector_cursor_init
        - pvector_cursor_next
        - pvector_publish
        - pvector_remove
        - rule_destroy_cb
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-router.c:1253,5'
          Dst:             pvector_cursor_init
        - Src:             'lib/ovs-router.c:1253,5'
          Dst:             pvector_cursor_next
        - Src:             'lib/ovs-router.c:1255,13'
          Dst:             pvector_remove
        - Src:             'lib/ovs-router.c:1256,13'
          Dst:             ovsrcu_postpone__
        - Src:             'lib/ovs-router.c:1256,13'
          Dst:             rule_destroy_cb
        - Src:             'lib/ovs-router.c:1259,5'
          Dst:             pvector_publish
    - functionName:    ovs_router_flush_protected
      functionSourceFile: '/src/openvswitch/lib/ovs-router.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1203
      functionLinenumberEnd: 1214
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - bool
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          76
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - cls_flush
        - clsmap_node_destroy_cb
        - cmap_cursor_advance
        - cmap_cursor_start
        - cmap_remove
        - hash_int
        - ovsrcu_postpone__
        - seq_change
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-router.c:1206,5'
          Dst:             cmap_cursor_start
        - Src:             'lib/ovs-router.c:1206,5'
          Dst:             cmap_cursor_advance
        - Src:             'lib/ovs-router.c:1207,9'
          Dst:             cls_flush
        - Src:             'lib/ovs-router.c:1209,52'
          Dst:             hash_int
        - Src:             'lib/ovs-router.c:1209,13'
          Dst:             cmap_remove
        - Src:             'lib/ovs-router.c:1210,13'
          Dst:             ovsrcu_postpone__
        - Src:             'lib/ovs-router.c:1210,13'
          Dst:             clsmap_node_destroy_cb
        - Src:             'lib/ovs-router.c:1213,5'
          Dst:             seq_change
    - functionName:    ovsthread_once_start
      functionSourceFile: '/src/openvswitch/./include/openvswitch/thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsthread_once_start__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/thread.h:161,12'
          Dst:             ovsthread_once_start__
    - functionName:    ovs_router_init
      functionSourceFile: '/src/openvswitch/lib/ovs-router.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1383
      functionLinenumberEnd: 1416
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - fatal_signal_add_hook
        - init_standard_rules
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovs_router_add
        - ovs_router_del
        - ovs_router_flush_handler
        - ovs_router_lookup_cmd
        - ovs_router_rule_add_cmd
        - ovs_router_rule_del_cmd
        - ovs_router_rules_show
        - ovs_router_show
        - ovsthread_once_done
        - ovsthread_once_start
        - pvector_init
        - unixctl_command_register
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-router.c:1386,9'
          Dst:             ovsthread_once_start
        - Src:             'lib/ovs-router.c:1387,9'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/ovs-router.c:1388,9'
          Dst:             pvector_init
        - Src:             'lib/ovs-router.c:1389,9'
          Dst:             init_standard_rules
        - Src:             'lib/ovs-router.c:1390,9'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/ovs-router.c:1391,9'
          Dst:             fatal_signal_add_hook
        - Src:             'lib/ovs-router.c:1391,9'
          Dst:             ovs_router_flush_handler
        - Src:             'lib/ovs-router.c:1392,9'
          Dst:             unixctl_command_register
        - Src:             'lib/ovs-router.c:1392,9'
          Dst:             ovs_router_add
        - Src:             'lib/ovs-router.c:1396,9'
          Dst:             unixctl_command_register
        - Src:             'lib/ovs-router.c:1396,9'
          Dst:             ovs_router_show
        - Src:             'lib/ovs-router.c:1398,9'
          Dst:             unixctl_command_register
        - Src:             'lib/ovs-router.c:1398,9'
          Dst:             ovs_router_del
        - Src:             'lib/ovs-router.c:1401,9'
          Dst:             unixctl_command_register
        - Src:             'lib/ovs-router.c:1401,9'
          Dst:             ovs_router_lookup_cmd
        - Src:             'lib/ovs-router.c:1404,9'
          Dst:             unixctl_command_register
        - Src:             'lib/ovs-router.c:1404,9'
          Dst:             ovs_router_rules_show
        - Src:             'lib/ovs-router.c:1406,9'
          Dst:             unixctl_command_register
        - Src:             'lib/ovs-router.c:1406,9'
          Dst:             ovs_router_rule_add_cmd
        - Src:             'lib/ovs-router.c:1410,9'
          Dst:             unixctl_command_register
        - Src:             'lib/ovs-router.c:1410,9'
          Dst:             ovs_router_rule_del_cmd
        - Src:             'lib/ovs-router.c:1414,9'
          Dst:             ovsthread_once_done
    - functionName:    init_standard_rules
      functionSourceFile: '/src/openvswitch/lib/ovs-router.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1227
      functionLinenumberEnd: 1240
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_router_rule_add__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-router.c:1229,5'
          Dst:             ovs_router_rule_add__
        - Src:             'lib/ovs-router.c:1231,5'
          Dst:             ovs_router_rule_add__
        - Src:             'lib/ovs-router.c:1233,5'
          Dst:             ovs_router_rule_add__
        - Src:             'lib/ovs-router.c:1236,5'
          Dst:             ovs_router_rule_add__
        - Src:             'lib/ovs-router.c:1238,5'
          Dst:             ovs_router_rule_add__
    - functionName:    ovs_router_rule_add
      functionSourceFile: '/src/openvswitch/lib/ovs-router.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1343
      functionLinenumberEnd: 1350
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - int
        - bool
        - bool
        - char
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovs_router_rule_add__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-router.c:1345,9'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/ovs-router.c:1346,9'
          Dst:             ovs_router_rule_add__
        - Src:             'lib/ovs-router.c:1348,9'
          Dst:             ovs_mutex_unlock
    - functionName:    ovs_router_is_referenced
      functionSourceFile: '/src/openvswitch/lib/ovs-router.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1288
      functionLinenumberEnd: 1297
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          43
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - pvector_cursor_init
        - pvector_cursor_next
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-router.c:1291,5'
          Dst:             pvector_cursor_init
        - Src:             'lib/ovs-router.c:1291,5'
          Dst:             pvector_cursor_next
    - functionName:    ovs_router_rules_flush
      functionSourceFile: '/src/openvswitch/lib/ovs-router.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1264
      functionLinenumberEnd: 1271
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - bool
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - init_standard_rules
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovs_router_rules_flush_protected
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-router.c:1265,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/ovs-router.c:1266,5'
          Dst:             ovs_router_rules_flush_protected
        - Src:             'lib/ovs-router.c:1268,9'
          Dst:             init_standard_rules
        - Src:             'lib/ovs-router.c:1270,5'
          Dst:             ovs_mutex_unlock
    - functionName:    ovs_router_flush
      functionSourceFile: '/src/openvswitch/lib/ovs-router.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1218
      functionLinenumberEnd: 1222
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - bool
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovs_router_flush_protected
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-router.c:1219,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/ovs-router.c:1220,5'
          Dst:             ovs_router_flush_protected
        - Src:             'lib/ovs-router.c:1221,5'
          Dst:             ovs_mutex_unlock
    - functionName:    ovs_router_force_insert
      functionSourceFile: '/src/openvswitch/lib/ovs-router.c'
      linkageType:     InternalLinkage
      functionLinenumber: 463
      functionLinenumberEnd: 466
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - int
        - int
        - 'N/A'
        - char
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_router_insert__
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-router.c:464,5'
          Dst:             ovs_router_insert__
    - functionName:    ovs_router_insert
      functionSourceFile: '/src/openvswitch/lib/ovs-router.c'
      linkageType:     InternalLinkage
      functionLinenumber: 448
      functionLinenumberEnd: 453
      functionDepth:   0
      returnType:      void
      argCount:        8
      argTypes:
        - int
        - int
        - 'N/A'
        - char
        - bool
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_router_insert__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-router.c:450,9'
          Dst:             ovs_router_insert__
    - functionName:    ovs_router_disable_system_routing_table
      functionSourceFile: '/src/openvswitch/lib/ovs-router.c'
      linkageType:     InternalLinkage
      functionLinenumber: 152
      functionLinenumberEnd: 154
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    init_this_module_ovs_thread
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 43
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-thread.c:43,1'
          Dst:             vlog_insert_module
    - functionName:    ovs_list_insert
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 169
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsthread_id_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 456
      functionLinenumberEnd: 456
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_refcount_ref
      functionSourceFile: '/src/openvswitch/lib/ovs-atomic.h'
      linkageType:     InternalLinkage
      functionLinenumber: 539
      functionLinenumberEnd: 545
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-atomic.h:544,5'
          Dst:             ovs_ignore
    - functionName:    ovs_refcount_unref
      functionSourceFile: '/src/openvswitch/lib/ovs-atomic.h'
      linkageType:     InternalLinkage
      functionLinenumber: 562
      functionLinenumberEnd: 576
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-atomic.h:567,5'
          Dst:             ovs_ignore
    - functionName:    ovsthread_getspecific
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 890
      functionLinenumberEnd: 891
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsthread_key_lookup__
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-thread.c:891,13'
          Dst:             ovsthread_key_lookup__
    - functionName:    ovsthread_key_lookup__
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 852
      functionLinenumberEnd: 872
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          79
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ovs_list_push_back
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - pthread_getspecific
        - pthread_setspecific
        - xzalloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-thread.c:856,13'
          Dst:             pthread_getspecific
        - Src:             'lib/ovs-thread.c:858,17'
          Dst:             xzalloc
        - Src:             'lib/ovs-thread.c:860,9'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/ovs-thread.c:861,9'
          Dst:             pthread_setspecific
        - Src:             'lib/ovs-thread.c:862,9'
          Dst:             ovs_list_push_back
        - Src:             'lib/ovs-thread.c:863,9'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/ovs-thread.c:868,14'
          Dst:             xzalloc
    - functionName:    ovs_mutex_lock_at
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 75
      functionLinenumberEnd: 75
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          66
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_strerror
        - pthread_mutex_lock
        - vlog_abort
      functionUses:    320
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-thread.c:75,1'
          Dst:             vlog_abort
        - Src:             'lib/ovs-thread.c:75,1'
          Dst:             pthread_mutex_lock
        - Src:             'lib/ovs-thread.c:75,1'
          Dst:             ovs_strerror
        - Src:             'lib/ovs-thread.c:75,1'
          Dst:             vlog_abort
    - functionName:    ovs_list_push_back
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 204
      functionLinenumberEnd: 206
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_list_insert
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/list.h:205,5'
          Dst:             ovs_list_insert
    - functionName:    ovs_mutex_unlock
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 132
      functionLinenumberEnd: 132
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         5
      ICount:          52
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovs_strerror
        - pthread_mutex_unlock
        - vlog_abort
      functionUses:    350
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-thread.c:132,1'
          Dst:             ovs_ignore
        - Src:             'lib/ovs-thread.c:132,1'
          Dst:             pthread_mutex_unlock
        - Src:             'lib/ovs-thread.c:132,1'
          Dst:             ovs_strerror
        - Src:             'lib/ovs-thread.c:132,1'
          Dst:             vlog_abort
    - functionName:    pthread_mutex_unlock
      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:    pthread_mutex_lock
      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:    ovsthread_setspecific
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 881
      functionLinenumberEnd: 883
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsthread_key_lookup__
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-thread.c:882,6'
          Dst:             ovsthread_key_lookup__
    - functionName:    clear_slot
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 744
      functionLinenumberEnd: 754
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          46
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_list_remove
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 251
      functionLinenumberEnd: 254
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          25
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsthread_key_delete
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 833
      functionLinenumberEnd: 848
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          62
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - clear_slot
        - ovs_list_push_back
        - ovs_list_remove
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-thread.c:836,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/ovs-thread.c:839,5'
          Dst:             ovs_list_remove
        - Src:             'lib/ovs-thread.c:840,5'
          Dst:             ovs_list_push_back
        - Src:             'lib/ovs-thread.c:844,9'
          Dst:             clear_slot
        - Src:             'lib/ovs-thread.c:847,5'
          Dst:             ovs_mutex_unlock
    - functionName:    ovs_list_pop_back
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 272
      functionLinenumberEnd: 276
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_list_remove
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/list.h:275,5'
          Dst:             ovs_list_remove
    - functionName:    ovs_list_is_empty
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 320
      functionLinenumberEnd: 321
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsthread_cancel_ovsthread_key_destruct__
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 784
      functionLinenumberEnd: 786
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - pthread_setspecific
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-thread.c:785,5'
          Dst:             pthread_setspecific
    - functionName:    ovsthread_key_destruct__
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 758
      functionLinenumberEnd: 779
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         19
      ICount:          121
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - clear_slot
        - ovs_list_remove
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-thread.c:764,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/ovs-thread.c:765,5'
          Dst:             ovs_list_remove
        - Src:             'lib/ovs-thread.c:767,23'
          Dst:             clear_slot
        - Src:             'lib/ovs-thread.c:773,5'
          Dst:             ovs_mutex_unlock
    - functionName:    ovsthread_key_create
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 798
      functionLinenumberEnd: 825
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          73
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - abort
        - fatal_signal_add_hook
        - ovs_list_is_empty
        - ovs_list_pop_back
        - ovs_list_push_back
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovsthread_cancel_ovsthread_key_destruct__
        - ovsthread_key_destruct__
        - ovsthread_once_done
        - ovsthread_once_start
        - xmalloc
        - xpthread_key_create
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-thread.c:802,9'
          Dst:             ovsthread_once_start
        - Src:             'lib/ovs-thread.c:803,9'
          Dst:             xpthread_key_create
        - Src:             'lib/ovs-thread.c:803,9'
          Dst:             ovsthread_key_destruct__
        - Src:             'lib/ovs-thread.c:804,9'
          Dst:             fatal_signal_add_hook
        - Src:             'lib/ovs-thread.c:804,9'
          Dst:             ovsthread_cancel_ovsthread_key_destruct__
        - Src:             'lib/ovs-thread.c:806,9'
          Dst:             ovsthread_once_done
        - Src:             'lib/ovs-thread.c:809,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/ovs-thread.c:810,9'
          Dst:             ovs_list_is_empty
        - Src:             'lib/ovs-thread.c:811,15'
          Dst:             xmalloc
        - Src:             'lib/ovs-thread.c:814,13'
          Dst:             abort
        - Src:             'lib/ovs-thread.c:817,15'
          Dst:             ovs_list_pop_back
        - Src:             'lib/ovs-thread.c:820,5'
          Dst:             ovs_list_push_back
        - Src:             'lib/ovs-thread.c:822,5'
          Dst:             ovs_mutex_unlock
    - functionName:    ovsthread_once_start
      functionSourceFile: '/src/openvswitch/./include/openvswitch/thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsthread_once_start__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/thread.h:161,12'
          Dst:             ovsthread_once_start__
    - functionName:    xpthread_key_create
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 191
      functionLinenumberEnd: 191
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         5
      ICount:          40
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_strerror
        - pthread_key_create
        - vlog_abort
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-thread.c:191,1'
          Dst:             pthread_key_create
        - Src:             'lib/ovs-thread.c:191,1'
          Dst:             ovs_strerror
        - Src:             'lib/ovs-thread.c:191,1'
          Dst:             vlog_abort
    - functionName:    ovsthread_once_done
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 507
      functionLinenumberEnd: 515
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_mutex_unlock
      functionUses:    62
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-thread.c:514,5'
          Dst:             ovs_mutex_unlock
    - functionName:    pthread_key_create
      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:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsthread_once_start__
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 495
      functionLinenumberEnd: 503
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    39
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-thread.c:496,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/ovs-thread.c:501,5'
          Dst:             ovs_mutex_unlock
    - functionName:    thread_is_pmd
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 689
      functionLinenumberEnd: 691
      functionDepth:   0
      returnType:      bool
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_subprogram_name
        - strncmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-thread.c:690,24'
          Dst:             get_subprogram_name
        - Src:             'lib/ovs-thread.c:691,13'
          Dst:             strncmp
    - functionName:    count_total_cores
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 679
      functionLinenumberEnd: 683
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - sysconf
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-thread.c:682,15'
          Dst:             sysconf
    - functionName:    sysconf
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    count_cpu_cores__
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 629
      functionLinenumberEnd: 647
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         15
      ICount:          78
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - __sched_cpualloc
        - __sched_cpucount
        - __sched_cpufree
        - sched_getaffinity
        - sysconf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-thread.c:632,15'
          Dst:             sysconf
        - Src:             'lib/ovs-thread.c:635,26'
          Dst:             __sched_cpualloc
        - Src:             'lib/ovs-thread.c:640,18'
          Dst:             sched_getaffinity
        - Src:             'lib/ovs-thread.c:641,27'
          Dst:             __sched_cpucount
        - Src:             'lib/ovs-thread.c:643,13'
          Dst:             __sched_cpufree
    - functionName:    __sched_cpualloc
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sched_getaffinity
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __sched_cpucount
      functionSourceFile: ''
      linkageType:     externalLinkage
      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:    __sched_cpufree
      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:    count_cpu_cores
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 661
      functionLinenumberEnd: 672
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         9
      ICount:          44
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - count_cpu_cores__
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - time_msec
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-thread.c:663,25'
          Dst:             time_msec
        - Src:             'lib/ovs-thread.c:666,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/ovs-thread.c:669,21'
          Dst:             count_cpu_cores__
        - Src:             'lib/ovs-thread.c:671,5'
          Dst:             ovs_mutex_unlock
    - functionName:    ovs_thread_stats_next_bucket
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 617
      functionLinenumberEnd: 623
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          37
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsthread_id_self
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 465
      functionLinenumberEnd: 472
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsthread_id_get
        - ovsthread_id_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-thread.h:466,24'
          Dst:             ovsthread_id_get
        - Src:             'lib/ovs-thread.h:469,14'
          Dst:             ovsthread_id_init
    - functionName:    ovsthread_id_get
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 456
      functionLinenumberEnd: 456
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsthread_id_get_unsafe
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-thread.h:456,1'
          Dst:             ovsthread_id_get_unsafe
    - functionName:    ovsthread_id_init
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 393
      functionLinenumberEnd: 397
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - atomic_count_inc
        - ovs_ignore
        - ovsthread_id_get
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-thread.c:396,17'
          Dst:             ovsthread_id_get
        - Src:             'lib/ovs-thread.c:396,5'
          Dst:             ovs_ignore
        - Src:             'lib/ovs-thread.c:397,34'
          Dst:             atomic_count_inc
        - Src:             'lib/ovs-thread.c:397,13'
          Dst:             ovsthread_id_get
    - functionName:    atomic_count_inc
      functionSourceFile: '/src/openvswitch/lib/ovs-atomic.h'
      linkageType:     InternalLinkage
      functionLinenumber: 451
      functionLinenumberEnd: 456
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsthread_stats_bucket_get
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 601
      functionLinenumberEnd: 612
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          73
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovsthread_id_self
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-thread.c:602,24'
          Dst:             ovsthread_id_self
        - Src:             'lib/ovs-thread.c:605,9'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/ovs-thread.c:610,9'
          Dst:             ovs_mutex_unlock
    - functionName:    ovsthread_stats_destroy
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 594
      functionLinenumberEnd: 596
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_mutex_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-thread.c:595,5'
          Dst:             ovs_mutex_destroy
    - functionName:    ovs_mutex_destroy
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 133
      functionLinenumberEnd: 133
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         5
      ICount:          52
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovs_strerror
        - pthread_mutex_destroy
        - vlog_abort
      functionUses:    26
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-thread.c:133,1'
          Dst:             ovs_ignore
        - Src:             'lib/ovs-thread.c:133,1'
          Dst:             pthread_mutex_destroy
        - Src:             'lib/ovs-thread.c:133,1'
          Dst:             ovs_strerror
        - Src:             'lib/ovs-thread.c:133,1'
          Dst:             vlog_abort
    - functionName:    pthread_mutex_destroy
      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:    ovsthread_stats_init
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 583
      functionLinenumberEnd: 590
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          41
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_mutex_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-thread.c:586,5'
          Dst:             ovs_mutex_init
    - functionName:    ovs_mutex_init
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 216
      functionLinenumberEnd: 218
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_mutex_init__
      functionUses:    26
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-thread.c:217,5'
          Dst:             ovs_mutex_init__
    - functionName:    ovs_mutex_init__
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 199
      functionLinenumberEnd: 211
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         5
      ICount:          48
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_strerror
        - pthread_mutex_init
        - vlog_abort
        - xpthread_mutexattr_destroy
        - xpthread_mutexattr_init
        - xpthread_mutexattr_settype
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-thread.c:204,5'
          Dst:             xpthread_mutexattr_init
        - Src:             'lib/ovs-thread.c:205,5'
          Dst:             xpthread_mutexattr_settype
        - Src:             'lib/ovs-thread.c:206,13'
          Dst:             pthread_mutex_init
        - Src:             'lib/ovs-thread.c:208,9'
          Dst:             ovs_strerror
        - Src:             'lib/ovs-thread.c:208,9'
          Dst:             vlog_abort
        - Src:             'lib/ovs-thread.c:210,5'
          Dst:             xpthread_mutexattr_destroy
    - functionName:    xpthread_mutexattr_init
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 172
      functionLinenumberEnd: 172
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         5
      ICount:          37
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_strerror
        - pthread_mutexattr_init
        - vlog_abort
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-thread.c:172,1'
          Dst:             pthread_mutexattr_init
        - Src:             'lib/ovs-thread.c:172,1'
          Dst:             ovs_strerror
        - Src:             'lib/ovs-thread.c:172,1'
          Dst:             vlog_abort
    - functionName:    xpthread_mutexattr_settype
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 174
      functionLinenumberEnd: 174
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         5
      ICount:          40
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_strerror
        - pthread_mutexattr_settype
        - vlog_abort
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-thread.c:174,1'
          Dst:             pthread_mutexattr_settype
        - Src:             'lib/ovs-thread.c:174,1'
          Dst:             ovs_strerror
        - Src:             'lib/ovs-thread.c:174,1'
          Dst:             vlog_abort
    - functionName:    pthread_mutex_init
      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:    xpthread_mutexattr_destroy
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 173
      functionLinenumberEnd: 173
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         5
      ICount:          37
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_strerror
        - pthread_mutexattr_destroy
        - vlog_abort
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-thread.c:173,1'
          Dst:             pthread_mutexattr_destroy
        - Src:             'lib/ovs-thread.c:173,1'
          Dst:             ovs_strerror
        - Src:             'lib/ovs-thread.c:173,1'
          Dst:             vlog_abort
    - functionName:    pthread_mutexattr_destroy
      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:    pthread_mutexattr_settype
      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:    pthread_mutexattr_init
      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:    may_fork
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 575
      functionLinenumberEnd: 576
      functionDepth:   0
      returnType:      bool
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    xfork_at
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 547
      functionLinenumberEnd: 559
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - __errno_location
        - fork
        - ovs_strerror
        - vlog_fatal
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-thread.c:551,9'
          Dst:             vlog_fatal
        - Src:             'lib/ovs-thread.c:555,11'
          Dst:             fork
        - Src:             'lib/ovs-thread.c:557,9'
          Dst:             __errno_location
        - Src:             'lib/ovs-thread.c:557,9'
          Dst:             ovs_strerror
        - Src:             'lib/ovs-thread.c:557,9'
          Dst:             vlog_fatal
    - functionName:    fork
      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:    __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:    221
      BranchProfiles:  []
      Callsites:       []
    - functionName:    assert_single_threaded_at
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 531
      functionLinenumberEnd: 536
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         5
      ICount:          25
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_fatal
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-thread.c:533,9'
          Dst:             vlog_fatal
    - functionName:    single_threaded
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 519
      functionLinenumberEnd: 520
      functionDepth:   0
      returnType:      bool
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsthread_wrapper
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 402
      functionLinenumberEnd: 419
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          42
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrcu_quiesce_end
        - ovsthread_id_init
        - set_subprogram_name
        - xasprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-thread.c:407,10'
          Dst:             ovsthread_id_init
        - Src:             'lib/ovs-thread.c:414,29'
          Dst:             xasprintf
        - Src:             'lib/ovs-thread.c:415,5'
          Dst:             set_subprogram_name
        - Src:             'lib/ovs-thread.c:417,5'
          Dst:             ovsrcu_quiesce_end
    - functionName:    set_min_stack_size
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 424
      functionLinenumberEnd: 441
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          59
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_strerror
        - pthread_attr_getstacksize
        - pthread_attr_setstacksize
        - vlog_abort
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-thread.c:428,13'
          Dst:             pthread_attr_getstacksize
        - Src:             'lib/ovs-thread.c:430,9'
          Dst:             ovs_strerror
        - Src:             'lib/ovs-thread.c:430,9'
          Dst:             vlog_abort
        - Src:             'lib/ovs-thread.c:435,17'
          Dst:             pthread_attr_setstacksize
        - Src:             'lib/ovs-thread.c:437,13'
          Dst:             ovs_strerror
        - Src:             'lib/ovs-thread.c:437,13'
          Dst:             vlog_abort
    - functionName:    pthread_attr_getstacksize
      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:    pthread_attr_setstacksize
      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:    forbid_forking
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 567
      functionLinenumberEnd: 570
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-thread.c:568,5'
          Dst:             ovs_ignore
    - functionName:    ovs_thread_create
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 447
      functionLinenumberEnd: 490
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          71
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - forbid_forking
        - ovs_strerror
        - ovs_strlcpy
        - ovsrcu_quiesce_end
        - ovsthread_once_done
        - ovsthread_once_start
        - ovsthread_wrapper
        - pthread_attr_destroy
        - pthread_attr_init
        - pthread_create
        - set_min_stack_size
        - vlog_abort
        - xmalloc
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-thread.c:453,5'
          Dst:             forbid_forking
        - Src:             'lib/ovs-thread.c:455,9'
          Dst:             ovsthread_once_start
        - Src:             'lib/ovs-thread.c:466,9'
          Dst:             ovsrcu_quiesce_end
        - Src:             'lib/ovs-thread.c:467,9'
          Dst:             ovsthread_once_done
        - Src:             'lib/ovs-thread.c:471,11'
          Dst:             xmalloc
        - Src:             'lib/ovs-thread.c:474,5'
          Dst:             ovs_strlcpy
        - Src:             'lib/ovs-thread.c:482,5'
          Dst:             pthread_attr_init
        - Src:             'lib/ovs-thread.c:483,5'
          Dst:             set_min_stack_size
        - Src:             'lib/ovs-thread.c:485,13'
          Dst:             pthread_create
        - Src:             'lib/ovs-thread.c:485,13'
          Dst:             ovsthread_wrapper
        - Src:             'lib/ovs-thread.c:487,9'
          Dst:             ovs_strerror
        - Src:             'lib/ovs-thread.c:487,9'
          Dst:             vlog_abort
        - Src:             'lib/ovs-thread.c:489,5'
          Dst:             pthread_attr_destroy
    - functionName:    pthread_attr_init
      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:    pthread_create
      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:    pthread_attr_destroy
      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:    atomic_count_set
      functionSourceFile: '/src/openvswitch/lib/ovs-atomic.h'
      linkageType:     InternalLinkage
      functionLinenumber: 481
      functionLinenumberEnd: 483
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_barrier_impl_ref
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 308
      functionLinenumberEnd: 310
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_refcount_ref
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-thread.c:309,5'
          Dst:             ovs_refcount_ref
    - functionName:    ovs_barrier_block
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 356
      functionLinenumberEnd: 381
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          87
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - atomic_count_inc
        - atomic_count_set
        - ovs_barrier_impl_ref
        - ovs_barrier_impl_unref
        - poll_block
        - seq_change
        - seq_read
        - seq_wait_at
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-thread.c:362,5'
          Dst:             ovs_barrier_impl_ref
        - Src:             'lib/ovs-thread.c:364,11'
          Dst:             seq_read
        - Src:             'lib/ovs-thread.c:365,12'
          Dst:             atomic_count_inc
        - Src:             'lib/ovs-thread.c:367,9'
          Dst:             atomic_count_set
        - Src:             'lib/ovs-thread.c:370,9'
          Dst:             seq_change
        - Src:             'lib/ovs-thread.c:374,23'
          Dst:             seq_read
        - Src:             'lib/ovs-thread.c:375,13'
          Dst:             seq_wait_at
        - Src:             'lib/ovs-thread.c:376,13'
          Dst:             poll_block
        - Src:             'lib/ovs-thread.c:380,5'
          Dst:             ovs_barrier_impl_unref
    - functionName:    ovs_barrier_impl_unref
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 314
      functionLinenumberEnd: 319
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_refcount_unref
        - seq_destroy
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-thread.c:315,9'
          Dst:             ovs_refcount_unref
        - Src:             'lib/ovs-thread.c:316,9'
          Dst:             seq_destroy
    - functionName:    ovs_barrier_destroy
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 340
      functionLinenumberEnd: 346
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          71
      EdgeCount:       13
      CyclomaticComplexity: 8
      functionsReached:
        - ovs_barrier_impl_unref
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib/ovs-thread.c:344,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ovs-thread.c:345,5'
          Dst:             ovs_barrier_impl_unref
    - functionName:    ovs_refcount_init
      functionSourceFile: '/src/openvswitch/lib/ovs-atomic.h'
      linkageType:     InternalLinkage
      functionLinenumber: 529
      functionLinenumberEnd: 531
      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:    atomic_count_init
      functionSourceFile: '/src/openvswitch/lib/ovs-atomic.h'
      linkageType:     InternalLinkage
      functionLinenumber: 445
      functionLinenumberEnd: 447
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_barrier_init
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 325
      functionLinenumberEnd: 335
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          71
      EdgeCount:       13
      CyclomaticComplexity: 8
      functionsReached:
        - atomic_count_init
        - ovs_refcount_init
        - seq_create
        - xmalloc
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ovs-thread.c:334,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ovs-thread.c:328,12'
          Dst:             xmalloc
        - Src:             'lib/ovs-thread.c:330,5'
          Dst:             atomic_count_init
        - Src:             'lib/ovs-thread.c:331,17'
          Dst:             seq_create
        - Src:             'lib/ovs-thread.c:332,5'
          Dst:             ovs_refcount_init
    - functionName:    ovs_spin_init__
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 282
      functionLinenumberEnd: 290
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         5
      ICount:          44
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_strerror
        - pthread_spin_init
        - vlog_abort
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-thread.c:286,13'
          Dst:             pthread_spin_init
        - Src:             'lib/ovs-thread.c:288,9'
          Dst:             ovs_strerror
        - Src:             'lib/ovs-thread.c:288,9'
          Dst:             vlog_abort
    - functionName:    pthread_spin_init
      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:    ovs_spin_init
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 294
      functionLinenumberEnd: 296
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_spin_init__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-thread.c:295,5'
          Dst:             ovs_spin_init__
    - functionName:    ovs_mutex_cond_wait
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 268
      functionLinenumberEnd: 277
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         5
      ICount:          44
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_strerror
        - pthread_cond_wait
        - vlog_abort
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-thread.c:272,13'
          Dst:             pthread_cond_wait
        - Src:             'lib/ovs-thread.c:275,9'
          Dst:             ovs_strerror
        - Src:             'lib/ovs-thread.c:275,9'
          Dst:             vlog_abort
    - functionName:    pthread_cond_wait
      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:    ovs_rwlock_init
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 240
      functionLinenumberEnd: 259
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         5
      ICount:          45
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_strerror
        - pthread_rwlock_init
        - vlog_abort
        - xpthread_rwlockattr_destroy
        - xpthread_rwlockattr_init
        - xpthread_rwlockattr_setkind_np
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-thread.c:247,5'
          Dst:             xpthread_rwlockattr_init
        - Src:             'lib/ovs-thread.c:248,5'
          Dst:             xpthread_rwlockattr_setkind_np
        - Src:             'lib/ovs-thread.c:250,13'
          Dst:             pthread_rwlock_init
        - Src:             'lib/ovs-thread.c:251,5'
          Dst:             xpthread_rwlockattr_destroy
        - Src:             'lib/ovs-thread.c:257,9'
          Dst:             ovs_strerror
        - Src:             'lib/ovs-thread.c:257,9'
          Dst:             vlog_abort
    - functionName:    xpthread_rwlockattr_init
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 177
      functionLinenumberEnd: 177
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         5
      ICount:          37
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_strerror
        - pthread_rwlockattr_init
        - vlog_abort
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-thread.c:177,1'
          Dst:             pthread_rwlockattr_init
        - Src:             'lib/ovs-thread.c:177,1'
          Dst:             ovs_strerror
        - Src:             'lib/ovs-thread.c:177,1'
          Dst:             vlog_abort
    - functionName:    xpthread_rwlockattr_setkind_np
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 180
      functionLinenumberEnd: 180
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         5
      ICount:          40
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_strerror
        - pthread_rwlockattr_setkind_np
        - vlog_abort
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-thread.c:180,1'
          Dst:             pthread_rwlockattr_setkind_np
        - Src:             'lib/ovs-thread.c:180,1'
          Dst:             ovs_strerror
        - Src:             'lib/ovs-thread.c:180,1'
          Dst:             vlog_abort
    - functionName:    pthread_rwlock_init
      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:    xpthread_rwlockattr_destroy
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 178
      functionLinenumberEnd: 178
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         5
      ICount:          37
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_strerror
        - pthread_rwlockattr_destroy
        - vlog_abort
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-thread.c:178,1'
          Dst:             pthread_rwlockattr_destroy
        - Src:             'lib/ovs-thread.c:178,1'
          Dst:             ovs_strerror
        - Src:             'lib/ovs-thread.c:178,1'
          Dst:             vlog_abort
    - functionName:    pthread_rwlockattr_destroy
      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:    pthread_rwlockattr_setkind_np
      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:    pthread_rwlockattr_init
      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:    ovs_mutex_init_adaptive
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 230
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_mutex_init__
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-thread.c:232,5'
          Dst:             ovs_mutex_init__
    - functionName:    ovs_mutex_init_recursive
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 223
      functionLinenumberEnd: 225
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_mutex_init__
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-thread.c:224,5'
          Dst:             ovs_mutex_init__
    - functionName:    xpthread_sigmask
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 195
      functionLinenumberEnd: 195
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         5
      ICount:          43
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_strerror
        - pthread_sigmask
        - vlog_abort
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-thread.c:195,1'
          Dst:             pthread_sigmask
        - Src:             'lib/ovs-thread.c:195,1'
          Dst:             ovs_strerror
        - Src:             'lib/ovs-thread.c:195,1'
          Dst:             vlog_abort
    - functionName:    pthread_sigmask
      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:    xpthread_setspecific
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 193
      functionLinenumberEnd: 193
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         5
      ICount:          40
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_strerror
        - pthread_setspecific
        - vlog_abort
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-thread.c:193,1'
          Dst:             pthread_setspecific
        - Src:             'lib/ovs-thread.c:193,1'
          Dst:             ovs_strerror
        - Src:             'lib/ovs-thread.c:193,1'
          Dst:             vlog_abort
    - functionName:    xpthread_key_delete
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 192
      functionLinenumberEnd: 192
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         5
      ICount:          37
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_strerror
        - pthread_key_delete
        - vlog_abort
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-thread.c:192,1'
          Dst:             pthread_key_delete
        - Src:             'lib/ovs-thread.c:192,1'
          Dst:             ovs_strerror
        - Src:             'lib/ovs-thread.c:192,1'
          Dst:             vlog_abort
    - functionName:    pthread_key_delete
      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:    xpthread_join
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 188
      functionLinenumberEnd: 188
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         5
      ICount:          40
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_strerror
        - pthread_join
        - vlog_abort
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-thread.c:188,1'
          Dst:             pthread_join
        - Src:             'lib/ovs-thread.c:188,1'
          Dst:             ovs_strerror
        - Src:             'lib/ovs-thread.c:188,1'
          Dst:             vlog_abort
    - functionName:    pthread_join
      functionSourceFile: ''
      linkageType:     externalLinkage
      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:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    xpthread_cond_broadcast
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 186
      functionLinenumberEnd: 186
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         5
      ICount:          37
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_strerror
        - pthread_cond_broadcast
        - vlog_abort
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-thread.c:186,1'
          Dst:             pthread_cond_broadcast
        - Src:             'lib/ovs-thread.c:186,1'
          Dst:             ovs_strerror
        - Src:             'lib/ovs-thread.c:186,1'
          Dst:             vlog_abort
    - functionName:    pthread_cond_broadcast
      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:    xpthread_cond_signal
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 185
      functionLinenumberEnd: 185
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         5
      ICount:          37
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_strerror
        - pthread_cond_signal
        - vlog_abort
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-thread.c:185,1'
          Dst:             pthread_cond_signal
        - Src:             'lib/ovs-thread.c:185,1'
          Dst:             ovs_strerror
        - Src:             'lib/ovs-thread.c:185,1'
          Dst:             vlog_abort
    - functionName:    pthread_cond_signal
      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:    xpthread_cond_destroy
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 184
      functionLinenumberEnd: 184
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         5
      ICount:          37
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_strerror
        - pthread_cond_destroy
        - vlog_abort
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-thread.c:184,1'
          Dst:             pthread_cond_destroy
        - Src:             'lib/ovs-thread.c:184,1'
          Dst:             ovs_strerror
        - Src:             'lib/ovs-thread.c:184,1'
          Dst:             vlog_abort
    - functionName:    pthread_cond_destroy
      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:    xpthread_cond_init
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 183
      functionLinenumberEnd: 183
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         5
      ICount:          40
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_strerror
        - pthread_cond_init
        - vlog_abort
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-thread.c:183,1'
          Dst:             pthread_cond_init
        - Src:             'lib/ovs-thread.c:183,1'
          Dst:             ovs_strerror
        - Src:             'lib/ovs-thread.c:183,1'
          Dst:             vlog_abort
    - functionName:    pthread_cond_init
      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:    xpthread_mutexattr_gettype
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 175
      functionLinenumberEnd: 175
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         5
      ICount:          40
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_strerror
        - pthread_mutexattr_gettype
        - vlog_abort
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-thread.c:175,1'
          Dst:             pthread_mutexattr_gettype
        - Src:             'lib/ovs-thread.c:175,1'
          Dst:             ovs_strerror
        - Src:             'lib/ovs-thread.c:175,1'
          Dst:             vlog_abort
    - functionName:    pthread_mutexattr_gettype
      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:    ovs_spin_destroy
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 138
      functionLinenumberEnd: 138
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         5
      ICount:          52
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovs_strerror
        - pthread_spin_destroy
        - vlog_abort
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-thread.c:138,1'
          Dst:             ovs_ignore
        - Src:             'lib/ovs-thread.c:138,1'
          Dst:             pthread_spin_destroy
        - Src:             'lib/ovs-thread.c:138,1'
          Dst:             ovs_strerror
        - Src:             'lib/ovs-thread.c:138,1'
          Dst:             vlog_abort
    - functionName:    pthread_spin_destroy
      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:    ovs_spin_unlock
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 137
      functionLinenumberEnd: 137
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         5
      ICount:          52
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovs_strerror
        - pthread_spin_unlock
        - vlog_abort
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-thread.c:137,1'
          Dst:             ovs_ignore
        - Src:             'lib/ovs-thread.c:137,1'
          Dst:             pthread_spin_unlock
        - Src:             'lib/ovs-thread.c:137,1'
          Dst:             ovs_strerror
        - Src:             'lib/ovs-thread.c:137,1'
          Dst:             vlog_abort
    - functionName:    pthread_spin_unlock
      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:    ovs_rwlock_destroy
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 135
      functionLinenumberEnd: 135
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         5
      ICount:          52
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovs_strerror
        - pthread_rwlock_destroy
        - vlog_abort
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-thread.c:135,1'
          Dst:             ovs_ignore
        - Src:             'lib/ovs-thread.c:135,1'
          Dst:             pthread_rwlock_destroy
        - Src:             'lib/ovs-thread.c:135,1'
          Dst:             ovs_strerror
        - Src:             'lib/ovs-thread.c:135,1'
          Dst:             vlog_abort
    - functionName:    pthread_rwlock_destroy
      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:    ovs_rwlock_unlock
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 134
      functionLinenumberEnd: 134
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         5
      ICount:          52
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovs_strerror
        - pthread_rwlock_unlock
        - vlog_abort
      functionUses:    23
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-thread.c:134,1'
          Dst:             ovs_ignore
        - Src:             'lib/ovs-thread.c:134,1'
          Dst:             pthread_rwlock_unlock
        - Src:             'lib/ovs-thread.c:134,1'
          Dst:             ovs_strerror
        - Src:             'lib/ovs-thread.c:134,1'
          Dst:             vlog_abort
    - functionName:    pthread_rwlock_unlock
      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:    ovs_spin_trylock_at
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 111
      functionLinenumberEnd: 111
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          88
      EdgeCount:       15
      CyclomaticComplexity: 4
      functionsReached:
        - ovs_strerror
        - pthread_spin_trylock
        - vlog_abort
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-thread.c:111,1'
          Dst:             vlog_abort
        - Src:             'lib/ovs-thread.c:111,1'
          Dst:             pthread_spin_trylock
        - Src:             'lib/ovs-thread.c:111,1'
          Dst:             ovs_strerror
        - Src:             'lib/ovs-thread.c:111,1'
          Dst:             vlog_abort
    - functionName:    pthread_spin_trylock
      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:    ovs_rwlock_trywrlock_at
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 109
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          88
      EdgeCount:       15
      CyclomaticComplexity: 4
      functionsReached:
        - ovs_strerror
        - pthread_rwlock_trywrlock
        - vlog_abort
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-thread.c:109,1'
          Dst:             vlog_abort
        - Src:             'lib/ovs-thread.c:109,1'
          Dst:             pthread_rwlock_trywrlock
        - Src:             'lib/ovs-thread.c:109,1'
          Dst:             ovs_strerror
        - Src:             'lib/ovs-thread.c:109,1'
          Dst:             vlog_abort
    - functionName:    pthread_rwlock_trywrlock
      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:    ovs_rwlock_tryrdlock_at
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 108
      functionLinenumberEnd: 108
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          88
      EdgeCount:       15
      CyclomaticComplexity: 4
      functionsReached:
        - ovs_strerror
        - pthread_rwlock_tryrdlock
        - vlog_abort
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-thread.c:108,1'
          Dst:             vlog_abort
        - Src:             'lib/ovs-thread.c:108,1'
          Dst:             pthread_rwlock_tryrdlock
        - Src:             'lib/ovs-thread.c:108,1'
          Dst:             ovs_strerror
        - Src:             'lib/ovs-thread.c:108,1'
          Dst:             vlog_abort
    - functionName:    pthread_rwlock_tryrdlock
      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:    ovs_mutex_trylock_at
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 107
      functionLinenumberEnd: 107
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          88
      EdgeCount:       15
      CyclomaticComplexity: 4
      functionsReached:
        - ovs_strerror
        - pthread_mutex_trylock
        - vlog_abort
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-thread.c:107,1'
          Dst:             vlog_abort
        - Src:             'lib/ovs-thread.c:107,1'
          Dst:             pthread_mutex_trylock
        - Src:             'lib/ovs-thread.c:107,1'
          Dst:             ovs_strerror
        - Src:             'lib/ovs-thread.c:107,1'
          Dst:             vlog_abort
    - functionName:    pthread_mutex_trylock
      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:    ovs_spin_lock_at
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 79
      functionLinenumberEnd: 79
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          66
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_strerror
        - pthread_spin_lock
        - vlog_abort
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-thread.c:79,1'
          Dst:             vlog_abort
        - Src:             'lib/ovs-thread.c:79,1'
          Dst:             pthread_spin_lock
        - Src:             'lib/ovs-thread.c:79,1'
          Dst:             ovs_strerror
        - Src:             'lib/ovs-thread.c:79,1'
          Dst:             vlog_abort
    - functionName:    pthread_spin_lock
      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:    ovs_rwlock_wrlock_at
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 77
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          66
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_strerror
        - pthread_rwlock_wrlock
        - vlog_abort
      functionUses:    12
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-thread.c:77,1'
          Dst:             vlog_abort
        - Src:             'lib/ovs-thread.c:77,1'
          Dst:             pthread_rwlock_wrlock
        - Src:             'lib/ovs-thread.c:77,1'
          Dst:             ovs_strerror
        - Src:             'lib/ovs-thread.c:77,1'
          Dst:             vlog_abort
    - functionName:    pthread_rwlock_wrlock
      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:    ovs_rwlock_rdlock_at
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.c'
      linkageType:     InternalLinkage
      functionLinenumber: 76
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          66
      EdgeCount:       7
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_strerror
        - pthread_rwlock_rdlock
        - vlog_abort
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-thread.c:76,1'
          Dst:             vlog_abort
        - Src:             'lib/ovs-thread.c:76,1'
          Dst:             pthread_rwlock_rdlock
        - Src:             'lib/ovs-thread.c:76,1'
          Dst:             ovs_strerror
        - Src:             'lib/ovs-thread.c:76,1'
          Dst:             vlog_abort
    - functionName:    pthread_rwlock_rdlock
      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:    eth_addr_compare_3way
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 261
      functionLinenumberEnd: 262
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:262,12'
          Dst:             memcmp
    - functionName:    dp_packet_l2_pad_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 432
      functionLinenumberEnd: 433
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_tail
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 326
      functionLinenumberEnd: 327
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_data
        - dp_packet_size
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:327,21'
          Dst:             dp_packet_data
        - Src:             'lib/dp-packet.h:327,41'
          Dst:             dp_packet_size
    - functionName:    dp_packet_data
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 845
      functionLinenumberEnd: 847
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __packet_data
        - dp_packet_base
      functionUses:    13
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:846,12'
          Dst:             __packet_data
        - Src:             'lib/dp-packet.h:847,23'
          Dst:             dp_packet_base
        - Src:             'lib/dp-packet.h:847,43'
          Dst:             __packet_data
    - functionName:    dp_packet_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 762
      functionLinenumberEnd: 763
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __packet_data
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 774
      functionLinenumberEnd: 775
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_base
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 750
      functionLinenumberEnd: 751
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    raw_ctz
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 261
      functionLinenumberEnd: 267
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          36
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    free_afxdp_buf
      functionSourceFile: '/src/openvswitch/lib/netdev-afxdp.h'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 84
      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:    free_dpdk_buf
      functionSourceFile: '/src/openvswitch/lib/netdev-dpdk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 76
      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:    dp_packet_reset_outer_offsets
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 413
      functionLinenumberEnd: 418
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    be32_to_be16
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 135
      functionLinenumberEnd: 135
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __packet_set_data
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 780
      functionLinenumberEnd: 782
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_set_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 768
      functionLinenumberEnd: 770
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_set_data
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 852
      functionLinenumberEnd: 858
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __packet_set_data
        - dp_packet_base
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:854,55'
          Dst:             dp_packet_base
        - Src:             'lib/dp-packet.h:854,9'
          Dst:             __packet_set_data
        - Src:             'lib/dp-packet.h:856,9'
          Dst:             __packet_set_data
    - functionName:    hash_rot
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 32
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhash_add__
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hash_rot
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:71,12'
          Dst:             hash_rot
    - functionName:    mhash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_rot
        - mhash_add__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:78,12'
          Dst:             mhash_add__
        - Src:             'lib/hash.h:79,12'
          Dst:             hash_rot
    - functionName:    hash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 108
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_add
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:109,12'
          Dst:             mhash_add
    - functionName:    mhash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_add64
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 113
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_add
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:114,21'
          Dst:             hash_add
        - Src:             'lib/hash.h:114,12'
          Dst:             hash_add
    - functionName:    hash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:119,12'
          Dst:             mhash_finish
    - functionName:    hash_uint64_basis
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 159
      functionLinenumberEnd: 160
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_add64
        - hash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:160,24'
          Dst:             hash_add64
        - Src:             'lib/hash.h:160,12'
          Dst:             hash_finish
    - functionName:    hmap_insert_fast
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 289
      functionLinenumberEnd: 295
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          38
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    packet_sctp_complete_csum
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2331
      functionLinenumberEnd: 2355
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          74
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - crc32c
        - dp_packet_inner_l4
        - dp_packet_inner_l4_checksum_set_good
        - dp_packet_inner_l4_size
        - dp_packet_l4
        - dp_packet_l4_checksum_set_good
        - dp_packet_l4_size
        - ovs_ignore
        - put_16aligned_be32
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:2337,14'
          Dst:             dp_packet_inner_l4
        - Src:             'lib/packets.c:2338,18'
          Dst:             dp_packet_inner_l4_size
        - Src:             'lib/packets.c:2340,14'
          Dst:             dp_packet_l4
        - Src:             'lib/packets.c:2341,18'
          Dst:             dp_packet_l4_size
        - Src:             'lib/packets.c:2344,5'
          Dst:             ovs_ignore
        - Src:             'lib/packets.c:2346,5'
          Dst:             put_16aligned_be32
        - Src:             'lib/packets.c:2347,12'
          Dst:             crc32c
        - Src:             'lib/packets.c:2348,5'
          Dst:             put_16aligned_be32
        - Src:             'lib/packets.c:2351,9'
          Dst:             dp_packet_inner_l4_checksum_set_good
        - Src:             'lib/packets.c:2353,9'
          Dst:             dp_packet_l4_checksum_set_good
    - functionName:    dp_packet_inner_l4
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 529
      functionLinenumberEnd: 531
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_data
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:531,23'
          Dst:             dp_packet_data
    - functionName:    dp_packet_inner_l4_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 537
      functionLinenumberEnd: 541
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_inner_l4
        - dp_packet_l2_pad_size
        - dp_packet_tail
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:539,29'
          Dst:             dp_packet_tail
        - Src:             'lib/dp-packet.h:540,29'
          Dst:             dp_packet_inner_l4
        - Src:             'lib/dp-packet.h:541,14'
          Dst:             dp_packet_l2_pad_size
    - functionName:    dp_packet_l4
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 475
      functionLinenumberEnd: 477
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_data
      functionUses:    20
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:477,23'
          Dst:             dp_packet_data
    - functionName:    dp_packet_l4_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 502
      functionLinenumberEnd: 505
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_l2_pad_size
        - dp_packet_l4
        - dp_packet_tail
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:504,25'
          Dst:             dp_packet_tail
        - Src:             'lib/dp-packet.h:504,59'
          Dst:             dp_packet_l4
        - Src:             'lib/dp-packet.h:505,11'
          Dst:             dp_packet_l2_pad_size
    - functionName:    put_16aligned_be32
      functionSourceFile: '/src/openvswitch/lib/unaligned.h'
      linkageType:     InternalLinkage
      functionLinenumber: 257
      functionLinenumberEnd: 265
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          19
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    21
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_inner_l4_checksum_set_good
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1397
      functionLinenumberEnd: 1400
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_l4_checksum_set_good
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1310
      functionLinenumberEnd: 1313
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_get_inner_tcp_payload_length
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 591
      functionLinenumberEnd: 599
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_get_inner_tcp_payload
        - dp_packet_l2_pad_size
        - dp_packet_tail
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:592,31'
          Dst:             dp_packet_get_inner_tcp_payload
        - Src:             'lib/dp-packet.h:594,26'
          Dst:             dp_packet_tail
        - Src:             'lib/dp-packet.h:594,48'
          Dst:             dp_packet_l2_pad_size
    - functionName:    dp_packet_get_inner_tcp_payload
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 563
      functionLinenumberEnd: 575
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          86
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - dp_packet_inner_l4
        - dp_packet_inner_l4_size
        - ntohs
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:564,22'
          Dst:             dp_packet_inner_l4_size
        - Src:             'lib/dp-packet.h:567,34'
          Dst:             dp_packet_inner_l4
        - Src:             'lib/dp-packet.h:568,23'
          Dst:             ntohs
    - functionName:    dp_packet_get_tso_segsz
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 798
      functionLinenumberEnd: 799
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_inner_ip_checksum_valid
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1221
      functionLinenumberEnd: 1222
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_inner_l4_checksum_valid
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1420
      functionLinenumberEnd: 1421
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_inner_l4_proto_udp
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1373
      functionLinenumberEnd: 1375
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_inner_l4_proto_tcp
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1366
      functionLinenumberEnd: 1368
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    packet_udp_tunnel_csum
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2197
      functionLinenumberEnd: 2325
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         37
      ICount:          321
      EdgeCount:       49
      CyclomaticComplexity: 14
      functionsReached:
        - csum_add16
        - csum_continue
        - csum_finish
        - dp_packet_get_inner_tcp_payload
        - dp_packet_get_inner_tcp_payload_length
        - dp_packet_get_tso_segsz
        - dp_packet_gso_nr_segs
        - dp_packet_inner_ip_checksum_valid
        - dp_packet_inner_l3
        - dp_packet_inner_l4
        - dp_packet_inner_l4_checksum_valid
        - dp_packet_inner_l4_proto_tcp
        - dp_packet_inner_l4_proto_udp
        - dp_packet_l3
        - dp_packet_l4
        - dp_packet_l4_checksum_set_good
        - htons
        - ovs_ignore
        - packet_csum_pseudoheader
        - packet_csum_pseudoheader6
        - recalc_csum16
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:2211,16'
          Dst:             dp_packet_inner_l3
        - Src:             'lib/packets.c:2212,16'
          Dst:             dp_packet_inner_l4
        - Src:             'lib/packets.c:2213,10'
          Dst:             dp_packet_l3
        - Src:             'lib/packets.c:2214,11'
          Dst:             dp_packet_l4
        - Src:             'lib/packets.c:2216,9'
          Dst:             dp_packet_inner_l4_proto_tcp
        - Src:             'lib/packets.c:2218,25'
          Dst:             dp_packet_get_inner_tcp_payload
        - Src:             'lib/packets.c:2223,16'
          Dst:             dp_packet_inner_l4_proto_udp
        - Src:             'lib/packets.c:2236,10'
          Dst:             dp_packet_inner_l4_checksum_valid
        - Src:             'lib/packets.c:2245,22'
          Dst:             packet_csum_pseudoheader
        - Src:             'lib/packets.c:2247,51'
          Dst:             dp_packet_inner_l3
        - Src:             'lib/packets.c:2249,22'
          Dst:             packet_csum_pseudoheader6
        - Src:             'lib/packets.c:2252,18'
          Dst:             csum_continue
        - Src:             'lib/packets.c:2254,33'
          Dst:             csum_continue
        - Src:             'lib/packets.c:2254,21'
          Dst:             csum_finish
        - Src:             'lib/packets.c:2264,24'
          Dst:             packet_csum_pseudoheader
        - Src:             'lib/packets.c:2266,45'
          Dst:             dp_packet_l3
        - Src:             'lib/packets.c:2268,24'
          Dst:             packet_csum_pseudoheader6
        - Src:             'lib/packets.c:2271,20'
          Dst:             csum_continue
        - Src:             'lib/packets.c:2273,25'
          Dst:             dp_packet_inner_ip_checksum_valid
        - Src:             'lib/packets.c:2279,24'
          Dst:             csum_continue
        - Src:             'lib/packets.c:2282,20'
          Dst:             csum_continue
        - Src:             'lib/packets.c:2283,20'
          Dst:             csum_add16
        - Src:             'lib/packets.c:2284,20'
          Dst:             csum_continue
        - Src:             'lib/packets.c:2286,21'
          Dst:             csum_finish
        - Src:             'lib/packets.c:2287,17'
          Dst:             dp_packet_get_tso_segsz
        - Src:             'lib/packets.c:2289,32'
          Dst:             dp_packet_get_inner_tcp_payload_length
        - Src:             'lib/packets.c:2291,47'
          Dst:             dp_packet_gso_nr_segs
        - Src:             'lib/packets.c:2291,9'
          Dst:             ovs_ignore
        - Src:             'lib/packets.c:2296,54'
          Dst:             htons
        - Src:             'lib/packets.c:2297,39'
          Dst:             htons
        - Src:             'lib/packets.c:2296,25'
          Dst:             recalc_csum16
        - Src:             'lib/packets.c:2315,58'
          Dst:             htons
        - Src:             'lib/packets.c:2316,43'
          Dst:             htons
        - Src:             'lib/packets.c:2315,29'
          Dst:             recalc_csum16
        - Src:             'lib/packets.c:2320,25'
          Dst:             htons
        - Src:             'lib/packets.c:2322,5'
          Dst:             dp_packet_l4_checksum_set_good
    - functionName:    dp_packet_inner_l3
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 511
      functionLinenumberEnd: 513
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_data
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:513,23'
          Dst:             dp_packet_data
    - functionName:    dp_packet_l3
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 461
      functionLinenumberEnd: 463
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_data
      functionUses:    23
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:463,23'
          Dst:             dp_packet_data
    - functionName:    packet_csum_pseudoheader
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2021
      functionLinenumberEnd: 2030
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          53
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - csum_add16
        - csum_add32
        - get_16aligned_be32
        - htons
        - ntohs
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:2024,35'
          Dst:             get_16aligned_be32
        - Src:             'lib/packets.c:2024,15'
          Dst:             csum_add32
        - Src:             'lib/packets.c:2025,35'
          Dst:             get_16aligned_be32
        - Src:             'lib/packets.c:2025,15'
          Dst:             csum_add32
        - Src:             'lib/packets.c:2026,35'
          Dst:             htons
        - Src:             'lib/packets.c:2026,15'
          Dst:             csum_add16
        - Src:             'lib/packets.c:2027,41'
          Dst:             ntohs
        - Src:             'lib/packets.c:2027,35'
          Dst:             htons
        - Src:             'lib/packets.c:2027,15'
          Dst:             csum_add16
    - functionName:    packet_csum_pseudoheader6
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2036
      functionLinenumberEnd: 2044
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          42
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - csum_add16
        - csum_continue
        - htons
      functionUses:    12
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:2039,15'
          Dst:             csum_continue
        - Src:             'lib/packets.c:2040,15'
          Dst:             csum_continue
        - Src:             'lib/packets.c:2041,35'
          Dst:             htons
        - Src:             'lib/packets.c:2041,15'
          Dst:             csum_add16
        - Src:             'lib/packets.c:2042,15'
          Dst:             csum_add16
    - functionName:    csum_add16
      functionSourceFile: '/src/openvswitch/lib/csum.h'
      linkageType:     InternalLinkage
      functionLinenumber: 42
      functionLinenumberEnd: 43
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_16aligned_be32
      functionSourceFile: '/src/openvswitch/lib/unaligned.h'
      linkageType:     InternalLinkage
      functionLinenumber: 246
      functionLinenumberEnd: 250
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    12
      BranchProfiles:  []
      Callsites:       []
    - functionName:    csum_add32
      functionSourceFile: '/src/openvswitch/lib/csum.h'
      linkageType:     InternalLinkage
      functionLinenumber: 51
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    packet_udp_complete_csum
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2140
      functionLinenumberEnd: 2186
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          144
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - csum_continue
        - csum_finish
        - dp_packet_inner_l3
        - dp_packet_inner_l4
        - dp_packet_inner_l4_checksum_set_good
        - dp_packet_inner_l4_size
        - dp_packet_l3
        - dp_packet_l4
        - dp_packet_l4_checksum_set_good
        - dp_packet_l4_size
        - htons
        - ovs_ignore
        - packet_csum_pseudoheader
        - packet_csum_upperlayer6
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:2146,15'
          Dst:             dp_packet_inner_l4
        - Src:             'lib/packets.c:2147,18'
          Dst:             dp_packet_inner_l3
        - Src:             'lib/packets.c:2148,18'
          Dst:             dp_packet_inner_l4_size
        - Src:             'lib/packets.c:2150,15'
          Dst:             dp_packet_l4
        - Src:             'lib/packets.c:2151,18'
          Dst:             dp_packet_l3
        - Src:             'lib/packets.c:2152,18'
          Dst:             dp_packet_l4_size
        - Src:             'lib/packets.c:2155,5'
          Dst:             ovs_ignore
        - Src:             'lib/packets.c:2156,5'
          Dst:             ovs_ignore
        - Src:             'lib/packets.c:2167,51'
          Dst:             packet_csum_pseudoheader
        - Src:             'lib/packets.c:2167,37'
          Dst:             csum_continue
        - Src:             'lib/packets.c:2167,25'
          Dst:             csum_finish
        - Src:             'lib/packets.c:2172,25'
          Dst:             packet_csum_upperlayer6
        - Src:             'lib/packets.c:2177,25'
          Dst:             htons
        - Src:             'lib/packets.c:2182,9'
          Dst:             dp_packet_inner_l4_checksum_set_good
        - Src:             'lib/packets.c:2184,9'
          Dst:             dp_packet_l4_checksum_set_good
    - functionName:    packet_csum_upperlayer6
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2054
      functionLinenumberEnd: 2064
      functionDepth:   0
      returnType:      short
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - char
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          50
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - csum_add16
        - csum_continue
        - csum_finish
        - htons
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:2057,15'
          Dst:             csum_continue
        - Src:             'lib/packets.c:2058,15'
          Dst:             csum_continue
        - Src:             'lib/packets.c:2059,35'
          Dst:             htons
        - Src:             'lib/packets.c:2059,15'
          Dst:             csum_add16
        - Src:             'lib/packets.c:2060,35'
          Dst:             htons
        - Src:             'lib/packets.c:2060,15'
          Dst:             csum_add16
        - Src:             'lib/packets.c:2062,15'
          Dst:             csum_continue
        - Src:             'lib/packets.c:2064,12'
          Dst:             csum_finish
    - functionName:    packet_tcp_complete_csum
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2098
      functionLinenumberEnd: 2134
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          115
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - csum_continue
        - csum_finish
        - dp_packet_inner_l3
        - dp_packet_inner_l4
        - dp_packet_inner_l4_checksum_set_good
        - dp_packet_inner_l4_size
        - dp_packet_l3
        - dp_packet_l4
        - dp_packet_l4_checksum_set_good
        - dp_packet_l4_size
        - ovs_ignore
        - packet_csum_pseudoheader
        - packet_csum_upperlayer6
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:2104,15'
          Dst:             dp_packet_inner_l4
        - Src:             'lib/packets.c:2105,18'
          Dst:             dp_packet_inner_l3
        - Src:             'lib/packets.c:2106,18'
          Dst:             dp_packet_inner_l4_size
        - Src:             'lib/packets.c:2108,15'
          Dst:             dp_packet_l4
        - Src:             'lib/packets.c:2109,18'
          Dst:             dp_packet_l3
        - Src:             'lib/packets.c:2110,18'
          Dst:             dp_packet_l4_size
        - Src:             'lib/packets.c:2113,5'
          Dst:             ovs_ignore
        - Src:             'lib/packets.c:2114,5'
          Dst:             ovs_ignore
        - Src:             'lib/packets.c:2120,51'
          Dst:             packet_csum_pseudoheader
        - Src:             'lib/packets.c:2120,37'
          Dst:             csum_continue
        - Src:             'lib/packets.c:2120,25'
          Dst:             csum_finish
        - Src:             'lib/packets.c:2125,25'
          Dst:             packet_csum_upperlayer6
        - Src:             'lib/packets.c:2130,9'
          Dst:             dp_packet_inner_l4_checksum_set_good
        - Src:             'lib/packets.c:2132,9'
          Dst:             dp_packet_l4_checksum_set_good
    - functionName:    IP_ECN_set_ce
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2070
      functionLinenumberEnd: 2092
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          94
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - dp_packet_ip_checksum_set_partial
        - dp_packet_ip_checksum_valid
        - dp_packet_l3
        - get_16aligned_be32
        - htonl
        - htons
        - put_16aligned_be32
        - recalc_csum16
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:2072,35'
          Dst:             dp_packet_l3
        - Src:             'lib/packets.c:2074,33'
          Dst:             get_16aligned_be32
        - Src:             'lib/packets.c:2075,33'
          Dst:             htonl
        - Src:             'lib/packets.c:2074,9'
          Dst:             put_16aligned_be32
        - Src:             'lib/packets.c:2077,32'
          Dst:             dp_packet_l3
        - Src:             'lib/packets.c:2082,17'
          Dst:             dp_packet_ip_checksum_valid
        - Src:             'lib/packets.c:2083,17'
          Dst:             dp_packet_ip_checksum_set_partial
        - Src:             'lib/packets.c:2085,58'
          Dst:             htons
        - Src:             'lib/packets.c:2086,45'
          Dst:             htons
        - Src:             'lib/packets.c:2085,31'
          Dst:             recalc_csum16
    - functionName:    dp_packet_ip_checksum_valid
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1191
      functionLinenumberEnd: 1192
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_ip_checksum_set_partial
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1173
      functionLinenumberEnd: 1175
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    packet_put_ra_prefix_opt
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1996
      functionLinenumberEnd: 2017
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - char
        - char
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          94
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - csum_continue
        - csum_finish
        - dp_packet_l3
        - dp_packet_l4
        - dp_packet_l4_size
        - dp_packet_put_uninit
        - htons
        - packet_csum_pseudoheader6
        - put_16aligned_be32
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:1997,27'
          Dst:             dp_packet_l4_size
        - Src:             'lib/packets.c:1998,40'
          Dst:             dp_packet_l3
        - Src:             'lib/packets.c:1999,20'
          Dst:             htons
        - Src:             'lib/packets.c:2002,9'
          Dst:             dp_packet_put_uninit
        - Src:             'lib/packets.c:2007,5'
          Dst:             put_16aligned_be32
        - Src:             'lib/packets.c:2008,5'
          Dst:             put_16aligned_be32
        - Src:             'lib/packets.c:2009,5'
          Dst:             put_16aligned_be32
        - Src:             'lib/packets.c:2012,29'
          Dst:             dp_packet_l4
        - Src:             'lib/packets.c:2014,52'
          Dst:             dp_packet_l3
        - Src:             'lib/packets.c:2014,26'
          Dst:             packet_csum_pseudoheader6
        - Src:             'lib/packets.c:2015,41'
          Dst:             csum_continue
        - Src:             'lib/packets.c:2015,29'
          Dst:             csum_finish
    - functionName:    compose_nd_ra
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1949
      functionLinenumberEnd: 1987
      functionDepth:   0
      returnType:      void
      argCount:        11
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - char
        - char
        - short
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          161
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - compose_ipv6
        - csum_continue
        - csum_finish
        - dp_packet_l3
        - eth_compose
        - htonl
        - packet_csum_pseudoheader6
        - put_16aligned_be32
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:1955,5'
          Dst:             eth_compose
        - Src:             'lib/packets.c:1957,29'
          Dst:             compose_ipv6
        - Src:             'lib/packets.c:1980,43'
          Dst:             htonl
        - Src:             'lib/packets.c:1980,9'
          Dst:             put_16aligned_be32
        - Src:             'lib/packets.c:1984,52'
          Dst:             dp_packet_l3
        - Src:             'lib/packets.c:1984,26'
          Dst:             packet_csum_pseudoheader6
        - Src:             'lib/packets.c:1985,41'
          Dst:             csum_continue
        - Src:             'lib/packets.c:1985,29'
          Dst:             csum_finish
    - functionName:    eth_compose
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1118
      functionLinenumberEnd: 1139
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - short
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          61
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_clear
        - dp_packet_prealloc_tailroom
        - dp_packet_put_uninit
        - dp_packet_put_zeros
        - dp_packet_reserve
        - dp_packet_set_l3
        - htonl
        - htons
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:1123,5'
          Dst:             dp_packet_clear
        - Src:             'lib/packets.c:1127,5'
          Dst:             dp_packet_prealloc_tailroom
        - Src:             'lib/packets.c:1128,5'
          Dst:             dp_packet_reserve
        - Src:             'lib/packets.c:1129,11'
          Dst:             dp_packet_put_uninit
        - Src:             'lib/packets.c:1130,12'
          Dst:             dp_packet_put_zeros
        - Src:             'lib/packets.c:1134,21'
          Dst:             htons
        - Src:             'lib/packets.c:1136,22'
          Dst:             htonl
        - Src:             'lib/packets.c:1137,5'
          Dst:             dp_packet_set_l3
    - functionName:    compose_ipv6
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1855
      functionLinenumberEnd: 1866
      functionDepth:   0
      returnType:      'N/A'
      argCount:        8
      argTypes:
        - 'N/A'
        - char
        - 'N/A'
        - 'N/A'
        - char
        - int
        - char
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          63
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_l3
        - dp_packet_put_zeros
        - dp_packet_set_l4
        - htons
        - packet_set_ipv6
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:1859,10'
          Dst:             dp_packet_l3
        - Src:             'lib/packets.c:1862,20'
          Dst:             htons
        - Src:             'lib/packets.c:1863,12'
          Dst:             dp_packet_put_zeros
        - Src:             'lib/packets.c:1864,5'
          Dst:             dp_packet_set_l4
        - Src:             'lib/packets.c:1865,5'
          Dst:             packet_set_ipv6
    - functionName:    dp_packet_set_l4
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 483
      functionLinenumberEnd: 485
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:484,45'
          Dst:             dp_packet_data
    - functionName:    packet_set_ipv6
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1384
      functionLinenumberEnd: 1405
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - char
        - int
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          108
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - dp_packet_l3
        - memcmp
        - packet_rh_present
        - packet_set_ipv6_addr
        - packet_set_ipv6_flow_label
        - packet_set_ipv6_tc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:1385,40'
          Dst:             dp_packet_l3
        - Src:             'lib/packets.c:1390,18'
          Dst:             packet_rh_present
        - Src:             'lib/packets.c:1392,9'
          Dst:             memcmp
        - Src:             'lib/packets.c:1393,9'
          Dst:             packet_set_ipv6_addr
        - Src:             'lib/packets.c:1397,9'
          Dst:             memcmp
        - Src:             'lib/packets.c:1398,9'
          Dst:             packet_set_ipv6_addr
        - Src:             'lib/packets.c:1402,5'
          Dst:             packet_set_ipv6_tc
        - Src:             'lib/packets.c:1403,5'
          Dst:             packet_set_ipv6_flow_label
    - functionName:    packet_rh_present
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1187
      functionLinenumberEnd: 1264
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         37
      ICount:          276
      EdgeCount:       50
      CyclomaticComplexity: 15
      functionsReached:
        - dp_packet_l3
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:1191,21'
          Dst:             dp_packet_l3
    - functionName:    packet_set_ipv6_addr
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1307
      functionLinenumberEnd: 1313
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - char
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - packet_update_csum128
        - pkt_metadata_init_conn
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:1309,9'
          Dst:             packet_update_csum128
        - Src:             'lib/packets.c:1312,5'
          Dst:             pkt_metadata_init_conn
    - functionName:    packet_set_ipv6_tc
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1325
      functionLinenumberEnd: 1329
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          32
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_16aligned_be32
        - htonl
        - put_16aligned_be32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:1326,26'
          Dst:             get_16aligned_be32
        - Src:             'lib/packets.c:1327,39'
          Dst:             htonl
        - Src:             'lib/packets.c:1327,60'
          Dst:             htonl
        - Src:             'lib/packets.c:1328,5'
          Dst:             put_16aligned_be32
    - functionName:    packet_set_ipv6_flow_label
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1317
      functionLinenumberEnd: 1321
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_16aligned_be32
        - htonl
        - put_16aligned_be32
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:1318,26'
          Dst:             get_16aligned_be32
        - Src:             'lib/packets.c:1319,39'
          Dst:             htonl
        - Src:             'lib/packets.c:1320,5'
          Dst:             put_16aligned_be32
    - functionName:    packet_update_csum128
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1270
      functionLinenumberEnd: 1300
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - char
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         32
      ICount:          173
      EdgeCount:       42
      CyclomaticComplexity: 12
      functionsReached:
        - dp_packet_l4
        - dp_packet_l4_checksum_set_partial
        - dp_packet_l4_checksum_valid
        - dp_packet_l4_size
        - htons
        - recalc_csum128
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:1271,22'
          Dst:             dp_packet_l4_size
        - Src:             'lib/packets.c:1274,13'
          Dst:             dp_packet_l4_checksum_valid
        - Src:             'lib/packets.c:1275,13'
          Dst:             dp_packet_l4_checksum_set_partial
        - Src:             'lib/packets.c:1277,37'
          Dst:             dp_packet_l4
        - Src:             'lib/packets.c:1279,28'
          Dst:             recalc_csum128
        - Src:             'lib/packets.c:1282,13'
          Dst:             dp_packet_l4_checksum_valid
        - Src:             'lib/packets.c:1283,13'
          Dst:             dp_packet_l4_checksum_set_partial
        - Src:             'lib/packets.c:1285,37'
          Dst:             dp_packet_l4
        - Src:             'lib/packets.c:1288,32'
          Dst:             recalc_csum128
        - Src:             'lib/packets.c:1290,36'
          Dst:             htons
        - Src:             'lib/packets.c:1296,37'
          Dst:             dp_packet_l4
        - Src:             'lib/packets.c:1298,29'
          Dst:             recalc_csum128
    - functionName:    pkt_metadata_init_conn
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 159
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_l4_checksum_valid
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1360
      functionLinenumberEnd: 1361
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_l4_checksum_set_partial
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1342
      functionLinenumberEnd: 1344
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_clear
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 364
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_base
        - dp_packet_reset_offload
        - dp_packet_reset_offsets
        - dp_packet_set_data
        - dp_packet_set_size
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:360,27'
          Dst:             dp_packet_base
        - Src:             'lib/dp-packet.h:360,5'
          Dst:             dp_packet_set_data
        - Src:             'lib/dp-packet.h:361,5'
          Dst:             dp_packet_set_size
        - Src:             'lib/dp-packet.h:362,5'
          Dst:             dp_packet_reset_offsets
        - Src:             'lib/dp-packet.h:363,5'
          Dst:             dp_packet_reset_offload
    - functionName:    dp_packet_set_l3
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 469
      functionLinenumberEnd: 471
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_data
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:470,45'
          Dst:             dp_packet_data
    - functionName:    dp_packet_reset_offsets
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 424
      functionLinenumberEnd: 428
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_reset_outer_offsets
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:425,5'
          Dst:             dp_packet_reset_outer_offsets
    - functionName:    dp_packet_reset_offload
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1069
      functionLinenumberEnd: 1072
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    compose_nd_na
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1913
      functionLinenumberEnd: 1936
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          96
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - compose_ipv6
        - csum_continue
        - csum_finish
        - dp_packet_l3
        - eth_compose
        - packet_csum_pseudoheader6
        - packet_set_nd
        - put_16aligned_be32
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:1918,5'
          Dst:             eth_compose
        - Src:             'lib/packets.c:1919,10'
          Dst:             compose_ipv6
        - Src:             'lib/packets.c:1924,5'
          Dst:             put_16aligned_be32
        - Src:             'lib/packets.c:1930,5'
          Dst:             packet_set_nd
        - Src:             'lib/packets.c:1933,43'
          Dst:             dp_packet_l3
        - Src:             'lib/packets.c:1933,17'
          Dst:             packet_csum_pseudoheader6
        - Src:             'lib/packets.c:1934,41'
          Dst:             csum_continue
        - Src:             'lib/packets.c:1934,29'
          Dst:             csum_finish
    - functionName:    packet_set_nd
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1668
      functionLinenumberEnd: 1713
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         34
      ICount:          277
      EdgeCount:       45
      CyclomaticComplexity: 13
      functionsReached:
        - dp_packet_l4
        - dp_packet_l4_size
        - eth_addr_equals
        - memcmp
        - packet_set_ipv6_addr
        - recalc_csum48
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:1671,24'
          Dst:             dp_packet_l4_size
        - Src:             'lib/packets.c:1677,10'
          Dst:             dp_packet_l4
        - Src:             'lib/packets.c:1681,9'
          Dst:             memcmp
        - Src:             'lib/packets.c:1682,9'
          Dst:             packet_set_ipv6_addr
        - Src:             'lib/packets.c:1689,18'
          Dst:             eth_addr_equals
        - Src:             'lib/packets.c:1692,25'
          Dst:             recalc_csum48
        - Src:             'lib/packets.c:1699,18'
          Dst:             eth_addr_equals
        - Src:             'lib/packets.c:1702,25'
          Dst:             recalc_csum48
    - functionName:    eth_addr_equals
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 272
      functionLinenumberEnd: 273
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - eth_addr_compare_3way
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:273,13'
          Dst:             eth_addr_compare_3way
    - functionName:    compose_nd_ns
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1874
      functionLinenumberEnd: 1905
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          113
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - compose_ipv6
        - csum_continue
        - csum_finish
        - dp_packet_l3
        - eth_compose
        - htonl
        - in6_addr_solicited_node
        - ipv6_multicast_to_ethernet
        - packet_csum_pseudoheader6
        - packet_set_nd
        - put_16aligned_be32
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:1881,9'
          Dst:             in6_addr_solicited_node
        - Src:             'lib/packets.c:1882,9'
          Dst:             ipv6_multicast_to_ethernet
        - Src:             'lib/packets.c:1887,5'
          Dst:             eth_compose
        - Src:             'lib/packets.c:1888,10'
          Dst:             compose_ipv6
        - Src:             'lib/packets.c:1893,40'
          Dst:             htonl
        - Src:             'lib/packets.c:1893,5'
          Dst:             put_16aligned_be32
        - Src:             'lib/packets.c:1899,5'
          Dst:             packet_set_nd
        - Src:             'lib/packets.c:1902,43'
          Dst:             dp_packet_l3
        - Src:             'lib/packets.c:1902,17'
          Dst:             packet_csum_pseudoheader6
        - Src:             'lib/packets.c:1904,9'
          Dst:             csum_continue
        - Src:             'lib/packets.c:1903,29'
          Dst:             csum_finish
    - functionName:    in6_addr_solicited_node
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 599
      functionLinenumberEnd: 607
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          40
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htons
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:603,22'
          Dst:             htons
        - Src:             'lib/packets.c:604,22'
          Dst:             htons
        - Src:             'lib/packets.c:605,22'
          Dst:             htons
    - functionName:    ipv6_multicast_to_ethernet
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 661
      functionLinenumberEnd: 668
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          48
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    compose_arp__
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1830
      functionLinenumberEnd: 1847
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          52
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_clear
        - dp_packet_prealloc_tailroom
        - dp_packet_put_zeros
        - dp_packet_reserve
        - dp_packet_set_l3
        - htonl
        - htons
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:1831,5'
          Dst:             dp_packet_clear
        - Src:             'lib/packets.c:1832,5'
          Dst:             dp_packet_prealloc_tailroom
        - Src:             'lib/packets.c:1833,5'
          Dst:             dp_packet_reserve
        - Src:             'lib/packets.c:1835,30'
          Dst:             dp_packet_put_zeros
        - Src:             'lib/packets.c:1836,21'
          Dst:             htons
        - Src:             'lib/packets.c:1838,34'
          Dst:             dp_packet_put_zeros
        - Src:             'lib/packets.c:1839,19'
          Dst:             htons
        - Src:             'lib/packets.c:1840,19'
          Dst:             htons
        - Src:             'lib/packets.c:1844,5'
          Dst:             dp_packet_set_l3
        - Src:             'lib/packets.c:1846,22'
          Dst:             htonl
    - functionName:    compose_arp
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1809
      functionLinenumberEnd: 1822
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - short
        - 'N/A'
        - 'N/A'
        - bool
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          77
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - compose_arp__
        - dp_packet_eth
        - dp_packet_l3
        - htons
        - put_16aligned_be32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:1810,5'
          Dst:             compose_arp__
        - Src:             'lib/packets.c:1812,30'
          Dst:             dp_packet_eth
        - Src:             'lib/packets.c:1816,34'
          Dst:             dp_packet_l3
        - Src:             'lib/packets.c:1817,18'
          Dst:             htons
        - Src:             'lib/packets.c:1820,5'
          Dst:             put_16aligned_be32
        - Src:             'lib/packets.c:1821,5'
          Dst:             put_16aligned_be32
    - functionName:    dp_packet_eth
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 405
      functionLinenumberEnd: 407
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          39
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - dp_packet_data
        - dp_packet_is_eth
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:406,13'
          Dst:             dp_packet_is_eth
        - Src:             'lib/dp-packet.h:407,15'
          Dst:             dp_packet_data
    - functionName:    dp_packet_is_eth
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 397
      functionLinenumberEnd: 398
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:398,30'
          Dst:             htonl
    - functionName:    packet_format_tcp_flags
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1753
      functionLinenumberEnd: 1795
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         41
      ICount:          217
      EdgeCount:       54
      CyclomaticComplexity: 15
      functionsReached:
        - ds_put_char
        - ds_put_cstr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:1755,9'
          Dst:             ds_put_cstr
        - Src:             'lib/packets.c:1760,9'
          Dst:             ds_put_char
        - Src:             'lib/packets.c:1763,9'
          Dst:             ds_put_char
        - Src:             'lib/packets.c:1766,9'
          Dst:             ds_put_char
        - Src:             'lib/packets.c:1769,9'
          Dst:             ds_put_char
        - Src:             'lib/packets.c:1772,9'
          Dst:             ds_put_char
        - Src:             'lib/packets.c:1775,9'
          Dst:             ds_put_char
        - Src:             'lib/packets.c:1778,9'
          Dst:             ds_put_cstr
        - Src:             'lib/packets.c:1781,9'
          Dst:             ds_put_cstr
        - Src:             'lib/packets.c:1784,9'
          Dst:             ds_put_cstr
        - Src:             'lib/packets.c:1787,9'
          Dst:             ds_put_cstr
        - Src:             'lib/packets.c:1790,9'
          Dst:             ds_put_cstr
        - Src:             'lib/packets.c:1793,9'
          Dst:             ds_put_cstr
    - functionName:    ds_put_char
      functionSourceFile: '/src/openvswitch/./include/openvswitch/dynamic-string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_char__
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/dynamic-string.h:99,9'
          Dst:             ds_put_char__
    - functionName:    packet_tcp_flag_to_string
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1717
      functionLinenumberEnd: 1746
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          77
      EdgeCount:       28
      CyclomaticComplexity: 15
      functionsReached: []
      functionUses:    6
      BranchProfiles:
        - Branch String:   'lib/packets.c:1718,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    packet_set_nd_ext
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1635
      functionLinenumberEnd: 1663
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          90
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - csum_continue
        - csum_finish
        - dp_packet_l3
        - dp_packet_l4
        - dp_packet_l4_size
        - packet_csum_pseudoheader6
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:1638,24'
          Dst:             dp_packet_l4_size
        - Src:             'lib/packets.c:1639,41'
          Dst:             dp_packet_l3
        - Src:             'lib/packets.c:1647,27'
          Dst:             packet_csum_pseudoheader6
        - Src:             'lib/packets.c:1650,10'
          Dst:             dp_packet_l4
        - Src:             'lib/packets.c:1660,31'
          Dst:             csum_continue
        - Src:             'lib/packets.c:1660,19'
          Dst:             csum_finish
    - functionName:    packet_set_igmp3_query
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1595
      functionLinenumberEnd: 1630
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - char
        - int
        - bool
        - char
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          193
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - dp_packet_l4
        - get_16aligned_be32
        - htons
        - put_16aligned_be32
        - recalc_csum16
        - recalc_csum32
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:1596,39'
          Dst:             dp_packet_l4
        - Src:             'lib/packets.c:1598,9'
          Dst:             htons
        - Src:             'lib/packets.c:1600,9'
          Dst:             htons
        - Src:             'lib/packets.c:1605,21'
          Dst:             recalc_csum16
        - Src:             'lib/packets.c:1609,26'
          Dst:             get_16aligned_be32
        - Src:             'lib/packets.c:1612,9'
          Dst:             put_16aligned_be32
        - Src:             'lib/packets.c:1613,21'
          Dst:             recalc_csum32
        - Src:             'lib/packets.c:1621,34'
          Dst:             htons
        - Src:             'lib/packets.c:1622,33'
          Dst:             htons
        - Src:             'lib/packets.c:1627,21'
          Dst:             recalc_csum16
    - functionName:    packet_is_icmpv4_info_message
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1567
      functionLinenumberEnd: 1586
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         19
      ICount:          94
      EdgeCount:       26
      CyclomaticComplexity: 9
      functionsReached:
        - packet_get_icmp_type
        - packet_get_ip_proto
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:1570,16'
          Dst:             packet_get_ip_proto
        - Src:             'lib/packets.c:1575,17'
          Dst:             packet_get_icmp_type
    - functionName:    packet_get_ip_proto
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1550
      functionLinenumberEnd: 1562
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_eth
        - dp_packet_l3
        - htons
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:1551,29'
          Dst:             dp_packet_eth
        - Src:             'lib/packets.c:1554,25'
          Dst:             htons
        - Src:             'lib/packets.c:1555,45'
          Dst:             dp_packet_l3
        - Src:             'lib/packets.c:1558,36'
          Dst:             dp_packet_l3
    - functionName:    packet_get_icmp_type
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1538
      functionLinenumberEnd: 1546
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          45
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - dp_packet_l4
        - dp_packet_l4_size
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:1539,30'
          Dst:             dp_packet_l4
        - Src:             'lib/packets.c:1541,16'
          Dst:             dp_packet_l4_size
    - functionName:    packet_set_icmp_id
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1519
      functionLinenumberEnd: 1534
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          75
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - dp_packet_l4
        - dp_packet_l4_size
        - pkt_metadata_init_conn
        - recalc_csum16
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:1520,30'
          Dst:             dp_packet_l4
        - Src:             'lib/packets.c:1522,16'
          Dst:             dp_packet_l4_size
        - Src:             'lib/packets.c:1530,25'
          Dst:             recalc_csum16
        - Src:             'lib/packets.c:1533,5'
          Dst:             pkt_metadata_init_conn
    - functionName:    packet_set_icmp
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1500
      functionLinenumberEnd: 1512
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - char
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          80
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_l4
        - htons
        - pkt_metadata_init_conn
        - recalc_csum16
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:1501,30'
          Dst:             dp_packet_l4
        - Src:             'lib/packets.c:1502,24'
          Dst:             htons
        - Src:             'lib/packets.c:1503,23'
          Dst:             htons
        - Src:             'lib/packets.c:1509,25'
          Dst:             recalc_csum16
        - Src:             'lib/packets.c:1511,5'
          Dst:             pkt_metadata_init_conn
    - functionName:    packet_set_sctp_port
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1469
      functionLinenumberEnd: 1493
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - short
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          86
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - crc32c
        - dp_packet_l4
        - dp_packet_l4_checksum_set_partial
        - dp_packet_l4_checksum_valid
        - dp_packet_l4_size
        - get_16aligned_be32
        - pkt_metadata_init_conn
        - put_16aligned_be32
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:1470,30'
          Dst:             dp_packet_l4
        - Src:             'lib/packets.c:1472,9'
          Dst:             dp_packet_l4_checksum_valid
        - Src:             'lib/packets.c:1473,9'
          Dst:             dp_packet_l4_checksum_set_partial
        - Src:             'lib/packets.c:1478,27'
          Dst:             dp_packet_l4_size
        - Src:             'lib/packets.c:1480,20'
          Dst:             get_16aligned_be32
        - Src:             'lib/packets.c:1481,9'
          Dst:             put_16aligned_be32
        - Src:             'lib/packets.c:1482,28'
          Dst:             crc32c
        - Src:             'lib/packets.c:1487,20'
          Dst:             crc32c
        - Src:             'lib/packets.c:1488,9'
          Dst:             put_16aligned_be32
        - Src:             'lib/packets.c:1492,5'
          Dst:             pkt_metadata_init_conn
    - functionName:    packet_set_udp_port
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1443
      functionLinenumberEnd: 1462
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - short
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          97
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - dp_packet_l4
        - dp_packet_l4_checksum_set_partial
        - dp_packet_l4_checksum_valid
        - htons
        - packet_set_port
        - pkt_metadata_init_conn
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:1444,29'
          Dst:             dp_packet_l4
        - Src:             'lib/packets.c:1446,9'
          Dst:             dp_packet_l4_checksum_valid
        - Src:             'lib/packets.c:1447,9'
          Dst:             dp_packet_l4_checksum_set_partial
        - Src:             'lib/packets.c:1448,9'
          Dst:             packet_set_port
        - Src:             'lib/packets.c:1449,9'
          Dst:             packet_set_port
        - Src:             'lib/packets.c:1453,9'
          Dst:             packet_set_port
        - Src:             'lib/packets.c:1454,9'
          Dst:             packet_set_port
        - Src:             'lib/packets.c:1457,28'
          Dst:             htons
        - Src:             'lib/packets.c:1461,5'
          Dst:             pkt_metadata_init_conn
    - functionName:    packet_set_port
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1409
      functionLinenumberEnd: 1416
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - short
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          52
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - recalc_csum16
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:1412,21'
          Dst:             recalc_csum16
    - functionName:    packet_set_tcp_port
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1423
      functionLinenumberEnd: 1436
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - short
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_l4
        - dp_packet_l4_checksum_set_partial
        - dp_packet_l4_checksum_valid
        - packet_set_port
        - pkt_metadata_init_conn
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:1424,29'
          Dst:             dp_packet_l4
        - Src:             'lib/packets.c:1427,9'
          Dst:             dp_packet_l4_checksum_valid
        - Src:             'lib/packets.c:1428,9'
          Dst:             dp_packet_l4_checksum_set_partial
        - Src:             'lib/packets.c:1433,5'
          Dst:             packet_set_port
        - Src:             'lib/packets.c:1434,5'
          Dst:             packet_set_port
        - Src:             'lib/packets.c:1435,5'
          Dst:             pkt_metadata_init_conn
    - functionName:    packet_set_ipv4
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1338
      functionLinenumberEnd: 1374
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - char
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          165
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - dp_packet_ip_checksum_set_partial
        - dp_packet_ip_checksum_valid
        - dp_packet_l3
        - get_16aligned_be32
        - htons
        - packet_set_ipv4_addr
        - recalc_csum16
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:1339,28'
          Dst:             dp_packet_l3
        - Src:             'lib/packets.c:1341,9'
          Dst:             get_16aligned_be32
        - Src:             'lib/packets.c:1342,9'
          Dst:             packet_set_ipv4_addr
        - Src:             'lib/packets.c:1345,9'
          Dst:             get_16aligned_be32
        - Src:             'lib/packets.c:1346,9'
          Dst:             packet_set_ipv4_addr
        - Src:             'lib/packets.c:1352,13'
          Dst:             dp_packet_ip_checksum_valid
        - Src:             'lib/packets.c:1353,13'
          Dst:             dp_packet_ip_checksum_set_partial
        - Src:             'lib/packets.c:1355,54'
          Dst:             htons
        - Src:             'lib/packets.c:1356,41'
          Dst:             htons
        - Src:             'lib/packets.c:1355,27'
          Dst:             recalc_csum16
        - Src:             'lib/packets.c:1365,13'
          Dst:             dp_packet_ip_checksum_valid
        - Src:             'lib/packets.c:1366,13'
          Dst:             dp_packet_ip_checksum_set_partial
        - Src:             'lib/packets.c:1368,54'
          Dst:             htons
        - Src:             'lib/packets.c:1369,41'
          Dst:             htons
        - Src:             'lib/packets.c:1368,27'
          Dst:             recalc_csum16
    - functionName:    packet_set_ipv4_addr
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1145
      functionLinenumberEnd: 1179
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          176
      EdgeCount:       38
      CyclomaticComplexity: 11
      functionsReached:
        - dp_packet_ip_checksum_set_partial
        - dp_packet_ip_checksum_valid
        - dp_packet_l3
        - dp_packet_l4
        - dp_packet_l4_checksum_set_partial
        - dp_packet_l4_checksum_valid
        - dp_packet_l4_size
        - get_16aligned_be32
        - htons
        - pkt_metadata_init_conn
        - put_16aligned_be32
        - recalc_csum32
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:1146,28'
          Dst:             dp_packet_l3
        - Src:             'lib/packets.c:1147,25'
          Dst:             get_16aligned_be32
        - Src:             'lib/packets.c:1148,22'
          Dst:             dp_packet_l4_size
        - Src:             'lib/packets.c:1150,5'
          Dst:             pkt_metadata_init_conn
        - Src:             'lib/packets.c:1153,13'
          Dst:             dp_packet_l4_checksum_valid
        - Src:             'lib/packets.c:1154,13'
          Dst:             dp_packet_l4_checksum_set_partial
        - Src:             'lib/packets.c:1156,37'
          Dst:             dp_packet_l4
        - Src:             'lib/packets.c:1157,28'
          Dst:             recalc_csum32
        - Src:             'lib/packets.c:1160,13'
          Dst:             dp_packet_l4_checksum_valid
        - Src:             'lib/packets.c:1161,13'
          Dst:             dp_packet_l4_checksum_set_partial
        - Src:             'lib/packets.c:1163,37'
          Dst:             dp_packet_l4
        - Src:             'lib/packets.c:1165,32'
          Dst:             recalc_csum32
        - Src:             'lib/packets.c:1167,36'
          Dst:             htons
        - Src:             'lib/packets.c:1173,9'
          Dst:             dp_packet_ip_checksum_valid
        - Src:             'lib/packets.c:1174,9'
          Dst:             dp_packet_ip_checksum_set_partial
        - Src:             'lib/packets.c:1176,23'
          Dst:             recalc_csum32
        - Src:             'lib/packets.c:1178,5'
          Dst:             put_16aligned_be32
    - functionName:    ipv6_addr_equals
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1184
      functionLinenumberEnd: 1186
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          80
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ipv6_addr_equals_masked
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1089
      functionLinenumberEnd: 1103
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          76
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ipv6_addr_bitand
        - ipv6_addr_equals
        - ipv6_create_mask
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:1095,16'
          Dst:             ipv6_addr_equals
        - Src:             'lib/packets.c:1098,12'
          Dst:             ipv6_create_mask
        - Src:             'lib/packets.c:1099,10'
          Dst:             ipv6_addr_bitand
        - Src:             'lib/packets.c:1100,10'
          Dst:             ipv6_addr_bitand
        - Src:             'lib/packets.c:1102,12'
          Dst:             ipv6_addr_equals
    - functionName:    ipv6_create_mask
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1013
      functionLinenumberEnd: 1028
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          49
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ipv6_addr_bitand
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 980
      functionLinenumberEnd: 985
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         5
      ICount:          48
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    14
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ipv6_is_zero
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1000
      functionLinenumberEnd: 1007
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          42
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    10
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ipv6_addr_bitxor
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 990
      functionLinenumberEnd: 995
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         5
      ICount:          48
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    in6_addr_get_mapped_ipv4
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1231
      functionLinenumberEnd: 1239
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          75
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - get_16aligned_be32
        - htonl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:1234,9'
          Dst:             htonl
        - Src:             'lib/packets.h:1235,16'
          Dst:             get_16aligned_be32
    - functionName:    ipv6_string_mapped
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 960
      functionLinenumberEnd: 968
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - in6_addr_get_mapped_ipv4
        - inet_ntop
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:962,10'
          Dst:             in6_addr_get_mapped_ipv4
        - Src:             'lib/packets.c:964,16'
          Dst:             inet_ntop
        - Src:             'lib/packets.c:966,16'
          Dst:             inet_ntop
    - functionName:    inet_ntop
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ipv6_mask_is_exact
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1197
      functionLinenumberEnd: 1198
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ipv6_addr_equals
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:1198,12'
          Dst:             ipv6_addr_equals
    - functionName:    ipv6_format_masked
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 942
      functionLinenumberEnd: 953
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          58
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - ds_put_char
        - ds_put_format
        - ipv6_count_cidr_bits
        - ipv6_format_addr
        - ipv6_is_cidr
        - ipv6_mask_is_exact
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:943,5'
          Dst:             ipv6_format_addr
        - Src:             'lib/packets.c:944,18'
          Dst:             ipv6_mask_is_exact
        - Src:             'lib/packets.c:945,13'
          Dst:             ipv6_is_cidr
        - Src:             'lib/packets.c:946,29'
          Dst:             ipv6_count_cidr_bits
        - Src:             'lib/packets.c:947,13'
          Dst:             ds_put_format
        - Src:             'lib/packets.c:949,13'
          Dst:             ds_put_char
        - Src:             'lib/packets.c:950,13'
          Dst:             ipv6_format_addr
    - functionName:    ipv6_format_addr
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 903
      functionLinenumberEnd: 911
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          40
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_reserve
        - inet_ntop
        - strlen
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:906,5'
          Dst:             ds_reserve
        - Src:             'lib/packets.c:909,5'
          Dst:             inet_ntop
        - Src:             'lib/packets.c:910,18'
          Dst:             strlen
    - functionName:    ipv6_is_cidr
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1065
      functionLinenumberEnd: 1084
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         16
      ICount:          97
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ipv6_count_cidr_bits
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1039
      functionLinenumberEnd: 1058
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          75
      EdgeCount:       15
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ipv6_format_mapped
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 930
      functionLinenumberEnd: 937
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          92
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - ds_put_format
        - htonl
        - ipv6_format_addr
      functionUses:    14
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:931,9'
          Dst:             htonl
        - Src:             'lib/packets.c:932,9'
          Dst:             ds_put_format
        - Src:             'lib/packets.c:935,9'
          Dst:             ipv6_format_addr
    - functionName:    ipv6_format_addr_bracket
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 918
      functionLinenumberEnd: 926
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          47
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ds_put_char
        - ipv6_format_addr
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:920,9'
          Dst:             ds_put_char
        - Src:             'lib/packets.c:922,5'
          Dst:             ipv6_format_addr
        - Src:             'lib/packets.c:924,9'
          Dst:             ds_put_char
    - functionName:    ipv6_parse_cidr
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 888
      functionLinenumberEnd: 896
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          57
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ipv6_parse_cidr_len
        - xasprintf
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:891,19'
          Dst:             ipv6_parse_cidr_len
        - Src:             'lib/packets.c:893,16'
          Dst:             xasprintf
    - functionName:    ipv6_parse_cidr_len
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 868
      functionLinenumberEnd: 882
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          54
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - ipv6_count_cidr_bits
        - ipv6_is_cidr
        - ipv6_parse_masked_len
        - xasprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:872,13'
          Dst:             ipv6_parse_masked_len
        - Src:             'lib/packets.c:877,10'
          Dst:             ipv6_is_cidr
        - Src:             'lib/packets.c:878,16'
          Dst:             xasprintf
        - Src:             'lib/packets.c:880,13'
          Dst:             ipv6_count_cidr_bits
    - functionName:    ipv6_parse_masked_len
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 822
      functionLinenumberEnd: 846
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          114
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - ipv6_create_mask
        - ipv6_parse
        - ovs_scan_len
        - xasprintf
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:826,9'
          Dst:             ovs_scan_len
        - Src:             'lib/packets.c:827,12'
          Dst:             ipv6_parse
        - Src:             'lib/packets.c:828,13'
          Dst:             ovs_scan_len
        - Src:             'lib/packets.c:830,24'
          Dst:             xasprintf
        - Src:             'lib/packets.c:833,21'
          Dst:             ipv6_create_mask
        - Src:             'lib/packets.c:834,20'
          Dst:             ovs_scan_len
        - Src:             'lib/packets.c:835,19'
          Dst:             ipv6_parse
        - Src:             'lib/packets.c:836,25'
          Dst:             xasprintf
        - Src:             'lib/packets.c:845,12'
          Dst:             xasprintf
    - functionName:    ipv6_parse
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 808
      functionLinenumberEnd: 809
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - inet_pton
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:809,12'
          Dst:             inet_pton
    - functionName:    inet_pton
      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:    14
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ipv6_parse_masked
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 853
      functionLinenumberEnd: 861
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          57
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ipv6_parse_masked_len
        - xasprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:856,19'
          Dst:             ipv6_parse_masked_len
        - Src:             'lib/packets.c:858,16'
          Dst:             xasprintf
    - functionName:    ip_parse_cidr
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 794
      functionLinenumberEnd: 802
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          57
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ip_parse_cidr_len
        - xasprintf
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:797,19'
          Dst:             ip_parse_cidr_len
        - Src:             'lib/packets.c:799,16'
          Dst:             xasprintf
    - functionName:    ip_parse_cidr_len
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 773
      functionLinenumberEnd: 787
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          56
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - ip_count_cidr_bits
        - ip_is_cidr
        - ip_parse_masked_len
        - xasprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:777,13'
          Dst:             ip_parse_masked_len
        - Src:             'lib/packets.c:782,10'
          Dst:             ip_is_cidr
        - Src:             'lib/packets.c:783,16'
          Dst:             xasprintf
        - Src:             'lib/packets.c:785,13'
          Dst:             ip_count_cidr_bits
    - functionName:    ip_parse_masked_len
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 730
      functionLinenumberEnd: 749
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          123
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - be32_prefix_mask
        - ovs_scan_len
        - xasprintf
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:733,9'
          Dst:             ovs_scan_len
        - Src:             'lib/packets.c:736,16'
          Dst:             ovs_scan_len
        - Src:             'lib/packets.c:739,20'
          Dst:             xasprintf
        - Src:             'lib/packets.c:742,17'
          Dst:             be32_prefix_mask
        - Src:             'lib/packets.c:743,16'
          Dst:             ovs_scan_len
        - Src:             'lib/packets.c:746,16'
          Dst:             xasprintf
    - functionName:    ip_is_cidr
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 664
      functionLinenumberEnd: 666
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohl
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:665,19'
          Dst:             ntohl
    - functionName:    ip_count_cidr_bits
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 677
      functionLinenumberEnd: 678
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ctz32
        - ntohl
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:678,23'
          Dst:             ntohl
        - Src:             'lib/packets.c:678,17'
          Dst:             ctz32
    - functionName:    ctz32
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 284
      functionLinenumberEnd: 285
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - raw_ctz
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.h:285,16'
          Dst:             raw_ctz
    - functionName:    be32_prefix_mask
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 414
      functionLinenumberEnd: 415
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.h:415,12'
          Dst:             htonl
    - functionName:    ip_parse_masked
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 759
      functionLinenumberEnd: 767
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          57
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ip_parse_masked_len
        - xasprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:762,19'
          Dst:             ip_parse_masked_len
        - Src:             'lib/packets.c:764,16'
          Dst:             xasprintf
    - functionName:    ip_parse_port
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 710
      functionLinenumberEnd: 718
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          62
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ovs_scan
        - xasprintf
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:712,9'
          Dst:             ovs_scan
        - Src:             'lib/packets.c:717,12'
          Dst:             xasprintf
    - functionName:    ip_parse
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 698
      functionLinenumberEnd: 699
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - inet_pton
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:699,12'
          Dst:             inet_pton
    - functionName:    ip_format_masked
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 683
      functionLinenumberEnd: 692
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          73
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ds_put_format
        - ip_count_cidr_bits
        - ip_is_cidr
        - ntohl
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:684,30'
          Dst:             ntohl
        - Src:             'lib/packets.c:684,30'
          Dst:             ntohl
        - Src:             'lib/packets.c:684,30'
          Dst:             ntohl
        - Src:             'lib/packets.c:684,30'
          Dst:             ntohl
        - Src:             'lib/packets.c:684,5'
          Dst:             ds_put_format
        - Src:             'lib/packets.c:686,13'
          Dst:             ip_is_cidr
        - Src:             'lib/packets.c:687,37'
          Dst:             ip_count_cidr_bits
        - Src:             'lib/packets.c:687,13'
          Dst:             ds_put_format
        - Src:             'lib/packets.c:689,41'
          Dst:             ntohl
        - Src:             'lib/packets.c:689,41'
          Dst:             ntohl
        - Src:             'lib/packets.c:689,41'
          Dst:             ntohl
        - Src:             'lib/packets.c:689,41'
          Dst:             ntohl
        - Src:             'lib/packets.c:689,13'
          Dst:             ds_put_format
    - functionName:    in6_is_lla
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 649
      functionLinenumberEnd: 651
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:651,34'
          Dst:             htonl
    - functionName:    in6_generate_lla
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 635
      functionLinenumberEnd: 644
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          70
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htons
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:639,22'
          Dst:             htons
        - Src:             'lib/packets.c:640,22'
          Dst:             htons
        - Src:             'lib/packets.c:641,22'
          Dst:             htons
        - Src:             'lib/packets.c:642,22'
          Dst:             htons
    - functionName:    in6_generate_eui64
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 616
      functionLinenumberEnd: 629
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          92
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htons
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:625,22'
          Dst:             htons
        - Src:             'lib/packets.c:626,22'
          Dst:             htons
        - Src:             'lib/packets.c:627,22'
          Dst:             htons
    - functionName:    eth_mask_is_exact
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 255
      functionLinenumberEnd: 256
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htons
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:256,51'
          Dst:             htons
    - functionName:    eth_format_masked
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 590
      functionLinenumberEnd: 595
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          102
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - ds_put_format
        - eth_mask_is_exact
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:591,5'
          Dst:             ds_put_format
        - Src:             'lib/packets.c:592,18'
          Dst:             eth_mask_is_exact
        - Src:             'lib/packets.c:593,9'
          Dst:             ds_put_format
    - functionName:    dp_packet_delete
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 271
      functionLinenumberEnd: 290
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          54
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - dp_packet_uninit
        - free_afxdp_buf
        - free_dpdk_buf
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:274,13'
          Dst:             free_dpdk_buf
        - Src:             'lib/dp-packet.h:279,13'
          Dst:             free_afxdp_buf
        - Src:             'lib/dp-packet.h:283,9'
          Dst:             dp_packet_uninit
    - functionName:    eth_from_hex
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 566
      functionLinenumberEnd: 585
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          62
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - dp_packet_delete
        - dp_packet_new_with_headroom
        - dp_packet_put_hex
        - dp_packet_size
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:570,53'
          Dst:             strlen
        - Src:             'lib/packets.c:570,25'
          Dst:             dp_packet_new_with_headroom
        - Src:             'lib/packets.c:572,9'
          Dst:             dp_packet_put_hex
        - Src:             'lib/packets.c:573,9'
          Dst:             dp_packet_delete
        - Src:             'lib/packets.c:578,9'
          Dst:             dp_packet_size
        - Src:             'lib/packets.c:579,9'
          Dst:             dp_packet_delete
    - functionName:    dp_packet_reset_packet
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1426
      functionLinenumberEnd: 1430
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_data
        - dp_packet_reset_offsets
        - dp_packet_set_data
        - dp_packet_set_size
        - dp_packet_size
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:1427,27'
          Dst:             dp_packet_size
        - Src:             'lib/dp-packet.h:1427,5'
          Dst:             dp_packet_set_size
        - Src:             'lib/dp-packet.h:1428,46'
          Dst:             dp_packet_data
        - Src:             'lib/dp-packet.h:1428,5'
          Dst:             dp_packet_set_data
        - Src:             'lib/dp-packet.h:1429,5'
          Dst:             dp_packet_reset_offsets
    - functionName:    pop_nsh
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 527
      functionLinenumberEnd: 557
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          87
      EdgeCount:       16
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_l3
        - dp_packet_reset_packet
        - htonl
        - nsh_hdr_len
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/packets.c:533,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/packets.c:528,46'
          Dst:             dp_packet_l3
        - Src:             'lib/packets.c:532,32'
          Dst:             htonl
        - Src:             'lib/packets.c:551,18'
          Dst:             nsh_hdr_len
        - Src:             'lib/packets.c:552,9'
          Dst:             dp_packet_reset_packet
        - Src:             'lib/packets.c:553,31'
          Dst:             htonl
    - functionName:    nsh_hdr_len
      functionSourceFile: '/src/openvswitch/./include/openvswitch/nsh.h'
      linkageType:     InternalLinkage
      functionLinenumber: 273
      functionLinenumberEnd: 275
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohs
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/nsh.h:274,14'
          Dst:             ntohs
    - functionName:    push_nsh
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 495
      functionLinenumberEnd: 523
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          76
      EdgeCount:       16
      CyclomaticComplexity: 9
      functionsReached:
        - abort
        - dp_packet_reset_offsets
        - dp_packet_resize_l2
        - htonl
        - nsh_hdr_len
        - ntohl
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/packets.c:500,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/packets.c:497,21'
          Dst:             nsh_hdr_len
        - Src:             'lib/packets.c:500,13'
          Dst:             ntohl
        - Src:             'lib/packets.c:514,13'
          Dst:             abort
        - Src:             'lib/packets.c:517,30'
          Dst:             dp_packet_resize_l2
        - Src:             'lib/packets.c:520,27'
          Dst:             htonl
        - Src:             'lib/packets.c:521,5'
          Dst:             dp_packet_reset_offsets
    - functionName:    dp_packet_set_l2_5
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 453
      functionLinenumberEnd: 457
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:455,46'
          Dst:             dp_packet_data
    - functionName:    pop_mpls
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 462
      functionLinenumberEnd: 491
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          101
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - dp_packet_data
        - dp_packet_l2_5
        - dp_packet_reset_offload
        - dp_packet_resize_l2_5
        - dp_packet_set_l2_5
        - get_16aligned_be32
        - htonl
        - htons
        - is_mpls
        - ntohs
        - set_ethertype
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:463,9'
          Dst:             is_mpls
        - Src:             'lib/packets.c:464,31'
          Dst:             dp_packet_l2_5
        - Src:             'lib/packets.c:467,9'
          Dst:             set_ethertype
        - Src:             'lib/packets.c:468,13'
          Dst:             get_16aligned_be32
        - Src:             'lib/packets.c:468,49'
          Dst:             htonl
        - Src:             'lib/packets.c:469,13'
          Dst:             dp_packet_set_l2_5
        - Src:             'lib/packets.c:472,24'
          Dst:             dp_packet_data
        - Src:             'lib/packets.c:472,60'
          Dst:             dp_packet_data
        - Src:             'lib/packets.c:473,9'
          Dst:             dp_packet_resize_l2_5
        - Src:             'lib/packets.c:477,9'
          Dst:             dp_packet_reset_offload
        - Src:             'lib/packets.c:481,28'
          Dst:             htons
        - Src:             'lib/packets.c:484,39'
          Dst:             htonl
        - Src:             'lib/packets.c:486,39'
          Dst:             ntohs
        - Src:             'lib/packets.c:486,39'
          Dst:             htonl
    - functionName:    is_mpls
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 330
      functionLinenumberEnd: 331
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_l2_5
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 445
      functionLinenumberEnd: 447
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_data
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:447,23'
          Dst:             dp_packet_data
    - functionName:    set_ethertype
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 310
      functionLinenumberEnd: 327
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          65
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - dp_packet_eth
        - dp_packet_l2_5
        - dp_packet_l3
        - eth_type_vlan
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:311,29'
          Dst:             dp_packet_eth
        - Src:             'lib/packets.c:317,9'
          Dst:             eth_type_vlan
        - Src:             'lib/packets.c:319,22'
          Dst:             dp_packet_l2_5
        - Src:             'lib/packets.c:321,13'
          Dst:             dp_packet_l3
    - functionName:    eth_type_vlan
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 429
      functionLinenumberEnd: 431
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htons
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:430,24'
          Dst:             htons
        - Src:             'lib/packets.h:431,21'
          Dst:             htons
    - functionName:    add_mpls
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 425
      functionLinenumberEnd: 454
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - short
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          97
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - dp_packet_resize_l2
        - dp_packet_resize_l2_5
        - eth_type_mpls
        - htonl
        - is_mpls
        - ntohs
        - pkt_metadata_init_conn
        - put_16aligned_be32
        - set_ethertype
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:426,10'
          Dst:             eth_type_mpls
        - Src:             'lib/packets.c:431,35'
          Dst:             dp_packet_resize_l2
        - Src:             'lib/packets.c:433,9'
          Dst:             put_16aligned_be32
        - Src:             'lib/packets.c:435,31'
          Dst:             ntohs
        - Src:             'lib/packets.c:435,31'
          Dst:             htonl
        - Src:             'lib/packets.c:441,14'
          Dst:             is_mpls
        - Src:             'lib/packets.c:445,9'
          Dst:             set_ethertype
        - Src:             'lib/packets.c:449,18'
          Dst:             dp_packet_resize_l2_5
        - Src:             'lib/packets.c:453,5'
          Dst:             pkt_metadata_init_conn
    - functionName:    eth_type_mpls
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 423
      functionLinenumberEnd: 425
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htons
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:424,24'
          Dst:             htons
        - Src:             'lib/packets.h:425,21'
          Dst:             htons
    - functionName:    push_mpls
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 398
      functionLinenumberEnd: 420
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - short
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          67
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - dp_packet_resize_l2_5
        - eth_type_mpls
        - is_mpls
        - pkt_metadata_init_conn
        - set_ethertype
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:402,10'
          Dst:             eth_type_mpls
        - Src:             'lib/packets.c:406,10'
          Dst:             is_mpls
        - Src:             'lib/packets.c:411,5'
          Dst:             set_ethertype
        - Src:             'lib/packets.c:415,14'
          Dst:             dp_packet_resize_l2_5
        - Src:             'lib/packets.c:419,5'
          Dst:             pkt_metadata_init_conn
    - functionName:    set_mpls_lse
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 383
      functionLinenumberEnd: 391
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_l2_5
        - is_mpls
        - put_16aligned_be32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:385,9'
          Dst:             is_mpls
        - Src:             'lib/packets.c:386,31'
          Dst:             dp_packet_l2_5
        - Src:             'lib/packets.c:389,9'
          Dst:             put_16aligned_be32
    - functionName:    set_mpls_lse_values
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 371
      functionLinenumberEnd: 377
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - char
        - char
        - char
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
        - set_mpls_lse_bos
        - set_mpls_lse_label
        - set_mpls_lse_tc
        - set_mpls_lse_ttl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:372,20'
          Dst:             htonl
        - Src:             'lib/packets.c:373,5'
          Dst:             set_mpls_lse_ttl
        - Src:             'lib/packets.c:374,5'
          Dst:             set_mpls_lse_tc
        - Src:             'lib/packets.c:375,5'
          Dst:             set_mpls_lse_bos
        - Src:             'lib/packets.c:376,5'
          Dst:             set_mpls_lse_label
    - functionName:    set_mpls_lse_ttl
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 337
      functionLinenumberEnd: 340
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:338,14'
          Dst:             htonl
        - Src:             'lib/packets.c:339,13'
          Dst:             htonl
    - functionName:    set_mpls_lse_tc
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 345
      functionLinenumberEnd: 348
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:346,14'
          Dst:             htonl
        - Src:             'lib/packets.c:347,13'
          Dst:             htonl
    - functionName:    set_mpls_lse_bos
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 361
      functionLinenumberEnd: 364
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:362,14'
          Dst:             htonl
        - Src:             'lib/packets.c:363,13'
          Dst:             htonl
    - functionName:    set_mpls_lse_label
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 353
      functionLinenumberEnd: 356
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
        - ntohl
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:354,14'
          Dst:             htonl
        - Src:             'lib/packets.c:355,20'
          Dst:             ntohl
        - Src:             'lib/packets.c:355,13'
          Dst:             htonl
    - functionName:    pop_eth
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 286
      functionLinenumberEnd: 305
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          70
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_is_eth
        - dp_packet_l2_5
        - dp_packet_l3
        - dp_packet_resize_l2
        - htonl
        - ntohs
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:287,18'
          Dst:             dp_packet_l2_5
        - Src:             'lib/packets.c:288,16'
          Dst:             dp_packet_l3
        - Src:             'lib/packets.c:292,16'
          Dst:             dp_packet_is_eth
        - Src:             'lib/packets.c:292,5'
          Dst:             ovs_ignore
        - Src:             'lib/packets.c:293,5'
          Dst:             ovs_ignore
        - Src:             'lib/packets.c:303,5'
          Dst:             dp_packet_resize_l2
        - Src:             'lib/packets.c:304,27'
          Dst:             ntohs
        - Src:             'lib/packets.c:304,27'
          Dst:             htonl
    - functionName:    pt_ns_type_be
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1577
      functionLinenumberEnd: 1578
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - be32_to_be16
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:1578,12'
          Dst:             be32_to_be16
    - functionName:    push_eth
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 270
      functionLinenumberEnd: 279
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          44
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_is_eth
        - dp_packet_resize_l2
        - htonl
        - ovs_ignore
        - pt_ns_type_be
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:273,17'
          Dst:             dp_packet_is_eth
        - Src:             'lib/packets.c:273,5'
          Dst:             ovs_ignore
        - Src:             'lib/packets.c:274,10'
          Dst:             dp_packet_resize_l2
        - Src:             'lib/packets.c:277,20'
          Dst:             pt_ns_type_be
        - Src:             'lib/packets.c:278,27'
          Dst:             htonl
    - functionName:    eth_pop_vlan
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 255
      functionLinenumberEnd: 264
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          53
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - dp_packet_eth
        - dp_packet_resize_l2
        - dp_packet_size
        - eth_type_vlan
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:256,35'
          Dst:             dp_packet_eth
        - Src:             'lib/packets.c:258,16'
          Dst:             dp_packet_size
        - Src:             'lib/packets.c:259,12'
          Dst:             eth_type_vlan
        - Src:             'lib/packets.c:262,9'
          Dst:             dp_packet_resize_l2
    - functionName:    eth_push_vlan
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 239
      functionLinenumberEnd: 247
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - short
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          38
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_resize_l2
        - htons
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:243,11'
          Dst:             dp_packet_resize_l2
        - Src:             'lib/packets.c:246,27'
          Dst:             htons
    - functionName:    compose_rarp
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 205
      functionLinenumberEnd: 231
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          80
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_clear
        - dp_packet_prealloc_tailroom
        - dp_packet_put_uninit
        - dp_packet_reserve
        - dp_packet_set_l3
        - htonl
        - htons
        - put_16aligned_be32
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:209,5'
          Dst:             dp_packet_clear
        - Src:             'lib/packets.c:210,5'
          Dst:             dp_packet_prealloc_tailroom
        - Src:             'lib/packets.c:212,5'
          Dst:             dp_packet_reserve
        - Src:             'lib/packets.c:213,11'
          Dst:             dp_packet_put_uninit
        - Src:             'lib/packets.c:216,21'
          Dst:             htons
        - Src:             'lib/packets.c:218,11'
          Dst:             dp_packet_put_uninit
        - Src:             'lib/packets.c:219,19'
          Dst:             htons
        - Src:             'lib/packets.c:220,19'
          Dst:             htons
        - Src:             'lib/packets.c:223,18'
          Dst:             htons
        - Src:             'lib/packets.c:225,38'
          Dst:             htonl
        - Src:             'lib/packets.c:225,5'
          Dst:             put_16aligned_be32
        - Src:             'lib/packets.c:227,38'
          Dst:             htonl
        - Src:             'lib/packets.c:227,5'
          Dst:             put_16aligned_be32
        - Src:             'lib/packets.c:229,5'
          Dst:             dp_packet_set_l3
        - Src:             'lib/packets.c:230,22'
          Dst:             htonl
    - functionName:    eth_addr_from_string
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 186
      functionLinenumberEnd: 195
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          65
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ovs_scan
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:188,9'
          Dst:             ovs_scan
    - functionName:    hmap_next_in_bucket
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 381
      functionLinenumberEnd: 382
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_first_in_bucket
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 367
      functionLinenumberEnd: 368
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_uint64
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 165
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_uint64_basis
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:165,12'
          Dst:             hash_uint64_basis
    - functionName:    hmap_insert_at
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 306
      functionLinenumberEnd: 311
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_expand_at
        - hmap_insert_fast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:307,5'
          Dst:             hmap_insert_fast
        - Src:             './include/openvswitch/hmap.h:309,9'
          Dst:             hmap_expand_at
    - functionName:    ovsthread_once_start
      functionSourceFile: '/src/openvswitch/./include/openvswitch/thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsthread_once_start__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/thread.h:161,12'
          Dst:             ovsthread_once_start__
    - functionName:    eth_addr_is_reserved
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 110
      functionLinenumberEnd: 179
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         20
      ICount:          110
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - eth_addr_to_uint64
        - hash_uint64
        - hmap_first_in_bucket
        - hmap_init
        - hmap_insert_at
        - hmap_next_in_bucket
        - ovsthread_once_done
        - ovsthread_once_start
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:164,9'
          Dst:             ovsthread_once_start
        - Src:             'lib/packets.c:165,9'
          Dst:             hmap_init
        - Src:             'lib/packets.c:167,13'
          Dst:             hash_uint64
        - Src:             'lib/packets.c:167,13'
          Dst:             hmap_insert_at
        - Src:             'lib/packets.c:169,9'
          Dst:             ovsthread_once_done
        - Src:             'lib/packets.c:172,12'
          Dst:             eth_addr_to_uint64
        - Src:             'lib/packets.c:173,5'
          Dst:             hash_uint64
        - Src:             'lib/packets.c:173,5'
          Dst:             hmap_first_in_bucket
        - Src:             'lib/packets.c:173,5'
          Dst:             hmap_next_in_bucket
    - functionName:    eth_addr_to_uint64
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 85
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohs
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:83,25'
          Dst:             ntohs
        - Src:             'lib/packets.c:84,27'
          Dst:             ntohs
        - Src:             'lib/packets.c:85,15'
          Dst:             ntohs
    - functionName:    eth_addr_mark_random
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 98
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          22
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    eth_addr_from_uint64
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 90
      functionLinenumberEnd: 94
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          40
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htons
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:91,19'
          Dst:             htons
        - Src:             'lib/packets.c:92,19'
          Dst:             htons
        - Src:             'lib/packets.c:93,19'
          Dst:             htons
    - functionName:    is_all_hex
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 59
      functionLinenumberEnd: 60
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - strspn
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:60,14'
          Dst:             strspn
    - functionName:    dpid_from_string
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 70
      functionLinenumberEnd: 77
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         22
      ICount:          106
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - is_all_hex
        - strlen
        - strtoull
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:71,18'
          Dst:             strlen
        - Src:             'lib/packets.c:72,29'
          Dst:             is_all_hex
        - Src:             'lib/packets.c:74,22'
          Dst:             is_all_hex
        - Src:             'lib/packets.c:75,17'
          Dst:             strtoull
    - functionName:    strtoull
      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:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    flow_tnl_src
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52
      functionLinenumberEnd: 53
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - in6_addr_mapped_ipv4
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:53,26'
          Dst:             in6_addr_mapped_ipv4
    - functionName:    in6_addr_mapped_ipv4
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1215
      functionLinenumberEnd: 1220
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          20
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    flow_tnl_dst
      functionSourceFile: '/src/openvswitch/lib/packets.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 47
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - in6_addr_mapped_ipv4
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.c:47,26'
          Dst:             in6_addr_mapped_ipv4
    - functionName:    init_this_module_poll_loop
      functionSourceFile: '/src/openvswitch/lib/poll-loop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/poll-loop.c:36,1'
          Dst:             vlog_insert_module
    - functionName:    poll_create_node_init_coverage
      functionSourceFile: '/src/openvswitch/lib/poll-loop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 38
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/poll-loop.c:38,1'
          Dst:             coverage_counter_register
    - functionName:    poll_zero_timeout_init_coverage
      functionSourceFile: '/src/openvswitch/lib/poll-loop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/poll-loop.c:39,1'
          Dst:             coverage_counter_register
    - functionName:    poll_zero_timeout_count
      functionSourceFile: '/src/openvswitch/lib/poll-loop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_poll_zero_timeout_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/poll-loop.c:39,1'
          Dst:             counter_poll_zero_timeout_get
    - functionName:    counter_poll_zero_timeout_get
      functionSourceFile: '/src/openvswitch/lib/poll-loop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_poll_zero_timeout_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/poll-loop.c:39,1'
          Dst:             counter_poll_zero_timeout_get_unsafe
    - functionName:    counter_poll_zero_timeout_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/poll-loop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    poll_create_node_count
      functionSourceFile: '/src/openvswitch/lib/poll-loop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 38
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_poll_create_node_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/poll-loop.c:38,1'
          Dst:             counter_poll_create_node_get
    - functionName:    counter_poll_create_node_get
      functionSourceFile: '/src/openvswitch/lib/poll-loop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 38
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_poll_create_node_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/poll-loop.c:38,1'
          Dst:             counter_poll_create_node_get_unsafe
    - functionName:    counter_poll_create_node_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/poll-loop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 38
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    free_poll_loop
      functionSourceFile: '/src/openvswitch/lib/poll-loop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 323
      functionLinenumberEnd: 329
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - free_poll_nodes
        - hmap_destroy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/poll-loop.c:326,5'
          Dst:             free_poll_nodes
        - Src:             'lib/poll-loop.c:327,5'
          Dst:             hmap_destroy
    - functionName:    free_poll_nodes
      functionSourceFile: '/src/openvswitch/lib/poll-loop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 254
      functionLinenumberEnd: 261
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          63
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - hmap_first
        - hmap_next
        - hmap_remove
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/poll-loop.c:257,5'
          Dst:             hmap_first
        - Src:             'lib/poll-loop.c:257,5'
          Dst:             hmap_next
        - Src:             'lib/poll-loop.c:258,9'
          Dst:             hmap_remove
    - functionName:    hmap_first
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 416
      functionLinenumberEnd: 417
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next__
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:417,12'
          Dst:             hmap_next__
    - functionName:    hmap_next
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 429
      functionLinenumberEnd: 432
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_next__
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:432,15'
          Dst:             hmap_next__
    - functionName:    hmap_remove
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 317
      functionLinenumberEnd: 324
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          48
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_next__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 401
      functionLinenumberEnd: 410
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          51
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsthread_once_start
      functionSourceFile: '/src/openvswitch/./include/openvswitch/thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsthread_once_start__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/thread.h:161,12'
          Dst:             ovsthread_once_start__
    - functionName:    hash_rot
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 32
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhash_add__
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hash_rot
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:71,12'
          Dst:             hash_rot
    - functionName:    mhash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_rot
        - mhash_add__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:78,12'
          Dst:             mhash_add__
        - Src:             'lib/hash.h:79,12'
          Dst:             hash_rot
    - functionName:    mhash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 108
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_add
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:109,12'
          Dst:             mhash_add
    - functionName:    hash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:119,12'
          Dst:             mhash_finish
    - functionName:    hash_2words
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 153
      functionLinenumberEnd: 154
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_add
        - hash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:154,33'
          Dst:             hash_add
        - Src:             'lib/hash.h:154,24'
          Dst:             hash_add
        - Src:             'lib/hash.h:154,12'
          Dst:             hash_finish
    - functionName:    hmap_insert_fast
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 289
      functionLinenumberEnd: 295
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          38
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_next_with_hash__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 348
      functionLinenumberEnd: 352
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          40
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_next_with_hash
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 395
      functionLinenumberEnd: 396
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next_with_hash__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:396,12'
          Dst:             hmap_next_with_hash__
    - functionName:    hmap_first_with_hash
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 360
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next_with_hash__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:360,12'
          Dst:             hmap_next_with_hash__
    - functionName:    hash_int
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 408
      functionLinenumberEnd: 409
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_2words
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:409,12'
          Dst:             hash_2words
    - functionName:    hmap_insert_at
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 306
      functionLinenumberEnd: 311
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_expand_at
        - hmap_insert_fast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:307,5'
          Dst:             hmap_insert_fast
        - Src:             './include/openvswitch/hmap.h:309,9'
          Dst:             hmap_expand_at
    - functionName:    find_poll_node
      functionSourceFile: '/src/openvswitch/lib/poll-loop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 62
      functionLinenumberEnd: 72
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          73
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hash_int
        - hmap_first_with_hash
        - hmap_next_with_hash
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/poll-loop.c:65,5'
          Dst:             hash_int
        - Src:             'lib/poll-loop.c:65,5'
          Dst:             hmap_first_with_hash
        - Src:             'lib/poll-loop.c:65,5'
          Dst:             hmap_next_with_hash
    - functionName:    poll_create_node_add
      functionSourceFile: '/src/openvswitch/lib/poll-loop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 38
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_poll_create_node_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/poll-loop.c:38,1'
          Dst:             counter_poll_create_node_get
    - functionName:    log_wakeup
      functionSourceFile: '/src/openvswitch/lib/poll-loop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 201
      functionLinenumberEnd: 250
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         44
      ICount:          219
      EdgeCount:       57
      CyclomaticComplexity: 15
      functionsReached:
        - describe_fd
        - ds_cstr
        - ds_destroy
        - ds_init
        - ds_put_cstr
        - ds_put_format
        - get_cpu_usage
        - thread_is_pmd
        - vlog
        - vlog_is_enabled
        - vlog_should_drop
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/poll-loop.c:207,17'
          Dst:             get_cpu_usage
        - Src:             'lib/poll-loop.c:208,9'
          Dst:             vlog_is_enabled
        - Src:             'lib/poll-loop.c:211,20'
          Dst:             thread_is_pmd
        - Src:             'lib/poll-loop.c:212,20'
          Dst:             vlog_should_drop
        - Src:             'lib/poll-loop.c:218,5'
          Dst:             ds_init
        - Src:             'lib/poll-loop.c:219,5'
          Dst:             ds_put_cstr
        - Src:             'lib/poll-loop.c:221,29'
          Dst:             describe_fd
        - Src:             'lib/poll-loop.c:223,13'
          Dst:             ds_put_cstr
        - Src:             'lib/poll-loop.c:226,13'
          Dst:             ds_put_cstr
        - Src:             'lib/poll-loop.c:229,13'
          Dst:             ds_put_cstr
        - Src:             'lib/poll-loop.c:232,13'
          Dst:             ds_put_cstr
        - Src:             'lib/poll-loop.c:235,13'
          Dst:             ds_put_cstr
        - Src:             'lib/poll-loop.c:237,9'
          Dst:             ds_put_format
        - Src:             'lib/poll-loop.c:240,9'
          Dst:             ds_put_format
        - Src:             'lib/poll-loop.c:243,9'
          Dst:             ds_put_format
        - Src:             'lib/poll-loop.c:246,9'
          Dst:             ds_put_format
        - Src:             'lib/poll-loop.c:248,5'
          Dst:             ds_cstr
        - Src:             'lib/poll-loop.c:248,5'
          Dst:             vlog
        - Src:             'lib/poll-loop.c:249,5'
          Dst:             ds_destroy
    - functionName:    hmap_count
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 263
      functionLinenumberEnd: 264
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    poll_zero_timeout_add
      functionSourceFile: '/src/openvswitch/lib/poll-loop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_poll_zero_timeout_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/poll-loop.c:39,1'
          Dst:             counter_poll_zero_timeout_get
    - functionName:    poll_block
      functionSourceFile: '/src/openvswitch/lib/poll-loop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 268
      functionLinenumberEnd: 319
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         40
      ICount:          240
      EdgeCount:       51
      CyclomaticComplexity: 13
      functionsReached:
        - fatal_signal_run
        - fatal_signal_wait
        - free_poll_nodes
        - get_cpu_usage
        - hmap_count
        - hmap_first
        - hmap_next
        - log_wakeup
        - ovs_strerror
        - poll_loop
        - poll_zero_timeout_add
        - seq_woke
        - time_poll
        - timewarp_run
        - vlog_is_enabled
        - vlog_rate_limit
        - xmalloc
      functionUses:    13
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/poll-loop.c:269,30'
          Dst:             poll_loop
        - Src:             'lib/poll-loop.c:278,5'
          Dst:             fatal_signal_wait
        - Src:             'lib/poll-loop.c:281,9'
          Dst:             poll_zero_timeout_add
        - Src:             'lib/poll-loop.c:284,5'
          Dst:             timewarp_run
        - Src:             'lib/poll-loop.c:285,23'
          Dst:             hmap_count
        - Src:             'lib/poll-loop.c:285,15'
          Dst:             xmalloc
        - Src:             'lib/poll-loop.c:289,5'
          Dst:             hmap_first
        - Src:             'lib/poll-loop.c:289,5'
          Dst:             hmap_next
        - Src:             'lib/poll-loop.c:293,33'
          Dst:             hmap_count
        - Src:             'lib/poll-loop.c:293,14'
          Dst:             time_poll
        - Src:             'lib/poll-loop.c:297,9'
          Dst:             ovs_strerror
        - Src:             'lib/poll-loop.c:297,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/poll-loop.c:299,9'
          Dst:             log_wakeup
        - Src:             'lib/poll-loop.c:300,16'
          Dst:             get_cpu_usage
        - Src:             'lib/poll-loop.c:300,40'
          Dst:             vlog_is_enabled
        - Src:             'lib/poll-loop.c:302,9'
          Dst:             hmap_first
        - Src:             'lib/poll-loop.c:304,17'
          Dst:             log_wakeup
        - Src:             'lib/poll-loop.c:302,9'
          Dst:             hmap_next
        - Src:             'lib/poll-loop.c:310,5'
          Dst:             free_poll_nodes
        - Src:             'lib/poll-loop.c:316,5'
          Dst:             fatal_signal_run
        - Src:             'lib/poll-loop.c:318,5'
          Dst:             seq_woke
    - functionName:    poll_loop
      functionSourceFile: '/src/openvswitch/lib/poll-loop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 333
      functionLinenumberEnd: 350
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         9
      ICount:          50
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - free_poll_loop
        - hmap_init
        - ovsthread_once_done
        - ovsthread_once_start
        - pthread_getspecific
        - xpthread_key_create
        - xpthread_setspecific
        - xzalloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/poll-loop.c:338,9'
          Dst:             ovsthread_once_start
        - Src:             'lib/poll-loop.c:339,9'
          Dst:             xpthread_key_create
        - Src:             'lib/poll-loop.c:339,9'
          Dst:             free_poll_loop
        - Src:             'lib/poll-loop.c:340,9'
          Dst:             ovsthread_once_done
        - Src:             'lib/poll-loop.c:343,12'
          Dst:             pthread_getspecific
        - Src:             'lib/poll-loop.c:345,16'
          Dst:             xzalloc
        - Src:             'lib/poll-loop.c:347,9'
          Dst:             hmap_init
        - Src:             'lib/poll-loop.c:348,9'
          Dst:             xpthread_setspecific
    - functionName:    poll_immediate_wake_at
      functionSourceFile: '/src/openvswitch/lib/poll-loop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 185
      functionLinenumberEnd: 187
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - poll_timer_wait_at
      functionUses:    20
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/poll-loop.c:186,5'
          Dst:             poll_timer_wait_at
    - functionName:    poll_timer_wait_at
      functionSourceFile: '/src/openvswitch/lib/poll-loop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 137
      functionLinenumberEnd: 153
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          51
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - poll_timer_wait_until_at
        - time_msec
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/poll-loop.c:138,25'
          Dst:             time_msec
        - Src:             'lib/poll-loop.c:152,5'
          Dst:             poll_timer_wait_until_at
    - functionName:    poll_timer_wait_until_at
      functionSourceFile: '/src/openvswitch/lib/poll-loop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 169
      functionLinenumberEnd: 175
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - poll_loop
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/poll-loop.c:170,30'
          Dst:             poll_loop
    - functionName:    poll_create_node
      functionSourceFile: '/src/openvswitch/lib/poll-loop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 88
      functionLinenumberEnd: 105
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - int
        - short
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          71
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - find_poll_node
        - hash_int
        - hmap_insert_at
        - poll_create_node_add
        - poll_loop
        - xzalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/poll-loop.c:89,30'
          Dst:             poll_loop
        - Src:             'lib/poll-loop.c:92,5'
          Dst:             poll_create_node_add
        - Src:             'lib/poll-loop.c:95,12'
          Dst:             find_poll_node
        - Src:             'lib/poll-loop.c:99,16'
          Dst:             xzalloc
        - Src:             'lib/poll-loop.c:100,9'
          Dst:             hash_int
        - Src:             'lib/poll-loop.c:100,9'
          Dst:             hmap_insert_at
    - functionName:    poll_fd_wait_at
      functionSourceFile: '/src/openvswitch/lib/poll-loop.c'
      linkageType:     InternalLinkage
      functionLinenumber: 120
      functionLinenumberEnd: 122
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - int
        - short
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - poll_create_node
      functionUses:    15
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/poll-loop.c:121,5'
          Dst:             poll_create_node
    - functionName:    pvector_entry_cmp
      functionSourceFile: '/src/openvswitch/lib/pvector.c'
      linkageType:     InternalLinkage
      functionLinenumber: 85
      functionLinenumberEnd: 91
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          43
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pvector_impl_sort
      functionSourceFile: '/src/openvswitch/lib/pvector.c'
      linkageType:     InternalLinkage
      functionLinenumber: 96
      functionLinenumberEnd: 98
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - pvector_entry_cmp
        - qsort
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/pvector.c:97,5'
          Dst:             qsort
        - Src:             'lib/pvector.c:97,5'
          Dst:             pvector_entry_cmp
    - functionName:    pvector_publish__
      functionSourceFile: '/src/openvswitch/lib/pvector.c'
      linkageType:     InternalLinkage
      functionLinenumber: 207
      functionLinenumberEnd: 215
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          79
      EdgeCount:       13
      CyclomaticComplexity: 8
      functionsReached:
        - ovsrcu_postpone__
        - pvector_impl_sort
      functionUses:    3
      BranchProfiles:
        - Branch String:   'lib/pvector.c:214,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/pvector.c:211,5'
          Dst:             pvector_impl_sort
        - Src:             'lib/pvector.c:212,5'
          Dst:             ovsrcu_postpone__
    - functionName:    pvector_change_priority
      functionSourceFile: '/src/openvswitch/lib/pvector.c'
      linkageType:     InternalLinkage
      functionLinenumber: 176
      functionLinenumberEnd: 203
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          167
      EdgeCount:       32
      CyclomaticComplexity: 10
      functionsReached:
        - ovs_ignore
        - pvector_impl_dup
        - pvector_impl_find
        - pvector_impl_get
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/pvector.c:181,15'
          Dst:             pvector_impl_get
        - Src:             'lib/pvector.c:184,13'
          Dst:             pvector_impl_find
        - Src:             'lib/pvector.c:186,5'
          Dst:             ovs_ignore
        - Src:             'lib/pvector.c:197,26'
          Dst:             pvector_impl_dup
    - functionName:    pvector_impl_get
      functionSourceFile: '/src/openvswitch/lib/pvector.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26
      functionLinenumberEnd: 27
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          22
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pvector_impl_find
      functionSourceFile: '/src/openvswitch/lib/pvector.c'
      linkageType:     InternalLinkage
      functionLinenumber: 103
      functionLinenumberEnd: 113
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          63
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pvector_impl_dup
      functionSourceFile: '/src/openvswitch/lib/pvector.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - xmalloc
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/pvector.c:48,12'
          Dst:             xmalloc
    - functionName:    pvector_remove
      functionSourceFile: '/src/openvswitch/lib/pvector.c'
      linkageType:     InternalLinkage
      functionLinenumber: 154
      functionLinenumberEnd: 171
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          85
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ovs_ignore
        - pvector_impl_dup
        - pvector_impl_find
        - pvector_impl_get
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/pvector.c:159,33'
          Dst:             pvector_impl_get
        - Src:             'lib/pvector.c:159,16'
          Dst:             pvector_impl_dup
        - Src:             'lib/pvector.c:162,5'
          Dst:             ovs_ignore
        - Src:             'lib/pvector.c:163,13'
          Dst:             pvector_impl_find
        - Src:             'lib/pvector.c:164,5'
          Dst:             ovs_ignore
    - functionName:    pvector_insert
      functionSourceFile: '/src/openvswitch/lib/pvector.c'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 150
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          171
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - ovs_ignore
        - pvector_impl_dup
        - pvector_impl_get
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/pvector.c:119,32'
          Dst:             pvector_impl_get
        - Src:             'lib/pvector.c:122,5'
          Dst:             ovs_ignore
        - Src:             'lib/pvector.c:138,20'
          Dst:             pvector_impl_dup
        - Src:             'lib/pvector.c:141,20'
          Dst:             pvector_impl_dup
    - functionName:    pvector_destroy
      functionSourceFile: '/src/openvswitch/lib/pvector.c'
      linkageType:     InternalLinkage
      functionLinenumber: 69
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          61
      EdgeCount:       13
      CyclomaticComplexity: 8
      functionsReached:
        - ovsrcu_postpone__
        - pvector_impl_get
      functionUses:    3
      BranchProfiles:
        - Branch String:   'lib/pvector.c:73,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/pvector.c:72,5'
          Dst:             pvector_impl_get
        - Src:             'lib/pvector.c:72,5'
          Dst:             ovsrcu_postpone__
    - functionName:    pvector_impl_alloc
      functionSourceFile: '/src/openvswitch/lib/pvector.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - xmalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/pvector.c:35,12'
          Dst:             xmalloc
    - functionName:    pvector_init
      functionSourceFile: '/src/openvswitch/lib/pvector.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58
      functionLinenumberEnd: 61
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          55
      EdgeCount:       13
      CyclomaticComplexity: 8
      functionsReached:
        - pvector_impl_alloc
      functionUses:    3
      BranchProfiles:
        - Branch String:   'lib/pvector.c:59,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/pvector.c:59,5'
          Dst:             pvector_impl_alloc
    - functionName:    seed_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/random.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42
      functionLinenumberEnd: 42
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    random_uint64
      functionSourceFile: '/src/openvswitch/lib/random.c'
      linkageType:     InternalLinkage
      functionLinenumber: 99
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      size_t
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - random_init
        - random_next
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/random.c:102,5'
          Dst:             random_init
        - Src:             'lib/random.c:104,9'
          Dst:             random_next
        - Src:             'lib/random.c:105,21'
          Dst:             random_next
    - functionName:    random_init
      functionSourceFile: '/src/openvswitch/lib/random.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - get_entropy_or_die
        - hash_bytes
        - pthread_self
        - seed_get
        - xgettimeofday
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/random.c:49,23'
          Dst:             seed_get
        - Src:             'lib/random.c:55,9'
          Dst:             xgettimeofday
        - Src:             'lib/random.c:56,9'
          Dst:             get_entropy_or_die
        - Src:             'lib/random.c:57,16'
          Dst:             pthread_self
        - Src:             'lib/random.c:60,21'
          Dst:             hash_bytes
    - functionName:    random_next
      functionSourceFile: '/src/openvswitch/lib/random.c'
      linkageType:     InternalLinkage
      functionLinenumber: 111
      functionLinenumberEnd: 118
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - seed_get_unsafe
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/random.c:112,23'
          Dst:             seed_get_unsafe
    - functionName:    seed_get
      functionSourceFile: '/src/openvswitch/lib/random.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42
      functionLinenumberEnd: 42
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - seed_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/random.c:42,1'
          Dst:             seed_get_unsafe
    - functionName:    random_uint32
      functionSourceFile: '/src/openvswitch/lib/random.c'
      linkageType:     InternalLinkage
      functionLinenumber: 92
      functionLinenumberEnd: 94
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - random_init
        - random_next
      functionUses:    20
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/random.c:93,5'
          Dst:             random_init
        - Src:             'lib/random.c:94,12'
          Dst:             random_next
    - functionName:    random_bytes
      functionSourceFile: '/src/openvswitch/lib/random.c'
      linkageType:     InternalLinkage
      functionLinenumber: 73
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          58
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - random_init
        - random_next
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/random.c:76,5'
          Dst:             random_init
        - Src:             'lib/random.c:79,22'
          Dst:             random_next
        - Src:             'lib/random.c:84,22'
          Dst:             random_next
    - functionName:    random_set_seed
      functionSourceFile: '/src/openvswitch/lib/random.c'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 69
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - seed_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/random.c:67,5'
          Dst:             ovs_ignore
        - Src:             'lib/random.c:68,6'
          Dst:             seed_get
    - functionName:    seq_change_init_coverage
      functionSourceFile: '/src/openvswitch/lib/seq.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 31
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/seq.c:31,1'
          Dst:             coverage_counter_register
    - functionName:    seq_change_count
      functionSourceFile: '/src/openvswitch/lib/seq.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 31
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_seq_change_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/seq.c:31,1'
          Dst:             counter_seq_change_get
    - functionName:    counter_seq_change_get
      functionSourceFile: '/src/openvswitch/lib/seq.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 31
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_seq_change_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/seq.c:31,1'
          Dst:             counter_seq_change_get_unsafe
    - functionName:    counter_seq_change_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/seq.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 31
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_next__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 401
      functionLinenumberEnd: 410
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          51
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_next
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 429
      functionLinenumberEnd: 432
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_next__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:432,15'
          Dst:             hmap_next__
    - functionName:    hmap_first
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 416
      functionLinenumberEnd: 417
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:417,12'
          Dst:             hmap_next__
    - functionName:    ovs_list_remove
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 251
      functionLinenumberEnd: 254
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          25
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_remove
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 317
      functionLinenumberEnd: 324
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          48
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    seq_waiter_destroy
      functionSourceFile: '/src/openvswitch/lib/seq.c'
      linkageType:     InternalLinkage
      functionLinenumber: 310
      functionLinenumberEnd: 314
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_remove
        - ovs_list_remove
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/seq.c:311,5'
          Dst:             hmap_remove
        - Src:             'lib/seq.c:312,5'
          Dst:             ovs_list_remove
    - functionName:    seq_thread_exit
      functionSourceFile: '/src/openvswitch/lib/seq.c'
      linkageType:     InternalLinkage
      functionLinenumber: 284
      functionLinenumberEnd: 292
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - latch_destroy
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - seq_thread_woke
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/seq.c:287,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/seq.c:288,5'
          Dst:             seq_thread_woke
        - Src:             'lib/seq.c:289,5'
          Dst:             latch_destroy
        - Src:             'lib/seq.c:291,5'
          Dst:             ovs_mutex_unlock
    - functionName:    seq_thread_woke
      functionSourceFile: '/src/openvswitch/lib/seq.c'
      linkageType:     InternalLinkage
      functionLinenumber: 297
      functionLinenumberEnd: 305
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          69
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - latch_poll
        - ovs_ignore
        - seq_waiter_destroy
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/seq.c:301,9'
          Dst:             ovs_ignore
        - Src:             'lib/seq.c:302,9'
          Dst:             seq_waiter_destroy
        - Src:             'lib/seq.c:304,5'
          Dst:             latch_poll
    - functionName:    ovsthread_once_start
      functionSourceFile: '/src/openvswitch/./include/openvswitch/thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsthread_once_start__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/thread.h:161,12'
          Dst:             ovsthread_once_start__
    - functionName:    ovs_list_insert
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 169
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_list_init
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_insert_fast
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 289
      functionLinenumberEnd: 295
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          38
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_rot
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 32
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhash_add__
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hash_rot
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:71,12'
          Dst:             hash_rot
    - functionName:    mhash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_rot
        - mhash_add__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:78,12'
          Dst:             mhash_add__
        - Src:             'lib/hash.h:79,12'
          Dst:             hash_rot
    - functionName:    mhash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 108
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_add
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:109,12'
          Dst:             mhash_add
    - functionName:    hash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:119,12'
          Dst:             mhash_finish
    - functionName:    hash_2words
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 153
      functionLinenumberEnd: 154
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_add
        - hash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:154,33'
          Dst:             hash_add
        - Src:             'lib/hash.h:154,24'
          Dst:             hash_add
        - Src:             'lib/hash.h:154,12'
          Dst:             hash_finish
    - functionName:    ovsthread_id_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 456
      functionLinenumberEnd: 456
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsthread_id_get
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 456
      functionLinenumberEnd: 456
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsthread_id_get_unsafe
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-thread.h:456,1'
          Dst:             ovsthread_id_get_unsafe
    - functionName:    ovs_list_push_back
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 204
      functionLinenumberEnd: 206
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_list_insert
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/list.h:205,5'
          Dst:             ovs_list_insert
    - functionName:    seq_thread_get
      functionSourceFile: '/src/openvswitch/lib/seq.c'
      linkageType:     InternalLinkage
      functionLinenumber: 268
      functionLinenumberEnd: 278
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - latch_init
        - ovs_list_init
        - pthread_getspecific
        - xmalloc
        - xpthread_setspecific
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/seq.c:269,33'
          Dst:             pthread_getspecific
        - Src:             'lib/seq.c:271,18'
          Dst:             xmalloc
        - Src:             'lib/seq.c:272,9'
          Dst:             ovs_list_init
        - Src:             'lib/seq.c:273,9'
          Dst:             latch_init
        - Src:             'lib/seq.c:276,9'
          Dst:             xpthread_setspecific
    - functionName:    hmap_insert_at
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 306
      functionLinenumberEnd: 311
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_expand_at
        - hmap_insert_fast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:307,5'
          Dst:             hmap_insert_fast
        - Src:             './include/openvswitch/hmap.h:309,9'
          Dst:             hmap_expand_at
    - functionName:    hmap_next_in_bucket
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 381
      functionLinenumberEnd: 382
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_first_in_bucket
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 367
      functionLinenumberEnd: 368
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_int
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 408
      functionLinenumberEnd: 409
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_2words
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:409,12'
          Dst:             hash_2words
    - functionName:    ovsthread_id_self
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 465
      functionLinenumberEnd: 472
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsthread_id_get
        - ovsthread_id_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-thread.h:466,24'
          Dst:             ovsthread_id_get
        - Src:             'lib/ovs-thread.h:469,14'
          Dst:             ovsthread_id_init
    - functionName:    seq_woke
      functionSourceFile: '/src/openvswitch/lib/seq.c'
      linkageType:     InternalLinkage
      functionLinenumber: 240
      functionLinenumberEnd: 252
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - pthread_getspecific
        - seq_init
        - seq_thread_woke
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/seq.c:243,5'
          Dst:             seq_init
        - Src:             'lib/seq.c:245,14'
          Dst:             pthread_getspecific
        - Src:             'lib/seq.c:247,9'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/seq.c:248,9'
          Dst:             seq_thread_woke
        - Src:             'lib/seq.c:250,9'
          Dst:             ovs_mutex_unlock
    - functionName:    seq_init
      functionSourceFile: '/src/openvswitch/lib/seq.c'
      linkageType:     InternalLinkage
      functionLinenumber: 256
      functionLinenumberEnd: 263
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         6
      ICount:          23
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsthread_once_done
        - ovsthread_once_start
        - seq_thread_exit
        - xpthread_key_create
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/seq.c:259,9'
          Dst:             ovsthread_once_start
        - Src:             'lib/seq.c:260,9'
          Dst:             xpthread_key_create
        - Src:             'lib/seq.c:260,9'
          Dst:             seq_thread_exit
        - Src:             'lib/seq.c:261,9'
          Dst:             ovsthread_once_done
    - functionName:    seq_wait__
      functionSourceFile: '/src/openvswitch/lib/seq.c'
      linkageType:     InternalLinkage
      functionLinenumber: 174
      functionLinenumberEnd: 207
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          147
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - hash_int
        - hmap_first_in_bucket
        - hmap_insert_at
        - hmap_next_in_bucket
        - latch_wait_at
        - ovs_list_push_back
        - ovs_mutex_unlock
        - ovsthread_id_self
        - poll_immediate_wake_at
        - seq_thread_get
        - xmalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/seq.c:175,23'
          Dst:             ovsthread_id_self
        - Src:             'lib/seq.c:176,21'
          Dst:             hash_int
        - Src:             'lib/seq.c:179,5'
          Dst:             hmap_first_in_bucket
        - Src:             'lib/seq.c:184,17'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/seq.c:185,17'
          Dst:             poll_immediate_wake_at
        - Src:             'lib/seq.c:188,17'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/seq.c:179,5'
          Dst:             hmap_next_in_bucket
        - Src:             'lib/seq.c:194,14'
          Dst:             xmalloc
        - Src:             'lib/seq.c:196,5'
          Dst:             hmap_insert_at
        - Src:             'lib/seq.c:199,22'
          Dst:             seq_thread_get
        - Src:             'lib/seq.c:200,5'
          Dst:             ovs_list_push_back
        - Src:             'lib/seq.c:203,9'
          Dst:             latch_wait_at
        - Src:             'lib/seq.c:206,5'
          Dst:             ovs_mutex_unlock
    - functionName:    seq_wait_at
      functionSourceFile: '/src/openvswitch/lib/seq.c'
      linkageType:     InternalLinkage
      functionLinenumber: 223
      functionLinenumberEnd: 233
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - poll_immediate_wake_at
        - seq_read
        - seq_wait__
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/seq.c:226,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/seq.c:227,18'
          Dst:             seq_read
        - Src:             'lib/seq.c:228,9'
          Dst:             seq_wait__
        - Src:             'lib/seq.c:230,9'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/seq.c:231,9'
          Dst:             poll_immediate_wake_at
    - functionName:    seq_read
      functionSourceFile: '/src/openvswitch/lib/seq.c'
      linkageType:     InternalLinkage
      functionLinenumber: 157
      functionLinenumberEnd: 163
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    26
      BranchProfiles:  []
      Callsites:       []
    - functionName:    seq_change
      functionSourceFile: '/src/openvswitch/lib/seq.c'
      linkageType:     InternalLinkage
      functionLinenumber: 144
      functionLinenumberEnd: 148
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - seq_change_protected
      functionUses:    28
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/seq.c:145,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/seq.c:146,5'
          Dst:             seq_change_protected
        - Src:             'lib/seq.c:147,5'
          Dst:             ovs_mutex_unlock
    - functionName:    seq_change_protected
      functionSourceFile: '/src/openvswitch/lib/seq.c'
      linkageType:     InternalLinkage
      functionLinenumber: 130
      functionLinenumberEnd: 137
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - seq_change_add
        - seq_wake_waiters
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/seq.c:133,5'
          Dst:             seq_change_add
        - Src:             'lib/seq.c:136,5'
          Dst:             seq_wake_waiters
    - functionName:    seq_change_add
      functionSourceFile: '/src/openvswitch/lib/seq.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 31
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_seq_change_get
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/seq.c:31,1'
          Dst:             counter_seq_change_get
    - functionName:    seq_wake_waiters
      functionSourceFile: '/src/openvswitch/lib/seq.c'
      linkageType:     InternalLinkage
      functionLinenumber: 319
      functionLinenumberEnd: 326
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          63
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - hmap_first
        - hmap_next
        - latch_set
        - seq_waiter_destroy
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/seq.c:322,5'
          Dst:             hmap_first
        - Src:             'lib/seq.c:322,5'
          Dst:             hmap_next
        - Src:             'lib/seq.c:323,9'
          Dst:             latch_set
        - Src:             'lib/seq.c:324,9'
          Dst:             seq_waiter_destroy
    - functionName:    seq_unlock
      functionSourceFile: '/src/openvswitch/lib/seq.c'
      linkageType:     InternalLinkage
      functionLinenumber: 121
      functionLinenumberEnd: 123
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_mutex_unlock
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/seq.c:122,5'
          Dst:             ovs_mutex_unlock
    - functionName:    seq_lock
      functionSourceFile: '/src/openvswitch/lib/seq.c'
      linkageType:     InternalLinkage
      functionLinenumber: 114
      functionLinenumberEnd: 116
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_mutex_lock_at
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/seq.c:115,5'
          Dst:             ovs_mutex_lock_at
    - functionName:    seq_try_lock
      functionSourceFile: '/src/openvswitch/lib/seq.c'
      linkageType:     InternalLinkage
      functionLinenumber: 107
      functionLinenumberEnd: 108
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_mutex_trylock_at
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/seq.c:108,12'
          Dst:             ovs_mutex_trylock_at
    - functionName:    seq_destroy
      functionSourceFile: '/src/openvswitch/lib/seq.c'
      linkageType:     InternalLinkage
      functionLinenumber: 97
      functionLinenumberEnd: 103
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_destroy
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - seq_wake_waiters
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/seq.c:98,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/seq.c:99,5'
          Dst:             seq_wake_waiters
        - Src:             'lib/seq.c:100,5'
          Dst:             hmap_destroy
        - Src:             'lib/seq.c:102,5'
          Dst:             ovs_mutex_unlock
    - functionName:    seq_create
      functionSourceFile: '/src/openvswitch/lib/seq.c'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_init
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - seq_change_add
        - seq_init
        - xmalloc
      functionUses:    12
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/seq.c:78,5'
          Dst:             seq_init
        - Src:             'lib/seq.c:80,11'
          Dst:             xmalloc
        - Src:             'lib/seq.c:82,5'
          Dst:             seq_change_add
        - Src:             'lib/seq.c:84,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/seq.c:87,5'
          Dst:             hmap_init
        - Src:             'lib/seq.c:88,5'
          Dst:             ovs_mutex_unlock
    - functionName:    hmap_next_with_hash__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 348
      functionLinenumberEnd: 352
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          40
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_next_with_hash
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 395
      functionLinenumberEnd: 396
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next_with_hash__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:396,12'
          Dst:             hmap_next_with_hash__
    - functionName:    hmap_first_with_hash
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 360
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next_with_hash__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:360,12'
          Dst:             hmap_next_with_hash__
    - functionName:    hash_string
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 403
      functionLinenumberEnd: 404
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_bytes
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:404,26'
          Dst:             strlen
        - Src:             'lib/hash.h:404,12'
          Dst:             hash_bytes
    - functionName:    hmap_insert_fast
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 289
      functionLinenumberEnd: 295
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          38
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_insert_at
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 306
      functionLinenumberEnd: 311
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_expand_at
        - hmap_insert_fast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:307,5'
          Dst:             hmap_insert_fast
        - Src:             './include/openvswitch/hmap.h:309,9'
          Dst:             hmap_expand_at
    - functionName:    hmap_next__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 401
      functionLinenumberEnd: 410
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          51
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    shash_random_node
      functionSourceFile: '/src/openvswitch/lib/shash.c'
      linkageType:     InternalLinkage
      functionLinenumber: 340
      functionLinenumberEnd: 341
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_random_node
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/shash.c:341,12'
          Dst:             hmap_random_node
    - functionName:    shash_equal_keys
      functionSourceFile: '/src/openvswitch/lib/shash.c'
      linkageType:     InternalLinkage
      functionLinenumber: 319
      functionLinenumberEnd: 331
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          84
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - hmap_count
        - hmap_first
        - hmap_next
        - shash_find
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/shash.c:322,9'
          Dst:             hmap_count
        - Src:             'lib/shash.c:322,32'
          Dst:             hmap_count
        - Src:             'lib/shash.c:325,5'
          Dst:             hmap_first
        - Src:             'lib/shash.c:326,14'
          Dst:             shash_find
        - Src:             'lib/shash.c:325,5'
          Dst:             hmap_next
    - functionName:    hmap_count
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 263
      functionLinenumberEnd: 264
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_first
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 416
      functionLinenumberEnd: 417
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next__
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:417,12'
          Dst:             hmap_next__
    - functionName:    shash_find
      functionSourceFile: '/src/openvswitch/lib/shash.c'
      linkageType:     InternalLinkage
      functionLinenumber: 236
      functionLinenumberEnd: 237
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_name
        - shash_find__
        - strlen
      functionUses:    13
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/shash.c:237,35'
          Dst:             strlen
        - Src:             'lib/shash.c:237,49'
          Dst:             hash_name
        - Src:             'lib/shash.c:237,12'
          Dst:             shash_find__
    - functionName:    hmap_next
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 429
      functionLinenumberEnd: 432
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_next__
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:432,15'
          Dst:             hmap_next__
    - functionName:    hash_name
      functionSourceFile: '/src/openvswitch/lib/shash.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28
      functionLinenumberEnd: 29
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_string
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/shash.c:29,12'
          Dst:             hash_string
    - functionName:    shash_find__
      functionSourceFile: '/src/openvswitch/lib/shash.c'
      linkageType:     InternalLinkage
      functionLinenumber: 222
      functionLinenumberEnd: 231
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          93
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - hmap_first_with_hash
        - hmap_next_with_hash
        - strncmp
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/shash.c:225,5'
          Dst:             hmap_first_with_hash
        - Src:             'lib/shash.c:226,14'
          Dst:             strncmp
        - Src:             'lib/shash.c:225,5'
          Dst:             hmap_next_with_hash
    - functionName:    compare_nodes_by_name
      functionSourceFile: '/src/openvswitch/lib/shash.c'
      linkageType:     InternalLinkage
      functionLinenumber: 285
      functionLinenumberEnd: 288
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/shash.c:288,12'
          Dst:             strcmp
    - functionName:    shash_sort
      functionSourceFile: '/src/openvswitch/lib/shash.c'
      linkageType:     InternalLinkage
      functionLinenumber: 293
      functionLinenumberEnd: 313
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          91
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - compare_nodes_by_name
        - hmap_first
        - hmap_next
        - ovs_ignore
        - qsort
        - shash_count
        - shash_is_empty
        - xmalloc
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/shash.c:294,9'
          Dst:             shash_is_empty
        - Src:             'lib/shash.c:301,13'
          Dst:             shash_count
        - Src:             'lib/shash.c:302,17'
          Dst:             xmalloc
        - Src:             'lib/shash.c:304,9'
          Dst:             hmap_first
        - Src:             'lib/shash.c:304,9'
          Dst:             hmap_next
        - Src:             'lib/shash.c:307,9'
          Dst:             ovs_ignore
        - Src:             'lib/shash.c:309,9'
          Dst:             qsort
        - Src:             'lib/shash.c:309,9'
          Dst:             compare_nodes_by_name
    - functionName:    shash_is_empty
      functionSourceFile: '/src/openvswitch/lib/shash.c'
      linkageType:     InternalLinkage
      functionLinenumber: 97
      functionLinenumberEnd: 98
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_is_empty
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/shash.c:98,12'
          Dst:             hmap_is_empty
    - functionName:    shash_count
      functionSourceFile: '/src/openvswitch/lib/shash.c'
      linkageType:     InternalLinkage
      functionLinenumber: 103
      functionLinenumberEnd: 105
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_count
        - ovs_ignore
      functionUses:    18
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/shash.c:104,5'
          Dst:             ovs_ignore
        - Src:             'lib/shash.c:105,12'
          Dst:             hmap_count
    - functionName:    hmap_is_empty
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 281
      functionLinenumberEnd: 282
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    shash_first
      functionSourceFile: '/src/openvswitch/lib/shash.c'
      linkageType:     InternalLinkage
      functionLinenumber: 278
      functionLinenumberEnd: 280
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_first
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/shash.c:279,30'
          Dst:             hmap_first
    - functionName:    shash_find_and_delete_assert
      functionSourceFile: '/src/openvswitch/lib/shash.c'
      linkageType:     InternalLinkage
      functionLinenumber: 270
      functionLinenumberEnd: 273
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - shash_find_and_delete
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/shash.c:271,18'
          Dst:             shash_find_and_delete
        - Src:             'lib/shash.c:272,5'
          Dst:             ovs_ignore
    - functionName:    shash_find_and_delete
      functionSourceFile: '/src/openvswitch/lib/shash.c'
      linkageType:     InternalLinkage
      functionLinenumber: 257
      functionLinenumberEnd: 266
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - shash_delete
        - shash_find
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/shash.c:258,31'
          Dst:             shash_find
        - Src:             'lib/shash.c:261,9'
          Dst:             shash_delete
    - functionName:    shash_delete
      functionSourceFile: '/src/openvswitch/lib/shash.c'
      linkageType:     InternalLinkage
      functionLinenumber: 198
      functionLinenumberEnd: 200
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - shash_steal
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/shash.c:199,10'
          Dst:             shash_steal
    - functionName:    shash_steal
      functionSourceFile: '/src/openvswitch/lib/shash.c'
      linkageType:     InternalLinkage
      functionLinenumber: 207
      functionLinenumberEnd: 217
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_remove
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/shash.c:214,5'
          Dst:             hmap_remove
    - functionName:    hmap_remove
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 317
      functionLinenumberEnd: 324
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          48
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    shash_find_data
      functionSourceFile: '/src/openvswitch/lib/shash.c'
      linkageType:     InternalLinkage
      functionLinenumber: 250
      functionLinenumberEnd: 252
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - shash_find
      functionUses:    37
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/shash.c:251,31'
          Dst:             shash_find
    - functionName:    shash_find_len
      functionSourceFile: '/src/openvswitch/lib/shash.c'
      linkageType:     InternalLinkage
      functionLinenumber: 244
      functionLinenumberEnd: 245
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_bytes
        - shash_find__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/shash.c:245,40'
          Dst:             hash_bytes
        - Src:             'lib/shash.c:245,12'
          Dst:             shash_find__
    - functionName:    shash_replace_nocopy
      functionSourceFile: '/src/openvswitch/lib/shash.c'
      linkageType:     InternalLinkage
      functionLinenumber: 178
      functionLinenumberEnd: 192
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          61
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hash_name
        - shash_add_nocopy__
        - shash_find__
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/shash.c:179,19'
          Dst:             hash_name
        - Src:             'lib/shash.c:182,35'
          Dst:             strlen
        - Src:             'lib/shash.c:182,12'
          Dst:             shash_find__
        - Src:             'lib/shash.c:184,9'
          Dst:             shash_add_nocopy__
    - functionName:    shash_add_nocopy__
      functionSourceFile: '/src/openvswitch/lib/shash.c'
      linkageType:     InternalLinkage
      functionLinenumber: 110
      functionLinenumberEnd: 115
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_insert_at
        - xmalloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/shash.c:111,31'
          Dst:             xmalloc
        - Src:             'lib/shash.c:114,5'
          Dst:             hmap_insert_at
    - functionName:    shash_replace
      functionSourceFile: '/src/openvswitch/lib/shash.c'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 169
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          60
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hash_name
        - shash_add_nocopy__
        - shash_find__
        - strlen
        - xstrdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/shash.c:157,19'
          Dst:             hash_name
        - Src:             'lib/shash.c:160,35'
          Dst:             strlen
        - Src:             'lib/shash.c:160,12'
          Dst:             shash_find__
        - Src:             'lib/shash.c:162,32'
          Dst:             xstrdup
        - Src:             'lib/shash.c:162,9'
          Dst:             shash_add_nocopy__
    - functionName:    shash_add_assert
      functionSourceFile: '/src/openvswitch/lib/shash.c'
      linkageType:     InternalLinkage
      functionLinenumber: 147
      functionLinenumberEnd: 149
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - shash_add_once
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/shash.c:148,16'
          Dst:             shash_add_once
        - Src:             'lib/shash.c:148,5'
          Dst:             ovs_ignore
    - functionName:    shash_add_once
      functionSourceFile: '/src/openvswitch/lib/shash.c'
      linkageType:     InternalLinkage
      functionLinenumber: 136
      functionLinenumberEnd: 143
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - shash_add
        - shash_find
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/shash.c:137,10'
          Dst:             shash_find
        - Src:             'lib/shash.c:138,9'
          Dst:             shash_add
    - functionName:    shash_add
      functionSourceFile: '/src/openvswitch/lib/shash.c'
      linkageType:     InternalLinkage
      functionLinenumber: 130
      functionLinenumberEnd: 131
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - shash_add_nocopy
        - xstrdup
      functionUses:    12
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/shash.c:131,33'
          Dst:             xstrdup
        - Src:             'lib/shash.c:131,12'
          Dst:             shash_add_nocopy
    - functionName:    shash_add_nocopy
      functionSourceFile: '/src/openvswitch/lib/shash.c'
      linkageType:     InternalLinkage
      functionLinenumber: 122
      functionLinenumberEnd: 123
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_name
        - shash_add_nocopy__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/shash.c:123,47'
          Dst:             hash_name
        - Src:             'lib/shash.c:123,12'
          Dst:             shash_add_nocopy__
    - functionName:    shash_moved
      functionSourceFile: '/src/openvswitch/lib/shash.c'
      linkageType:     InternalLinkage
      functionLinenumber: 65
      functionLinenumberEnd: 67
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_moved
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/shash.c:66,5'
          Dst:             hmap_moved
    - functionName:    shash_swap
      functionSourceFile: '/src/openvswitch/lib/shash.c'
      linkageType:     InternalLinkage
      functionLinenumber: 59
      functionLinenumberEnd: 61
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_swap
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/shash.c:60,5'
          Dst:             hmap_swap
    - functionName:    shash_clear_free_data
      functionSourceFile: '/src/openvswitch/lib/shash.c'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 93
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          71
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - hmap_first
        - hmap_next
        - hmap_remove
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/shash.c:87,5'
          Dst:             hmap_first
        - Src:             'lib/shash.c:87,5'
          Dst:             hmap_next
        - Src:             'lib/shash.c:88,9'
          Dst:             hmap_remove
    - functionName:    shash_destroy_free_data
      functionSourceFile: '/src/openvswitch/lib/shash.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_destroy
        - shash_clear_free_data
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/shash.c:52,9'
          Dst:             shash_clear_free_data
        - Src:             'lib/shash.c:53,9'
          Dst:             hmap_destroy
    - functionName:    shash_clear
      functionSourceFile: '/src/openvswitch/lib/shash.c'
      linkageType:     InternalLinkage
      functionLinenumber: 71
      functionLinenumberEnd: 79
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          67
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - hmap_first
        - hmap_next
        - hmap_remove
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/shash.c:74,5'
          Dst:             hmap_first
        - Src:             'lib/shash.c:74,5'
          Dst:             hmap_next
        - Src:             'lib/shash.c:75,9'
          Dst:             hmap_remove
    - functionName:    shash_destroy
      functionSourceFile: '/src/openvswitch/lib/shash.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_destroy
        - shash_clear
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/shash.c:42,9'
          Dst:             shash_clear
        - Src:             'lib/shash.c:43,9'
          Dst:             hmap_destroy
    - functionName:    shash_init
      functionSourceFile: '/src/openvswitch/lib/shash.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_init
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/shash.c:35,5'
          Dst:             hmap_init
    - functionName:    hmap_next_with_hash__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 348
      functionLinenumberEnd: 352
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          40
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_next_with_hash
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 395
      functionLinenumberEnd: 396
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next_with_hash__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:396,12'
          Dst:             hmap_next_with_hash__
    - functionName:    hmap_first_with_hash
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 360
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next_with_hash__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:360,12'
          Dst:             hmap_next_with_hash__
    - functionName:    hmap_insert_fast
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 289
      functionLinenumberEnd: 295
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          38
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_insert_at
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 306
      functionLinenumberEnd: 311
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_expand_at
        - hmap_insert_fast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:307,5'
          Dst:             hmap_insert_fast
        - Src:             './include/openvswitch/hmap.h:309,9'
          Dst:             hmap_expand_at
    - functionName:    hmap_next__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 401
      functionLinenumberEnd: 410
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          51
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    smap_equal
      functionSourceFile: '/src/openvswitch/lib/smap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 388
      functionLinenumberEnd: 401
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          98
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - hmap_first
        - hmap_next
        - smap_count
        - smap_get
        - strcmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/smap.c:389,9'
          Dst:             smap_count
        - Src:             'lib/smap.c:389,30'
          Dst:             smap_count
        - Src:             'lib/smap.c:394,5'
          Dst:             hmap_first
        - Src:             'lib/smap.c:395,30'
          Dst:             smap_get
        - Src:             'lib/smap.c:396,24'
          Dst:             strcmp
        - Src:             'lib/smap.c:394,5'
          Dst:             hmap_next
    - functionName:    smap_count
      functionSourceFile: '/src/openvswitch/lib/smap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 302
      functionLinenumberEnd: 304
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_count
        - ovs_ignore
      functionUses:    47
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/smap.c:303,5'
          Dst:             ovs_ignore
        - Src:             'lib/smap.c:304,12'
          Dst:             hmap_count
    - functionName:    hmap_first
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 416
      functionLinenumberEnd: 417
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next__
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:417,12'
          Dst:             hmap_next__
    - functionName:    smap_get
      functionSourceFile: '/src/openvswitch/lib/smap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 199
      functionLinenumberEnd: 200
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smap_get_def
      functionUses:    21
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/smap.c:200,12'
          Dst:             smap_get_def
    - functionName:    hmap_next
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 429
      functionLinenumberEnd: 432
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_next__
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:432,15'
          Dst:             hmap_next__
    - functionName:    smap_get_def
      functionSourceFile: '/src/openvswitch/lib/smap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 207
      functionLinenumberEnd: 209
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - smap_get_node
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/smap.c:208,30'
          Dst:             smap_get_node
    - functionName:    smap_get_node
      functionSourceFile: '/src/openvswitch/lib/smap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 215
      functionLinenumberEnd: 217
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_bytes
        - smap_find__
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/smap.c:216,22'
          Dst:             strlen
        - Src:             'lib/smap.c:217,44'
          Dst:             hash_bytes
        - Src:             'lib/smap.c:217,12'
          Dst:             smap_find__
    - functionName:    smap_find__
      functionSourceFile: '/src/openvswitch/lib/smap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 418
      functionLinenumberEnd: 428
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          93
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - hmap_first_with_hash
        - hmap_next_with_hash
        - strncmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/smap.c:421,5'
          Dst:             hmap_first_with_hash
        - Src:             'lib/smap.c:422,14'
          Dst:             strncmp
        - Src:             'lib/smap.c:421,5'
          Dst:             hmap_next_with_hash
    - functionName:    hmap_count
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 263
      functionLinenumberEnd: 264
      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:    smap_to_json
      functionSourceFile: '/src/openvswitch/lib/smap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 372
      functionLinenumberEnd: 380
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          64
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - hmap_first
        - hmap_next
        - json_object_create
        - json_object_put_string
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/smap.c:376,12'
          Dst:             json_object_create
        - Src:             'lib/smap.c:377,5'
          Dst:             hmap_first
        - Src:             'lib/smap.c:378,9'
          Dst:             json_object_put_string
        - Src:             'lib/smap.c:377,5'
          Dst:             hmap_next
    - functionName:    smap_from_json
      functionSourceFile: '/src/openvswitch/lib/smap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 356
      functionLinenumberEnd: 363
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          68
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - hmap_first
        - hmap_next
        - json_object
        - json_string
        - smap_add
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/smap.c:359,5'
          Dst:             json_object
        - Src:             'lib/smap.c:359,5'
          Dst:             hmap_first
        - Src:             'lib/smap.c:361,36'
          Dst:             json_string
        - Src:             'lib/smap.c:361,9'
          Dst:             smap_add
        - Src:             'lib/smap.c:359,5'
          Dst:             json_object
        - Src:             'lib/smap.c:359,5'
          Dst:             hmap_next
    - functionName:    smap_add
      functionSourceFile: '/src/openvswitch/lib/smap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          32
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_bytes
        - smap_add__
        - strlen
        - xmemdup0
        - xstrdup
      functionUses:    82
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/smap.c:54,22'
          Dst:             strlen
        - Src:             'lib/smap.c:55,29'
          Dst:             xmemdup0
        - Src:             'lib/smap.c:55,53'
          Dst:             xstrdup
        - Src:             'lib/smap.c:56,23'
          Dst:             hash_bytes
        - Src:             'lib/smap.c:55,12'
          Dst:             smap_add__
    - functionName:    smap_add__
      functionSourceFile: '/src/openvswitch/lib/smap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 407
      functionLinenumberEnd: 412
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_insert_at
        - xmalloc
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/smap.c:408,30'
          Dst:             xmalloc
        - Src:             'lib/smap.c:411,5'
          Dst:             hmap_insert_at
    - functionName:    compare_nodes_by_key
      functionSourceFile: '/src/openvswitch/lib/smap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 432
      functionLinenumberEnd: 435
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/smap.c:435,12'
          Dst:             strcmp
    - functionName:    smap_sort
      functionSourceFile: '/src/openvswitch/lib/smap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 326
      functionLinenumberEnd: 346
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          91
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - compare_nodes_by_key
        - hmap_first
        - hmap_next
        - ovs_ignore
        - qsort
        - smap_count
        - smap_is_empty
        - xmalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/smap.c:327,9'
          Dst:             smap_is_empty
        - Src:             'lib/smap.c:334,13'
          Dst:             smap_count
        - Src:             'lib/smap.c:335,17'
          Dst:             xmalloc
        - Src:             'lib/smap.c:337,9'
          Dst:             hmap_first
        - Src:             'lib/smap.c:337,9'
          Dst:             hmap_next
        - Src:             'lib/smap.c:340,9'
          Dst:             ovs_ignore
        - Src:             'lib/smap.c:342,9'
          Dst:             qsort
        - Src:             'lib/smap.c:342,9'
          Dst:             compare_nodes_by_key
    - functionName:    smap_is_empty
      functionSourceFile: '/src/openvswitch/lib/smap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 295
      functionLinenumberEnd: 296
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_is_empty
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/smap.c:296,12'
          Dst:             hmap_is_empty
    - functionName:    hmap_is_empty
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 281
      functionLinenumberEnd: 282
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    smap_clone
      functionSourceFile: '/src/openvswitch/lib/smap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 310
      functionLinenumberEnd: 320
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          75
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - hmap_first
        - hmap_next
        - hmap_reserve_at
        - smap_add__
        - smap_count
        - smap_init
        - xstrdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/smap.c:313,5'
          Dst:             smap_init
        - Src:             'lib/smap.c:314,5'
          Dst:             smap_count
        - Src:             'lib/smap.c:314,5'
          Dst:             hmap_reserve_at
        - Src:             'lib/smap.c:316,5'
          Dst:             hmap_first
        - Src:             'lib/smap.c:317,25'
          Dst:             xstrdup
        - Src:             'lib/smap.c:317,45'
          Dst:             xstrdup
        - Src:             'lib/smap.c:317,9'
          Dst:             smap_add__
        - Src:             'lib/smap.c:316,5'
          Dst:             hmap_next
    - functionName:    smap_init
      functionSourceFile: '/src/openvswitch/lib/smap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36
      functionLinenumberEnd: 38
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_init
      functionUses:    84
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/smap.c:37,5'
          Dst:             hmap_init
    - functionName:    smap_get_uuid
      functionSourceFile: '/src/openvswitch/lib/smap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 288
      functionLinenumberEnd: 289
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smap_get_def
        - uuid_from_string
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/smap.c:289,35'
          Dst:             smap_get_def
        - Src:             'lib/smap.c:289,12'
          Dst:             uuid_from_string
    - functionName:    smap_get_ullong
      functionSourceFile: '/src/openvswitch/lib/smap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 272
      functionLinenumberEnd: 281
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          48
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - smap_get
        - str_to_ullong
      functionUses:    25
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/smap.c:273,25'
          Dst:             smap_get
        - Src:             'lib/smap.c:276,20'
          Dst:             str_to_ullong
    - functionName:    smap_get_uint
      functionSourceFile: '/src/openvswitch/lib/smap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 255
      functionLinenumberEnd: 264
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          48
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - smap_get
        - str_to_uint
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/smap.c:256,25'
          Dst:             smap_get
        - Src:             'lib/smap.c:259,20'
          Dst:             str_to_uint
    - functionName:    smap_get_int
      functionSourceFile: '/src/openvswitch/lib/smap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 239
      functionLinenumberEnd: 248
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          48
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - smap_get
        - str_to_int
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/smap.c:240,25'
          Dst:             smap_get
        - Src:             'lib/smap.c:243,20'
          Dst:             str_to_int
    - functionName:    smap_get_bool
      functionSourceFile: '/src/openvswitch/lib/smap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 225
      functionLinenumberEnd: 232
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - smap_get_def
        - strcasecmp
      functionUses:    25
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/smap.c:226,25'
          Dst:             smap_get_def
        - Src:             'lib/smap.c:228,16'
          Dst:             strcasecmp
        - Src:             'lib/smap.c:230,17'
          Dst:             strcasecmp
    - functionName:    smap_steal
      functionSourceFile: '/src/openvswitch/lib/smap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 167
      functionLinenumberEnd: 182
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          66
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - hmap_remove
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/smap.c:180,5'
          Dst:             hmap_remove
    - functionName:    hmap_remove
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 317
      functionLinenumberEnd: 324
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          48
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    smap_remove_node
      functionSourceFile: '/src/openvswitch/lib/smap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 152
      functionLinenumberEnd: 157
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_remove
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/smap.c:153,5'
          Dst:             hmap_remove
    - functionName:    smap_remove
      functionSourceFile: '/src/openvswitch/lib/smap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 141
      functionLinenumberEnd: 147
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - smap_get_node
        - smap_remove_node
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/smap.c:142,30'
          Dst:             smap_get_node
        - Src:             'lib/smap.c:145,9'
          Dst:             smap_remove_node
    - functionName:    smap_replace_nocopy
      functionSourceFile: '/src/openvswitch/lib/smap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 123
      functionLinenumberEnd: 136
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          60
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hash_bytes
        - smap_add__
        - smap_find__
        - strlen
        - xmemdup0
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/smap.c:124,23'
          Dst:             strlen
        - Src:             'lib/smap.c:125,19'
          Dst:             hash_bytes
        - Src:             'lib/smap.c:129,12'
          Dst:             smap_find__
        - Src:             'lib/smap.c:134,26'
          Dst:             xmemdup0
        - Src:             'lib/smap.c:134,9'
          Dst:             smap_add__
    - functionName:    smap_replace
      functionSourceFile: '/src/openvswitch/lib/smap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 115
      functionLinenumberEnd: 117
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smap_replace_nocopy
        - xstrdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/smap.c:116,36'
          Dst:             xstrdup
        - Src:             'lib/smap.c:116,5'
          Dst:             smap_replace_nocopy
    - functionName:    smap_add_ipv6
      functionSourceFile: '/src/openvswitch/lib/smap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 104
      functionLinenumberEnd: 108
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ipv6_string_mapped
        - smap_add
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/smap.c:106,5'
          Dst:             ipv6_string_mapped
        - Src:             'lib/smap.c:107,5'
          Dst:             smap_add
    - functionName:    smap_add_format
      functionSourceFile: '/src/openvswitch/lib/smap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 98
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          41
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_bytes
        - smap_add__
        - strlen
        - xmemdup0
        - xvasprintf
      functionUses:    53
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/smap.c:92,13'
          Dst:             xvasprintf
        - Src:             'lib/smap.c:95,15'
          Dst:             strlen
        - Src:             'lib/smap.c:96,22'
          Dst:             xmemdup0
        - Src:             'lib/smap.c:97,16'
          Dst:             hash_bytes
        - Src:             'lib/smap.c:96,5'
          Dst:             smap_add__
    - functionName:    smap_add_once
      functionSourceFile: '/src/openvswitch/lib/smap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 73
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - smap_add
        - smap_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/smap.c:74,10'
          Dst:             smap_get
        - Src:             'lib/smap.c:75,9'
          Dst:             smap_add
    - functionName:    smap_add_nocopy
      functionSourceFile: '/src/openvswitch/lib/smap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 65
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_bytes
        - smap_add__
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/smap.c:65,57'
          Dst:             strlen
        - Src:             'lib/smap.c:65,41'
          Dst:             hash_bytes
        - Src:             'lib/smap.c:65,12'
          Dst:             smap_add__
    - functionName:    smap_clear
      functionSourceFile: '/src/openvswitch/lib/smap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 187
      functionLinenumberEnd: 193
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          59
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - hmap_first
        - hmap_next
        - smap_remove_node
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/smap.c:190,5'
          Dst:             hmap_first
        - Src:             'lib/smap.c:190,5'
          Dst:             hmap_next
        - Src:             'lib/smap.c:191,9'
          Dst:             smap_remove_node
    - functionName:    smap_destroy
      functionSourceFile: '/src/openvswitch/lib/smap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42
      functionLinenumberEnd: 47
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_destroy
        - smap_clear
      functionUses:    43
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/smap.c:44,9'
          Dst:             smap_clear
        - Src:             'lib/smap.c:45,9'
          Dst:             hmap_destroy
    - functionName:    init_this_module_socket_util
      functionSourceFile: '/src/openvswitch/lib/socket-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 53
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/socket-util.c:53,1'
          Dst:             vlog_insert_module
    - functionName:    is_safe_name
      functionSourceFile: '/src/openvswitch/lib/socket-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1089
      functionLinenumberEnd: 1099
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         20
      ICount:          109
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - __ctype_b_loc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/socket-util.c:1090,21'
          Dst:             __ctype_b_loc
        - Src:             'lib/socket-util.c:1094,14'
          Dst:             __ctype_b_loc
    - functionName:    ds_put_char
      functionSourceFile: '/src/openvswitch/./include/openvswitch/dynamic-string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_char__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/dynamic-string.h:99,9'
          Dst:             ds_put_char__
    - functionName:    parse_sockaddr_components_dns
      functionSourceFile: '/src/openvswitch/lib/socket-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 402
      functionLinenumberEnd: 413
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - short
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dns_resolve
        - parse_sockaddr_components
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/socket-util.c:405,5'
          Dst:             dns_resolve
        - Src:             'lib/socket-util.c:407,9'
          Dst:             parse_sockaddr_components
    - functionName:    parse_sockaddr_components
      functionSourceFile: '/src/openvswitch/lib/socket-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 421
      functionLinenumberEnd: 489
      functionDepth:   0
      returnType:      bool
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - short
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         73
      ICount:          352
      EdgeCount:       96
      CyclomaticComplexity: 25
      functionsReached:
        - __errno_location
        - atoi
        - htons
        - if_nametoindex
        - ip_parse
        - ipv6_parse
        - ovs_strerror
        - parse_sockaddr_components_dns
        - sa_cast
        - sin6_cast
        - sin_cast
        - str_to_int
        - strchr
        - strsep
        - strspn
        - vlog
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/socket-util.c:422,40'
          Dst:             sa_cast
        - Src:             'lib/socket-util.c:422,31'
          Dst:             sin_cast
        - Src:             'lib/socket-util.c:430,14'
          Dst:             str_to_int
        - Src:             'lib/socket-util.c:431,13'
          Dst:             vlog
        - Src:             'lib/socket-util.c:439,19'
          Dst:             strchr
        - Src:             'lib/socket-util.c:440,47'
          Dst:             sa_cast
        - Src:             'lib/socket-util.c:440,37'
          Dst:             sin6_cast
        - Src:             'lib/socket-util.c:441,22'
          Dst:             strsep
        - Src:             'lib/socket-util.c:444,27'
          Dst:             htons
        - Src:             'lib/socket-util.c:445,33'
          Dst:             ipv6_parse
        - Src:             'lib/socket-util.c:450,23'
          Dst:             strsep
        - Src:             'lib/socket-util.c:452,24'
          Dst:             strspn
        - Src:             'lib/socket-util.c:453,39'
          Dst:             atoi
        - Src:             'lib/socket-util.c:455,39'
          Dst:             if_nametoindex
        - Src:             'lib/socket-util.c:457,21'
          Dst:             __errno_location
        - Src:             'lib/socket-util.c:457,21'
          Dst:             ovs_strerror
        - Src:             'lib/socket-util.c:457,21'
          Dst:             vlog
        - Src:             'lib/socket-util.c:466,25'
          Dst:             htons
        - Src:             'lib/socket-util.c:467,24'
          Dst:             ip_parse
        - Src:             'lib/socket-util.c:476,13'
          Dst:             parse_sockaddr_components_dns
        - Src:             'lib/socket-util.c:484,9'
          Dst:             vlog
    - functionName:    sa_cast
      functionSourceFile: '/src/openvswitch/lib/socket-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1171
      functionLinenumberEnd: 1172
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sin_cast
      functionSourceFile: '/src/openvswitch/lib/socket-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1047
      functionLinenumberEnd: 1048
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sin6_cast
      functionSourceFile: '/src/openvswitch/lib/socket-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1053
      functionLinenumberEnd: 1054
      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:    strsep
      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:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    if_nametoindex
      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:    emulate_recvmmsg
      functionSourceFile: '/src/openvswitch/lib/socket-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1262
      functionLinenumberEnd: 1280
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - int
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          114
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - ovs_ignore
        - recvmsg
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/socket-util.c:1263,5'
          Dst:             ovs_ignore
        - Src:             'lib/socket-util.c:1269,26'
          Dst:             recvmsg
    - functionName:    recvmsg
      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:    wrap_recvmmsg
      functionSourceFile: '/src/openvswitch/lib/socket-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1296
      functionLinenumberEnd: 1310
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - int
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          82
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - __errno_location
        - emulate_recvmmsg
        - ovs_ignore
        - recvmmsg
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/socket-util.c:1297,5'
          Dst:             ovs_ignore
        - Src:             'lib/socket-util.c:1301,26'
          Dst:             __errno_location
        - Src:             'lib/socket-util.c:1302,22'
          Dst:             recvmmsg
        - Src:             'lib/socket-util.c:1303,28'
          Dst:             __errno_location
        - Src:             'lib/socket-util.c:1307,9'
          Dst:             __errno_location
        - Src:             'lib/socket-util.c:1309,12'
          Dst:             emulate_recvmmsg
    - functionName:    recvmmsg
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - int
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    emulate_sendmmsg
      functionSourceFile: '/src/openvswitch/lib/socket-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1221
      functionLinenumberEnd: 1230
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          84
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - sendmsg
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/socket-util.c:1223,26'
          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:    wrap_sendmmsg
      functionSourceFile: '/src/openvswitch/lib/socket-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1244
      functionLinenumberEnd: 1256
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          74
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - __errno_location
        - emulate_sendmmsg
        - sendmmsg
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/socket-util.c:1247,26'
          Dst:             __errno_location
        - Src:             'lib/socket-util.c:1248,22'
          Dst:             sendmmsg
        - Src:             'lib/socket-util.c:1249,28'
          Dst:             __errno_location
        - Src:             'lib/socket-util.c:1253,9'
          Dst:             __errno_location
        - Src:             'lib/socket-util.c:1255,12'
          Dst:             emulate_sendmmsg
    - functionName:    sendmmsg
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ss_format_address_nobracks
      functionSourceFile: '/src/openvswitch/lib/socket-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1201
      functionLinenumberEnd: 1203
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sa_cast
        - sa_format_address_nobracks
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/socket-util.c:1202,32'
          Dst:             sa_cast
        - Src:             'lib/socket-util.c:1202,5'
          Dst:             sa_format_address_nobracks
    - functionName:    sa_format_address_nobracks
      functionSourceFile: '/src/openvswitch/lib/socket-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1148
      functionLinenumberEnd: 1150
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sa_format_address__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/socket-util.c:1149,5'
          Dst:             sa_format_address__
    - functionName:    sa_format_address__
      functionSourceFile: '/src/openvswitch/lib/socket-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1105
      functionLinenumberEnd: 1134
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          151
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - ds_put_char
        - ds_put_cstr
        - ds_put_format
        - ds_reserve
        - if_indextoname
        - inet_ntop
        - is_safe_name
        - ntohl
        - ovs_ignore
        - sa_is_ip
        - sin6_cast
        - sin_cast
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/socket-util.c:1106,16'
          Dst:             sa_is_ip
        - Src:             'lib/socket-util.c:1106,5'
          Dst:             ovs_ignore
        - Src:             'lib/socket-util.c:1108,34'
          Dst:             sin_cast
        - Src:             'lib/socket-util.c:1108,34'
          Dst:             ntohl
        - Src:             'lib/socket-util.c:1108,34'
          Dst:             sin_cast
        - Src:             'lib/socket-util.c:1108,34'
          Dst:             ntohl
        - Src:             'lib/socket-util.c:1108,34'
          Dst:             sin_cast
        - Src:             'lib/socket-util.c:1108,34'
          Dst:             ntohl
        - Src:             'lib/socket-util.c:1108,34'
          Dst:             sin_cast
        - Src:             'lib/socket-util.c:1108,34'
          Dst:             ntohl
        - Src:             'lib/socket-util.c:1108,9'
          Dst:             ds_put_format
        - Src:             'lib/socket-util.c:1110,43'
          Dst:             sin6_cast
        - Src:             'lib/socket-util.c:1112,9'
          Dst:             ds_put_cstr
        - Src:             'lib/socket-util.c:1113,9'
          Dst:             ds_reserve
        - Src:             'lib/socket-util.c:1115,9'
          Dst:             inet_ntop
        - Src:             'lib/socket-util.c:1116,22'
          Dst:             strlen
        - Src:             'lib/socket-util.c:1122,26'
          Dst:             if_indextoname
        - Src:             'lib/socket-util.c:1123,13'
          Dst:             ds_put_char
        - Src:             'lib/socket-util.c:1124,25'
          Dst:             is_safe_name
        - Src:             'lib/socket-util.c:1125,17'
          Dst:             ds_put_cstr
        - Src:             'lib/socket-util.c:1127,17'
          Dst:             ds_put_format
        - Src:             'lib/socket-util.c:1132,9'
          Dst:             ds_put_cstr
    - functionName:    sa_is_ip
      functionSourceFile: '/src/openvswitch/lib/socket-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1060
      functionLinenumberEnd: 1061
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    if_indextoname
      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:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ss_format_address
      functionSourceFile: '/src/openvswitch/lib/socket-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1195
      functionLinenumberEnd: 1197
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sa_cast
        - sa_format_address
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/socket-util.c:1196,23'
          Dst:             sa_cast
        - Src:             'lib/socket-util.c:1196,5'
          Dst:             sa_format_address
    - functionName:    sa_format_address
      functionSourceFile: '/src/openvswitch/lib/socket-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1140
      functionLinenumberEnd: 1142
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sa_format_address__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/socket-util.c:1141,5'
          Dst:             sa_format_address__
    - functionName:    ss_get_address
      functionSourceFile: '/src/openvswitch/lib/socket-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1189
      functionLinenumberEnd: 1190
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sa_cast
        - sa_get_address
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/socket-util.c:1190,27'
          Dst:             sa_cast
        - Src:             'lib/socket-util.c:1190,12'
          Dst:             sa_get_address
    - functionName:    sa_get_address
      functionSourceFile: '/src/openvswitch/lib/socket-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1068
      functionLinenumberEnd: 1072
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - in6_addr_mapped_ipv4
        - ovs_ignore
        - sa_is_ip
        - sin6_cast
        - sin_cast
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/socket-util.c:1069,16'
          Dst:             sa_is_ip
        - Src:             'lib/socket-util.c:1069,5'
          Dst:             ovs_ignore
        - Src:             'lib/socket-util.c:1071,36'
          Dst:             sin_cast
        - Src:             'lib/socket-util.c:1071,15'
          Dst:             in6_addr_mapped_ipv4
        - Src:             'lib/socket-util.c:1072,15'
          Dst:             sin6_cast
    - functionName:    in6_addr_mapped_ipv4
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1215
      functionLinenumberEnd: 1220
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          20
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ss_is_ip
      functionSourceFile: '/src/openvswitch/lib/socket-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1177
      functionLinenumberEnd: 1178
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sa_cast
        - sa_is_ip
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/socket-util.c:1178,21'
          Dst:             sa_cast
        - Src:             'lib/socket-util.c:1178,12'
          Dst:             sa_is_ip
    - functionName:    sa_length
      functionSourceFile: '/src/openvswitch/lib/socket-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1154
      functionLinenumberEnd: 1165
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          37
      EdgeCount:       12
      CyclomaticComplexity: 7
      functionsReached:
        - abort
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/socket-util.c:1155,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/socket-util.c:1163,9'
          Dst:             abort
    - functionName:    sa_get_port
      functionSourceFile: '/src/openvswitch/lib/socket-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1078
      functionLinenumberEnd: 1082
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ntohs
        - ovs_ignore
        - sa_is_ip
        - sin6_cast
        - sin_cast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/socket-util.c:1079,16'
          Dst:             sa_is_ip
        - Src:             'lib/socket-util.c:1079,5'
          Dst:             ovs_ignore
        - Src:             'lib/socket-util.c:1081,20'
          Dst:             sin_cast
        - Src:             'lib/socket-util.c:1082,20'
          Dst:             sin6_cast
        - Src:             'lib/socket-util.c:1080,12'
          Dst:             ntohs
    - functionName:    put_fd_filename
      functionSourceFile: '/src/openvswitch/lib/socket-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 995
      functionLinenumberEnd: 1010
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          59
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ds_put_buffer
        - ds_put_char
        - ds_put_cstr
        - readlink
        - xasprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/socket-util.c:1000,16'
          Dst:             xasprintf
        - Src:             'lib/socket-util.c:1001,9'
          Dst:             readlink
        - Src:             'lib/socket-util.c:1003,9'
          Dst:             ds_put_char
        - Src:             'lib/socket-util.c:1004,9'
          Dst:             ds_put_buffer
        - Src:             'lib/socket-util.c:1006,13'
          Dst:             ds_put_cstr
    - functionName:    readlink
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    describe_sockaddr
      functionSourceFile: '/src/openvswitch/lib/socket-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 913
      functionLinenumberEnd: 989
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         43
      ICount:          233
      EdgeCount:       54
      CyclomaticComplexity: 13
      functionsReached:
        - ds_put_buffer
        - ds_put_cstr
        - ds_put_format
        - getsockopt_int
        - if_indextoname
        - memchr
        - ntohs
        - ss_format_address
        - ss_get_port
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/socket-util.c:944,17'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/socket-util.c:919,13'
          Dst:             ss_format_address
        - Src:             'lib/socket-util.c:920,47'
          Dst:             ss_get_port
        - Src:             'lib/socket-util.c:920,13'
          Dst:             ds_put_format
        - Src:             'lib/socket-util.c:928,20'
          Dst:             memchr
        - Src:             'lib/socket-util.c:929,13'
          Dst:             ds_put_buffer
        - Src:             'lib/socket-util.c:942,18'
          Dst:             getsockopt_int
        - Src:             'lib/socket-util.c:946,21'
          Dst:             ds_put_cstr
        - Src:             'lib/socket-util.c:950,21'
          Dst:             ds_put_cstr
        - Src:             'lib/socket-util.c:954,21'
          Dst:             ds_put_format
        - Src:             'lib/socket-util.c:958,17'
          Dst:             ds_put_cstr
        - Src:             'lib/socket-util.c:967,13'
          Dst:             ds_put_cstr
        - Src:             'lib/socket-util.c:971,21'
          Dst:             if_indextoname
        - Src:             'lib/socket-util.c:972,21'
          Dst:             ds_put_format
        - Src:             'lib/socket-util.c:974,21'
          Dst:             ds_put_format
        - Src:             'lib/socket-util.c:979,31'
          Dst:             ntohs
        - Src:             'lib/socket-util.c:978,17'
          Dst:             ds_put_format
        - Src:             'lib/socket-util.c:984,13'
          Dst:             ds_put_cstr
        - Src:             'lib/socket-util.c:986,13'
          Dst:             ds_put_format
    - functionName:    ss_get_port
      functionSourceFile: '/src/openvswitch/lib/socket-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1183
      functionLinenumberEnd: 1184
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sa_cast
        - sa_get_port
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/socket-util.c:1184,24'
          Dst:             sa_cast
        - Src:             'lib/socket-util.c:1184,12'
          Dst:             sa_get_port
    - 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:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    getsockopt_int
      functionSourceFile: '/src/openvswitch/lib/socket-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 888
      functionLinenumberEnd: 907
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - int
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          114
      EdgeCount:       27
      CyclomaticComplexity: 7
      functionsReached:
        - getsockopt
        - sock_errno
        - sock_strerror
        - vlog_rate_limit
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/socket-util.c:895,9'
          Dst:             getsockopt
        - Src:             'lib/socket-util.c:896,17'
          Dst:             sock_errno
        - Src:             'lib/socket-util.c:897,9'
          Dst:             sock_strerror
        - Src:             'lib/socket-util.c:897,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/socket-util.c:900,9'
          Dst:             vlog_rate_limit
    - 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:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sock_errno
      functionSourceFile: '/src/openvswitch/lib/socket-util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 148
      functionLinenumberEnd: 149
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __errno_location
      functionUses:    13
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/socket-util.h:149,12'
          Dst:             __errno_location
    - functionName:    sock_strerror
      functionSourceFile: '/src/openvswitch/lib/socket-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1213
      functionLinenumberEnd: 1214
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_strerror
      functionUses:    16
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/socket-util.c:1214,12'
          Dst:             ovs_strerror
    - functionName:    describe_fd
      functionSourceFile: '/src/openvswitch/lib/socket-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1016
      functionLinenumberEnd: 1040
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         27
      ICount:          131
      EdgeCount:       35
      CyclomaticComplexity: 10
      functionsReached:
        - __errno_location
        - describe_sockaddr
        - ds_init
        - ds_put_cstr
        - ds_put_format
        - ds_steal_cstr
        - fstat
        - getpeername
        - getsockname
        - isatty
        - ovs_strerror
        - put_fd_filename
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/socket-util.c:1020,5'
          Dst:             ds_init
        - Src:             'lib/socket-util.c:1021,9'
          Dst:             fstat
        - Src:             'lib/socket-util.c:1022,66'
          Dst:             __errno_location
        - Src:             'lib/socket-util.c:1022,53'
          Dst:             ovs_strerror
        - Src:             'lib/socket-util.c:1022,9'
          Dst:             ds_put_format
        - Src:             'lib/socket-util.c:1024,9'
          Dst:             describe_sockaddr
        - Src:             'lib/socket-util.c:1024,9'
          Dst:             getsockname
        - Src:             'lib/socket-util.c:1025,9'
          Dst:             ds_put_cstr
        - Src:             'lib/socket-util.c:1026,9'
          Dst:             describe_sockaddr
        - Src:             'lib/socket-util.c:1026,9'
          Dst:             getpeername
        - Src:             'lib/socket-util.c:1028,31'
          Dst:             isatty
        - Src:             'lib/socket-util.c:1028,9'
          Dst:             ds_put_cstr
        - Src:             'lib/socket-util.c:1037,9'
          Dst:             put_fd_filename
        - Src:             'lib/socket-util.c:1040,12'
          Dst:             ds_steal_cstr
    - 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:    7
      BranchProfiles:  []
      Callsites:       []
    - 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:    3
      BranchProfiles:  []
      Callsites:       []
    - 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:    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:    get_mtime
      functionSourceFile: '/src/openvswitch/lib/socket-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 865
      functionLinenumberEnd: 884
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __errno_location
        - stat
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/socket-util.c:868,10'
          Dst:             stat
        - Src:             'lib/socket-util.c:882,16'
          Dst:             __errno_location
    - 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:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fsync_parent_dir
      functionSourceFile: '/src/openvswitch/lib/socket-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 832
      functionLinenumberEnd: 856
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         25
      ICount:          120
      EdgeCount:       31
      CyclomaticComplexity: 8
      functionsReached:
        - __errno_location
        - close
        - dir_name
        - fsync
        - open
        - ovs_strerror
        - vlog
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/socket-util.c:837,11'
          Dst:             dir_name
        - Src:             'lib/socket-util.c:838,10'
          Dst:             open
        - Src:             'lib/socket-util.c:840,13'
          Dst:             fsync
        - Src:             'lib/socket-util.c:841,17'
          Dst:             __errno_location
        - Src:             'lib/socket-util.c:841,36'
          Dst:             __errno_location
        - Src:             'lib/socket-util.c:845,25'
          Dst:             __errno_location
        - Src:             'lib/socket-util.c:846,17'
          Dst:             ovs_strerror
        - Src:             'lib/socket-util.c:846,17'
          Dst:             vlog
        - Src:             'lib/socket-util.c:849,9'
          Dst:             close
        - Src:             'lib/socket-util.c:851,17'
          Dst:             __errno_location
        - Src:             'lib/socket-util.c:852,9'
          Dst:             ovs_strerror
        - Src:             'lib/socket-util.c:852,9'
          Dst:             vlog
    - 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:    8
      BranchProfiles:  []
      Callsites:       []
    - 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:    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:    40
      BranchProfiles:  []
      Callsites:       []
    - functionName:    write_fully
      functionSourceFile: '/src/openvswitch/lib/socket-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 808
      functionLinenumberEnd: 826
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          109
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - __errno_location
        - vlog
        - write
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/socket-util.c:813,26'
          Dst:             write
        - Src:             'lib/socket-util.c:819,13'
          Dst:             vlog
        - Src:             'lib/socket-util.c:821,20'
          Dst:             __errno_location
        - Src:             'lib/socket-util.c:822,20'
          Dst:             __errno_location
    - 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:    read_fully
      functionSourceFile: '/src/openvswitch/lib/socket-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 787
      functionLinenumberEnd: 804
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          90
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - __errno_location
        - read
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/socket-util.c:792,26'
          Dst:             read
        - Src:             'lib/socket-util.c:799,20'
          Dst:             __errno_location
        - Src:             'lib/socket-util.c:800,20'
          Dst:             __errno_location
    - 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:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    unbracket
      functionSourceFile: '/src/openvswitch/lib/socket-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 315
      functionLinenumberEnd: 324
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          50
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - strchr
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/socket-util.c:319,21'
          Dst:             strchr
    - functionName:    inet_parse_address
      functionSourceFile: '/src/openvswitch/lib/socket-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 773
      functionLinenumberEnd: 782
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - parse_sockaddr_components
        - unbracket
        - xstrdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/socket-util.c:774,20'
          Dst:             xstrdup
        - Src:             'lib/socket-util.c:775,18'
          Dst:             unbracket
        - Src:             'lib/socket-util.c:776,15'
          Dst:             parse_sockaddr_components
    - functionName:    inet_open_passive
      functionSourceFile: '/src/openvswitch/lib/socket-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 680
      functionLinenumberEnd: 764
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - int
        - 'N/A'
        - int
        - 'N/A'
        - char
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         81
      ICount:          408
      EdgeCount:       105
      CyclomaticComplexity: 26
      functionsReached:
        - bind
        - close
        - getsockname
        - inet_parse_passive
        - listen
        - set_dscp
        - set_nonblocking
        - setsockopt
        - sock_errno
        - sock_strerror
        - socket
        - ss_get_port
        - ss_length
        - vlog
        - vlog_rate_limit
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/socket-util.c:687,10'
          Dst:             inet_parse_passive
        - Src:             'lib/socket-util.c:695,27'
          Dst:             ss_get_port
        - Src:             'lib/socket-util.c:698,10'
          Dst:             socket
        - Src:             'lib/socket-util.c:700,17'
          Dst:             sock_errno
        - Src:             'lib/socket-util.c:701,9'
          Dst:             sock_strerror
        - Src:             'lib/socket-util.c:701,9'
          Dst:             vlog
        - Src:             'lib/socket-util.c:704,13'
          Dst:             set_nonblocking
        - Src:             'lib/socket-util.c:709,12'
          Dst:             setsockopt
        - Src:             'lib/socket-util.c:710,17'
          Dst:             sock_errno
        - Src:             'lib/socket-util.c:711,9'
          Dst:             sock_strerror
        - Src:             'lib/socket-util.c:711,9'
          Dst:             vlog
        - Src:             'lib/socket-util.c:717,43'
          Dst:             ss_length
        - Src:             'lib/socket-util.c:717,9'
          Dst:             bind
        - Src:             'lib/socket-util.c:718,17'
          Dst:             sock_errno
        - Src:             'lib/socket-util.c:720,9'
          Dst:             sock_strerror
        - Src:             'lib/socket-util.c:720,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/socket-util.c:727,13'
          Dst:             set_dscp
        - Src:             'lib/socket-util.c:729,9'
          Dst:             sock_strerror
        - Src:             'lib/socket-util.c:729,9'
          Dst:             vlog
        - Src:             'lib/socket-util.c:734,33'
          Dst:             listen
        - Src:             'lib/socket-util.c:735,17'
          Dst:             sock_errno
        - Src:             'lib/socket-util.c:736,9'
          Dst:             sock_strerror
        - Src:             'lib/socket-util.c:736,9'
          Dst:             vlog
        - Src:             'lib/socket-util.c:742,13'
          Dst:             getsockname
        - Src:             'lib/socket-util.c:743,21'
          Dst:             sock_errno
        - Src:             'lib/socket-util.c:744,13'
          Dst:             sock_strerror
        - Src:             'lib/socket-util.c:744,13'
          Dst:             vlog
        - Src:             'lib/socket-util.c:748,13'
          Dst:             ss_get_port
        - Src:             'lib/socket-util.c:748,13'
          Dst:             vlog
        - Src:             'lib/socket-util.c:762,5'
          Dst:             close
    - functionName:    inet_parse_passive
      functionSourceFile: '/src/openvswitch/lib/socket-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 633
      functionLinenumberEnd: 653
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          111
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - inet_parse_port_host_tokens
        - parse_sockaddr_components
        - vlog
        - xstrdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/socket-util.c:634,20'
          Dst:             xstrdup
        - Src:             'lib/socket-util.c:638,5'
          Dst:             inet_parse_port_host_tokens
        - Src:             'lib/socket-util.c:640,9'
          Dst:             vlog
        - Src:             'lib/socket-util.c:646,14'
          Dst:             parse_sockaddr_components
    - 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:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_nonblocking
      functionSourceFile: '/src/openvswitch/lib/socket-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 72
      functionLinenumberEnd: 85
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         18
      ICount:          93
      EdgeCount:       22
      CyclomaticComplexity: 6
      functionsReached:
        - __errno_location
        - fcntl
        - ovs_strerror
        - vlog
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/socket-util.c:73,17'
          Dst:             fcntl
        - Src:             'lib/socket-util.c:75,13'
          Dst:             fcntl
        - Src:             'lib/socket-util.c:78,13'
          Dst:             __errno_location
        - Src:             'lib/socket-util.c:78,13'
          Dst:             ovs_strerror
        - Src:             'lib/socket-util.c:78,13'
          Dst:             vlog
        - Src:             'lib/socket-util.c:79,20'
          Dst:             __errno_location
        - Src:             'lib/socket-util.c:82,9'
          Dst:             __errno_location
        - Src:             'lib/socket-util.c:82,9'
          Dst:             ovs_strerror
        - Src:             'lib/socket-util.c:82,9'
          Dst:             vlog
        - Src:             'lib/socket-util.c:83,16'
          Dst:             __errno_location
    - 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:    14
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ss_length
      functionSourceFile: '/src/openvswitch/lib/socket-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1207
      functionLinenumberEnd: 1208
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sa_cast
        - sa_length
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/socket-util.c:1208,22'
          Dst:             sa_cast
        - Src:             'lib/socket-util.c:1208,12'
          Dst:             sa_length
    - functionName:    bind
      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:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_dscp
      functionSourceFile: '/src/openvswitch/lib/socket-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 113
      functionLinenumberEnd: 136
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - int
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          74
      EdgeCount:       14
      CyclomaticComplexity: 3
      functionsReached:
        - setsockopt
        - sock_errno
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/socket-util.c:122,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/socket-util.c:124,18'
          Dst:             setsockopt
        - Src:             'lib/socket-util.c:128,18'
          Dst:             setsockopt
        - Src:             'lib/socket-util.c:135,21'
          Dst:             sock_errno
    - functionName:    listen
      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:    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:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    inet_parse_port_host_tokens
      functionSourceFile: '/src/openvswitch/lib/socket-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 392
      functionLinenumberEnd: 394
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - inet_parse_tokens__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/socket-util.c:393,5'
          Dst:             inet_parse_tokens__
    - functionName:    inet_parse_tokens__
      functionSourceFile: '/src/openvswitch/lib/socket-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 330
      functionLinenumberEnd: 359
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          147
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - unbracket
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/socket-util.c:355,26'
          Dst:             unbracket
        - Src:             'lib/socket-util.c:357,22'
          Dst:             unbracket
    - functionName:    inet_open_active
      functionSourceFile: '/src/openvswitch/lib/socket-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 557
      functionLinenumberEnd: 612
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - int
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         43
      ICount:          221
      EdgeCount:       56
      CyclomaticComplexity: 15
      functionsReached:
        - close
        - connect
        - inet_parse_active
        - set_dscp
        - set_nonblocking
        - sock_errno
        - sock_strerror
        - socket
        - ss_length
        - vlog
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/socket-util.c:563,10'
          Dst:             inet_parse_active
        - Src:             'lib/socket-util.c:569,10'
          Dst:             socket
        - Src:             'lib/socket-util.c:571,17'
          Dst:             sock_errno
        - Src:             'lib/socket-util.c:572,9'
          Dst:             sock_strerror
        - Src:             'lib/socket-util.c:572,9'
          Dst:             vlog
        - Src:             'lib/socket-util.c:575,13'
          Dst:             set_nonblocking
        - Src:             'lib/socket-util.c:583,13'
          Dst:             set_dscp
        - Src:             'lib/socket-util.c:585,9'
          Dst:             sock_strerror
        - Src:             'lib/socket-util.c:585,9'
          Dst:             vlog
        - Src:             'lib/socket-util.c:590,50'
          Dst:             ss_length
        - Src:             'lib/socket-util.c:590,13'
          Dst:             connect
        - Src:             'lib/socket-util.c:592,23'
          Dst:             sock_errno
        - Src:             'lib/socket-util.c:603,13'
          Dst:             close
    - functionName:    inet_parse_active
      functionSourceFile: '/src/openvswitch/lib/socket-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 506
      functionLinenumberEnd: 532
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         31
      ICount:          150
      EdgeCount:       39
      CyclomaticComplexity: 10
      functionsReached:
        - inet_parse_host_port_tokens
        - parse_sockaddr_components
        - vlog
        - xstrdup
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/socket-util.c:507,20'
          Dst:             xstrdup
        - Src:             'lib/socket-util.c:511,5'
          Dst:             inet_parse_host_port_tokens
        - Src:             'lib/socket-util.c:513,9'
          Dst:             vlog
        - Src:             'lib/socket-util.c:519,9'
          Dst:             vlog
        - Src:             'lib/socket-util.c:525,14'
          Dst:             parse_sockaddr_components
    - 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:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    inet_parse_host_port_tokens
      functionSourceFile: '/src/openvswitch/lib/socket-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 375
      functionLinenumberEnd: 377
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - inet_parse_tokens__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/socket-util.c:376,5'
          Dst:             inet_parse_tokens__
    - functionName:    guess_netmask
      functionSourceFile: '/src/openvswitch/lib/socket-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 305
      functionLinenumberEnd: 310
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          57
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - htonl
        - ntohl
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/socket-util.c:306,19'
          Dst:             ntohl
        - Src:             'lib/socket-util.c:307,31'
          Dst:             htonl
        - Src:             'lib/socket-util.c:308,33'
          Dst:             htonl
        - Src:             'lib/socket-util.c:309,33'
          Dst:             htonl
        - Src:             'lib/socket-util.c:310,15'
          Dst:             htonl
    - functionName:    drain_fd
      functionSourceFile: '/src/openvswitch/lib/socket-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 290
      functionLinenumberEnd: 301
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          43
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - read
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/socket-util.c:297,13'
          Dst:             read
    - functionName:    get_socket_rcvbuf
      functionSourceFile: '/src/openvswitch/lib/socket-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 277
      functionLinenumberEnd: 282
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - getsockopt_int
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/socket-util.c:281,13'
          Dst:             getsockopt_int
    - functionName:    check_connection_completion
      functionSourceFile: '/src/openvswitch/lib/socket-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 242
      functionLinenumberEnd: 271
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         29
      ICount:          139
      EdgeCount:       37
      CyclomaticComplexity: 10
      functionsReached:
        - __errno_location
        - poll
        - send
        - sock_errno
        - sock_strerror
        - vlog_rate_limit
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/socket-util.c:251,18'
          Dst:             poll
        - Src:             'lib/socket-util.c:252,28'
          Dst:             __errno_location
        - Src:             'lib/socket-util.c:256,25'
          Dst:             send
        - Src:             'lib/socket-util.c:258,24'
          Dst:             sock_errno
        - Src:             'lib/socket-util.c:260,17'
          Dst:             vlog_rate_limit
        - Src:             'lib/socket-util.c:266,9'
          Dst:             sock_errno
        - Src:             'lib/socket-util.c:266,9'
          Dst:             sock_strerror
        - Src:             'lib/socket-util.c:266,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/socket-util.c:267,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:    4
      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:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    lookup_hostname
      functionSourceFile: '/src/openvswitch/lib/socket-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 186
      functionLinenumberEnd: 238
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          109
      EdgeCount:       21
      CyclomaticComplexity: 2
      functionsReached:
        - freeaddrinfo
        - getaddrinfo
        - ip_parse
        - sock_errno
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib/socket-util.c:197,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/socket-util.c:190,9'
          Dst:             ip_parse
        - Src:             'lib/socket-util.c:197,13'
          Dst:             getaddrinfo
        - Src:             'lib/socket-util.c:201,9'
          Dst:             freeaddrinfo
        - Src:             'lib/socket-util.c:232,16'
          Dst:             sock_errno
    - 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:    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:    lookup_ipv6
      functionSourceFile: '/src/openvswitch/lib/socket-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 166
      functionLinenumberEnd: 173
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          51
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - ipv6_parse
        - vlog_rate_limit
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/socket-util.c:167,10'
          Dst:             ipv6_parse
        - Src:             'lib/socket-util.c:169,9'
          Dst:             vlog_rate_limit
    - functionName:    lookup_ip
      functionSourceFile: '/src/openvswitch/lib/socket-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 152
      functionLinenumberEnd: 159
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          52
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - ip_parse
        - vlog_rate_limit
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/socket-util.c:153,10'
          Dst:             ip_parse
        - Src:             'lib/socket-util.c:155,9'
          Dst:             vlog_rate_limit
    - functionName:    addr_is_ipv6
      functionSourceFile: '/src/openvswitch/lib/socket-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 143
      functionLinenumberEnd: 144
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - strchr
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/socket-util.c:144,12'
          Dst:             strchr
    - functionName:    setsockopt_tcp_nodelay
      functionSourceFile: '/src/openvswitch/lib/socket-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 97
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          54
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - setsockopt
        - sock_errno
        - sock_strerror
        - vlog
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/socket-util.c:101,14'
          Dst:             setsockopt
        - Src:             'lib/socket-util.c:103,18'
          Dst:             sock_errno
        - Src:             'lib/socket-util.c:104,9'
          Dst:             sock_strerror
        - Src:             'lib/socket-util.c:104,9'
          Dst:             vlog
    - functionName:    xset_nonblocking
      functionSourceFile: '/src/openvswitch/lib/socket-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 93
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         5
      ICount:          26
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - exit
        - set_nonblocking
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/socket-util.c:90,9'
          Dst:             set_nonblocking
        - Src:             'lib/socket-util.c:91,9'
          Dst:             exit
    - functionName:    exit
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_next_with_hash__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 348
      functionLinenumberEnd: 352
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          40
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_next_with_hash
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 395
      functionLinenumberEnd: 396
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next_with_hash__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:396,12'
          Dst:             hmap_next_with_hash__
    - functionName:    hmap_first_with_hash
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 360
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next_with_hash__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:360,12'
          Dst:             hmap_next_with_hash__
    - functionName:    hmap_insert_fast
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 289
      functionLinenumberEnd: 295
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          38
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_insert_at
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 306
      functionLinenumberEnd: 311
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_expand_at
        - hmap_insert_fast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:307,5'
          Dst:             hmap_insert_fast
        - Src:             './include/openvswitch/hmap.h:309,9'
          Dst:             hmap_expand_at
    - functionName:    hmap_next__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 401
      functionLinenumberEnd: 410
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          51
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    compare_string_pointers
      functionSourceFile: '/src/openvswitch/lib/sset.c'
      linkageType:     InternalLinkage
      functionLinenumber: 366
      functionLinenumberEnd: 370
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/sset.c:370,12'
          Dst:             strcmp
    - functionName:    sset_array
      functionSourceFile: '/src/openvswitch/lib/sset.c'
      linkageType:     InternalLinkage
      functionLinenumber: 347
      functionLinenumberEnd: 361
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          100
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_first
        - hmap_next
        - ovs_ignore
        - sset_count
        - xmalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/sset.c:348,16'
          Dst:             sset_count
        - Src:             'lib/sset.c:353,13'
          Dst:             xmalloc
        - Src:             'lib/sset.c:355,5'
          Dst:             hmap_first
        - Src:             'lib/sset.c:355,5'
          Dst:             hmap_first
        - Src:             'lib/sset.c:355,5'
          Dst:             hmap_next
        - Src:             'lib/sset.c:355,5'
          Dst:             hmap_next
        - Src:             'lib/sset.c:358,5'
          Dst:             ovs_ignore
    - functionName:    sset_count
      functionSourceFile: '/src/openvswitch/lib/sset.c'
      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:
        - hmap_count
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/sset.c:166,12'
          Dst:             hmap_count
    - functionName:    hmap_first
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 416
      functionLinenumberEnd: 417
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next__
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:417,12'
          Dst:             hmap_next__
    - functionName:    hmap_next
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 429
      functionLinenumberEnd: 432
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_next__
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:432,15'
          Dst:             hmap_next__
    - functionName:    hmap_count
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 263
      functionLinenumberEnd: 264
      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:    sset_intersect
      functionSourceFile: '/src/openvswitch/lib/sset.c'
      linkageType:     InternalLinkage
      functionLinenumber: 331
      functionLinenumberEnd: 339
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          106
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - hmap_first
        - hmap_next
        - sset_contains
        - sset_delete
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/sset.c:334,5'
          Dst:             hmap_first
        - Src:             'lib/sset.c:334,5'
          Dst:             hmap_first
        - Src:             'lib/sset.c:334,5'
          Dst:             hmap_next
        - Src:             'lib/sset.c:334,5'
          Dst:             hmap_next
        - Src:             'lib/sset.c:335,14'
          Dst:             sset_contains
        - Src:             'lib/sset.c:336,13'
          Dst:             sset_delete
    - functionName:    sset_contains
      functionSourceFile: '/src/openvswitch/lib/sset.c'
      linkageType:     InternalLinkage
      functionLinenumber: 285
      functionLinenumberEnd: 286
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sset_find
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/sset.c:286,12'
          Dst:             sset_find
    - functionName:    sset_delete
      functionSourceFile: '/src/openvswitch/lib/sset.c'
      linkageType:     InternalLinkage
      functionLinenumber: 227
      functionLinenumberEnd: 230
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_remove
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/sset.c:228,5'
          Dst:             hmap_remove
    - functionName:    hmap_remove
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 317
      functionLinenumberEnd: 324
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          48
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sset_find
      functionSourceFile: '/src/openvswitch/lib/sset.c'
      linkageType:     InternalLinkage
      functionLinenumber: 278
      functionLinenumberEnd: 279
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_name
        - sset_find__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/sset.c:279,35'
          Dst:             hash_name
        - Src:             'lib/sset.c:279,12'
          Dst:             sset_find__
    - functionName:    hash_name
      functionSourceFile: '/src/openvswitch/lib/sset.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32
      functionLinenumberEnd: 33
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_name__
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/sset.c:33,30'
          Dst:             strlen
        - Src:             'lib/sset.c:33,12'
          Dst:             hash_name__
    - functionName:    sset_find__
      functionSourceFile: '/src/openvswitch/lib/sset.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 47
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          73
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_first_with_hash
        - hmap_next_with_hash
        - strcmp
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/sset.c:41,5'
          Dst:             hmap_first_with_hash
        - Src:             'lib/sset.c:42,14'
          Dst:             strcmp
        - Src:             'lib/sset.c:41,5'
          Dst:             hmap_next_with_hash
    - functionName:    hash_name__
      functionSourceFile: '/src/openvswitch/lib/sset.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26
      functionLinenumberEnd: 27
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_bytes
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/sset.c:27,12'
          Dst:             hash_bytes
    - functionName:    sset_at_position
      functionSourceFile: '/src/openvswitch/lib/sset.c'
      linkageType:     InternalLinkage
      functionLinenumber: 318
      functionLinenumberEnd: 323
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_at_position
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/sset.c:321,17'
          Dst:             hmap_at_position
    - functionName:    sset_equals
      functionSourceFile: '/src/openvswitch/lib/sset.c'
      linkageType:     InternalLinkage
      functionLinenumber: 292
      functionLinenumberEnd: 306
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          86
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - hmap_first
        - hmap_next
        - sset_count
        - sset_find__
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/sset.c:295,9'
          Dst:             sset_count
        - Src:             'lib/sset.c:295,26'
          Dst:             sset_count
        - Src:             'lib/sset.c:299,5'
          Dst:             hmap_first
        - Src:             'lib/sset.c:300,14'
          Dst:             sset_find__
        - Src:             'lib/sset.c:299,5'
          Dst:             hmap_next
    - functionName:    sset_pop
      functionSourceFile: '/src/openvswitch/lib/sset.c'
      linkageType:     InternalLinkage
      functionLinenumber: 262
      functionLinenumberEnd: 272
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          59
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - hmap_first
        - sset_delete
        - xstrdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/sset.c:263,24'
          Dst:             hmap_first
        - Src:             'lib/sset.c:263,24'
          Dst:             hmap_first
        - Src:             'lib/sset.c:269,18'
          Dst:             xstrdup
        - Src:             'lib/sset.c:270,5'
          Dst:             sset_delete
    - functionName:    sset_find_and_delete_assert
      functionSourceFile: '/src/openvswitch/lib/sset.c'
      linkageType:     InternalLinkage
      functionLinenumber: 248
      functionLinenumberEnd: 250
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - sset_find_and_delete
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/sset.c:249,16'
          Dst:             sset_find_and_delete
        - Src:             'lib/sset.c:249,5'
          Dst:             ovs_ignore
    - functionName:    sset_find_and_delete
      functionSourceFile: '/src/openvswitch/lib/sset.c'
      linkageType:     InternalLinkage
      functionLinenumber: 236
      functionLinenumberEnd: 241
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - sset_delete
        - sset_find
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/sset.c:237,30'
          Dst:             sset_find
        - Src:             'lib/sset.c:239,9'
          Dst:             sset_delete
    - functionName:    sset_add_array
      functionSourceFile: '/src/openvswitch/lib/sset.c'
      linkageType:     InternalLinkage
      functionLinenumber: 205
      functionLinenumberEnd: 211
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          42
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - sset_add
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/sset.c:209,9'
          Dst:             sset_add
    - functionName:    sset_add
      functionSourceFile: '/src/openvswitch/lib/sset.c'
      linkageType:     InternalLinkage
      functionLinenumber: 173
      functionLinenumberEnd: 179
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hash_name__
        - sset_add__
        - sset_find__
        - strlen
      functionUses:    13
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/sset.c:174,21'
          Dst:             strlen
        - Src:             'lib/sset.c:175,21'
          Dst:             hash_name__
        - Src:             'lib/sset.c:177,13'
          Dst:             sset_find__
        - Src:             'lib/sset.c:179,15'
          Dst:             sset_add__
    - functionName:    sset_add__
      functionSourceFile: '/src/openvswitch/lib/sset.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          38
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_insert_at
        - xmalloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/sset.c:52,30'
          Dst:             xmalloc
        - Src:             'lib/sset.c:54,5'
          Dst:             hmap_insert_at
    - functionName:    sset_add_assert
      functionSourceFile: '/src/openvswitch/lib/sset.c'
      linkageType:     InternalLinkage
      functionLinenumber: 198
      functionLinenumberEnd: 200
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - sset_add
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/sset.c:199,16'
          Dst:             sset_add
        - Src:             'lib/sset.c:199,5'
          Dst:             ovs_ignore
    - functionName:    sset_add_and_free
      functionSourceFile: '/src/openvswitch/lib/sset.c'
      linkageType:     InternalLinkage
      functionLinenumber: 188
      functionLinenumberEnd: 191
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sset_add
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/sset.c:189,30'
          Dst:             sset_add
    - functionName:    hmap_is_empty
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 281
      functionLinenumberEnd: 282
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sset_is_empty
      functionSourceFile: '/src/openvswitch/lib/sset.c'
      linkageType:     InternalLinkage
      functionLinenumber: 158
      functionLinenumberEnd: 159
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_is_empty
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/sset.c:159,12'
          Dst:             hmap_is_empty
    - functionName:    sset_sort
      functionSourceFile: '/src/openvswitch/lib/sset.c'
      linkageType:     InternalLinkage
      functionLinenumber: 379
      functionLinenumberEnd: 382
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - compare_string_pointers
        - qsort
        - sset_array
        - sset_count
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/sset.c:380,26'
          Dst:             sset_array
        - Src:             'lib/sset.c:381,18'
          Dst:             sset_count
        - Src:             'lib/sset.c:381,5'
          Dst:             qsort
        - Src:             'lib/sset.c:381,5'
          Dst:             compare_string_pointers
    - functionName:    sset_join
      functionSourceFile: '/src/openvswitch/lib/sset.c'
      linkageType:     InternalLinkage
      functionLinenumber: 137
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          67
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ds_put_cstr
        - ds_steal_cstr
        - sset_count
        - sset_sort
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/sset.c:140,26'
          Dst:             sset_sort
        - Src:             'lib/sset.c:141,28'
          Dst:             sset_count
        - Src:             'lib/sset.c:143,13'
          Dst:             ds_put_cstr
        - Src:             'lib/sset.c:145,9'
          Dst:             ds_put_cstr
        - Src:             'lib/sset.c:149,5'
          Dst:             ds_put_cstr
        - Src:             'lib/sset.c:151,12'
          Dst:             ds_steal_cstr
    - functionName:    sset_from_delimited_string
      functionSourceFile: '/src/openvswitch/lib/sset.c'
      linkageType:     InternalLinkage
      functionLinenumber: 112
      functionLinenumberEnd: 122
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          50
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - sset_add
        - sset_init
        - strtok_r
        - xstrdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/sset.c:113,5'
          Dst:             sset_init
        - Src:             'lib/sset.c:115,15'
          Dst:             xstrdup
        - Src:             'lib/sset.c:117,18'
          Dst:             strtok_r
        - Src:             'lib/sset.c:119,9'
          Dst:             sset_add
        - Src:             'lib/sset.c:118,18'
          Dst:             strtok_r
    - functionName:    sset_init
      functionSourceFile: '/src/openvswitch/lib/sset.c'
      linkageType:     InternalLinkage
      functionLinenumber: 61
      functionLinenumberEnd: 63
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_init
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/sset.c:62,5'
          Dst:             hmap_init
    - functionName:    sset_moved
      functionSourceFile: '/src/openvswitch/lib/sset.c'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 103
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_moved
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/sset.c:102,5'
          Dst:             hmap_moved
    - functionName:    sset_swap
      functionSourceFile: '/src/openvswitch/lib/sset.c'
      linkageType:     InternalLinkage
      functionLinenumber: 93
      functionLinenumberEnd: 95
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_swap
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/sset.c:94,5'
          Dst:             hmap_swap
    - functionName:    sset_clone
      functionSourceFile: '/src/openvswitch/lib/sset.c'
      linkageType:     InternalLinkage
      functionLinenumber: 78
      functionLinenumberEnd: 88
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          74
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - hmap_first
        - hmap_next
        - hmap_reserve_at
        - sset_add__
        - sset_count
        - sset_init
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/sset.c:81,5'
          Dst:             sset_init
        - Src:             'lib/sset.c:82,5'
          Dst:             sset_count
        - Src:             'lib/sset.c:82,5'
          Dst:             hmap_reserve_at
        - Src:             'lib/sset.c:84,5'
          Dst:             hmap_first
        - Src:             'lib/sset.c:85,37'
          Dst:             strlen
        - Src:             'lib/sset.c:85,9'
          Dst:             sset_add__
        - Src:             'lib/sset.c:84,5'
          Dst:             hmap_next
    - functionName:    sset_clear
      functionSourceFile: '/src/openvswitch/lib/sset.c'
      linkageType:     InternalLinkage
      functionLinenumber: 216
      functionLinenumberEnd: 222
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         16
      ICount:          92
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - hmap_first
        - hmap_next
        - sset_delete
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/sset.c:219,5'
          Dst:             hmap_first
        - Src:             'lib/sset.c:219,5'
          Dst:             hmap_first
        - Src:             'lib/sset.c:219,5'
          Dst:             hmap_next
        - Src:             'lib/sset.c:219,5'
          Dst:             hmap_next
        - Src:             'lib/sset.c:220,9'
          Dst:             sset_delete
    - functionName:    sset_destroy
      functionSourceFile: '/src/openvswitch/lib/sset.c'
      linkageType:     InternalLinkage
      functionLinenumber: 68
      functionLinenumberEnd: 73
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_destroy
        - sset_clear
      functionUses:    12
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/sset.c:70,9'
          Dst:             sset_clear
        - Src:             'lib/sset.c:71,9'
          Dst:             hmap_destroy
    - functionName:    init_this_module_timeval
      functionSourceFile: '/src/openvswitch/lib/timeval.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42
      functionLinenumberEnd: 42
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/timeval.c:42,1'
          Dst:             vlog_insert_module
    - functionName:    long_poll_interval_init_coverage
      functionSourceFile: '/src/openvswitch/lib/timeval.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 44
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/timeval.c:44,1'
          Dst:             coverage_counter_register
    - functionName:    long_poll_interval_count
      functionSourceFile: '/src/openvswitch/lib/timeval.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 44
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_long_poll_interval_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/timeval.c:44,1'
          Dst:             counter_long_poll_interval_get
    - functionName:    counter_long_poll_interval_get
      functionSourceFile: '/src/openvswitch/lib/timeval.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 44
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_long_poll_interval_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/timeval.c:44,1'
          Dst:             counter_long_poll_interval_get_unsafe
    - functionName:    counter_long_poll_interval_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/timeval.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 44
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    cpu_tracker_var_once_init
      functionSourceFile: '/src/openvswitch/lib/timeval.c'
      linkageType:     InternalLinkage
      functionLinenumber: 613
      functionLinenumberEnd: 613
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         5
      ICount:          23
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - abort
        - pthread_key_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/timeval.c:613,1'
          Dst:             pthread_key_create
        - Src:             'lib/timeval.c:613,1'
          Dst:             abort
    - functionName:    cpu_tracker_var_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/timeval.c'
      linkageType:     InternalLinkage
      functionLinenumber: 613
      functionLinenumberEnd: 613
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - pthread_getspecific
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/timeval.c:613,1'
          Dst:             pthread_getspecific
    - functionName:    cpu_tracker_var_init
      functionSourceFile: '/src/openvswitch/lib/timeval.c'
      linkageType:     InternalLinkage
      functionLinenumber: 613
      functionLinenumberEnd: 613
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - cpu_tracker_var_once_init
        - pthread_once
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/timeval.c:613,1'
          Dst:             pthread_once
        - Src:             'lib/timeval.c:613,1'
          Dst:             cpu_tracker_var_once_init
    - functionName:    pthread_once
      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:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    cpu_tracker_var_set_unsafe
      functionSourceFile: '/src/openvswitch/lib/timeval.c'
      linkageType:     InternalLinkage
      functionLinenumber: 613
      functionLinenumberEnd: 613
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - cpu_tracker_var_get_unsafe
        - xpthread_setspecific
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/timeval.c:613,1'
          Dst:             cpu_tracker_var_get_unsafe
        - Src:             'lib/timeval.c:613,1'
          Dst:             xpthread_setspecific
    - functionName:    cpu_tracker_var_get
      functionSourceFile: '/src/openvswitch/lib/timeval.c'
      linkageType:     InternalLinkage
      functionLinenumber: 613
      functionLinenumberEnd: 613
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - cpu_tracker_var_get_unsafe
        - cpu_tracker_var_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/timeval.c:613,1'
          Dst:             cpu_tracker_var_init
        - Src:             'lib/timeval.c:613,1'
          Dst:             cpu_tracker_var_get_unsafe
    - functionName:    timeval_diff_msec
      functionSourceFile: '/src/openvswitch/lib/timeval.c'
      linkageType:     InternalLinkage
      functionLinenumber: 521
      functionLinenumberEnd: 522
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - timeval_to_msec
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/timeval.c:522,12'
          Dst:             timeval_to_msec
        - Src:             'lib/timeval.c:522,33'
          Dst:             timeval_to_msec
    - functionName:    timeval_to_msec
      functionSourceFile: '/src/openvswitch/lib/timeval.c'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 360
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    getrusage_thread
      functionSourceFile: '/src/openvswitch/lib/timeval.c'
      linkageType:     InternalLinkage
      functionLinenumber: 636
      functionLinenumberEnd: 638
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - getrusage
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/timeval.c:638,12'
          Dst:             getrusage
    - functionName:    getrusage
      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:    long_poll_interval_add
      functionSourceFile: '/src/openvswitch/lib/timeval.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 44
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_long_poll_interval_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/timeval.c:44,1'
          Dst:             counter_long_poll_interval_get
    - functionName:    get_recent_rusage
      functionSourceFile: '/src/openvswitch/lib/timeval.c'
      linkageType:     InternalLinkage
      functionLinenumber: 630
      functionLinenumberEnd: 631
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_cpu_tracker
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/timeval.c:631,13'
          Dst:             get_cpu_tracker
    - functionName:    get_cpu_tracker
      functionSourceFile: '/src/openvswitch/lib/timeval.c'
      linkageType:     InternalLinkage
      functionLinenumber: 617
      functionLinenumberEnd: 625
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - cpu_tracker_var_get
        - cpu_tracker_var_set_unsafe
        - xzalloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/timeval.c:618,29'
          Dst:             cpu_tracker_var_get
        - Src:             'lib/timeval.c:620,13'
          Dst:             xzalloc
        - Src:             'lib/timeval.c:623,9'
          Dst:             cpu_tracker_var_set_unsafe
    - functionName:    is_warped
      functionSourceFile: '/src/openvswitch/lib/timeval.c'
      linkageType:     InternalLinkage
      functionLinenumber: 544
      functionLinenumberEnd: 551
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/timeval.c:547,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/timeval.c:549,5'
          Dst:             ovs_mutex_unlock
    - functionName:    last_seq_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/timeval.c'
      linkageType:     InternalLinkage
      functionLinenumber: 93
      functionLinenumberEnd: 93
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsthread_id_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 456
      functionLinenumberEnd: 456
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsthread_id_get
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 456
      functionLinenumberEnd: 456
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsthread_id_get_unsafe
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-thread.h:456,1'
          Dst:             ovsthread_id_get_unsafe
    - functionName:    last_wakeup_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/timeval.c'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    init_clock
      functionSourceFile: '/src/openvswitch/lib/timeval.c'
      linkageType:     InternalLinkage
      functionLinenumber: 113
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_mutex_init
        - xclock_gettime
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/timeval.c:116,5'
          Dst:             ovs_mutex_init
        - Src:             'lib/timeval.c:118,5'
          Dst:             xclock_gettime
    - functionName:    xclock_gettime
      functionSourceFile: '/src/openvswitch/lib/timeval.c'
      linkageType:     InternalLinkage
      functionLinenumber: 422
      functionLinenumberEnd: 428
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         5
      ICount:          32
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - __errno_location
        - clock_gettime
        - ovs_abort
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/timeval.c:423,9'
          Dst:             clock_gettime
        - Src:             'lib/timeval.c:426,19'
          Dst:             __errno_location
        - Src:             'lib/timeval.c:426,9'
          Dst:             ovs_abort
    - functionName:    clock_gettime
      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:    do_init_time
      functionSourceFile: '/src/openvswitch/lib/timeval.c'
      linkageType:     InternalLinkage
      functionLinenumber: 124
      functionLinenumberEnd: 135
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - clock_gettime
        - coverage_init
        - init_clock
        - seq_create
        - timespec_to_msec
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/timeval.c:127,5'
          Dst:             coverage_init
        - Src:             'lib/timeval.c:129,20'
          Dst:             seq_create
        - Src:             'lib/timeval.c:130,36'
          Dst:             clock_gettime
        - Src:             'lib/timeval.c:130,5'
          Dst:             init_clock
        - Src:             'lib/timeval.c:133,5'
          Dst:             init_clock
        - Src:             'lib/timeval.c:134,17'
          Dst:             timespec_to_msec
    - functionName:    timespec_to_msec
      functionSourceFile: '/src/openvswitch/lib/timeval.c'
      linkageType:     InternalLinkage
      functionLinenumber: 353
      functionLinenumberEnd: 354
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    gmtime_msec
      functionSourceFile: '/src/openvswitch/lib/timeval.c'
      linkageType:     InternalLinkage
      functionLinenumber: 805
      functionLinenumberEnd: 809
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - gmtime_r
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/timeval.c:807,3'
          Dst:             gmtime_r
    - 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:    localtime_msec
      functionSourceFile: '/src/openvswitch/lib/timeval.c'
      linkageType:     InternalLinkage
      functionLinenumber: 796
      functionLinenumberEnd: 800
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - localtime_r
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/timeval.c:798,3'
          Dst:             localtime_r
    - 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:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    strftime_msec
      functionSourceFile: '/src/openvswitch/lib/timeval.c'
      linkageType:     InternalLinkage
      functionLinenumber: 772
      functionLinenumberEnd: 791
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          111
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - sprintf
        - strchr
        - strftime
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/timeval.c:777,15'
          Dst:             strftime
        - Src:             'lib/timeval.c:782,9'
          Dst:             sprintf
        - Src:             'lib/timeval.c:783,18'
          Dst:             strchr
        - Src:             'lib/timeval.c:783,41'
          Dst:             strchr
    - 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:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sprintf
      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:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    timeval_warp_cb
      functionSourceFile: '/src/openvswitch/lib/timeval.c'
      linkageType:     InternalLinkage
      functionLinenumber: 716
      functionLinenumberEnd: 738
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          109
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - atoll
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovsthread_id_self
        - timewarp_work
        - unixctl_command_reply_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/timeval.c:717,43'
          Dst:             atoll
        - Src:             'lib/timeval.c:718,38'
          Dst:             atoll
        - Src:             'lib/timeval.c:718,55'
          Dst:             atoll
        - Src:             'lib/timeval.c:720,9'
          Dst:             unixctl_command_reply_error
        - Src:             'lib/timeval.c:724,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/timeval.c:726,9'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/timeval.c:727,9'
          Dst:             unixctl_command_reply_error
        - Src:             'lib/timeval.c:734,49'
          Dst:             ovsthread_id_self
        - Src:             'lib/timeval.c:735,5'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/timeval.c:737,5'
          Dst:             timewarp_work
    - functionName:    atoll
      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:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsthread_id_self
      functionSourceFile: '/src/openvswitch/lib/ovs-thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 465
      functionLinenumberEnd: 472
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsthread_id_get
        - ovsthread_id_init
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-thread.h:466,24'
          Dst:             ovsthread_id_get
        - Src:             'lib/ovs-thread.h:469,14'
          Dst:             ovsthread_id_init
    - functionName:    timewarp_work
      functionSourceFile: '/src/openvswitch/lib/timeval.c'
      linkageType:     InternalLinkage
      functionLinenumber: 458
      functionLinenumberEnd: 492
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         15
      ICount:          136
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - msec_to_timespec
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - poll
        - seq_change
        - timespec_add
        - unixctl_command_reply
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/timeval.c:462,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/timeval.c:464,9'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/timeval.c:469,9'
          Dst:             msec_to_timespec
        - Src:             'lib/timeval.c:470,9'
          Dst:             timespec_add
        - Src:             'lib/timeval.c:473,9'
          Dst:             msec_to_timespec
        - Src:             'lib/timeval.c:474,9'
          Dst:             timespec_add
        - Src:             'lib/timeval.c:478,9'
          Dst:             msec_to_timespec
        - Src:             'lib/timeval.c:479,9'
          Dst:             timespec_add
        - Src:             'lib/timeval.c:483,9'
          Dst:             unixctl_command_reply
        - Src:             'lib/timeval.c:487,5'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/timeval.c:488,5'
          Dst:             seq_change
        - Src:             'lib/timeval.c:491,5'
          Dst:             poll
    - functionName:    msec_to_timespec
      functionSourceFile: '/src/openvswitch/lib/timeval.c'
      linkageType:     InternalLinkage
      functionLinenumber: 432
      functionLinenumberEnd: 435
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          20
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    timespec_add
      functionSourceFile: '/src/openvswitch/lib/timeval.c'
      linkageType:     InternalLinkage
      functionLinenumber: 529
      functionLinenumberEnd: 540
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          52
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    timeval_stop_cb
      functionSourceFile: '/src/openvswitch/lib/timeval.c'
      linkageType:     InternalLinkage
      functionLinenumber: 698
      functionLinenumberEnd: 701
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - timeval_stop
        - unixctl_command_reply
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/timeval.c:699,5'
          Dst:             timeval_stop
        - Src:             'lib/timeval.c:700,5'
          Dst:             unixctl_command_reply
    - functionName:    timeval_stop
      functionSourceFile: '/src/openvswitch/lib/timeval.c'
      linkageType:     InternalLinkage
      functionLinenumber: 686
      functionLinenumberEnd: 692
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - xclock_gettime
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/timeval.c:687,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/timeval.c:690,5'
          Dst:             xclock_gettime
        - Src:             'lib/timeval.c:691,5'
          Dst:             ovs_mutex_unlock
    - functionName:    timeval_dummy_register
      functionSourceFile: '/src/openvswitch/lib/timeval.c'
      linkageType:     InternalLinkage
      functionLinenumber: 757
      functionLinenumberEnd: 762
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          14
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - timeval_stop_cb
        - timeval_warp_cb
        - unixctl_command_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/timeval.c:759,5'
          Dst:             unixctl_command_register
        - Src:             'lib/timeval.c:759,5'
          Dst:             timeval_stop_cb
        - Src:             'lib/timeval.c:760,5'
          Dst:             unixctl_command_register
        - Src:             'lib/timeval.c:760,5'
          Dst:             timeval_warp_cb
    - functionName:    timeval_warp
      functionSourceFile: '/src/openvswitch/lib/timeval.c'
      linkageType:     InternalLinkage
      functionLinenumber: 744
      functionLinenumberEnd: 753
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - msec_to_timespec
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - timespec_add
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/timeval.c:748,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/timeval.c:750,5'
          Dst:             msec_to_timespec
        - Src:             'lib/timeval.c:751,5'
          Dst:             timespec_add
        - Src:             'lib/timeval.c:752,5'
          Dst:             ovs_mutex_unlock
    - functionName:    get_cpu_usage
      functionSourceFile: '/src/openvswitch/lib/timeval.c'
      linkageType:     InternalLinkage
      functionLinenumber: 676
      functionLinenumberEnd: 677
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          14
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_cpu_tracker
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/timeval.c:677,12'
          Dst:             get_cpu_tracker
    - functionName:    last_seq_get
      functionSourceFile: '/src/openvswitch/lib/timeval.c'
      linkageType:     InternalLinkage
      functionLinenumber: 93
      functionLinenumberEnd: 93
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - last_seq_get_unsafe
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/timeval.c:93,1'
          Dst:             last_seq_get_unsafe
    - functionName:    timewarp_run
      functionSourceFile: '/src/openvswitch/lib/timeval.c'
      linkageType:     InternalLinkage
      functionLinenumber: 497
      functionLinenumberEnd: 517
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         9
      ICount:          49
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - last_seq_get
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovsthread_id_self
        - seq_read
        - seq_wait_at
        - timewarp_work
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/timeval.c:501,9'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/timeval.c:503,9'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/timeval.c:505,26'
          Dst:             ovsthread_id_self
        - Src:             'lib/timeval.c:508,34'
          Dst:             last_seq_get
        - Src:             'lib/timeval.c:510,25'
          Dst:             seq_read
        - Src:             'lib/timeval.c:511,13'
          Dst:             seq_wait_at
        - Src:             'lib/timeval.c:514,13'
          Dst:             timewarp_work
    - functionName:    nsec_to_timespec
      functionSourceFile: '/src/openvswitch/lib/timeval.c'
      linkageType:     InternalLinkage
      functionLinenumber: 439
      functionLinenumberEnd: 454
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          61
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    xgettimeofday
      functionSourceFile: '/src/openvswitch/lib/timeval.c'
      linkageType:     InternalLinkage
      functionLinenumber: 414
      functionLinenumberEnd: 418
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         5
      ICount:          29
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - __errno_location
        - gettimeofday
        - ovs_strerror
        - vlog_fatal
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/timeval.c:415,9'
          Dst:             gettimeofday
        - Src:             'lib/timeval.c:416,9'
          Dst:             __errno_location
        - Src:             'lib/timeval.c:416,9'
          Dst:             ovs_strerror
        - Src:             'lib/timeval.c:416,9'
          Dst:             vlog_fatal
    - 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:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    time_boot_msec
      functionSourceFile: '/src/openvswitch/lib/timeval.c'
      linkageType:     InternalLinkage
      functionLinenumber: 379
      functionLinenumberEnd: 381
      functionDepth:   0
      returnType:      size_t
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - time_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/timeval.c:380,5'
          Dst:             time_init
    - functionName:    time_init
      functionSourceFile: '/src/openvswitch/lib/timeval.c'
      linkageType:     InternalLinkage
      functionLinenumber: 140
      functionLinenumberEnd: 143
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - do_init_time
        - pthread_once
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/timeval.c:142,5'
          Dst:             pthread_once
        - Src:             'lib/timeval.c:142,5'
          Dst:             do_init_time
    - functionName:    timeval_to_usec
      functionSourceFile: '/src/openvswitch/lib/timeval.c'
      linkageType:     InternalLinkage
      functionLinenumber: 371
      functionLinenumberEnd: 372
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    timespec_to_usec
      functionSourceFile: '/src/openvswitch/lib/timeval.c'
      linkageType:     InternalLinkage
      functionLinenumber: 365
      functionLinenumberEnd: 366
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    refresh_rusage
      functionSourceFile: '/src/openvswitch/lib/timeval.c'
      linkageType:     InternalLinkage
      functionLinenumber: 647
      functionLinenumberEnd: 668
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         18
      ICount:          141
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - get_cpu_tracker
        - getrusage_thread
        - time_msec
        - timeval_to_msec
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/timeval.c:648,29'
          Dst:             get_cpu_tracker
        - Src:             'lib/timeval.c:651,10'
          Dst:             getrusage_thread
        - Src:             'lib/timeval.c:652,29'
          Dst:             time_msec
        - Src:             'lib/timeval.c:656,29'
          Dst:             timeval_to_msec
        - Src:             'lib/timeval.c:657,29'
          Dst:             timeval_to_msec
    - functionName:    time_msec
      functionSourceFile: '/src/openvswitch/lib/timeval.c'
      linkageType:     InternalLinkage
      functionLinenumber: 222
      functionLinenumberEnd: 223
      functionDepth:   0
      returnType:      size_t
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - time_msec__
      functionUses:    87
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/timeval.c:223,12'
          Dst:             time_msec__
    - functionName:    time_msec__
      functionSourceFile: '/src/openvswitch/lib/timeval.c'
      linkageType:     InternalLinkage
      functionLinenumber: 212
      functionLinenumberEnd: 216
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - time_timespec__
        - timespec_to_msec
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/timeval.c:215,5'
          Dst:             time_timespec__
        - Src:             'lib/timeval.c:216,12'
          Dst:             timespec_to_msec
    - functionName:    time_timespec__
      functionSourceFile: '/src/openvswitch/lib/timeval.c'
      linkageType:     InternalLinkage
      functionLinenumber: 147
      functionLinenumberEnd: 171
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          79
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - time_init
        - timespec_add
        - xclock_gettime
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/timeval.c:150,5'
          Dst:             time_init
        - Src:             'lib/timeval.c:154,9'
          Dst:             xclock_gettime
        - Src:             'lib/timeval.c:160,9'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/timeval.c:164,9'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/timeval.c:167,13'
          Dst:             xclock_gettime
        - Src:             'lib/timeval.c:169,9'
          Dst:             timespec_add
    - functionName:    log_poll_interval
      functionSourceFile: '/src/openvswitch/lib/timeval.c'
      linkageType:     InternalLinkage
      functionLinenumber: 556
      functionLinenumberEnd: 597
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         54
      ICount:          285
      EdgeCount:       68
      CyclomaticComplexity: 16
      functionsReached:
        - coverage_log
        - get_recent_rusage
        - getrusage_thread
        - is_warped
        - long_poll_interval_add
        - time_msec
        - timeval_diff_msec
        - vlog
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/timeval.c:557,30'
          Dst:             time_msec
        - Src:             'lib/timeval.c:559,30'
          Dst:             is_warped
        - Src:             'lib/timeval.c:560,44'
          Dst:             get_recent_rusage
        - Src:             'lib/timeval.c:563,9'
          Dst:             long_poll_interval_add
        - Src:             'lib/timeval.c:565,14'
          Dst:             getrusage_thread
        - Src:             'lib/timeval.c:566,13'
          Dst:             timeval_diff_msec
        - Src:             'lib/timeval.c:566,13'
          Dst:             timeval_diff_msec
        - Src:             'lib/timeval.c:566,13'
          Dst:             vlog
        - Src:             'lib/timeval.c:576,17'
          Dst:             vlog
        - Src:             'lib/timeval.c:582,17'
          Dst:             vlog
        - Src:             'lib/timeval.c:588,17'
          Dst:             vlog
        - Src:             'lib/timeval.c:593,13'
          Dst:             vlog
        - Src:             'lib/timeval.c:595,9'
          Dst:             coverage_log
    - functionName:    last_wakeup_get
      functionSourceFile: '/src/openvswitch/lib/timeval.c'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - last_wakeup_get_unsafe
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/timeval.c:101,1'
          Dst:             last_wakeup_get_unsafe
    - functionName:    time_poll
      functionSourceFile: '/src/openvswitch/lib/timeval.c'
      linkageType:     InternalLinkage
      functionLinenumber: 287
      functionLinenumberEnd: 348
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         40
      ICount:          216
      EdgeCount:       53
      CyclomaticComplexity: 15
      functionsReached:
        - __errno_location
        - coverage_clear
        - coverage_run
        - fatal_signal_handler
        - last_wakeup_get
        - log_poll_interval
        - ovsrcu_is_quiescent
        - ovsrcu_quiesce
        - ovsrcu_quiesce_end
        - ovsrcu_quiesce_start
        - poll
        - refresh_rusage
        - thread_is_pmd
        - time_init
        - time_msec
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/timeval.c:288,34'
          Dst:             last_wakeup_get
        - Src:             'lib/timeval.c:293,5'
          Dst:             time_init
        - Src:             'lib/timeval.c:294,5'
          Dst:             coverage_clear
        - Src:             'lib/timeval.c:295,5'
          Dst:             coverage_run
        - Src:             'lib/timeval.c:296,26'
          Dst:             thread_is_pmd
        - Src:             'lib/timeval.c:297,9'
          Dst:             log_poll_interval
        - Src:             'lib/timeval.c:299,13'
          Dst:             time_msec
        - Src:             'lib/timeval.c:302,17'
          Dst:             ovsrcu_is_quiescent
        - Src:             'lib/timeval.c:305,29'
          Dst:             time_msec
        - Src:             'lib/timeval.c:318,17'
          Dst:             ovsrcu_quiesce
        - Src:             'lib/timeval.c:320,17'
          Dst:             ovsrcu_quiesce_start
        - Src:             'lib/timeval.c:324,18'
          Dst:             poll
        - Src:             'lib/timeval.c:326,23'
          Dst:             __errno_location
        - Src:             'lib/timeval.c:330,13'
          Dst:             ovsrcu_quiesce_end
        - Src:             'lib/timeval.c:333,25'
          Dst:             time_msec
        - Src:             'lib/timeval.c:334,13'
          Dst:             fatal_signal_handler
        - Src:             'lib/timeval.c:345,20'
          Dst:             time_msec
        - Src:             'lib/timeval.c:346,5'
          Dst:             refresh_rusage
    - functionName:    time_alarm
      functionSourceFile: '/src/openvswitch/lib/timeval.c'
      linkageType:     InternalLinkage
      functionLinenumber: 260
      functionLinenumberEnd: 270
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - assert_single_threaded_at
        - time_init
        - time_msec
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/timeval.c:264,5'
          Dst:             assert_single_threaded_at
        - Src:             'lib/timeval.c:265,5'
          Dst:             time_init
        - Src:             'lib/timeval.c:267,11'
          Dst:             time_msec
    - functionName:    time_wall_usec
      functionSourceFile: '/src/openvswitch/lib/timeval.c'
      linkageType:     InternalLinkage
      functionLinenumber: 252
      functionLinenumberEnd: 253
      functionDepth:   0
      returnType:      size_t
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - time_usec__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/timeval.c:253,12'
          Dst:             time_usec__
    - functionName:    time_usec__
      functionSourceFile: '/src/openvswitch/lib/timeval.c'
      linkageType:     InternalLinkage
      functionLinenumber: 235
      functionLinenumberEnd: 239
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - time_timespec__
        - timespec_to_usec
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/timeval.c:238,5'
          Dst:             time_timespec__
        - Src:             'lib/timeval.c:239,12'
          Dst:             timespec_to_usec
    - functionName:    time_usec
      functionSourceFile: '/src/openvswitch/lib/timeval.c'
      linkageType:     InternalLinkage
      functionLinenumber: 245
      functionLinenumberEnd: 246
      functionDepth:   0
      returnType:      size_t
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - time_usec__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/timeval.c:246,12'
          Dst:             time_usec__
    - functionName:    time_wall_msec
      functionSourceFile: '/src/openvswitch/lib/timeval.c'
      linkageType:     InternalLinkage
      functionLinenumber: 229
      functionLinenumberEnd: 230
      functionDepth:   0
      returnType:      size_t
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - time_msec__
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/timeval.c:230,12'
          Dst:             time_msec__
    - functionName:    time_wall
      functionSourceFile: '/src/openvswitch/lib/timeval.c'
      linkageType:     InternalLinkage
      functionLinenumber: 206
      functionLinenumberEnd: 207
      functionDepth:   0
      returnType:      size_t
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - time_sec__
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/timeval.c:207,12'
          Dst:             time_sec__
    - functionName:    time_sec__
      functionSourceFile: '/src/openvswitch/lib/timeval.c'
      linkageType:     InternalLinkage
      functionLinenumber: 189
      functionLinenumberEnd: 193
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - time_timespec__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/timeval.c:192,5'
          Dst:             time_timespec__
    - functionName:    time_now
      functionSourceFile: '/src/openvswitch/lib/timeval.c'
      linkageType:     InternalLinkage
      functionLinenumber: 199
      functionLinenumberEnd: 200
      functionDepth:   0
      returnType:      size_t
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - time_sec__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/timeval.c:200,12'
          Dst:             time_sec__
    - functionName:    time_wall_timespec
      functionSourceFile: '/src/openvswitch/lib/timeval.c'
      linkageType:     InternalLinkage
      functionLinenumber: 183
      functionLinenumberEnd: 185
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - time_timespec__
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/timeval.c:184,5'
          Dst:             time_timespec__
    - functionName:    time_timespec
      functionSourceFile: '/src/openvswitch/lib/timeval.c'
      linkageType:     InternalLinkage
      functionLinenumber: 176
      functionLinenumberEnd: 178
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - time_timespec__
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/timeval.c:177,5'
          Dst:             time_timespec__
    - functionName:    ovs_refcount_read
      functionSourceFile: '/src/openvswitch/lib/ovs-atomic.h'
      linkageType:     InternalLinkage
      functionLinenumber: 586
      functionLinenumberEnd: 592
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    tnl_port_show_v
      functionSourceFile: '/src/openvswitch/lib/tnl-ports.c'
      linkageType:     InternalLinkage
      functionLinenumber: 313
      functionLinenumberEnd: 351
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          118
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - cls_cursor_advance
        - cls_cursor_start
        - ds_put_format
        - miniflow_expand
        - minimask_expand
        - odp_flow_format
        - odp_flow_key_from_flow
        - odp_flow_key_from_mask
        - ofpbuf_use_stack
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tnl-ports.c:316,5'
          Dst:             cls_cursor_start
        - Src:             'lib/tnl-ports.c:316,5'
          Dst:             cls_cursor_advance
        - Src:             'lib/tnl-ports.c:329,9'
          Dst:             ds_put_format
        - Src:             'lib/tnl-ports.c:330,9'
          Dst:             minimask_expand
        - Src:             'lib/tnl-ports.c:331,9'
          Dst:             miniflow_expand
        - Src:             'lib/tnl-ports.c:335,9'
          Dst:             ofpbuf_use_stack
        - Src:             'lib/tnl-ports.c:336,9'
          Dst:             odp_flow_key_from_flow
        - Src:             'lib/tnl-ports.c:342,9'
          Dst:             ofpbuf_use_stack
        - Src:             'lib/tnl-ports.c:343,9'
          Dst:             odp_flow_key_from_mask
        - Src:             'lib/tnl-ports.c:348,9'
          Dst:             odp_flow_format
        - Src:             'lib/tnl-ports.c:349,9'
          Dst:             ds_put_format
    - functionName:    map_insert_ipdev
      functionSourceFile: '/src/openvswitch/lib/tnl-ports.c'
      linkageType:     InternalLinkage
      functionLinenumber: 382
      functionLinenumberEnd: 388
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          63
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - map_insert_ipdev__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tnl-ports.c:386,9'
          Dst:             map_insert_ipdev__
    - functionName:    map_insert_ipdev__
      functionSourceFile: '/src/openvswitch/lib/tnl-ports.c'
      linkageType:     InternalLinkage
      functionLinenumber: 153
      functionLinenumberEnd: 162
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - char
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          71
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - map_insert
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tnl-ports.c:158,13'
          Dst:             map_insert
    - functionName:    map_insert
      functionSourceFile: '/src/openvswitch/lib/tnl-ports.c'
      linkageType:     InternalLinkage
      functionLinenumber: 106
      functionLinenumberEnd: 148
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - char
        - short
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          194
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - classifier_insert
        - classifier_lookup
        - cls_rule_init
        - htonl
        - ovs_refcount_init
        - ovs_refcount_try_ref_rcu
        - ovs_strlcpy
        - tnl_port_cast
        - tnl_port_init_flow
        - xzalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tnl-ports.c:112,5'
          Dst:             tnl_port_init_flow
        - Src:             'lib/tnl-ports.c:115,14'
          Dst:             classifier_lookup
        - Src:             'lib/tnl-ports.c:116,13'
          Dst:             tnl_port_cast
        - Src:             'lib/tnl-ports.c:118,20'
          Dst:             ovs_refcount_try_ref_rcu
        - Src:             'lib/tnl-ports.c:121,13'
          Dst:             xzalloc
        - Src:             'lib/tnl-ports.c:134,13'
          Dst:             htonl
        - Src:             'lib/tnl-ports.c:142,9'
          Dst:             cls_rule_init
        - Src:             'lib/tnl-ports.c:143,9'
          Dst:             ovs_refcount_init
        - Src:             'lib/tnl-ports.c:144,9'
          Dst:             ovs_strlcpy
        - Src:             'lib/tnl-ports.c:146,9'
          Dst:             classifier_insert
    - functionName:    tnl_port_init_flow
      functionSourceFile: '/src/openvswitch/lib/tnl-ports.c'
      linkageType:     InternalLinkage
      functionLinenumber: 87
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - char
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          105
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - htonl
        - htons
        - in6_addr_get_mapped_ipv4
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tnl-ports.c:91,9'
          Dst:             htonl
        - Src:             'lib/tnl-ports.c:92,25'
          Dst:             htons
        - Src:             'lib/tnl-ports.c:93,24'
          Dst:             in6_addr_get_mapped_ipv4
        - Src:             'lib/tnl-ports.c:95,25'
          Dst:             htons
    - functionName:    tnl_port_cast
      functionSourceFile: '/src/openvswitch/lib/tnl-ports.c'
      linkageType:     InternalLinkage
      functionLinenumber: 71
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          20
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_refcount_try_ref_rcu
      functionSourceFile: '/src/openvswitch/lib/ovs-atomic.h'
      linkageType:     InternalLinkage
      functionLinenumber: 613
      functionLinenumberEnd: 626
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          64
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_refcount_init
      functionSourceFile: '/src/openvswitch/lib/ovs-atomic.h'
      linkageType:     InternalLinkage
      functionLinenumber: 529
      functionLinenumberEnd: 531
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    in6_addr_get_mapped_ipv4
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1231
      functionLinenumberEnd: 1239
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          75
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - get_16aligned_be32
        - htonl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:1234,9'
          Dst:             htonl
        - Src:             'lib/packets.h:1235,16'
          Dst:             get_16aligned_be32
    - functionName:    get_16aligned_be32
      functionSourceFile: '/src/openvswitch/lib/unaligned.h'
      linkageType:     InternalLinkage
      functionLinenumber: 246
      functionLinenumberEnd: 250
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    insert_ipdev__
      functionSourceFile: '/src/openvswitch/lib/tnl-ports.c'
      linkageType:     InternalLinkage
      functionLinenumber: 393
      functionLinenumberEnd: 422
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          101
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - map_insert_ipdev
        - netdev_close
        - netdev_get_change_seq
        - netdev_get_etheraddr
        - netdev_get_flags
        - netdev_get_name
        - netdev_ref
        - ovs_list_insert
        - ovs_strlcpy
        - xzalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tnl-ports.c:398,13'
          Dst:             netdev_get_flags
        - Src:             'lib/tnl-ports.c:403,14'
          Dst:             xzalloc
        - Src:             'lib/tnl-ports.c:404,19'
          Dst:             netdev_ref
        - Src:             'lib/tnl-ports.c:405,26'
          Dst:             netdev_get_change_seq
        - Src:             'lib/tnl-ports.c:406,13'
          Dst:             netdev_get_etheraddr
        - Src:             'lib/tnl-ports.c:412,35'
          Dst:             netdev_get_name
        - Src:             'lib/tnl-ports.c:412,5'
          Dst:             ovs_strlcpy
        - Src:             'lib/tnl-ports.c:413,5'
          Dst:             ovs_list_insert
        - Src:             'lib/tnl-ports.c:414,5'
          Dst:             map_insert_ipdev
        - Src:             'lib/tnl-ports.c:418,5'
          Dst:             netdev_close
    - functionName:    ovs_list_insert
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 169
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    tnl_port_free
      functionSourceFile: '/src/openvswitch/lib/tnl-ports.c'
      linkageType:     InternalLinkage
      functionLinenumber: 79
      functionLinenumberEnd: 82
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - cls_rule_destroy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tnl-ports.c:80,5'
          Dst:             cls_rule_destroy
    - functionName:    tnl_port_unref
      functionSourceFile: '/src/openvswitch/lib/tnl-ports.c'
      linkageType:     InternalLinkage
      functionLinenumber: 230
      functionLinenumberEnd: 237
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          42
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - classifier_remove_assert
        - ovs_refcount_unref_relaxed
        - ovsrcu_postpone__
        - tnl_port_cast
        - tnl_port_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tnl-ports.c:231,29'
          Dst:             tnl_port_cast
        - Src:             'lib/tnl-ports.c:233,15'
          Dst:             ovs_refcount_unref_relaxed
        - Src:             'lib/tnl-ports.c:234,9'
          Dst:             classifier_remove_assert
        - Src:             'lib/tnl-ports.c:235,9'
          Dst:             ovsrcu_postpone__
        - Src:             'lib/tnl-ports.c:235,9'
          Dst:             tnl_port_free
    - functionName:    ovs_refcount_unref_relaxed
      functionSourceFile: '/src/openvswitch/lib/ovs-atomic.h'
      linkageType:     InternalLinkage
      functionLinenumber: 659
      functionLinenumberEnd: 665
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-atomic.h:664,5'
          Dst:             ovs_ignore
    - functionName:    map_delete
      functionSourceFile: '/src/openvswitch/lib/tnl-ports.c'
      linkageType:     InternalLinkage
      functionLinenumber: 242
      functionLinenumberEnd: 250
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - short
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - classifier_lookup
        - tnl_port_init_flow
        - tnl_port_unref
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tnl-ports.c:246,5'
          Dst:             tnl_port_init_flow
        - Src:             'lib/tnl-ports.c:248,10'
          Dst:             classifier_lookup
        - Src:             'lib/tnl-ports.c:249,5'
          Dst:             tnl_port_unref
    - functionName:    ipdev_map_delete
      functionSourceFile: '/src/openvswitch/lib/tnl-ports.c'
      linkageType:     InternalLinkage
      functionLinenumber: 254
      functionLinenumberEnd: 262
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - short
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          65
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - map_delete
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tnl-ports.c:259,13'
          Dst:             map_delete
    - functionName:    ovs_list_remove
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 251
      functionLinenumberEnd: 254
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          25
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_refcount_ref
      functionSourceFile: '/src/openvswitch/lib/ovs-atomic.h'
      linkageType:     InternalLinkage
      functionLinenumber: 539
      functionLinenumberEnd: 545
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-atomic.h:544,5'
          Dst:             ovs_ignore
    - functionName:    tnl_port_show
      functionSourceFile: '/src/openvswitch/lib/tnl-ports.c'
      linkageType:     InternalLinkage
      functionLinenumber: 356
      functionLinenumberEnd: 378
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          99
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - ds_cstr
        - ds_destroy
        - ds_put_format
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovs_refcount_read
        - strcasecmp
        - tnl_port_show_v
        - unixctl_command_reply
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tnl-ports.c:360,5'
          Dst:             ds_put_format
        - Src:             'lib/tnl-ports.c:361,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/tnl-ports.c:363,14'
          Dst:             strcasecmp
        - Src:             'lib/tnl-ports.c:364,13'
          Dst:             tnl_port_show_v
        - Src:             'lib/tnl-ports.c:371,23'
          Dst:             ovs_refcount_read
        - Src:             'lib/tnl-ports.c:370,9'
          Dst:             ds_put_format
        - Src:             'lib/tnl-ports.c:375,5'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/tnl-ports.c:376,33'
          Dst:             ds_cstr
        - Src:             'lib/tnl-ports.c:376,5'
          Dst:             unixctl_command_reply
        - Src:             'lib/tnl-ports.c:377,5'
          Dst:             ds_destroy
    - functionName:    ovs_list_init
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    tnl_port_map_init
      functionSourceFile: '/src/openvswitch/lib/tnl-ports.c'
      linkageType:     InternalLinkage
      functionLinenumber: 520
      functionLinenumberEnd: 525
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - classifier_init
        - ovs_list_init
        - tnl_port_show
        - unixctl_command_register
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tnl-ports.c:521,5'
          Dst:             classifier_init
        - Src:             'lib/tnl-ports.c:522,5'
          Dst:             ovs_list_init
        - Src:             'lib/tnl-ports.c:523,5'
          Dst:             ovs_list_init
        - Src:             'lib/tnl-ports.c:524,5'
          Dst:             unixctl_command_register
        - Src:             'lib/tnl-ports.c:524,5'
          Dst:             tnl_port_show
    - functionName:    tnl_port_map_run
      functionSourceFile: '/src/openvswitch/lib/tnl-ports.c'
      linkageType:     InternalLinkage
      functionLinenumber: 499
      functionLinenumberEnd: 516
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         12
      ICount:          77
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - delete_ipdev
        - insert_ipdev
        - netdev_get_change_seq
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovs_strlcpy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tnl-ports.c:502,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/tnl-ports.c:506,35'
          Dst:             netdev_get_change_seq
        - Src:             'lib/tnl-ports.c:511,9'
          Dst:             ovs_strlcpy
        - Src:             'lib/tnl-ports.c:512,9'
          Dst:             delete_ipdev
        - Src:             'lib/tnl-ports.c:513,9'
          Dst:             insert_ipdev
        - Src:             'lib/tnl-ports.c:515,5'
          Dst:             ovs_mutex_unlock
    - functionName:    delete_ipdev
      functionSourceFile: '/src/openvswitch/lib/tnl-ports.c'
      linkageType:     InternalLinkage
      functionLinenumber: 448
      functionLinenumberEnd: 459
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          70
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ipdev_map_delete
        - netdev_close
        - ovs_list_remove
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tnl-ports.c:452,9'
          Dst:             ipdev_map_delete
        - Src:             'lib/tnl-ports.c:455,5'
          Dst:             ovs_list_remove
        - Src:             'lib/tnl-ports.c:456,5'
          Dst:             netdev_close
    - functionName:    insert_ipdev
      functionSourceFile: '/src/openvswitch/lib/tnl-ports.c'
      linkageType:     InternalLinkage
      functionLinenumber: 426
      functionLinenumberEnd: 444
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          56
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - insert_ipdev__
        - netdev_close
        - netdev_get_addr_list
        - netdev_get_type_from_name
        - netdev_open
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tnl-ports.c:431,35'
          Dst:             netdev_get_type_from_name
        - Src:             'lib/tnl-ports.c:431,13'
          Dst:             netdev_open
        - Src:             'lib/tnl-ports.c:436,13'
          Dst:             netdev_get_addr_list
        - Src:             'lib/tnl-ports.c:438,9'
          Dst:             netdev_close
        - Src:             'lib/tnl-ports.c:442,5'
          Dst:             insert_ipdev__
        - Src:             'lib/tnl-ports.c:443,5'
          Dst:             netdev_close
    - functionName:    tnl_port_map_delete_ipdev
      functionSourceFile: '/src/openvswitch/lib/tnl-ports.c'
      linkageType:     InternalLinkage
      functionLinenumber: 485
      functionLinenumberEnd: 495
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          74
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - delete_ipdev
        - netdev_get_name
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - strcmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tnl-ports.c:488,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/tnl-ports.c:490,21'
          Dst:             netdev_get_name
        - Src:             'lib/tnl-ports.c:490,14'
          Dst:             strcmp
        - Src:             'lib/tnl-ports.c:491,13'
          Dst:             delete_ipdev
        - Src:             'lib/tnl-ports.c:494,5'
          Dst:             ovs_mutex_unlock
    - functionName:    tnl_port_map_insert_ipdev
      functionSourceFile: '/src/openvswitch/lib/tnl-ports.c'
      linkageType:     InternalLinkage
      functionLinenumber: 463
      functionLinenumberEnd: 481
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         16
      ICount:          91
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - delete_ipdev
        - insert_ipdev
        - netdev_get_change_seq
        - netdev_get_name
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tnl-ports.c:466,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/tnl-ports.c:469,21'
          Dst:             netdev_get_name
        - Src:             'lib/tnl-ports.c:469,14'
          Dst:             strcmp
        - Src:             'lib/tnl-ports.c:470,39'
          Dst:             netdev_get_change_seq
        - Src:             'lib/tnl-ports.c:474,13'
          Dst:             delete_ipdev
        - Src:             'lib/tnl-ports.c:477,5'
          Dst:             insert_ipdev
        - Src:             'lib/tnl-ports.c:480,5'
          Dst:             ovs_mutex_unlock
    - functionName:    tnl_port_map_lookup
      functionSourceFile: '/src/openvswitch/lib/tnl-ports.c'
      linkageType:     InternalLinkage
      functionLinenumber: 304
      functionLinenumberEnd: 308
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - classifier_lookup
        - tnl_port_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tnl-ports.c:305,33'
          Dst:             classifier_lookup
        - Src:             'lib/tnl-ports.c:308,19'
          Dst:             tnl_port_cast
    - functionName:    tnl_port_map_delete__
      functionSourceFile: '/src/openvswitch/lib/tnl-ports.c'
      linkageType:     InternalLinkage
      functionLinenumber: 266
      functionLinenumberEnd: 283
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         25
      ICount:          142
      EdgeCount:       32
      CyclomaticComplexity: 9
      functionsReached:
        - ipdev_map_delete
        - ovs_list_remove
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovs_refcount_unref_relaxed
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tnl-ports.c:270,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/tnl-ports.c:273,21'
          Dst:             ovs_refcount_unref_relaxed
        - Src:             'lib/tnl-ports.c:274,13'
          Dst:             ovs_list_remove
        - Src:             'lib/tnl-ports.c:276,17'
          Dst:             ipdev_map_delete
        - Src:             'lib/tnl-ports.c:282,5'
          Dst:             ovs_mutex_unlock
    - functionName:    tnl_port_map_delete
      functionSourceFile: '/src/openvswitch/lib/tnl-ports.c'
      linkageType:     InternalLinkage
      functionLinenumber: 287
      functionLinenumberEnd: 298
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          58
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - tnl_port_map_delete__
        - tnl_type_to_nw_proto
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tnl-ports.c:291,5'
          Dst:             tnl_type_to_nw_proto
        - Src:             'lib/tnl-ports.c:295,13'
          Dst:             tnl_port_map_delete__
    - functionName:    tnl_type_to_nw_proto
      functionSourceFile: '/src/openvswitch/lib/tnl-ports.c'
      linkageType:     InternalLinkage
      functionLinenumber: 166
      functionLinenumberEnd: 179
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         24
      ICount:          113
      EdgeCount:       32
      CyclomaticComplexity: 10
      functionsReached:
        - strcmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tnl-ports.c:169,10'
          Dst:             strcmp
        - Src:             'lib/tnl-ports.c:169,37'
          Dst:             strcmp
        - Src:             'lib/tnl-ports.c:170,10'
          Dst:             strcmp
        - Src:             'lib/tnl-ports.c:172,17'
          Dst:             strcmp
        - Src:             'lib/tnl-ports.c:172,41'
          Dst:             strcmp
        - Src:             'lib/tnl-ports.c:173,17'
          Dst:             strcmp
        - Src:             'lib/tnl-ports.c:173,47'
          Dst:             strcmp
        - Src:             'lib/tnl-ports.c:175,17'
          Dst:             strcmp
    - functionName:    tnl_port_map_insert__
      functionSourceFile: '/src/openvswitch/lib/tnl-ports.c'
      linkageType:     InternalLinkage
      functionLinenumber: 184
      functionLinenumberEnd: 210
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - int
        - short
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          161
      EdgeCount:       29
      CyclomaticComplexity: 8
      functionsReached:
        - map_insert_ipdev__
        - ovs_list_insert
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovs_refcount_init
        - ovs_refcount_ref
        - ovs_strlcpy
        - xzalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tnl-ports.c:188,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/tnl-ports.c:191,13'
          Dst:             ovs_refcount_ref
        - Src:             'lib/tnl-ports.c:196,9'
          Dst:             xzalloc
        - Src:             'lib/tnl-ports.c:200,5'
          Dst:             ovs_strlcpy
        - Src:             'lib/tnl-ports.c:201,5'
          Dst:             ovs_refcount_init
        - Src:             'lib/tnl-ports.c:202,5'
          Dst:             ovs_list_insert
        - Src:             'lib/tnl-ports.c:205,9'
          Dst:             map_insert_ipdev__
        - Src:             'lib/tnl-ports.c:209,5'
          Dst:             ovs_mutex_unlock
    - functionName:    tnl_port_map_insert
      functionSourceFile: '/src/openvswitch/lib/tnl-ports.c'
      linkageType:     InternalLinkage
      functionLinenumber: 215
      functionLinenumberEnd: 226
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - int
        - short
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          64
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - tnl_port_map_insert__
        - tnl_type_to_nw_proto
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tnl-ports.c:219,5'
          Dst:             tnl_type_to_nw_proto
        - Src:             'lib/tnl-ports.c:223,13'
          Dst:             tnl_port_map_insert__
    - functionName:    ofpbuf_tail
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 203
      functionLinenumberEnd: 205
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          56
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:204,5'
          Dst:             ovs_ignore
    - functionName:    hmap_next_in_bucket
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 381
      functionLinenumberEnd: 382
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_first_in_bucket
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 367
      functionLinenumberEnd: 368
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_remove
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 317
      functionLinenumberEnd: 324
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          48
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    bitmap_set_n__
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 125
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - bitmap_unit__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/bitmap.h:121,10'
          Dst:             bitmap_unit__
        - Src:             'lib/bitmap.h:123,10'
          Dst:             bitmap_unit__
    - functionName:    bitmap_unit__
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 26
      functionLinenumberEnd: 27
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    bitmap_set_multiple
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 132
      functionLinenumberEnd: 147
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          119
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - bitmap_set_n__
        - bitmap_unit__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/bitmap.h:136,9'
          Dst:             bitmap_set_n__
        - Src:             'lib/bitmap.h:141,10'
          Dst:             bitmap_unit__
        - Src:             'lib/bitmap.h:145,9'
          Dst:             bitmap_set_n__
    - functionName:    bitmap_scan
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 227
      functionLinenumberEnd: 252
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - bool
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          160
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - bitmap_unit__
        - raw_ctz
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/bitmap.h:231,13'
          Dst:             bitmap_unit__
        - Src:             'lib/bitmap.h:246,18'
          Dst:             raw_ctz
    - functionName:    raw_ctz
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 261
      functionLinenumberEnd: 267
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          36
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_rot
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 32
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhash_add__
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hash_rot
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:71,12'
          Dst:             hash_rot
    - functionName:    mhash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_rot
        - mhash_add__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:78,12'
          Dst:             mhash_add__
        - Src:             'lib/hash.h:79,12'
          Dst:             hash_rot
    - functionName:    mhash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 108
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_add
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:109,12'
          Dst:             mhash_add
    - functionName:    hash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:119,12'
          Dst:             mhash_finish
    - functionName:    hash_2words
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 153
      functionLinenumberEnd: 154
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_add
        - hash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:154,33'
          Dst:             hash_add
        - Src:             'lib/hash.h:154,24'
          Dst:             hash_add
        - Src:             'lib/hash.h:154,12'
          Dst:             hash_finish
    - functionName:    hash_int
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 408
      functionLinenumberEnd: 409
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_2words
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:409,12'
          Dst:             hash_2words
    - functionName:    tun_metadata_alloc_chain
      functionSourceFile: '/src/openvswitch/lib/tun-metadata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 477
      functionLinenumberEnd: 517
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - char
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          152
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - bitmap_scan
        - bitmap_set_multiple
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tun-metadata.c:485,21'
          Dst:             bitmap_scan
        - Src:             'lib/tun-metadata.c:490,19'
          Dst:             bitmap_scan
        - Src:             'lib/tun-metadata.c:512,5'
          Dst:             bitmap_set_multiple
    - functionName:    tun_meta_hash
      functionSourceFile: '/src/openvswitch/lib/tun-metadata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 425
      functionLinenumberEnd: 426
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_int
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tun-metadata.c:426,12'
          Dst:             hash_int
    - functionName:    ovs_list_insert
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 169
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_insert_fast
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 289
      functionLinenumberEnd: 295
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          38
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_next__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 401
      functionLinenumberEnd: 410
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          51
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    tun_metadata_allocation_copy
      functionSourceFile: '/src/openvswitch/lib/tun-metadata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 954
      functionLinenumberEnd: 960
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          34
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    tun_metadata_allocation_clone
      functionSourceFile: '/src/openvswitch/lib/tun-metadata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 947
      functionLinenumberEnd: 948
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          37
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - xmemdup
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tun-metadata.c:948,32'
          Dst:             xmemdup
    - functionName:    ds_put_char
      functionSourceFile: '/src/openvswitch/./include/openvswitch/dynamic-string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_char__
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/dynamic-string.h:99,9'
          Dst:             ds_put_char__
    - functionName:    tun_metadata_match_format
      functionSourceFile: '/src/openvswitch/lib/tun-metadata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 904
      functionLinenumberEnd: 943
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         31
      ICount:          210
      EdgeCount:       40
      CyclomaticComplexity: 11
      functionsReached:
        - ds_put_char
        - ds_put_cstr
        - ds_put_format
        - ds_put_hex
        - is_all_ones
        - is_all_zeros
        - memcpy_from_metadata
        - metadata_loc_from_match_read
        - raw_ctz
        - zero_rightmost_1bit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tun-metadata.c:912,5'
          Dst:             raw_ctz
        - Src:             'lib/tun-metadata.c:917,15'
          Dst:             metadata_loc_from_match_read
        - Src:             'lib/tun-metadata.c:921,9'
          Dst:             ds_put_format
        - Src:             'lib/tun-metadata.c:922,9'
          Dst:             memcpy_from_metadata
        - Src:             'lib/tun-metadata.c:927,13'
          Dst:             ds_put_cstr
        - Src:             'lib/tun-metadata.c:929,22'
          Dst:             is_all_zeros
        - Src:             'lib/tun-metadata.c:930,13'
          Dst:             ds_put_char
        - Src:             'lib/tun-metadata.c:932,13'
          Dst:             memcpy_from_metadata
        - Src:             'lib/tun-metadata.c:934,13'
          Dst:             ds_put_hex
        - Src:             'lib/tun-metadata.c:936,18'
          Dst:             is_all_ones
        - Src:             'lib/tun-metadata.c:937,17'
          Dst:             ds_put_char
        - Src:             'lib/tun-metadata.c:938,17'
          Dst:             ds_put_hex
        - Src:             'lib/tun-metadata.c:941,9'
          Dst:             ds_put_char
        - Src:             'lib/tun-metadata.c:912,5'
          Dst:             zero_rightmost_1bit
    - functionName:    metadata_loc_from_match_read
      functionSourceFile: '/src/openvswitch/lib/tun-metadata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 857
      functionLinenumberEnd: 872
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          107
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - is_all_ones
        - memcpy_from_metadata
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tun-metadata.c:865,5'
          Dst:             memcpy_from_metadata
        - Src:             'lib/tun-metadata.c:869,19'
          Dst:             is_all_ones
    - functionName:    memcpy_from_metadata
      functionSourceFile: '/src/openvswitch/lib/tun-metadata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 462
      functionLinenumberEnd: 472
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          54
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    zero_rightmost_1bit
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 390
      functionLinenumberEnd: 391
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    tun_metadata_to_nx_match
      functionSourceFile: '/src/openvswitch/lib/tun-metadata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 879
      functionLinenumberEnd: 898
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          113
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - memcpy_from_metadata
        - metadata_loc_from_match_read
        - nxm_put_entry_raw
        - raw_ctz
        - zero_rightmost_1bit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tun-metadata.c:882,5'
          Dst:             raw_ctz
        - Src:             'lib/tun-metadata.c:888,15'
          Dst:             metadata_loc_from_match_read
        - Src:             'lib/tun-metadata.c:891,9'
          Dst:             memcpy_from_metadata
        - Src:             'lib/tun-metadata.c:893,9'
          Dst:             memcpy_from_metadata
        - Src:             'lib/tun-metadata.c:895,9'
          Dst:             nxm_put_entry_raw
        - Src:             'lib/tun-metadata.c:882,5'
          Dst:             zero_rightmost_1bit
    - functionName:    tun_metadata_to_geneve_mask__
      functionSourceFile: '/src/openvswitch/lib/tun-metadata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 749
      functionLinenumberEnd: 774
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          121
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - htons
        - memcpy_from_metadata
        - tun_meta_find_key
        - tun_meta_key
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tun-metadata.c:757,35'
          Dst:             tun_meta_key
        - Src:             'lib/tun-metadata.c:756,17'
          Dst:             tun_meta_find_key
        - Src:             'lib/tun-metadata.c:759,13'
          Dst:             memcpy_from_metadata
        - Src:             'lib/tun-metadata.c:764,26'
          Dst:             htons
    - functionName:    tun_meta_key
      functionSourceFile: '/src/openvswitch/lib/tun-metadata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 67
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - short
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    tun_meta_find_key
      functionSourceFile: '/src/openvswitch/lib/tun-metadata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 431
      functionLinenumberEnd: 440
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          71
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_first_in_bucket
        - hmap_next_in_bucket
        - tun_meta_hash
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tun-metadata.c:434,5'
          Dst:             tun_meta_hash
        - Src:             'lib/tun-metadata.c:434,5'
          Dst:             hmap_first_in_bucket
        - Src:             'lib/tun-metadata.c:434,5'
          Dst:             hmap_next_in_bucket
    - functionName:    tun_metadata_to_geneve_udpif_mask
      functionSourceFile: '/src/openvswitch/lib/tun-metadata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 847
      functionLinenumberEnd: 851
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - tun_metadata_to_geneve_mask__
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tun-metadata.c:849,5'
          Dst:             tun_metadata_to_geneve_mask__
    - functionName:    tun_metadata_to_geneve_nlattr_mask
      functionSourceFile: '/src/openvswitch/lib/tun-metadata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 781
      functionLinenumberEnd: 809
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          85
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - nl_attr_find__
        - nl_attr_find_nested
        - nl_attr_get
        - nl_attr_get_size
        - nl_msg_put
        - ofpbuf_tail
        - tun_metadata_to_geneve_mask__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tun-metadata.c:791,15'
          Dst:             nl_attr_find__
        - Src:             'lib/tun-metadata.c:796,18'
          Dst:             nl_attr_find_nested
        - Src:             'lib/tun-metadata.c:801,19'
          Dst:             ofpbuf_tail
        - Src:             'lib/tun-metadata.c:802,5'
          Dst:             nl_msg_put
        - Src:             'lib/tun-metadata.c:804,11'
          Dst:             nl_attr_get
        - Src:             'lib/tun-metadata.c:805,16'
          Dst:             nl_attr_get_size
        - Src:             'lib/tun-metadata.c:807,5'
          Dst:             tun_metadata_to_geneve_mask__
    - functionName:    tun_metadata_to_geneve_nlattr_flow
      functionSourceFile: '/src/openvswitch/lib/tun-metadata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 710
      functionLinenumberEnd: 726
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - nl_msg_end_nested
        - nl_msg_start_nested
        - tun_metadata_to_geneve__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tun-metadata.c:721,21'
          Dst:             nl_msg_start_nested
        - Src:             'lib/tun-metadata.c:723,5'
          Dst:             tun_metadata_to_geneve__
        - Src:             'lib/tun-metadata.c:725,5'
          Dst:             nl_msg_end_nested
    - functionName:    tun_metadata_to_geneve__
      functionSourceFile: '/src/openvswitch/lib/tun-metadata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 684
      functionLinenumberEnd: 705
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          143
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - memcpy_from_metadata
        - ofpbuf_put_uninit
        - raw_ctz
        - tun_key_class
        - tun_key_type
        - zero_rightmost_1bit
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tun-metadata.c:689,5'
          Dst:             raw_ctz
        - Src:             'lib/tun-metadata.c:693,15'
          Dst:             ofpbuf_put_uninit
        - Src:             'lib/tun-metadata.c:695,26'
          Dst:             tun_key_class
        - Src:             'lib/tun-metadata.c:696,21'
          Dst:             tun_key_type
        - Src:             'lib/tun-metadata.c:702,9'
          Dst:             memcpy_from_metadata
        - Src:             'lib/tun-metadata.c:689,5'
          Dst:             zero_rightmost_1bit
    - functionName:    tun_key_class
      functionSourceFile: '/src/openvswitch/lib/tun-metadata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 72
      functionLinenumberEnd: 73
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    tun_key_type
      functionSourceFile: '/src/openvswitch/lib/tun-metadata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 78
      functionLinenumberEnd: 79
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    tun_metadata_to_geneve_nlattr
      functionSourceFile: '/src/openvswitch/lib/tun-metadata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 822
      functionLinenumberEnd: 836
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          68
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - nl_msg_put_unspec
        - tun_metadata_to_geneve_nlattr_flow
        - tun_metadata_to_geneve_nlattr_mask
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tun-metadata.c:827,13'
          Dst:             tun_metadata_to_geneve_nlattr_flow
        - Src:             'lib/tun-metadata.c:829,13'
          Dst:             tun_metadata_to_geneve_nlattr_mask
        - Src:             'lib/tun-metadata.c:832,9'
          Dst:             nl_msg_put_unspec
    - functionName:    tun_metadata_to_geneve_header
      functionSourceFile: '/src/openvswitch/lib/tun-metadata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 736
      functionLinenumberEnd: 742
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpbuf_use_stack
        - tun_metadata_to_geneve__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tun-metadata.c:739,5'
          Dst:             ofpbuf_use_stack
        - Src:             'lib/tun-metadata.c:740,5'
          Dst:             tun_metadata_to_geneve__
    - functionName:    tun_metadata_from_geneve_udpif
      functionSourceFile: '/src/openvswitch/lib/tun-metadata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 637
      functionLinenumberEnd: 679
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          187
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - memcpy_to_metadata
        - tun_meta_find_key
        - tun_meta_key
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tun-metadata.c:660,35'
          Dst:             tun_meta_key
        - Src:             'lib/tun-metadata.c:659,17'
          Dst:             tun_meta_find_key
        - Src:             'lib/tun-metadata.c:664,17'
          Dst:             memcpy_to_metadata
    - functionName:    memcpy_to_metadata
      functionSourceFile: '/src/openvswitch/lib/tun-metadata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 445
      functionLinenumberEnd: 457
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          64
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    tun_metadata_from_geneve_nlattr
      functionSourceFile: '/src/openvswitch/lib/tun-metadata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 611
      functionLinenumberEnd: 625
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          60
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - nl_attr_get
        - nl_attr_get_size
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tun-metadata.c:612,20'
          Dst:             nl_attr_get_size
        - Src:             'lib/tun-metadata.c:614,36'
          Dst:             nl_attr_get
    - functionName:    tun_metadata_get_fmd
      functionSourceFile: '/src/openvswitch/lib/tun-metadata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 402
      functionLinenumberEnd: 421
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          99
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - memcpy_from_metadata
        - memcpy_to_metadata
        - metadata_loc_from_match
        - raw_ctz
        - zero_rightmost_1bit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tun-metadata.c:405,5'
          Dst:             raw_ctz
        - Src:             'lib/tun-metadata.c:410,19'
          Dst:             metadata_loc_from_match
        - Src:             'lib/tun-metadata.c:413,9'
          Dst:             memcpy_from_metadata
        - Src:             'lib/tun-metadata.c:414,9'
          Dst:             memcpy_to_metadata
        - Src:             'lib/tun-metadata.c:418,9'
          Dst:             memcpy_to_metadata
        - Src:             'lib/tun-metadata.c:405,5'
          Dst:             zero_rightmost_1bit
    - functionName:    metadata_loc_from_match
      functionSourceFile: '/src/openvswitch/lib/tun-metadata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 285
      functionLinenumberEnd: 328
      functionDepth:   0
      returnType:      'N/A'
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          215
      EdgeCount:       28
      CyclomaticComplexity: 9
      functionsReached:
        - ovs_ignore
        - xasprintf
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tun-metadata.c:286,5'
          Dst:             ovs_ignore
        - Src:             'lib/tun-metadata.c:302,24'
          Dst:             xasprintf
        - Src:             'lib/tun-metadata.c:313,24'
          Dst:             xasprintf
    - functionName:    tun_metadata_set_match
      functionSourceFile: '/src/openvswitch/lib/tun-metadata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 354
      functionLinenumberEnd: 395
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          209
      EdgeCount:       28
      CyclomaticComplexity: 8
      functionsReached:
        - memcpy_to_metadata
        - metadata_loc_from_match
        - mf_field_len
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tun-metadata.c:363,17'
          Dst:             mf_field_len
        - Src:             'lib/tun-metadata.c:364,11'
          Dst:             metadata_loc_from_match
        - Src:             'lib/tun-metadata.c:383,5'
          Dst:             memcpy_to_metadata
        - Src:             'lib/tun-metadata.c:393,5'
          Dst:             memcpy_to_metadata
    - functionName:    tun_metadata_delete
      functionSourceFile: '/src/openvswitch/lib/tun-metadata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 269
      functionLinenumberEnd: 279
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tun-metadata.c:277,5'
          Dst:             ovs_ignore
    - functionName:    tun_metadata_write
      functionSourceFile: '/src/openvswitch/lib/tun-metadata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 250
      functionLinenumberEnd: 262
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          81
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - memcpy_to_metadata
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tun-metadata.c:260,5'
          Dst:             memcpy_to_metadata
    - functionName:    tun_metadata_read
      functionSourceFile: '/src/openvswitch/lib/tun-metadata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 223
      functionLinenumberEnd: 238
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          84
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - memcpy_from_metadata
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tun-metadata.c:236,5'
          Dst:             memcpy_from_metadata
    - functionName:    ovs_list_push_back
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 204
      functionLinenumberEnd: 206
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_list_insert
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/list.h:205,5'
          Dst:             ovs_list_insert
    - functionName:    ovs_list_init
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    tun_metadata_table_request
      functionSourceFile: '/src/openvswitch/lib/tun-metadata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 188
      functionLinenumberEnd: 211
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          94
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ntohs
        - ovs_list_init
        - ovs_list_push_back
        - tun_key_class
        - tun_key_type
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tun-metadata.c:193,5'
          Dst:             ovs_list_init
        - Src:             'lib/tun-metadata.c:203,15'
          Dst:             xmalloc
        - Src:             'lib/tun-metadata.c:204,35'
          Dst:             tun_key_class
        - Src:             'lib/tun-metadata.c:204,29'
          Dst:             ntohs
        - Src:             'lib/tun-metadata.c:205,28'
          Dst:             tun_key_type
        - Src:             'lib/tun-metadata.c:209,9'
          Dst:             ovs_list_push_back
    - functionName:    tun_metadata_add_entry
      functionSourceFile: '/src/openvswitch/lib/tun-metadata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 522
      functionLinenumberEnd: 568
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - char
        - short
        - char
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          152
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - hmap_insert_at
        - htons
        - ovs_ignore
        - tun_meta_find_key
        - tun_meta_hash
        - tun_meta_key
        - tun_metadata_alloc_chain
        - tun_metadata_del_entry
        - xzalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tun-metadata.c:526,5'
          Dst:             ovs_ignore
        - Src:             'lib/tun-metadata.c:533,31'
          Dst:             htons
        - Src:             'lib/tun-metadata.c:533,18'
          Dst:             tun_meta_key
        - Src:             'lib/tun-metadata.c:534,9'
          Dst:             tun_meta_find_key
        - Src:             'lib/tun-metadata.c:539,5'
          Dst:             tun_meta_hash
        - Src:             'lib/tun-metadata.c:539,5'
          Dst:             hmap_insert_at
        - Src:             'lib/tun-metadata.c:551,25'
          Dst:             xzalloc
        - Src:             'lib/tun-metadata.c:555,15'
          Dst:             tun_metadata_alloc_chain
        - Src:             'lib/tun-metadata.c:557,13'
          Dst:             tun_metadata_del_entry
    - functionName:    hmap_insert_at
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 306
      functionLinenumberEnd: 311
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_expand_at
        - hmap_insert_fast
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:307,5'
          Dst:             hmap_insert_fast
        - Src:             './include/openvswitch/hmap.h:309,9'
          Dst:             hmap_expand_at
    - functionName:    tun_metadata_del_entry
      functionSourceFile: '/src/openvswitch/lib/tun-metadata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 572
      functionLinenumberEnd: 600
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          102
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - bitmap_set_multiple
        - hmap_remove
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tun-metadata.c:589,9'
          Dst:             bitmap_set_multiple
        - Src:             'lib/tun-metadata.c:598,5'
          Dst:             hmap_remove
    - functionName:    tun_metadata_table_mod
      functionSourceFile: '/src/openvswitch/lib/tun-metadata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 145
      functionLinenumberEnd: 183
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          172
      EdgeCount:       28
      CyclomaticComplexity: 5
      functionsReached:
        - abort
        - tun_metadata_add_entry
        - tun_metadata_alloc
        - tun_metadata_del_entry
        - tun_metadata_free
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib/tun-metadata.c:149,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/tun-metadata.c:151,20'
          Dst:             tun_metadata_alloc
        - Src:             'lib/tun-metadata.c:154,19'
          Dst:             tun_metadata_add_entry
        - Src:             'lib/tun-metadata.c:159,17'
          Dst:             tun_metadata_free
        - Src:             'lib/tun-metadata.c:167,20'
          Dst:             tun_metadata_alloc
        - Src:             'lib/tun-metadata.c:170,13'
          Dst:             tun_metadata_del_entry
        - Src:             'lib/tun-metadata.c:175,20'
          Dst:             tun_metadata_alloc
        - Src:             'lib/tun-metadata.c:179,9'
          Dst:             abort
    - functionName:    tun_metadata_alloc
      functionSourceFile: '/src/openvswitch/lib/tun-metadata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         16
      ICount:          121
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - hmap_first
        - hmap_init
        - hmap_insert_at
        - hmap_next
        - xmemdup
        - xzalloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tun-metadata.c:89,15'
          Dst:             xzalloc
        - Src:             'lib/tun-metadata.c:95,9'
          Dst:             hmap_init
        - Src:             'lib/tun-metadata.c:97,9'
          Dst:             hmap_first
        - Src:             'lib/tun-metadata.c:102,13'
          Dst:             hmap_insert_at
        - Src:             'lib/tun-metadata.c:106,31'
          Dst:             xmemdup
        - Src:             'lib/tun-metadata.c:97,9'
          Dst:             hmap_next
        - Src:             'lib/tun-metadata.c:111,9'
          Dst:             hmap_init
    - functionName:    tun_metadata_free
      functionSourceFile: '/src/openvswitch/lib/tun-metadata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 120
      functionLinenumberEnd: 133
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          76
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_destroy
        - hmap_first
        - hmap_next
        - tun_metadata_del_entry
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tun-metadata.c:127,5'
          Dst:             hmap_first
        - Src:             'lib/tun-metadata.c:128,9'
          Dst:             tun_metadata_del_entry
        - Src:             'lib/tun-metadata.c:127,5'
          Dst:             hmap_next
        - Src:             'lib/tun-metadata.c:131,5'
          Dst:             hmap_destroy
    - functionName:    hmap_first
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 416
      functionLinenumberEnd: 417
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:417,12'
          Dst:             hmap_next__
    - functionName:    hmap_next
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 429
      functionLinenumberEnd: 432
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_next__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:432,15'
          Dst:             hmap_next__
    - functionName:    tun_metadata_postpone_free
      functionSourceFile: '/src/openvswitch/lib/tun-metadata.c'
      linkageType:     InternalLinkage
      functionLinenumber: 137
      functionLinenumberEnd: 139
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrcu_postpone__
        - tun_metadata_free
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tun-metadata.c:138,5'
          Dst:             ovsrcu_postpone__
        - Src:             'lib/tun-metadata.c:138,5'
          Dst:             tun_metadata_free
    - functionName:    init_this_module_unixctl
      functionSourceFile: '/src/openvswitch/lib/unixctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/unixctl.c:36,1'
          Dst:             vlog_insert_module
    - functionName:    unixctl_received_init_coverage
      functionSourceFile: '/src/openvswitch/lib/unixctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 38
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/unixctl.c:38,1'
          Dst:             coverage_counter_register
    - functionName:    unixctl_replied_init_coverage
      functionSourceFile: '/src/openvswitch/lib/unixctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/unixctl.c:39,1'
          Dst:             coverage_counter_register
    - functionName:    unixctl_replied_count
      functionSourceFile: '/src/openvswitch/lib/unixctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_unixctl_replied_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/unixctl.c:39,1'
          Dst:             counter_unixctl_replied_get
    - functionName:    counter_unixctl_replied_get
      functionSourceFile: '/src/openvswitch/lib/unixctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_unixctl_replied_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/unixctl.c:39,1'
          Dst:             counter_unixctl_replied_get_unsafe
    - functionName:    counter_unixctl_replied_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/unixctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    unixctl_received_count
      functionSourceFile: '/src/openvswitch/lib/unixctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 38
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_unixctl_received_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/unixctl.c:38,1'
          Dst:             counter_unixctl_received_get
    - functionName:    counter_unixctl_received_get
      functionSourceFile: '/src/openvswitch/lib/unixctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 38
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_unixctl_received_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/unixctl.c:38,1'
          Dst:             counter_unixctl_received_get_unsafe
    - functionName:    counter_unixctl_received_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/unixctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 38
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_list_remove
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 251
      functionLinenumberEnd: 254
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          25
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    json_clone
      functionSourceFile: '/src/openvswitch/./include/openvswitch/json.h'
      linkageType:     InternalLinkage
      functionLinenumber: 189
      functionLinenumberEnd: 192
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    unixctl_received_add
      functionSourceFile: '/src/openvswitch/lib/unixctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 38
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_unixctl_received_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/unixctl.c:38,1'
          Dst:             counter_unixctl_received_get
    - functionName:    process_command
      functionSourceFile: '/src/openvswitch/lib/unixctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 370
      functionLinenumberEnd: 429
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         33
      ICount:          242
      EdgeCount:       42
      CyclomaticComplexity: 11
      functionsReached:
        - json_array_at
        - json_array_size
        - json_clone
        - json_string
        - json_to_string
        - shash_find_data
        - svec_add
        - svec_destroy
        - svec_terminate
        - unixctl_command_reply_error
        - unixctl_received_add
        - vlog
        - vlog_is_enabled
        - xasprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/unixctl.c:376,5'
          Dst:             unixctl_received_add
        - Src:             'lib/unixctl.c:377,24'
          Dst:             json_clone
        - Src:             'lib/unixctl.c:379,9'
          Dst:             vlog_is_enabled
        - Src:             'lib/unixctl.c:380,26'
          Dst:             json_to_string
        - Src:             'lib/unixctl.c:381,22'
          Dst:             json_to_string
        - Src:             'lib/unixctl.c:382,9'
          Dst:             vlog
        - Src:             'lib/unixctl.c:389,15'
          Dst:             shash_find_data
        - Src:             'lib/unixctl.c:391,17'
          Dst:             xasprintf
        - Src:             'lib/unixctl.c:394,16'
          Dst:             json_array_size
        - Src:             'lib/unixctl.c:395,17'
          Dst:             xasprintf
        - Src:             'lib/unixctl.c:397,16'
          Dst:             json_array_size
        - Src:             'lib/unixctl.c:398,17'
          Dst:             xasprintf
        - Src:             'lib/unixctl.c:402,21'
          Dst:             json_array_size
        - Src:             'lib/unixctl.c:404,9'
          Dst:             svec_add
        - Src:             'lib/unixctl.c:406,39'
          Dst:             json_array_at
        - Src:             'lib/unixctl.c:409,25'
          Dst:             xasprintf
        - Src:             'lib/unixctl.c:413,29'
          Dst:             json_string
        - Src:             'lib/unixctl.c:413,13'
          Dst:             svec_add
        - Src:             'lib/unixctl.c:415,9'
          Dst:             svec_terminate
        - Src:             'lib/unixctl.c:422,9'
          Dst:             svec_destroy
        - Src:             'lib/unixctl.c:426,9'
          Dst:             unixctl_command_reply_error
    - functionName:    unixctl_command_reply_error
      functionSourceFile: '/src/openvswitch/lib/unixctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 304
      functionLinenumberEnd: 307
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - json_string_create
        - unixctl_command_reply__
      functionUses:    60
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/unixctl.c:306,29'
          Dst:             json_string_create
        - Src:             'lib/unixctl.c:305,5'
          Dst:             unixctl_command_reply__
    - functionName:    unixctl_command_reply__
      functionSourceFile: '/src/openvswitch/lib/unixctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 231
      functionLinenumberEnd: 258
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          109
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - json_destroy
        - json_to_string
        - jsonrpc_create_error
        - jsonrpc_create_reply
        - jsonrpc_send
        - ovs_ignore
        - unixctl_replied_add
        - vlog
        - vlog_is_enabled
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/unixctl.c:234,5'
          Dst:             unixctl_replied_add
        - Src:             'lib/unixctl.c:235,5'
          Dst:             ovs_ignore
        - Src:             'lib/unixctl.c:238,17'
          Dst:             jsonrpc_create_reply
        - Src:             'lib/unixctl.c:240,17'
          Dst:             jsonrpc_create_error
        - Src:             'lib/unixctl.c:243,9'
          Dst:             vlog_is_enabled
        - Src:             'lib/unixctl.c:244,20'
          Dst:             json_to_string
        - Src:             'lib/unixctl.c:245,21'
          Dst:             json_to_string
        - Src:             'lib/unixctl.c:247,9'
          Dst:             vlog
        - Src:             'lib/unixctl.c:255,5'
          Dst:             jsonrpc_send
        - Src:             'lib/unixctl.c:256,5'
          Dst:             json_destroy
    - functionName:    unixctl_replied_add
      functionSourceFile: '/src/openvswitch/lib/unixctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_unixctl_replied_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/unixctl.c:39,1'
          Dst:             counter_unixctl_replied_get
    - functionName:    json_destroy
      functionSourceFile: '/src/openvswitch/./include/openvswitch/json.h'
      linkageType:     InternalLinkage
      functionLinenumber: 200
      functionLinenumberEnd: 204
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          38
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - json_destroy__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/json.h:202,9'
          Dst:             json_destroy__
    - functionName:    ovs_list_insert
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 169
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_next__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 401
      functionLinenumberEnd: 410
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          51
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_next
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 429
      functionLinenumberEnd: 432
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_next__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:432,15'
          Dst:             hmap_next__
    - functionName:    hmap_first
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 416
      functionLinenumberEnd: 417
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:417,12'
          Dst:             hmap_next__
    - functionName:    unixctl_client_transact
      functionSourceFile: '/src/openvswitch/lib/unixctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 592
      functionLinenumberEnd: 627
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          182
      EdgeCount:       32
      CyclomaticComplexity: 8
      functionsReached:
        - json_array_create
        - json_nullable_clone
        - json_string_create
        - json_to_string
        - jsonrpc_create_request
        - jsonrpc_get_name
        - jsonrpc_msg_destroy
        - jsonrpc_transact_block
        - ovs_retval_to_string
        - vlog
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/unixctl.c:600,17'
          Dst:             xmalloc
        - Src:             'lib/unixctl.c:602,24'
          Dst:             json_string_create
        - Src:             'lib/unixctl.c:604,14'
          Dst:             json_array_create
        - Src:             'lib/unixctl.c:605,15'
          Dst:             jsonrpc_create_request
        - Src:             'lib/unixctl.c:607,13'
          Dst:             jsonrpc_transact_block
        - Src:             'lib/unixctl.c:609,9'
          Dst:             jsonrpc_get_name
        - Src:             'lib/unixctl.c:609,9'
          Dst:             ovs_retval_to_string
        - Src:             'lib/unixctl.c:609,9'
          Dst:             vlog
        - Src:             'lib/unixctl.c:615,9'
          Dst:             jsonrpc_get_name
        - Src:             'lib/unixctl.c:615,9'
          Dst:             json_to_string
        - Src:             'lib/unixctl.c:615,9'
          Dst:             json_to_string
        - Src:             'lib/unixctl.c:615,9'
          Dst:             vlog
        - Src:             'lib/unixctl.c:621,19'
          Dst:             json_nullable_clone
        - Src:             'lib/unixctl.c:622,16'
          Dst:             json_nullable_clone
        - Src:             'lib/unixctl.c:625,5'
          Dst:             jsonrpc_msg_destroy
    - functionName:    unixctl_client_create
      functionSourceFile: '/src/openvswitch/lib/unixctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 560
      functionLinenumberEnd: 581
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          77
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - abs_file_name
        - jsonrpc_open
        - ovs_rundir
        - stream_open
        - stream_open_block
        - vlog
        - xasprintf
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/unixctl.c:564,36'
          Dst:             ovs_rundir
        - Src:             'lib/unixctl.c:564,22'
          Dst:             abs_file_name
        - Src:             'lib/unixctl.c:565,23'
          Dst:             xasprintf
        - Src:             'lib/unixctl.c:569,31'
          Dst:             stream_open
        - Src:             'lib/unixctl.c:569,13'
          Dst:             stream_open_block
        - Src:             'lib/unixctl.c:575,9'
          Dst:             vlog
        - Src:             'lib/unixctl.c:579,15'
          Dst:             jsonrpc_open
    - functionName:    unixctl_server_get_path
      functionSourceFile: '/src/openvswitch/lib/unixctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 548
      functionLinenumberEnd: 549
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          21
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    unixctl_server_destroy
      functionSourceFile: '/src/openvswitch/lib/unixctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 532
      functionLinenumberEnd: 544
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          78
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - kill_connection
        - pstream_close
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/unixctl.c:537,13'
          Dst:             kill_connection
        - Src:             'lib/unixctl.c:541,9'
          Dst:             pstream_close
    - functionName:    kill_connection
      functionSourceFile: '/src/openvswitch/lib/unixctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 469
      functionLinenumberEnd: 474
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - json_destroy
        - jsonrpc_close
        - ovs_list_remove
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/unixctl.c:470,5'
          Dst:             ovs_list_remove
        - Src:             'lib/unixctl.c:471,5'
          Dst:             jsonrpc_close
        - Src:             'lib/unixctl.c:472,5'
          Dst:             json_destroy
    - functionName:    unixctl_server_wait
      functionSourceFile: '/src/openvswitch/lib/unixctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 513
      functionLinenumberEnd: 527
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         18
      ICount:          98
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - jsonrpc_get_backlog
        - jsonrpc_recv_wait
        - jsonrpc_wait
        - pstream_wait
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/unixctl.c:520,5'
          Dst:             pstream_wait
        - Src:             'lib/unixctl.c:522,9'
          Dst:             jsonrpc_wait
        - Src:             'lib/unixctl.c:523,14'
          Dst:             jsonrpc_get_backlog
        - Src:             'lib/unixctl.c:524,13'
          Dst:             jsonrpc_recv_wait
    - functionName:    run_connection
      functionSourceFile: '/src/openvswitch/lib/unixctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 433
      functionLinenumberEnd: 465
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         33
      ICount:          166
      EdgeCount:       42
      CyclomaticComplexity: 11
      functionsReached:
        - jsonrpc_get_backlog
        - jsonrpc_get_name
        - jsonrpc_get_status
        - jsonrpc_msg_destroy
        - jsonrpc_msg_type_to_string
        - jsonrpc_recv
        - jsonrpc_run
        - process_command
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/unixctl.c:436,5'
          Dst:             jsonrpc_run
        - Src:             'lib/unixctl.c:437,13'
          Dst:             jsonrpc_get_status
        - Src:             'lib/unixctl.c:438,18'
          Dst:             jsonrpc_get_backlog
        - Src:             'lib/unixctl.c:449,9'
          Dst:             jsonrpc_recv
        - Src:             'lib/unixctl.c:452,17'
          Dst:             process_command
        - Src:             'lib/unixctl.c:454,17'
          Dst:             jsonrpc_get_name
        - Src:             'lib/unixctl.c:454,17'
          Dst:             jsonrpc_msg_type_to_string
        - Src:             'lib/unixctl.c:454,17'
          Dst:             vlog_rate_limit
        - Src:             'lib/unixctl.c:459,13'
          Dst:             jsonrpc_msg_destroy
        - Src:             'lib/unixctl.c:461,33'
          Dst:             jsonrpc_get_status
    - functionName:    ovs_list_push_back
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 204
      functionLinenumberEnd: 206
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_list_insert
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/list.h:205,5'
          Dst:             ovs_list_insert
    - functionName:    unixctl_server_run
      functionSourceFile: '/src/openvswitch/lib/unixctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 478
      functionLinenumberEnd: 509
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         34
      ICount:          180
      EdgeCount:       43
      CyclomaticComplexity: 11
      functionsReached:
        - jsonrpc_open
        - kill_connection
        - ovs_list_push_back
        - ovs_strerror
        - pstream_accept
        - pstream_get_name
        - run_connection
        - vlog_rate_limit
        - xzalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/unixctl.c:487,17'
          Dst:             pstream_accept
        - Src:             'lib/unixctl.c:489,41'
          Dst:             xzalloc
        - Src:             'lib/unixctl.c:490,13'
          Dst:             ovs_list_push_back
        - Src:             'lib/unixctl.c:491,25'
          Dst:             jsonrpc_open
        - Src:             'lib/unixctl.c:496,13'
          Dst:             pstream_get_name
        - Src:             'lib/unixctl.c:496,13'
          Dst:             ovs_strerror
        - Src:             'lib/unixctl.c:496,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/unixctl.c:504,21'
          Dst:             run_connection
        - Src:             'lib/unixctl.c:506,13'
          Dst:             kill_connection
    - functionName:    ovs_list_init
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    unixctl_set_options
      functionSourceFile: '/src/openvswitch/lib/unixctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 144
      functionLinenumberEnd: 185
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          106
      EdgeCount:       17
      CyclomaticComplexity: 3
      functionsReached:
        - abort
        - ovs_cmdl_parse_all
        - unixctl_command_reply
        - unixctl_command_reply_error
        - unixctl_output_fmt_from_string
        - xasprintf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/unixctl.c:163,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/unixctl.c:154,13'
          Dst:             ovs_cmdl_parse_all
        - Src:             'lib/unixctl.c:165,18'
          Dst:             unixctl_output_fmt_from_string
        - Src:             'lib/unixctl.c:167,25'
          Dst:             xasprintf
        - Src:             'lib/unixctl.c:174,13'
          Dst:             abort
        - Src:             'lib/unixctl.c:178,5'
          Dst:             unixctl_command_reply
        - Src:             'lib/unixctl.c:182,5'
          Dst:             unixctl_command_reply_error
    - functionName:    unixctl_output_fmt_from_string
      functionSourceFile: '/src/openvswitch/lib/unixctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 83
      functionLinenumberEnd: 92
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          47
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - strcasecmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/unixctl.c:84,10'
          Dst:             strcasecmp
        - Src:             'lib/unixctl.c:86,17'
          Dst:             strcasecmp
    - functionName:    unixctl_command_reply
      functionSourceFile: '/src/openvswitch/lib/unixctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 267
      functionLinenumberEnd: 282
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          58
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - json_object_create
        - json_object_put
        - json_object_put_string
        - json_string_create
        - unixctl_command_reply__
      functionUses:    46
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/unixctl.c:268,32'
          Dst:             json_string_create
        - Src:             'lib/unixctl.c:273,35'
          Dst:             json_object_create
        - Src:             'lib/unixctl.c:275,9'
          Dst:             json_object_put_string
        - Src:             'lib/unixctl.c:276,9'
          Dst:             json_object_put
        - Src:             'lib/unixctl.c:281,5'
          Dst:             unixctl_command_reply__
    - functionName:    unixctl_version
      functionSourceFile: '/src/openvswitch/lib/unixctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 137
      functionLinenumberEnd: 139
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_get_program_version
        - unixctl_command_reply
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/unixctl.c:138,33'
          Dst:             ovs_get_program_version
        - Src:             'lib/unixctl.c:138,5'
          Dst:             unixctl_command_reply
    - functionName:    unixctl_list_commands
      functionSourceFile: '/src/openvswitch/lib/unixctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 97
      functionLinenumberEnd: 132
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          155
      EdgeCount:       29
      CyclomaticComplexity: 8
      functionsReached:
        - ds_cstr
        - ds_destroy
        - ds_put_cstr
        - ds_put_format
        - hmap_first
        - hmap_next
        - json_object_create
        - json_object_put_string
        - shash_count
        - shash_sort
        - unixctl_command_get_output_format
        - unixctl_command_reply
        - unixctl_command_reply_json
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/unixctl.c:98,9'
          Dst:             unixctl_command_get_output_format
        - Src:             'lib/unixctl.c:99,38'
          Dst:             json_object_create
        - Src:             'lib/unixctl.c:102,9'
          Dst:             hmap_first
        - Src:             'lib/unixctl.c:106,17'
          Dst:             json_object_put_string
        - Src:             'lib/unixctl.c:102,9'
          Dst:             hmap_next
        - Src:             'lib/unixctl.c:110,9'
          Dst:             unixctl_command_reply_json
        - Src:             'lib/unixctl.c:113,43'
          Dst:             shash_sort
        - Src:             'lib/unixctl.c:116,9'
          Dst:             ds_put_cstr
        - Src:             'lib/unixctl.c:118,25'
          Dst:             shash_count
        - Src:             'lib/unixctl.c:123,17'
          Dst:             ds_put_format
        - Src:             'lib/unixctl.c:129,37'
          Dst:             ds_cstr
        - Src:             'lib/unixctl.c:129,9'
          Dst:             unixctl_command_reply
        - Src:             'lib/unixctl.c:130,9'
          Dst:             ds_destroy
    - functionName:    unixctl_command_get_output_format
      functionSourceFile: '/src/openvswitch/lib/unixctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 223
      functionLinenumberEnd: 224
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    unixctl_command_reply_json
      functionSourceFile: '/src/openvswitch/lib/unixctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 293
      functionLinenumberEnd: 296
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - unixctl_command_reply__
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/unixctl.c:294,5'
          Dst:             ovs_ignore
        - Src:             'lib/unixctl.c:295,5'
          Dst:             unixctl_command_reply__
    - functionName:    unixctl_server_create
      functionSourceFile: '/src/openvswitch/lib/unixctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 332
      functionLinenumberEnd: 366
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          116
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - abs_file_name
        - getpid
        - ovs_error
        - ovs_list_init
        - ovs_rundir
        - pstream_open
        - strcmp
        - unixctl_command_register
        - unixctl_list_commands
        - unixctl_set_options
        - unixctl_version
        - xasprintf
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/unixctl.c:334,18'
          Dst:             strcmp
        - Src:             'lib/unixctl.c:338,20'
          Dst:             getpid
        - Src:             'lib/unixctl.c:340,33'
          Dst:             ovs_rundir
        - Src:             'lib/unixctl.c:340,19'
          Dst:             abs_file_name
        - Src:             'lib/unixctl.c:341,41'
          Dst:             ovs_rundir
        - Src:             'lib/unixctl.c:341,14'
          Dst:             xasprintf
        - Src:             'lib/unixctl.c:344,24'
          Dst:             xasprintf
        - Src:             'lib/unixctl.c:345,17'
          Dst:             pstream_open
        - Src:             'lib/unixctl.c:349,9'
          Dst:             ovs_error
        - Src:             'lib/unixctl.c:354,5'
          Dst:             unixctl_command_register
        - Src:             'lib/unixctl.c:354,5'
          Dst:             unixctl_list_commands
        - Src:             'lib/unixctl.c:356,5'
          Dst:             unixctl_command_register
        - Src:             'lib/unixctl.c:356,5'
          Dst:             unixctl_version
        - Src:             'lib/unixctl.c:357,5'
          Dst:             unixctl_command_register
        - Src:             'lib/unixctl.c:357,5'
          Dst:             unixctl_set_options
        - Src:             'lib/unixctl.c:360,37'
          Dst:             xmalloc
        - Src:             'lib/unixctl.c:363,5'
          Dst:             ovs_list_init
    - 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:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    unixctl_command_register
      functionSourceFile: '/src/openvswitch/lib/unixctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 202
      functionLinenumberEnd: 219
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          82
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ovs_ignore
        - shash_add
        - shash_find_data
        - xmalloc
      functionUses:    50
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/unixctl.c:204,38'
          Dst:             shash_find_data
        - Src:             'lib/unixctl.c:206,5'
          Dst:             ovs_ignore
        - Src:             'lib/unixctl.c:212,15'
          Dst:             xmalloc
        - Src:             'lib/unixctl.c:218,5'
          Dst:             shash_add
    - functionName:    unixctl_output_fmt_to_string
      functionSourceFile: '/src/openvswitch/lib/unixctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 72
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         5
      ICount:          27
      EdgeCount:       8
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib/unixctl.c:73,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    init_this_module_userspace_tso
      functionSourceFile: '/src/openvswitch/lib/userspace-tso.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26
      functionLinenumberEnd: 26
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/userspace-tso.c:26,1'
          Dst:             vlog_insert_module
    - functionName:    userspace_tso_enabled
      functionSourceFile: '/src/openvswitch/lib/userspace-tso.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 47
      functionDepth:   0
      returnType:      bool
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    15
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsthread_once_start
      functionSourceFile: '/src/openvswitch/./include/openvswitch/thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsthread_once_start__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/thread.h:161,12'
          Dst:             ovsthread_once_start__
    - functionName:    userspace_tso_init
      functionSourceFile: '/src/openvswitch/lib/userspace-tso.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32
      functionLinenumberEnd: 42
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          52
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - ovsthread_once_done
        - ovsthread_once_start
        - smap_get_bool
        - vlog
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/userspace-tso.c:33,9'
          Dst:             smap_get_bool
        - Src:             'lib/userspace-tso.c:36,13'
          Dst:             ovsthread_once_start
        - Src:             'lib/userspace-tso.c:37,13'
          Dst:             vlog
        - Src:             'lib/userspace-tso.c:39,13'
          Dst:             ovsthread_once_done
    - functionName:    init_this_module_util
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 46
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:46,1'
          Dst:             vlog_insert_module
    - functionName:    util_xalloc_init_coverage
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:55,1'
          Dst:             coverage_counter_register
    - functionName:    util_xalloc_count
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_util_xalloc_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:55,1'
          Dst:             counter_util_xalloc_get
    - functionName:    counter_util_xalloc_get
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_util_xalloc_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:55,1'
          Dst:             counter_util_xalloc_get_unsafe
    - functionName:    counter_util_xalloc_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    bitmap_set_n__
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 125
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - bitmap_unit__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/bitmap.h:121,10'
          Dst:             bitmap_unit__
        - Src:             'lib/bitmap.h:123,10'
          Dst:             bitmap_unit__
    - functionName:    bitmap_unit__
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 26
      functionLinenumberEnd: 27
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    bitmap_bit__
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 32
      functionLinenumberEnd: 33
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    bitmap_set_multiple
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 132
      functionLinenumberEnd: 147
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          119
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - bitmap_set_n__
        - bitmap_unit__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/bitmap.h:136,9'
          Dst:             bitmap_set_n__
        - Src:             'lib/bitmap.h:141,10'
          Dst:             bitmap_unit__
        - Src:             'lib/bitmap.h:145,9'
          Dst:             bitmap_set_n__
    - functionName:    bitmap_set1
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 96
      functionLinenumberEnd: 98
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - bitmap_bit__
        - bitmap_unit__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/bitmap.h:97,39'
          Dst:             bitmap_bit__
        - Src:             'lib/bitmap.h:97,6'
          Dst:             bitmap_unit__
    - functionName:    bitmap_is_set
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 90
      functionLinenumberEnd: 91
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - bitmap_bit__
        - bitmap_unit__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/bitmap.h:91,14'
          Dst:             bitmap_unit__
        - Src:             'lib/bitmap.h:91,46'
          Dst:             bitmap_bit__
    - functionName:    parse_scanset
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2044
      functionLinenumberEnd: 2066
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          162
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - bitmap_set1
        - bitmap_set_multiple
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:2051,9'
          Dst:             bitmap_set1
        - Src:             'lib/util.c:2057,13'
          Dst:             bitmap_set_multiple
        - Src:             'lib/util.c:2060,13'
          Dst:             bitmap_set1
    - functionName:    scan_output_string
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2016
      functionLinenumberEnd: 2022
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          59
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    skip_digits
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1950
      functionLinenumberEnd: 1954
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          39
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    scan_chars
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2097
      functionLinenumberEnd: 2107
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          98
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:2100,9'
          Dst:             strlen
    - functionName:    scan_set
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2072
      functionLinenumberEnd: 2093
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          110
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - bitmap_is_set
        - parse_scanset
        - scan_output_string
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:2079,11'
          Dst:             parse_scanset
        - Src:             'lib/util.c:2084,15'
          Dst:             bitmap_is_set
        - Src:             'lib/util.c:2091,5'
          Dst:             scan_output_string
    - functionName:    scan_string
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2026
      functionLinenumberEnd: 2040
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          95
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - __ctype_b_loc
        - scan_output_string
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:2030,22'
          Dst:             __ctype_b_loc
        - Src:             'lib/util.c:2038,5'
          Dst:             scan_output_string
    - functionName:    scan_float
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1959
      functionLinenumberEnd: 2010
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         45
      ICount:          311
      EdgeCount:       53
      CyclomaticComplexity: 10
      functionsReached:
        - abort
        - skip_digits
        - strtold
        - xmemdup0
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/util.c:1989,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/util.c:1967,9'
          Dst:             skip_digits
        - Src:             'lib/util.c:1969,13'
          Dst:             skip_digits
        - Src:             'lib/util.c:1974,13'
          Dst:             skip_digits
        - Src:             'lib/util.c:1981,12'
          Dst:             xmemdup0
        - Src:             'lib/util.c:1982,13'
          Dst:             strtold
        - Src:             'lib/util.c:2007,9'
          Dst:             abort
    - functionName:    xmemdup0
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 193
      functionLinenumberEnd: 197
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - xmalloc
      functionUses:    15
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:194,15'
          Dst:             xmalloc
    - functionName:    strtold
      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:    xmalloc
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 171
      functionLinenumberEnd: 173
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - util_xalloc_add
        - xmalloc__
      functionUses:    1537
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:172,5'
          Dst:             util_xalloc_add
        - Src:             'lib/util.c:173,12'
          Dst:             xmalloc__
    - functionName:    util_xalloc_add
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_util_xalloc_get
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:55,1'
          Dst:             counter_util_xalloc_get
    - functionName:    xmalloc__
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 137
      functionLinenumberEnd: 142
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          42
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - out_of_memory
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:140,9'
          Dst:             out_of_memory
    - functionName:    out_of_memory
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 116
      functionLinenumberEnd: 116
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          2
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_abort
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:116,5'
          Dst:             ovs_abort
    - functionName:    ovs_abort
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 438
      functionLinenumberEnd: 439
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_abort_valist
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:439,5'
          Dst:             ovs_abort_valist
    - functionName:    ovs_abort_valist
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 446
      functionLinenumberEnd: 447
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached:
        - abort
        - ovs_error_valist
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:446,5'
          Dst:             ovs_error_valist
        - Src:             'lib/util.c:447,5'
          Dst:             abort
    - functionName:    ovs_error_valist
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 492
      functionLinenumberEnd: 509
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          70
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - __errno_location
        - fprintf
        - get_subprogram_name
        - ovs_retval_to_string
        - putc
        - vfprintf
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:493,35'
          Dst:             get_subprogram_name
        - Src:             'lib/util.c:494,22'
          Dst:             __errno_location
        - Src:             'lib/util.c:497,9'
          Dst:             fprintf
        - Src:             'lib/util.c:499,9'
          Dst:             fprintf
        - Src:             'lib/util.c:502,5'
          Dst:             vfprintf
        - Src:             'lib/util.c:504,34'
          Dst:             ovs_retval_to_string
        - Src:             'lib/util.c:504,9'
          Dst:             fprintf
        - Src:             'lib/util.c:506,5'
          Dst:             putc
        - Src:             'lib/util.c:508,5'
          Dst:             __errno_location
    - functionName:    get_subprogram_name
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 620
      functionLinenumberEnd: 622
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         6
      ICount:          27
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - subprogram_name_get
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:621,24'
          Dst:             subprogram_name_get
    - 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:    16
      BranchProfiles:  []
      Callsites:       []
    - 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:    ovs_retval_to_string
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 522
      functionLinenumberEnd: 525
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          38
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ovs_strerror
      functionUses:    12
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:525,15'
          Dst:             ovs_strerror
    - 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:    ovs_strerror
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 531
      functionLinenumberEnd: 574
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __errno_location
        - strerror_buffer_get
        - strerror_r
      functionUses:    261
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:552,18'
          Dst:             __errno_location
        - Src:             'lib/util.c:553,14'
          Dst:             strerror_buffer_get
        - Src:             'lib/util.c:559,9'
          Dst:             strerror_r
        - Src:             'lib/util.c:571,5'
          Dst:             __errno_location
    - functionName:    strerror_buffer_get
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 71
      functionLinenumberEnd: 71
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - strerror_buffer_get_unsafe
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:71,1'
          Dst:             strerror_buffer_get_unsafe
    - 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:    strerror_buffer_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 71
      functionLinenumberEnd: 71
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    subprogram_name_get
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 62
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - subprogram_name_get_unsafe
        - subprogram_name_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:62,1'
          Dst:             subprogram_name_init
        - Src:             'lib/util.c:62,1'
          Dst:             subprogram_name_get_unsafe
    - functionName:    subprogram_name_init
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 62
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - pthread_once
        - subprogram_name_once_init
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:62,1'
          Dst:             pthread_once
        - Src:             'lib/util.c:62,1'
          Dst:             subprogram_name_once_init
    - functionName:    subprogram_name_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 62
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - pthread_getspecific
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:62,1'
          Dst:             pthread_getspecific
    - functionName:    subprogram_name_once_init
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 62
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         5
      ICount:          23
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - abort
        - pthread_key_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:62,1'
          Dst:             pthread_key_create
        - Src:             'lib/util.c:62,1'
          Dst:             abort
    - functionName:    scan_int
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1877
      functionLinenumberEnd: 1946
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         75
      ICount:          492
      EdgeCount:       95
      CyclomaticComplexity: 22
      functionsReached:
        - hexit_value
      functionUses:    5
      BranchProfiles:
        - Branch String:   'lib/util.c:1917,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/util.c:1900,21'
          Dst:             hexit_value
    - functionName:    hexit_value
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 937
      functionLinenumberEnd: 950
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    skip_spaces
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1868
      functionLinenumberEnd: 1872
      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:             'lib/util.c:1869,12'
          Dst:             __ctype_b_loc
    - functionName:    subprogram_name_set_unsafe
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 62
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - subprogram_name_get_unsafe
        - xpthread_setspecific
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:62,1'
          Dst:             subprogram_name_get_unsafe
        - Src:             'lib/util.c:62,1'
          Dst:             xpthread_setspecific
    - functionName:    ovs_kernel_is_version_or_newer
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2386
      functionLinenumberEnd: 2406
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         34
      ICount:          139
      EdgeCount:       43
      CyclomaticComplexity: 11
      functionsReached:
        - __errno_location
        - ovs_scan
        - ovs_strerror
        - ovsthread_once_done
        - ovsthread_once_start
        - uname
        - vlog
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:2390,9'
          Dst:             ovsthread_once_start
        - Src:             'lib/util.c:2393,13'
          Dst:             uname
        - Src:             'lib/util.c:2394,13'
          Dst:             __errno_location
        - Src:             'lib/util.c:2394,13'
          Dst:             ovs_strerror
        - Src:             'lib/util.c:2394,13'
          Dst:             vlog
        - Src:             'lib/util.c:2395,21'
          Dst:             ovs_scan
        - Src:             'lib/util.c:2397,13'
          Dst:             vlog
        - Src:             'lib/util.c:2399,9'
          Dst:             ovsthread_once_done
    - functionName:    ovsthread_once_start
      functionSourceFile: '/src/openvswitch/./include/openvswitch/thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsthread_once_start__
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/thread.h:161,12'
          Dst:             ovsthread_once_start__
    - functionName:    uname
      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:    ovs_scan
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2291
      functionLinenumberEnd: 2298
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_scan__
      functionUses:    130
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:2296,11'
          Dst:             ovs_scan__
    - functionName:    ovs_scan__
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2111
      functionLinenumberEnd: 2267
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         84
      ICount:          516
      EdgeCount:       101
      CyclomaticComplexity: 19
      functionsReached:
        - __ctype_b_loc
        - scan_chars
        - scan_float
        - scan_int
        - scan_set
        - scan_string
        - skip_spaces
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/util.c:2153,9'
          Branch Sides:    []
        - Branch String:   'lib/util.c:2208,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/util.c:2122,13'
          Dst:             __ctype_b_loc
        - Src:             'lib/util.c:2123,17'
          Dst:             skip_spaces
        - Src:             'lib/util.c:2206,17'
          Dst:             skip_spaces
        - Src:             'lib/util.c:2210,17'
          Dst:             scan_int
        - Src:             'lib/util.c:2214,17'
          Dst:             scan_int
        - Src:             'lib/util.c:2218,17'
          Dst:             scan_int
        - Src:             'lib/util.c:2222,17'
          Dst:             scan_int
        - Src:             'lib/util.c:2227,17'
          Dst:             scan_int
        - Src:             'lib/util.c:2235,17'
          Dst:             scan_float
        - Src:             'lib/util.c:2239,17'
          Dst:             scan_string
        - Src:             'lib/util.c:2243,17'
          Dst:             scan_set
        - Src:             'lib/util.c:2247,17'
          Dst:             scan_chars
    - functionName:    is_stdout_a_tty
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2378
      functionLinenumberEnd: 2380
      functionDepth:   0
      returnType:      bool
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         8
      ICount:          38
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - getenv
        - isatty
        - strcmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:2379,21'
          Dst:             getenv
        - Src:             'lib/util.c:2380,13'
          Dst:             isatty
        - Src:             'lib/util.c:2380,43'
          Dst:             strcmp
    - functionName:    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:    10
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_timer_resolution
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2362
      functionLinenumberEnd: 2364
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - prctl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:2363,5'
          Dst:             prctl
    - functionName:    prctl
      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:    xnanosleep_no_quiesce
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2355
      functionLinenumberEnd: 2357
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - xnanosleep__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:2356,5'
          Dst:             xnanosleep__
    - functionName:    xnanosleep__
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2331
      functionLinenumberEnd: 2341
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          49
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - __errno_location
        - nanosleep
        - nsec_to_timespec
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:2334,5'
          Dst:             nsec_to_timespec
        - Src:             'lib/util.c:2338,18'
          Dst:             nanosleep
        - Src:             'lib/util.c:2339,30'
          Dst:             __errno_location
    - functionName:    nanosleep
      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:    xnanosleep
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2346
      functionLinenumberEnd: 2350
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrcu_quiesce_end
        - ovsrcu_quiesce_start
        - xnanosleep__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:2347,5'
          Dst:             ovsrcu_quiesce_start
        - Src:             'lib/util.c:2348,5'
          Dst:             xnanosleep__
        - Src:             'lib/util.c:2349,5'
          Dst:             ovsrcu_quiesce_end
    - functionName:    xsleep
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2323
      functionLinenumberEnd: 2327
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrcu_quiesce_end
        - ovsrcu_quiesce_start
        - sleep
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:2324,5'
          Dst:             ovsrcu_quiesce_start
        - Src:             'lib/util.c:2325,5'
          Dst:             sleep
        - Src:             'lib/util.c:2326,5'
          Dst:             ovsrcu_quiesce_end
    - functionName:    sleep
      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:    ovs_scan_len
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2307
      functionLinenumberEnd: 2318
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_scan__
      functionUses:    77
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:2313,15'
          Dst:             ovs_scan__
    - functionName:    bitwise_toggle_bit
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1843
      functionLinenumberEnd: 1847
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          29
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    bitwise_put_bit
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1822
      functionLinenumberEnd: 1828
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - bitwise_put0
        - bitwise_put1
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:1824,9'
          Dst:             bitwise_put1
        - Src:             'lib/util.c:1826,9'
          Dst:             bitwise_put0
    - functionName:    bitwise_put1
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1803
      functionLinenumberEnd: 1807
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          29
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    bitwise_put0
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1784
      functionLinenumberEnd: 1788
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          30
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ntohll
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
        - ntohl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byte-order.h:36,12'
          Dst:             htonl
        - Src:             'lib/byte-order.h:36,44'
          Dst:             ntohl
        - Src:             'lib/byte-order.h:36,62'
          Dst:             ntohl
    - functionName:    bitwise_get
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1742
      functionLinenumberEnd: 1748
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - bitwise_copy
        - htonll
        - ntohll
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:1743,22'
          Dst:             htonll
        - Src:             'lib/util.c:1745,5'
          Dst:             bitwise_copy
        - Src:             'lib/util.c:1748,12'
          Dst:             ntohll
    - functionName:    htonll
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 30
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byte-order.h:30,12'
          Dst:             htonl
        - Src:             'lib/byte-order.h:30,44'
          Dst:             htonl
        - Src:             'lib/byte-order.h:30,62'
          Dst:             htonl
    - functionName:    bitwise_copy
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1414
      functionLinenumberEnd: 1461
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          268
      EdgeCount:       36
      CyclomaticComplexity: 10
      functionsReached: []
      functionUses:    17
      BranchProfiles:  []
      Callsites:       []
    - functionName:    bitwise_put
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1719
      functionLinenumberEnd: 1724
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - size_t
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - bitwise_copy
        - htonll
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:1720,24'
          Dst:             htonll
        - Src:             'lib/util.c:1721,5'
          Dst:             bitwise_copy
    - functionName:    bitwise_rscan
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1660
      functionLinenumberEnd: 1700
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - bool
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         39
      ICount:          241
      EdgeCount:       50
      CyclomaticComplexity: 13
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    bitwise_get_bit
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1765
      functionLinenumberEnd: 1768
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          29
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    bitwise_scan
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1630
      functionLinenumberEnd: 1638
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - bool
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          59
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - bitwise_get_bit
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:1634,13'
          Dst:             bitwise_get_bit
    - functionName:    bitwise_is_all_zeros
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1575
      functionLinenumberEnd: 1613
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          156
      EdgeCount:       32
      CyclomaticComplexity: 10
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    bitwise_one
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1526
      functionLinenumberEnd: 1557
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          129
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    bitwise_zero
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1478
      functionLinenumberEnd: 1509
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          131
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    or_bytes
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1385
      functionLinenumberEnd: 1393
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         5
      ICount:          48
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    is_all_ones
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1378
      functionLinenumberEnd: 1379
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - is_all_byte
      functionUses:    14
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:1379,12'
          Dst:             is_all_byte
    - functionName:    is_all_byte
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1356
      functionLinenumberEnd: 1366
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          51
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    is_all_zeros
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1371
      functionLinenumberEnd: 1372
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - is_all_byte
      functionUses:    41
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:1372,12'
          Dst:             is_all_byte
    - functionName:    english_list_delimiter
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1271
      functionLinenumberEnd: 1274
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          38
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    xreadlink
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1180
      functionLinenumberEnd: 1199
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          81
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - __errno_location
        - readlink
        - xmalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:1184,21'
          Dst:             xmalloc
        - Src:             'lib/util.c:1185,26'
          Dst:             readlink
        - Src:             'lib/util.c:1186,21'
          Dst:             __errno_location
        - Src:             'lib/util.c:1195,13'
          Dst:             __errno_location
    - functionName:    follow_symlinks
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1213
      functionLinenumberEnd: 1259
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         31
      ICount:          182
      EdgeCount:       39
      CyclomaticComplexity: 10
      functionsReached:
        - __errno_location
        - dir_name
        - lstat
        - ovs_strerror
        - strcmp
        - strlen
        - vlog
        - xasprintf
        - xreadlink
        - xstrdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:1218,10'
          Dst:             xstrdup
        - Src:             'lib/util.c:1223,13'
          Dst:             lstat
        - Src:             'lib/util.c:1227,20'
          Dst:             xreadlink
        - Src:             'lib/util.c:1229,13'
          Dst:             __errno_location
        - Src:             'lib/util.c:1229,13'
          Dst:             ovs_strerror
        - Src:             'lib/util.c:1229,13'
          Dst:             vlog
        - Src:             'lib/util.c:1239,25'
          Dst:             dir_name
        - Src:             'lib/util.c:1241,18'
          Dst:             strcmp
        - Src:             'lib/util.c:1244,39'
          Dst:             strlen
        - Src:             'lib/util.c:1245,27'
          Dst:             xasprintf
        - Src:             'lib/util.c:1256,5'
          Dst:             vlog
        - Src:             'lib/util.c:1258,12'
          Dst:             xstrdup
    - functionName:    xstrdup
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 202
      functionLinenumberEnd: 203
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - strlen
        - xmemdup0
      functionUses:    207
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:203,24'
          Dst:             strlen
        - Src:             'lib/util.c:203,12'
          Dst:             xmemdup0
    - 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:    dir_name
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1100
      functionLinenumberEnd: 1111
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         24
      ICount:          125
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - all_slashes_name
        - strlen
        - xmemdup0
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:1101,18'
          Dst:             strlen
        - Src:             'lib/util.c:1111,18'
          Dst:             xmemdup0
        - Src:             'lib/util.c:1111,45'
          Dst:             all_slashes_name
    - functionName:    xasprintf
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 366
      functionLinenumberEnd: 374
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - xvasprintf
      functionUses:    277
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:371,9'
          Dst:             xvasprintf
    - functionName:    xvasprintf
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 220
      functionLinenumberEnd: 235
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          42
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - vsnprintf
        - xmalloc
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:225,5'
          Dst:             ovs_ignore
        - Src:             'lib/util.c:228,14'
          Dst:             vsnprintf
        - Src:             'lib/util.c:230,9'
          Dst:             xmalloc
        - Src:             'lib/util.c:232,5'
          Dst:             vsnprintf
    - functionName:    ovs_ignore
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1265
      functionLinenumberEnd: 1265
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - bool
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    955
      BranchProfiles:  []
      Callsites:       []
    - functionName:    all_slashes_name
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1090
      functionLinenumberEnd: 1092
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          61
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - xstrdup
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:1091,12'
          Dst:             xstrdup
    - functionName:    abs_file_name
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1153
      functionLinenumberEnd: 1173
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          91
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - get_cwd
        - is_file_name_absolute
        - strlen
        - xasprintf
        - xstrdup
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:1155,9'
          Dst:             is_file_name_absolute
        - Src:             'lib/util.c:1156,16'
          Dst:             xstrdup
        - Src:             'lib/util.c:1162,31'
          Dst:             strlen
        - Src:             'lib/util.c:1163,16'
          Dst:             xasprintf
        - Src:             'lib/util.c:1166,17'
          Dst:             get_cwd
        - Src:             'lib/util.c:1170,22'
          Dst:             xasprintf
    - functionName:    is_file_name_absolute
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1140
      functionLinenumberEnd: 1142
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_cwd
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1061
      functionLinenumberEnd: 1086
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         21
      ICount:          106
      EdgeCount:       26
      CyclomaticComplexity: 7
      functionsReached:
        - __errno_location
        - getcwd
        - ovs_strerror
        - pathconf
        - strlen
        - vlog
        - xmalloc
        - xrealloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:1066,16'
          Dst:             pathconf
        - Src:             'lib/util.c:1073,21'
          Dst:             xmalloc
        - Src:             'lib/util.c:1074,13'
          Dst:             getcwd
        - Src:             'lib/util.c:1075,34'
          Dst:             strlen
        - Src:             'lib/util.c:1075,20'
          Dst:             xrealloc
        - Src:             'lib/util.c:1077,25'
          Dst:             __errno_location
        - Src:             'lib/util.c:1080,17'
          Dst:             ovs_strerror
        - Src:             'lib/util.c:1080,17'
          Dst:             vlog
    - functionName:    pathconf
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    getcwd
      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:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    xrealloc
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 178
      functionLinenumberEnd: 180
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - util_xalloc_add
        - xrealloc__
      functionUses:    28
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:179,5'
          Dst:             util_xalloc_add
        - Src:             'lib/util.c:180,12'
          Dst:             xrealloc__
    - functionName:    xrealloc__
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 147
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          44
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - out_of_memory
        - realloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:148,9'
          Dst:             realloc
        - Src:             'lib/util.c:150,9'
          Dst:             out_of_memory
    - 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:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    base_name
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1118
      functionLinenumberEnd: 1136
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         18
      ICount:          105
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - all_slashes_name
        - strlen
        - xmemdup0
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:1121,11'
          Dst:             strlen
        - Src:             'lib/util.c:1127,16'
          Dst:             all_slashes_name
        - Src:             'lib/util.c:1135,12'
          Dst:             xmemdup0
    - functionName:    parse_int_string
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 988
      functionLinenumberEnd: 1055
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         43
      ICount:          280
      EdgeCount:       56
      CyclomaticComplexity: 15
      functionsReached:
        - __errno_location
        - hexits_value
        - strncmp
        - strspn
        - strtoull
        - xmalloc
      functionUses:    14
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:992,10'
          Dst:             strncmp
        - Src:             'lib/util.c:992,34'
          Dst:             strncmp
        - Src:             'lib/util.c:999,21'
          Dst:             xmalloc
        - Src:             'lib/util.c:1005,18'
          Dst:             strspn
        - Src:             'lib/util.c:1006,21'
          Dst:             hexits_value
        - Src:             'lib/util.c:1040,5'
          Dst:             __errno_location
        - Src:             'lib/util.c:1041,15'
          Dst:             strtoull
        - Src:             'lib/util.c:1042,9'
          Dst:             __errno_location
        - Src:             'lib/util.c:1043,16'
          Dst:             __errno_location
        - Src:             'lib/util.c:1043,24'
          Dst:             __errno_location
    - functionName:    hexits_value
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 959
      functionLinenumberEnd: 974
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          69
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - hexit_value
      functionUses:    13
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:965,21'
          Dst:             hexit_value
    - functionName:    str_to_double
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 918
      functionLinenumberEnd: 932
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          91
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - __errno_location
        - strtod
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:919,22'
          Dst:             __errno_location
        - Src:             'lib/util.c:921,5'
          Dst:             __errno_location
        - Src:             'lib/util.c:922,10'
          Dst:             strtod
        - Src:             'lib/util.c:923,9'
          Dst:             __errno_location
        - Src:             'lib/util.c:923,29'
          Dst:             __errno_location
        - Src:             'lib/util.c:925,9'
          Dst:             __errno_location
        - Src:             'lib/util.c:929,9'
          Dst:             __errno_location
    - functionName:    strtod
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      double
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    str_to_llong_range
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 898
      functionLinenumberEnd: 908
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          62
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - str_to_llong
        - str_to_llong_with_tail
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:900,9'
          Dst:             str_to_llong_with_tail
        - Src:             'lib/util.c:902,12'
          Dst:             str_to_llong
    - functionName:    str_to_llong_with_tail
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 849
      functionLinenumberEnd: 861
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          75
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - __errno_location
        - strtoll
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:850,22'
          Dst:             __errno_location
        - Src:             'lib/util.c:851,5'
          Dst:             __errno_location
        - Src:             'lib/util.c:852,10'
          Dst:             strtoll
        - Src:             'lib/util.c:853,9'
          Dst:             __errno_location
        - Src:             'lib/util.c:853,28'
          Dst:             __errno_location
        - Src:             'lib/util.c:854,9'
          Dst:             __errno_location
        - Src:             'lib/util.c:858,9'
          Dst:             __errno_location
    - functionName:    str_to_llong
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 837
      functionLinenumberEnd: 845
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - str_to_llong_with_tail
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:839,15'
          Dst:             str_to_llong_with_tail
    - functionName:    strtoll
      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:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    str_to_ullong
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 879
      functionLinenumberEnd: 893
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          82
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - __errno_location
        - strtoull
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:880,22'
          Dst:             __errno_location
        - Src:             'lib/util.c:883,5'
          Dst:             __errno_location
        - Src:             'lib/util.c:884,10'
          Dst:             strtoull
        - Src:             'lib/util.c:885,9'
          Dst:             __errno_location
        - Src:             'lib/util.c:885,28'
          Dst:             __errno_location
        - Src:             'lib/util.c:886,9'
          Dst:             __errno_location
        - Src:             'lib/util.c:890,9'
          Dst:             __errno_location
    - functionName:    str_to_long
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 823
      functionLinenumberEnd: 833
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          61
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - str_to_llong
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:825,15'
          Dst:             str_to_llong
    - functionName:    str_to_int
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 809
      functionLinenumberEnd: 819
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          62
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - str_to_llong
      functionUses:    12
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:811,15'
          Dst:             str_to_llong
    - functionName:    ovs_hex_dump
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 756
      functionLinenumberEnd: 805
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         42
      ICount:          243
      EdgeCount:       53
      CyclomaticComplexity: 13
      functionsReached:
        - fprintf
        - putc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:772,9'
          Dst:             fprintf
        - Src:             'lib/util.c:775,13'
          Dst:             fprintf
        - Src:             'lib/util.c:778,13'
          Dst:             fprintf
        - Src:             'lib/util.c:782,13'
          Dst:             fprintf
        - Src:             'lib/util.c:784,17'
          Dst:             fprintf
        - Src:             'lib/util.c:786,13'
          Dst:             fprintf
        - Src:             'lib/util.c:788,17'
          Dst:             fprintf
        - Src:             'lib/util.c:792,17'
          Dst:             putc
        - Src:             'lib/util.c:795,17'
          Dst:             fprintf
        - Src:             'lib/util.c:797,13'
          Dst:             fprintf
        - Src:             'lib/util.c:799,9'
          Dst:             fprintf
    - functionName:    ovs_print_version
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 742
      functionLinenumberEnd: 747
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - char
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          45
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - printf
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:743,5'
          Dst:             printf
        - Src:             'lib/util.c:745,9'
          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:    22
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_get_program_name
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 735
      functionLinenumberEnd: 736
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_get_program_version
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 726
      functionLinenumberEnd: 727
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    str_to_uint
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 865
      functionLinenumberEnd: 875
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          62
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - str_to_llong
      functionUses:    12
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:867,15'
          Dst:             str_to_llong
    - functionName:    ctl_timeout_setup
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 708
      functionLinenumberEnd: 719
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          64
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - getenv
        - ovs_ignore
        - str_to_uint
        - time_alarm
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:710,21'
          Dst:             getenv
        - Src:             'lib/util.c:713,24'
          Dst:             str_to_uint
        - Src:             'lib/util.c:713,13'
          Dst:             ovs_ignore
        - Src:             'lib/util.c:717,9'
          Dst:             time_alarm
    - functionName:    get_boot_time
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 669
      functionLinenumberEnd: 701
      functionDepth:   0
      returnType:      size_t
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         25
      ICount:          101
      EdgeCount:       31
      CyclomaticComplexity: 8
      functionsReached:
        - __errno_location
        - fclose
        - fgets
        - fopen
        - ovs_ignore
        - ovs_scan
        - ovs_strerror
        - ovsthread_once_done
        - ovsthread_once_start
        - time_msec
        - vlog
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:673,5'
          Dst:             ovs_ignore
        - Src:             'lib/util.c:675,9'
          Dst:             time_msec
        - Src:             'lib/util.c:680,28'
          Dst:             time_msec
        - Src:             'lib/util.c:682,18'
          Dst:             fopen
        - Src:             'lib/util.c:684,13'
          Dst:             ovsthread_once_start
        - Src:             'lib/util.c:684,13'
          Dst:             __errno_location
        - Src:             'lib/util.c:684,13'
          Dst:             ovs_strerror
        - Src:             'lib/util.c:684,13'
          Dst:             vlog
        - Src:             'lib/util.c:684,13'
          Dst:             ovsthread_once_done
        - Src:             'lib/util.c:689,16'
          Dst:             fgets
        - Src:             'lib/util.c:691,17'
          Dst:             ovs_scan
        - Src:             'lib/util.c:696,9'
          Dst:             ovsthread_once_start
        - Src:             'lib/util.c:696,9'
          Dst:             vlog
        - Src:             'lib/util.c:696,9'
          Dst:             ovsthread_once_done
        - Src:             'lib/util.c:698,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:    16
      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:    5
      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:    24
      BranchProfiles:  []
      Callsites:       []
    - functionName:    subprogram_name_set
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 62
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - subprogram_name_init
        - subprogram_name_set_unsafe
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:62,1'
          Dst:             subprogram_name_init
        - Src:             'lib/util.c:62,1'
          Dst:             subprogram_name_set_unsafe
    - functionName:    set_subprogram_name
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 630
      functionLinenumberEnd: 647
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          59
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - pthread_self
        - pthread_setname_np
        - strlen
        - subprogram_name_set
        - xstrdup
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:631,19'
          Dst:             xstrdup
        - Src:             'lib/util.c:632,10'
          Dst:             subprogram_name_set
        - Src:             'lib/util.c:637,9'
          Dst:             strlen
        - Src:             'lib/util.c:638,31'
          Dst:             strlen
        - Src:             'lib/util.c:641,24'
          Dst:             pthread_self
        - Src:             'lib/util.c:641,5'
          Dst:             pthread_setname_np
    - functionName:    pthread_setname_np
      functionSourceFile: ''
      linkageType:     externalLinkage
      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:    ovs_set_program_name
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 588
      functionLinenumberEnd: 615
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          86
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - assert_single_threaded_at
        - strcmp
        - strncmp
        - strrchr
        - xasprintf
        - xstrdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:589,25'
          Dst:             strrchr
        - Src:             'lib/util.c:592,16'
          Dst:             xstrdup
        - Src:             'lib/util.c:594,5'
          Dst:             assert_single_threaded_at
        - Src:             'lib/util.c:597,9'
          Dst:             strncmp
        - Src:             'lib/util.c:599,20'
          Dst:             xstrdup
        - Src:             'lib/util.c:605,10'
          Dst:             strcmp
        - Src:             'lib/util.c:606,27'
          Dst:             xasprintf
        - Src:             'lib/util.c:610,27'
          Dst:             xasprintf
    - 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:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_error
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 481
      functionLinenumberEnd: 487
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_error_valist
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:485,5'
          Dst:             ovs_error_valist
    - functionName:    string_ends_with
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 416
      functionLinenumberEnd: 421
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - strcmp
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:417,19'
          Dst:             strlen
        - Src:             'lib/util.c:418,22'
          Dst:             strlen
        - Src:             'lib/util.c:421,18'
          Dst:             strcmp
    - functionName:    ovs_strzcpy
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 403
      functionLinenumberEnd: 409
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - strnlen
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:405,22'
          Dst:             strnlen
    - functionName:    strnlen
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_strlcpy
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 381
      functionLinenumberEnd: 387
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - strnlen
      functionUses:    41
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:383,22'
          Dst:             strnlen
    - functionName:    free_pagealign
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 360
      functionLinenumberEnd: 362
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - free_size_align
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:361,5'
          Dst:             free_size_align
    - functionName:    free_size_align
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 312
      functionLinenumberEnd: 321
      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:    get_page_size
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 651
      functionLinenumberEnd: 662
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         9
      ICount:          39
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - sysconf
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:655,26'
          Dst:             sysconf
    - functionName:    xmalloc_pagealign
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 354
      functionLinenumberEnd: 355
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_page_size
        - xmalloc_size_align
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:355,37'
          Dst:             get_page_size
        - Src:             'lib/util.c:355,12'
          Dst:             xmalloc_size_align
    - functionName:    xmalloc_size_align
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 251
      functionLinenumberEnd: 261
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          48
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - out_of_memory
        - posix_memalign
        - util_xalloc_add
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:256,5'
          Dst:             util_xalloc_add
        - Src:             'lib/util.c:257,13'
          Dst:             posix_memalign
        - Src:             'lib/util.c:259,9'
          Dst:             out_of_memory
    - functionName:    posix_memalign
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    free_cacheline
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 348
      functionLinenumberEnd: 350
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - free_size_align
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:349,5'
          Dst:             free_size_align
    - functionName:    xzalloc_cacheline
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 338
      functionLinenumberEnd: 341
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - xmalloc_cacheline
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:339,15'
          Dst:             xmalloc_cacheline
    - functionName:    xmalloc_cacheline
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 330
      functionLinenumberEnd: 331
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - xmalloc_size_align
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:331,12'
          Dst:             xmalloc_size_align
    - functionName:    x2nrealloc
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 240
      functionLinenumberEnd: 242
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - xrealloc
      functionUses:    15
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:242,12'
          Dst:             xrealloc
    - functionName:    nullable_string_is_equal
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 214
      functionLinenumberEnd: 215
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          49
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - strcmp
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:215,22'
          Dst:             strcmp
    - functionName:    nullable_xstrdup
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 208
      functionLinenumberEnd: 209
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          27
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - xstrdup
      functionUses:    12
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:209,16'
          Dst:             xstrdup
    - functionName:    nullable_memcpy
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 188
      functionLinenumberEnd: 192
      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:    xmemdup
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 185
      functionLinenumberEnd: 188
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nullable_memcpy
        - xmalloc
      functionUses:    16
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:186,15'
          Dst:             xmalloc
        - Src:             'lib/util.c:187,5'
          Dst:             nullable_memcpy
    - functionName:    xzalloc
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 166
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - util_xalloc_add
        - xzalloc__
      functionUses:    103
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:165,5'
          Dst:             util_xalloc_add
        - Src:             'lib/util.c:166,12'
          Dst:             xzalloc__
    - functionName:    xzalloc__
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 131
      functionLinenumberEnd: 132
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - xcalloc__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:132,12'
          Dst:             xcalloc__
    - functionName:    xcalloc__
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 121
      functionLinenumberEnd: 126
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          55
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - calloc
        - out_of_memory
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:122,31'
          Dst:             calloc
        - Src:             'lib/util.c:124,9'
          Dst:             out_of_memory
    - 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:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    xcalloc
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 157
      functionLinenumberEnd: 159
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - util_xalloc_add
        - xcalloc__
      functionUses:    12
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:158,5'
          Dst:             util_xalloc_add
        - Src:             'lib/util.c:159,12'
          Dst:             xcalloc__
    - functionName:    memory_all_locked
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 109
      functionLinenumberEnd: 110
      functionDepth:   0
      returnType:      bool
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_all_memory_locked
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 103
      functionLinenumberEnd: 105
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_assert_failure
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 80
      functionLinenumberEnd: 97
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       9
      CyclomaticComplexity: 5
      functionsReached:
        - abort
        - fprintf
        - vlog_abort
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib/util.c:85,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/util.c:87,9'
          Dst:             vlog_abort
        - Src:             'lib/util.c:92,9'
          Dst:             fprintf
        - Src:             'lib/util.c:94,9'
          Dst:             abort
        - Src:             'lib/util.c:97,9'
          Dst:             abort
    - functionName:    ovs_fatal
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 461
      functionLinenumberEnd: 462
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_fatal_valist
      functionUses:    18
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:462,5'
          Dst:             ovs_fatal_valist
    - functionName:    ovs_fatal_valist
      functionSourceFile: '/src/openvswitch/lib/util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 469
      functionLinenumberEnd: 470
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached:
        - exit
        - ovs_error_valist
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.c:469,5'
          Dst:             ovs_error_valist
        - Src:             'lib/util.c:470,5'
          Dst:             exit
    - functionName:    init_this_module_uuid
      functionSourceFile: '/src/openvswitch/lib/uuid.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37
      functionLinenumberEnd: 37
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/uuid.c:37,1'
          Dst:             vlog_insert_module
    - functionName:    uuid_replay_file_close
      functionSourceFile: '/src/openvswitch/lib/uuid.c'
      linkageType:     InternalLinkage
      functionLinenumber: 68
      functionLinenumberEnd: 70
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_replay_file_close
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/uuid.c:69,5'
          Dst:             ovs_replay_file_close
    - functionName:    sha1_update_int
      functionSourceFile: '/src/openvswitch/lib/uuid.c'
      linkageType:     InternalLinkage
      functionLinenumber: 339
      functionLinenumberEnd: 341
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sha1_update
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/uuid.c:340,4'
          Dst:             sha1_update
    - functionName:    uuid_replay_file_open
      functionSourceFile: '/src/openvswitch/lib/uuid.c'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 86
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         5
      ICount:          31
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - fatal_signal_add_hook
        - ovs_replay_file_open
        - ovs_replay_lock
        - ovs_replay_unlock
        - ovs_strerror
        - uuid_replay_file_close
        - vlog_fatal
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/uuid.c:77,5'
          Dst:             ovs_replay_lock
        - Src:             'lib/uuid.c:78,13'
          Dst:             ovs_replay_file_open
        - Src:             'lib/uuid.c:80,5'
          Dst:             ovs_replay_unlock
        - Src:             'lib/uuid.c:82,9'
          Dst:             ovs_strerror
        - Src:             'lib/uuid.c:82,9'
          Dst:             vlog_fatal
        - Src:             'lib/uuid.c:85,5'
          Dst:             fatal_signal_add_hook
        - Src:             'lib/uuid.c:85,5'
          Dst:             uuid_replay_file_close
    - functionName:    ovs_replay_is_active
      functionSourceFile: '/src/openvswitch/lib/ovs-replay.h'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 67
      functionDepth:   0
      returnType:      bool
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          14
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_replay_get_state
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-replay.h:67,12'
          Dst:             ovs_replay_get_state
    - functionName:    ovs_replay_seqno_is_read
      functionSourceFile: '/src/openvswitch/lib/ovs-replay.h'
      linkageType:     InternalLinkage
      functionLinenumber: 73
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_replay_normalized_seqno
      functionSourceFile: '/src/openvswitch/lib/ovs-replay.h'
      linkageType:     InternalLinkage
      functionLinenumber: 81
      functionLinenumberEnd: 82
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          22
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    uuid_is_partial_match
      functionSourceFile: '/src/openvswitch/lib/uuid.c'
      linkageType:     InternalLinkage
      functionLinenumber: 330
      functionLinenumberEnd: 334
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          68
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - snprintf
        - strlen
        - strncmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/uuid.c:332,5'
          Dst:             snprintf
        - Src:             'lib/uuid.c:333,24'
          Dst:             strlen
        - Src:             'lib/uuid.c:334,13'
          Dst:             strncmp
    - functionName:    uuid_is_partial_string
      functionSourceFile: '/src/openvswitch/lib/uuid.c'
      linkageType:     InternalLinkage
      functionLinenumber: 307
      functionLinenumberEnd: 323
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         21
      ICount:          110
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - hexit_value
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/uuid.c:314,22'
          Dst:             hexit_value
    - functionName:    uuid_from_string_prefix
      functionSourceFile: '/src/openvswitch/lib/uuid.c'
      linkageType:     InternalLinkage
      functionLinenumber: 250
      functionLinenumberEnd: 292
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         29
      ICount:          172
      EdgeCount:       39
      CyclomaticComplexity: 12
      functionsReached:
        - hexits_value
        - uuid_zero
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/uuid.c:258,22'
          Dst:             hexits_value
        - Src:             'lib/uuid.c:263,22'
          Dst:             hexits_value
        - Src:             'lib/uuid.c:268,23'
          Dst:             hexits_value
        - Src:             'lib/uuid.c:273,22'
          Dst:             hexits_value
        - Src:             'lib/uuid.c:278,23'
          Dst:             hexits_value
        - Src:             'lib/uuid.c:283,22'
          Dst:             hexits_value
        - Src:             'lib/uuid.c:290,5'
          Dst:             uuid_zero
    - functionName:    uuid_zero
      functionSourceFile: '/src/openvswitch/lib/uuid.c'
      linkageType:     InternalLinkage
      functionLinenumber: 197
      functionLinenumberEnd: 199
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    uuid_from_string
      functionSourceFile: '/src/openvswitch/lib/uuid.c'
      linkageType:     InternalLinkage
      functionLinenumber: 234
      functionLinenumberEnd: 243
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          45
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - uuid_from_string_prefix
        - uuid_zero
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/uuid.c:235,10'
          Dst:             uuid_from_string_prefix
        - Src:             'lib/uuid.c:238,9'
          Dst:             uuid_zero
    - functionName:    uuid_compare_3way
      functionSourceFile: '/src/openvswitch/lib/uuid.c'
      linkageType:     InternalLinkage
      functionLinenumber: 214
      functionLinenumberEnd: 226
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          127
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    uuid_is_zero
      functionSourceFile: '/src/openvswitch/lib/uuid.c'
      linkageType:     InternalLinkage
      functionLinenumber: 204
      functionLinenumberEnd: 206
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          51
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    uuid_random
      functionSourceFile: '/src/openvswitch/lib/uuid.c'
      linkageType:     InternalLinkage
      functionLinenumber: 178
      functionLinenumberEnd: 181
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - uuid_generate
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/uuid.c:180,5'
          Dst:             uuid_generate
    - functionName:    uuid_generate
      functionSourceFile: '/src/openvswitch/lib/uuid.c'
      linkageType:     InternalLinkage
      functionLinenumber: 145
      functionLinenumberEnd: 174
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          72
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - aes128_encrypt
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovs_replay_get_state
        - uuid_init
        - uuid_replay_file_read
        - uuid_replay_file_write
        - uuid_set_bits_v4
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/uuid.c:147,42'
          Dst:             ovs_replay_get_state
        - Src:             'lib/uuid.c:150,5'
          Dst:             uuid_init
        - Src:             'lib/uuid.c:153,9'
          Dst:             uuid_replay_file_read
        - Src:             'lib/uuid.c:158,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/uuid.c:164,5'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/uuid.c:167,5'
          Dst:             aes128_encrypt
        - Src:             'lib/uuid.c:169,5'
          Dst:             uuid_set_bits_v4
        - Src:             'lib/uuid.c:172,9'
          Dst:             uuid_replay_file_write
    - functionName:    uuid_init
      functionSourceFile: '/src/openvswitch/lib/uuid.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 60
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - do_init
        - pthread_once
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/uuid.c:59,5'
          Dst:             pthread_once
        - Src:             'lib/uuid.c:59,5'
          Dst:             do_init
    - functionName:    uuid_replay_file_read
      functionSourceFile: '/src/openvswitch/lib/uuid.c'
      linkageType:     InternalLinkage
      functionLinenumber: 90
      functionLinenumberEnd: 105
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          57
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
        - ovs_replay_lock
        - ovs_replay_normalized_seqno
        - ovs_replay_read
        - ovs_replay_seqno
        - ovs_replay_seqno_is_read
        - ovs_replay_unlock
        - ovs_strerror
        - vlog_fatal
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/uuid.c:91,22'
          Dst:             ovs_replay_normalized_seqno
        - Src:             'lib/uuid.c:94,5'
          Dst:             ovs_replay_lock
        - Src:             'lib/uuid.c:95,30'
          Dst:             ovs_replay_seqno
        - Src:             'lib/uuid.c:95,5'
          Dst:             ovs_ignore
        - Src:             'lib/uuid.c:96,16'
          Dst:             ovs_replay_seqno_is_read
        - Src:             'lib/uuid.c:96,5'
          Dst:             ovs_ignore
        - Src:             'lib/uuid.c:98,14'
          Dst:             ovs_replay_read
        - Src:             'lib/uuid.c:101,9'
          Dst:             ovs_strerror
        - Src:             'lib/uuid.c:101,9'
          Dst:             vlog_fatal
        - Src:             'lib/uuid.c:104,5'
          Dst:             ovs_replay_unlock
    - functionName:    uuid_set_bits_v4
      functionSourceFile: '/src/openvswitch/lib/uuid.c'
      linkageType:     InternalLinkage
      functionLinenumber: 186
      functionLinenumberEnd: 192
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          30
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    uuid_replay_file_write
      functionSourceFile: '/src/openvswitch/lib/uuid.c'
      linkageType:     InternalLinkage
      functionLinenumber: 109
      functionLinenumberEnd: 117
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         5
      ICount:          32
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_replay_write
        - ovs_strerror
        - vlog_fatal
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/uuid.c:112,14'
          Dst:             ovs_replay_write
        - Src:             'lib/uuid.c:114,9'
          Dst:             ovs_strerror
        - Src:             'lib/uuid.c:114,9'
          Dst:             vlog_fatal
    - functionName:    do_init
      functionSourceFile: '/src/openvswitch/lib/uuid.c'
      linkageType:     InternalLinkage
      functionLinenumber: 345
      functionLinenumberEnd: 375
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - aes128_schedule
        - get_entropy_or_die
        - getgid
        - getpid
        - getppid
        - getuid
        - ovs_replay_is_active
        - sha1_final
        - sha1_init
        - sha1_update
        - sha1_update_int
        - uuid_replay_file_open
        - xgettimeofday
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/uuid.c:351,9'
          Dst:             ovs_replay_is_active
        - Src:             'lib/uuid.c:352,9'
          Dst:             uuid_replay_file_open
        - Src:             'lib/uuid.c:356,5'
          Dst:             get_entropy_or_die
        - Src:             'lib/uuid.c:357,5'
          Dst:             xgettimeofday
        - Src:             'lib/uuid.c:360,5'
          Dst:             sha1_init
        - Src:             'lib/uuid.c:361,5'
          Dst:             sha1_update
        - Src:             'lib/uuid.c:362,5'
          Dst:             sha1_update
        - Src:             'lib/uuid.c:363,32'
          Dst:             getpid
        - Src:             'lib/uuid.c:363,5'
          Dst:             sha1_update_int
        - Src:             'lib/uuid.c:364,32'
          Dst:             getppid
        - Src:             'lib/uuid.c:364,5'
          Dst:             sha1_update_int
        - Src:             'lib/uuid.c:365,32'
          Dst:             getuid
        - Src:             'lib/uuid.c:365,5'
          Dst:             sha1_update_int
        - Src:             'lib/uuid.c:366,32'
          Dst:             getgid
        - Src:             'lib/uuid.c:366,5'
          Dst:             sha1_update_int
        - Src:             'lib/uuid.c:367,5'
          Dst:             sha1_final
        - Src:             'lib/uuid.c:371,5'
          Dst:             aes128_schedule
        - Src:             'lib/uuid.c:374,5'
          Dst:             get_entropy_or_die
    - functionName:    getppid
      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:    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:    getgid
      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:    init_this_module_vlog
      functionSourceFile: '/src/openvswitch/lib/vlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 49
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vlog.c:49,1'
          Dst:             vlog_insert_module
    - functionName:    vlog_insert_module
      functionSourceFile: '/src/openvswitch/lib/vlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 218
      functionLinenumberEnd: 222
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_list_insert
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    91
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vlog.c:219,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/vlog.c:220,5'
          Dst:             ovs_list_insert
        - Src:             'lib/vlog.c:221,5'
          Dst:             ovs_mutex_unlock
    - functionName:    ovs_list_insert
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 169
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fetch_braces
      functionSourceFile: '/src/openvswitch/lib/vlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1006
      functionLinenumberEnd: 1016
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          74
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ovs_strlcpy
        - strcspn
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vlog.c:1008,20'
          Dst:             strcspn
        - Src:             'lib/vlog.c:1014,9'
          Dst:             ovs_strlcpy
    - functionName:    msg_num_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/vlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 100
      functionLinenumberEnd: 100
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_all_rate_limits
      functionSourceFile: '/src/openvswitch/lib/vlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 778
      functionLinenumberEnd: 786
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - bool
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          58
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vlog.c:781,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/vlog.c:785,5'
          Dst:             ovs_mutex_unlock
    - functionName:    set_rate_limits
      functionSourceFile: '/src/openvswitch/lib/vlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 791
      functionLinenumberEnd: 811
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          97
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - set_all_rate_limits
        - strcasecmp
        - unixctl_command_reply
        - unixctl_command_reply_error
        - vlog_module_from_name
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vlog.c:796,18'
          Dst:             strcasecmp
        - Src:             'lib/vlog.c:797,17'
          Dst:             set_all_rate_limits
        - Src:             'lib/vlog.c:799,46'
          Dst:             vlog_module_from_name
        - Src:             'lib/vlog.c:801,21'
          Dst:             unixctl_command_reply_error
        - Src:             'lib/vlog.c:808,9'
          Dst:             set_all_rate_limits
        - Src:             'lib/vlog.c:810,5'
          Dst:             unixctl_command_reply
    - functionName:    vlog_module_from_name
      functionSourceFile: '/src/openvswitch/lib/vlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 235
      functionLinenumberEnd: 248
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          70
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - strcasecmp
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vlog.c:238,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/vlog.c:240,14'
          Dst:             strcasecmp
        - Src:             'lib/vlog.c:241,13'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/vlog.c:245,5'
          Dst:             ovs_mutex_unlock
    - functionName:    update_min_level
      functionSourceFile: '/src/openvswitch/lib/vlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 262
      functionLinenumberEnd: 274
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          75
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    vlog_usage
      functionSourceFile: '/src/openvswitch/lib/vlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1385
      functionLinenumberEnd: 1396
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          14
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_logdir
        - printf
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vlog.c:1395,12'
          Dst:             ovs_logdir
        - Src:             'lib/vlog.c:1386,5'
          Dst:             printf
    - functionName:    vlog_rate_limit
      functionSourceFile: '/src/openvswitch/lib/vlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1373
      functionLinenumberEnd: 1381
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - vlog_should_drop
        - vlog_valist
      functionUses:    550
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vlog.c:1374,10'
          Dst:             vlog_should_drop
        - Src:             'lib/vlog.c:1378,9'
          Dst:             vlog_valist
    - functionName:    vlog_should_drop
      functionSourceFile: '/src/openvswitch/lib/vlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1330
      functionLinenumberEnd: 1368
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          135
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - time_now
        - token_bucket_withdraw
        - vlog
        - vlog_is_enabled
      functionUses:    26
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vlog.c:1335,10'
          Dst:             vlog_is_enabled
        - Src:             'lib/vlog.c:1339,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/vlog.c:1340,10'
          Dst:             token_bucket_withdraw
        - Src:             'lib/vlog.c:1341,22'
          Dst:             time_now
        - Src:             'lib/vlog.c:1347,9'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/vlog.c:1352,9'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/vlog.c:1354,22'
          Dst:             time_now
        - Src:             'lib/vlog.c:1359,9'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/vlog.c:1361,9'
          Dst:             vlog
    - functionName:    vlog_valist
      functionSourceFile: '/src/openvswitch/lib/vlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1158
      functionLinenumberEnd: 1239
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         43
      ICount:          294
      EdgeCount:       57
      CyclomaticComplexity: 16
      functionsReached:
        - __errno_location
        - async_append_flush
        - async_append_write
        - ds_cstr
        - ds_destroy
        - ds_init
        - ds_put_char
        - ds_reserve
        - format_log_message
        - fputs
        - msg_num_get
        - ovs_ignore
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovs_rwlock_rdlock_at
        - ovs_rwlock_unlock
        - send_to_syslog_fd
        - strtok_r
        - vlog_init
        - write
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vlog.c:1170,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/vlog.c:1172,5'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/vlog.c:1174,26'
          Dst:             __errno_location
        - Src:             'lib/vlog.c:1177,9'
          Dst:             vlog_init
        - Src:             'lib/vlog.c:1179,9'
          Dst:             ds_init
        - Src:             'lib/vlog.c:1180,9'
          Dst:             ds_reserve
        - Src:             'lib/vlog.c:1181,12'
          Dst:             msg_num_get
        - Src:             'lib/vlog.c:1183,9'
          Dst:             ovs_rwlock_rdlock_at
        - Src:             'lib/vlog.c:1185,13'
          Dst:             format_log_message
        - Src:             'lib/vlog.c:1188,13'
          Dst:             ds_put_char
        - Src:             'lib/vlog.c:1189,19'
          Dst:             ds_cstr
        - Src:             'lib/vlog.c:1189,13'
          Dst:             fputs
        - Src:             'lib/vlog.c:1198,13'
          Dst:             format_log_message
        - Src:             'lib/vlog.c:1200,25'
          Dst:             strtok_r
        - Src:             'lib/vlog.c:1201,25'
          Dst:             strtok_r
        - Src:             'lib/vlog.c:1208,17'
          Dst:             format_log_message
        - Src:             'lib/vlog.c:1212,35'
          Dst:             ds_cstr
        - Src:             'lib/vlog.c:1212,17'
          Dst:             send_to_syslog_fd
        - Src:             'lib/vlog.c:1217,13'
          Dst:             format_log_message
        - Src:             'lib/vlog.c:1219,13'
          Dst:             ds_put_char
        - Src:             'lib/vlog.c:1221,13'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/vlog.c:1224,21'
          Dst:             async_append_write
        - Src:             'lib/vlog.c:1226,25'
          Dst:             async_append_flush
        - Src:             'lib/vlog.c:1229,32'
          Dst:             write
        - Src:             'lib/vlog.c:1229,21'
          Dst:             ovs_ignore
        - Src:             'lib/vlog.c:1232,13'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/vlog.c:1234,9'
          Dst:             ovs_rwlock_unlock
        - Src:             'lib/vlog.c:1236,9'
          Dst:             ds_destroy
        - Src:             'lib/vlog.c:1237,9'
          Dst:             __errno_location
    - functionName:    vlog_init
      functionSourceFile: '/src/openvswitch/lib/vlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 839
      functionLinenumberEnd: 899
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         34
      ICount:          174
      EdgeCount:       43
      CyclomaticComplexity: 11
      functionsReached:
        - getenv
        - ovs_rwlock_rdlock_at
        - ovs_rwlock_unlock
        - ovsthread_once_done
        - ovsthread_once_start
        - syslog_libc_create
        - time_wall_msec
        - unixctl_command_register
        - vlog
        - vlog_disable_rate_limit
        - vlog_enable_rate_limit
        - vlog_inject_info_log
        - vlog_set_syslog_method
        - vlog_unixctl_close
        - vlog_unixctl_list
        - vlog_unixctl_list_pattern
        - vlog_unixctl_reopen
        - vlog_unixctl_set
        - xastrftime_msec
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vlog.c:842,9'
          Dst:             ovsthread_once_start
        - Src:             'lib/vlog.c:852,25'
          Dst:             getenv
        - Src:             'lib/vlog.c:854,17'
          Dst:             vlog_set_syslog_method
        - Src:             'lib/vlog.c:856,29'
          Dst:             syslog_libc_create
        - Src:             'lib/vlog.c:860,9'
          Dst:             ovsthread_once_done
        - Src:             'lib/vlog.c:865,15'
          Dst:             time_wall_msec
        - Src:             'lib/vlog.c:867,23'
          Dst:             xastrftime_msec
        - Src:             'lib/vlog.c:868,13'
          Dst:             vlog
        - Src:             'lib/vlog.c:872,9'
          Dst:             unixctl_command_register
        - Src:             'lib/vlog.c:872,9'
          Dst:             vlog_unixctl_set
        - Src:             'lib/vlog.c:875,9'
          Dst:             unixctl_command_register
        - Src:             'lib/vlog.c:875,9'
          Dst:             vlog_unixctl_list
        - Src:             'lib/vlog.c:877,9'
          Dst:             unixctl_command_register
        - Src:             'lib/vlog.c:877,9'
          Dst:             vlog_unixctl_list_pattern
        - Src:             'lib/vlog.c:879,9'
          Dst:             unixctl_command_register
        - Src:             'lib/vlog.c:879,9'
          Dst:             vlog_enable_rate_limit
        - Src:             'lib/vlog.c:881,9'
          Dst:             unixctl_command_register
        - Src:             'lib/vlog.c:881,9'
          Dst:             vlog_disable_rate_limit
        - Src:             'lib/vlog.c:883,9'
          Dst:             unixctl_command_register
        - Src:             'lib/vlog.c:883,9'
          Dst:             vlog_unixctl_reopen
        - Src:             'lib/vlog.c:885,9'
          Dst:             unixctl_command_register
        - Src:             'lib/vlog.c:885,9'
          Dst:             vlog_unixctl_close
        - Src:             'lib/vlog.c:887,9'
          Dst:             unixctl_command_register
        - Src:             'lib/vlog.c:887,9'
          Dst:             vlog_inject_info_log
        - Src:             'lib/vlog.c:890,9'
          Dst:             ovs_rwlock_rdlock_at
        - Src:             'lib/vlog.c:892,9'
          Dst:             ovs_rwlock_unlock
        - Src:             'lib/vlog.c:895,13'
          Dst:             vlog
    - functionName:    msg_num_get
      functionSourceFile: '/src/openvswitch/lib/vlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 100
      functionLinenumberEnd: 100
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - msg_num_get_unsafe
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vlog.c:100,1'
          Dst:             msg_num_get_unsafe
    - functionName:    format_log_message
      functionSourceFile: '/src/openvswitch/lib/vlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1023
      functionLinenumberEnd: 1135
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         54
      ICount:          439
      EdgeCount:       65
      CyclomaticComplexity: 13
      functionsReached:
        - __ctype_b_loc
        - ds_clear
        - ds_put_char
        - ds_put_char_multiple
        - ds_put_cstr
        - ds_put_format
        - ds_put_format_valist
        - ds_put_strftime_msec
        - ds_put_uninit
        - fetch_braces
        - get_subprogram_name
        - gethostname
        - getpid
        - msg_num_get_unsafe
        - time_boot_msec
        - time_msec
        - time_wall_msec
        - vlog_get_level_name
        - vlog_get_module_name
      functionUses:    4
      BranchProfiles:
        - Branch String:   'lib/vlog.c:1057,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/vlog.c:1029,5'
          Dst:             ds_clear
        - Src:             'lib/vlog.c:1037,13'
          Dst:             ds_put_char
        - Src:             'lib/vlog.c:1051,16'
          Dst:             __ctype_b_loc
        - Src:             'lib/vlog.c:1059,13'
          Dst:             ds_put_cstr
        - Src:             'lib/vlog.c:1065,13'
          Dst:             ds_put_format
        - Src:             'lib/vlog.c:1068,17'
          Dst:             fetch_braces
        - Src:             'lib/vlog.c:1069,28'
          Dst:             vlog_get_module_name
        - Src:             'lib/vlog.c:1069,13'
          Dst:             ds_put_cstr
        - Src:             'lib/vlog.c:1072,17'
          Dst:             fetch_braces
        - Src:             'lib/vlog.c:1073,42'
          Dst:             time_wall_msec
        - Src:             'lib/vlog.c:1073,13'
          Dst:             ds_put_strftime_msec
        - Src:             'lib/vlog.c:1076,17'
          Dst:             fetch_braces
        - Src:             'lib/vlog.c:1077,42'
          Dst:             time_wall_msec
        - Src:             'lib/vlog.c:1077,13'
          Dst:             ds_put_strftime_msec
        - Src:             'lib/vlog.c:1080,13'
          Dst:             gethostname
        - Src:             'lib/vlog.c:1082,13'
          Dst:             ds_put_cstr
        - Src:             'lib/vlog.c:1088,13'
          Dst:             ds_put_format_valist
        - Src:             'lib/vlog.c:1095,37'
          Dst:             msg_num_get_unsafe
        - Src:             'lib/vlog.c:1095,13'
          Dst:             ds_put_format
        - Src:             'lib/vlog.c:1098,13'
          Dst:             ds_put_char
        - Src:             'lib/vlog.c:1101,28'
          Dst:             vlog_get_level_name
        - Src:             'lib/vlog.c:1101,13'
          Dst:             ds_put_cstr
        - Src:             'lib/vlog.c:1104,48'
          Dst:             getpid
        - Src:             'lib/vlog.c:1104,13'
          Dst:             ds_put_format
        - Src:             'lib/vlog.c:1107,38'
          Dst:             time_msec
        - Src:             'lib/vlog.c:1107,52'
          Dst:             time_boot_msec
        - Src:             'lib/vlog.c:1107,13'
          Dst:             ds_put_format
        - Src:             'lib/vlog.c:1110,31'
          Dst:             get_subprogram_name
        - Src:             'lib/vlog.c:1111,13'
          Dst:             ds_put_cstr
        - Src:             'lib/vlog.c:1114,31'
          Dst:             get_subprogram_name
        - Src:             'lib/vlog.c:1116,17'
          Dst:             ds_put_format
        - Src:             'lib/vlog.c:1120,13'
          Dst:             ds_put_char
        - Src:             'lib/vlog.c:1127,17'
          Dst:             ds_put_uninit
        - Src:             'lib/vlog.c:1131,17'
          Dst:             ds_put_char_multiple
    - functionName:    ds_put_char
      functionSourceFile: '/src/openvswitch/./include/openvswitch/dynamic-string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_char__
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/dynamic-string.h:99,9'
          Dst:             ds_put_char__
    - functionName:    send_to_syslog_fd
      functionSourceFile: '/src/openvswitch/lib/vlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1141
      functionLinenumberEnd: 1149
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          69
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - __errno_location
        - write
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vlog.c:1145,12'
          Dst:             write
        - Src:             'lib/vlog.c:1145,49'
          Dst:             __errno_location
    - functionName:    vlog_get_module_name
      functionSourceFile: '/src/openvswitch/lib/vlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 227
      functionLinenumberEnd: 228
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - 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:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    vlog_get_level_name
      functionSourceFile: '/src/openvswitch/lib/vlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 180
      functionLinenumberEnd: 182
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsthread_once_start
      functionSourceFile: '/src/openvswitch/./include/openvswitch/thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsthread_once_start__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/thread.h:161,12'
          Dst:             ovsthread_once_start__
    - functionName:    vlog_set_syslog_method
      functionSourceFile: '/src/openvswitch/lib/vlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 619
      functionLinenumberEnd: 635
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         17
      ICount:          75
      EdgeCount:       21
      CyclomaticComplexity: 6
      functionsReached:
        - ovs_fatal
        - strcmp
        - strncmp
        - syslog_direct_create
        - syslog_libc_create
        - syslog_null_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vlog.c:626,10'
          Dst:             strcmp
        - Src:             'lib/vlog.c:627,21'
          Dst:             syslog_null_create
        - Src:             'lib/vlog.c:628,17'
          Dst:             strcmp
        - Src:             'lib/vlog.c:629,21'
          Dst:             syslog_libc_create
        - Src:             'lib/vlog.c:630,17'
          Dst:             strncmp
        - Src:             'lib/vlog.c:630,48'
          Dst:             strncmp
        - Src:             'lib/vlog.c:631,21'
          Dst:             syslog_direct_create
        - Src:             'lib/vlog.c:633,9'
          Dst:             ovs_fatal
    - functionName:    vlog
      functionSourceFile: '/src/openvswitch/lib/vlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1244
      functionLinenumberEnd: 1250
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_valist
      functionUses:    453
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vlog.c:1248,5'
          Dst:             vlog_valist
    - functionName:    vlog_unixctl_set
      functionSourceFile: '/src/openvswitch/lib/vlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 694
      functionLinenumberEnd: 710
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          74
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - unixctl_command_reply
        - unixctl_command_reply_error
        - vlog_set_levels
        - vlog_set_levels_from_string
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vlog.c:699,9'
          Dst:             vlog_set_levels
        - Src:             'lib/vlog.c:702,21'
          Dst:             vlog_set_levels_from_string
        - Src:             'lib/vlog.c:704,13'
          Dst:             unixctl_command_reply_error
        - Src:             'lib/vlog.c:709,5'
          Dst:             unixctl_command_reply
    - functionName:    vlog_unixctl_list
      functionSourceFile: '/src/openvswitch/lib/vlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 715
      functionLinenumberEnd: 719
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - unixctl_command_reply
        - vlog_get_levels
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vlog.c:716,17'
          Dst:             vlog_get_levels
        - Src:             'lib/vlog.c:717,5'
          Dst:             unixctl_command_reply
    - functionName:    vlog_unixctl_list_pattern
      functionSourceFile: '/src/openvswitch/lib/vlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 724
      functionLinenumberEnd: 730
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - unixctl_command_reply
        - vlog_get_patterns
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vlog.c:727,11'
          Dst:             vlog_get_patterns
        - Src:             'lib/vlog.c:728,5'
          Dst:             unixctl_command_reply
    - functionName:    vlog_enable_rate_limit
      functionSourceFile: '/src/openvswitch/lib/vlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 816
      functionLinenumberEnd: 818
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - set_rate_limits
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vlog.c:817,5'
          Dst:             set_rate_limits
    - functionName:    vlog_disable_rate_limit
      functionSourceFile: '/src/openvswitch/lib/vlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 823
      functionLinenumberEnd: 825
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - set_rate_limits
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vlog.c:824,5'
          Dst:             set_rate_limits
    - functionName:    vlog_unixctl_reopen
      functionSourceFile: '/src/openvswitch/lib/vlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 735
      functionLinenumberEnd: 752
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          58
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - __errno_location
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovs_strerror
        - unixctl_command_reply
        - unixctl_command_reply_error
        - vlog_reopen_log_file
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vlog.c:738,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/vlog.c:740,5'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/vlog.c:743,21'
          Dst:             vlog_reopen_log_file
        - Src:             'lib/vlog.c:745,60'
          Dst:             __errno_location
        - Src:             'lib/vlog.c:745,47'
          Dst:             ovs_strerror
        - Src:             'lib/vlog.c:745,13'
          Dst:             unixctl_command_reply_error
        - Src:             'lib/vlog.c:747,13'
          Dst:             unixctl_command_reply
        - Src:             'lib/vlog.c:750,9'
          Dst:             unixctl_command_reply_error
    - functionName:    vlog_unixctl_close
      functionSourceFile: '/src/openvswitch/lib/vlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 757
      functionLinenumberEnd: 774
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          76
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - async_append_destroy
        - close
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - unixctl_command_reply
        - update_min_level
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vlog.c:758,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/vlog.c:760,9'
          Dst:             close
        - Src:             'lib/vlog.c:763,9'
          Dst:             async_append_destroy
        - Src:             'lib/vlog.c:768,13'
          Dst:             update_min_level
        - Src:             'lib/vlog.c:771,5'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/vlog.c:773,5'
          Dst:             unixctl_command_reply
    - functionName:    vlog_inject_info_log
      functionSourceFile: '/src/openvswitch/lib/vlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 830
      functionLinenumberEnd: 833
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          46
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - unixctl_command_reply
        - vlog
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vlog.c:831,5'
          Dst:             vlog
        - Src:             'lib/vlog.c:832,5'
          Dst:             unixctl_command_reply
    - functionName:    vlog_reopen_log_file
      functionSourceFile: '/src/openvswitch/lib/vlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 466
      functionLinenumberEnd: 480
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - nullable_xstrdup
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - vlog_set_log_file
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vlog.c:469,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/vlog.c:470,10'
          Dst:             nullable_xstrdup
        - Src:             'lib/vlog.c:471,5'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/vlog.c:474,21'
          Dst:             vlog_set_log_file
    - functionName:    vlog_set_log_file
      functionSourceFile: '/src/openvswitch/lib/vlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 454
      functionLinenumberEnd: 458
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_logdir
        - vlog_set_log_file__
        - xasprintf
        - xstrdup
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vlog.c:457,11'
          Dst:             xstrdup
        - Src:             'lib/vlog.c:458,34'
          Dst:             ovs_logdir
        - Src:             'lib/vlog.c:458,11'
          Dst:             xasprintf
        - Src:             'lib/vlog.c:455,12'
          Dst:             vlog_set_log_file__
    - functionName:    vlog_set_log_file__
      functionSourceFile: '/src/openvswitch/lib/vlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 365
      functionLinenumberEnd: 437
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         62
      ICount:          313
      EdgeCount:       81
      CyclomaticComplexity: 21
      functionsReached:
        - __errno_location
        - async_append_create
        - async_append_destroy
        - close
        - fstat
        - nullable_xstrdup
        - open
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovs_strerror
        - update_min_level
        - vlog
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vlog.c:375,22'
          Dst:             open
        - Src:             'lib/vlog.c:378,13'
          Dst:             __errno_location
        - Src:             'lib/vlog.c:378,13'
          Dst:             ovs_strerror
        - Src:             'lib/vlog.c:378,13'
          Dst:             vlog
        - Src:             'lib/vlog.c:381,20'
          Dst:             __errno_location
        - Src:             'lib/vlog.c:388,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/vlog.c:393,23'
          Dst:             fstat
        - Src:             'lib/vlog.c:394,23'
          Dst:             fstat
        - Src:             'lib/vlog.c:397,5'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/vlog.c:400,13'
          Dst:             close
        - Src:             'lib/vlog.c:407,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/vlog.c:409,5'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/vlog.c:411,9'
          Dst:             vlog
        - Src:             'lib/vlog.c:415,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/vlog.c:416,5'
          Dst:             async_append_destroy
        - Src:             'lib/vlog.c:418,9'
          Dst:             close
        - Src:             'lib/vlog.c:423,21'
          Dst:             nullable_xstrdup
        - Src:             'lib/vlog.c:425,30'
          Dst:             async_append_create
        - Src:             'lib/vlog.c:428,9'
          Dst:             update_min_level
        - Src:             'lib/vlog.c:430,5'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/vlog.c:433,5'
          Dst:             vlog
    - functionName:    vlog_get_patterns
      functionSourceFile: '/src/openvswitch/lib/vlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 973
      functionLinenumberEnd: 992
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         12
      ICount:          73
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - ds_cstr
        - ds_put_format
        - ovs_rwlock_rdlock_at
        - ovs_rwlock_unlock
        - syslog_get_prefix
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vlog.c:977,5'
          Dst:             ovs_rwlock_rdlock_at
        - Src:             'lib/vlog.c:978,5'
          Dst:             ds_put_format
        - Src:             'lib/vlog.c:979,5'
          Dst:             ds_put_format
        - Src:             'lib/vlog.c:986,22'
          Dst:             syslog_get_prefix
        - Src:             'lib/vlog.c:988,9'
          Dst:             ds_put_format
        - Src:             'lib/vlog.c:990,5'
          Dst:             ovs_rwlock_unlock
        - Src:             'lib/vlog.c:992,12'
          Dst:             ds_cstr
    - functionName:    syslog_get_prefix
      functionSourceFile: '/src/openvswitch/lib/syslog-provider.h'
      linkageType:     InternalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 47
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    vlog_get_levels
      functionSourceFile: '/src/openvswitch/lib/vlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 930
      functionLinenumberEnd: 966
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         20
      ICount:          127
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - ds_cstr
        - ds_init
        - ds_put_char
        - ds_put_cstr
        - ds_put_format
        - ds_steal_cstr
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - svec_add_nocopy
        - svec_destroy
        - svec_sort
        - vlog_get_level
        - vlog_get_level_name
        - vlog_get_module_name
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vlog.c:936,5'
          Dst:             ds_put_format
        - Src:             'lib/vlog.c:937,5'
          Dst:             ds_put_format
        - Src:             'lib/vlog.c:939,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/vlog.c:943,9'
          Dst:             ds_init
        - Src:             'lib/vlog.c:945,23'
          Dst:             vlog_get_module_name
        - Src:             'lib/vlog.c:946,43'
          Dst:             vlog_get_level
        - Src:             'lib/vlog.c:946,23'
          Dst:             vlog_get_level_name
        - Src:             'lib/vlog.c:947,43'
          Dst:             vlog_get_level
        - Src:             'lib/vlog.c:947,23'
          Dst:             vlog_get_level_name
        - Src:             'lib/vlog.c:948,43'
          Dst:             vlog_get_level
        - Src:             'lib/vlog.c:948,23'
          Dst:             vlog_get_level_name
        - Src:             'lib/vlog.c:944,9'
          Dst:             ds_put_format
        - Src:             'lib/vlog.c:950,13'
          Dst:             ds_put_cstr
        - Src:             'lib/vlog.c:952,9'
          Dst:             ds_put_char
        - Src:             'lib/vlog.c:954,33'
          Dst:             ds_steal_cstr
        - Src:             'lib/vlog.c:954,9'
          Dst:             svec_add_nocopy
        - Src:             'lib/vlog.c:956,5'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/vlog.c:958,5'
          Dst:             svec_sort
        - Src:             'lib/vlog.c:962,9'
          Dst:             ds_put_cstr
        - Src:             'lib/vlog.c:964,5'
          Dst:             svec_destroy
        - Src:             'lib/vlog.c:966,12'
          Dst:             ds_cstr
    - functionName:    vlog_get_level
      functionSourceFile: '/src/openvswitch/lib/vlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 255
      functionLinenumberEnd: 257
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    vlog_set_levels
      functionSourceFile: '/src/openvswitch/lib/vlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 303
      functionLinenumberEnd: 314
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          51
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - set_destination_level
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vlog.c:309,13'
          Dst:             set_destination_level
        - Src:             'lib/vlog.c:312,9'
          Dst:             set_destination_level
    - functionName:    vlog_set_levels_from_string
      functionSourceFile: '/src/openvswitch/lib/vlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 513
      functionLinenumberEnd: 589
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         53
      ICount:          259
      EdgeCount:       71
      CyclomaticComplexity: 20
      functionsReached:
        - strcasecmp
        - strtok_r
        - vlog_facility_exists
        - vlog_get_destination_val
        - vlog_get_level_val
        - vlog_module_from_name
        - vlog_set_levels
        - vlog_set_pattern
        - xasprintf
        - xstrdup
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vlog.c:514,15'
          Dst:             xstrdup
        - Src:             'lib/vlog.c:519,12'
          Dst:             strtok_r
        - Src:             'lib/vlog.c:520,18'
          Dst:             strcasecmp
        - Src:             'lib/vlog.c:523,16'
          Dst:             strtok_r
        - Src:             'lib/vlog.c:525,19'
          Dst:             xstrdup
        - Src:             'lib/vlog.c:529,25'
          Dst:             strcasecmp
        - Src:             'lib/vlog.c:531,26'
          Dst:             vlog_get_destination_val
        - Src:             'lib/vlog.c:533,19'
          Dst:             xasprintf
        - Src:             'lib/vlog.c:536,9'
          Dst:             vlog_set_pattern
        - Src:             'lib/vlog.c:537,25'
          Dst:             strcasecmp
        - Src:             'lib/vlog.c:540,14'
          Dst:             vlog_facility_exists
        - Src:             'lib/vlog.c:541,19'
          Dst:             xstrdup
        - Src:             'lib/vlog.c:551,18'
          Dst:             strcasecmp
        - Src:             'lib/vlog.c:553,24'
          Dst:             vlog_get_destination_val
        - Src:             'lib/vlog.c:555,27'
          Dst:             xstrdup
        - Src:             'lib/vlog.c:558,31'
          Dst:             vlog_get_destination_val
        - Src:             'lib/vlog.c:559,24'
          Dst:             vlog_get_level_val
        - Src:             'lib/vlog.c:561,27'
          Dst:             xstrdup
        - Src:             'lib/vlog.c:564,25'
          Dst:             vlog_get_level_val
        - Src:             'lib/vlog.c:565,24'
          Dst:             vlog_module_from_name
        - Src:             'lib/vlog.c:567,27'
          Dst:             xstrdup
        - Src:             'lib/vlog.c:570,26'
          Dst:             vlog_module_from_name
        - Src:             'lib/vlog.c:572,23'
          Dst:             xasprintf
        - Src:             'lib/vlog.c:550,37'
          Dst:             strtok_r
        - Src:             'lib/vlog.c:584,9'
          Dst:             vlog_set_levels
    - functionName:    vlog_get_destination_val
      functionSourceFile: '/src/openvswitch/lib/vlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 205
      functionLinenumberEnd: 213
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          47
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - strcasecmp
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vlog.c:209,14'
          Dst:             strcasecmp
    - functionName:    vlog_set_pattern
      functionSourceFile: '/src/openvswitch/lib/vlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 334
      functionLinenumberEnd: 345
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          47
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - do_set_pattern
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vlog.c:340,13'
          Dst:             do_set_pattern
        - Src:             'lib/vlog.c:343,9'
          Dst:             do_set_pattern
    - functionName:    vlog_facility_exists
      functionSourceFile: '/src/openvswitch/lib/vlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 680
      functionLinenumberEnd: 689
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          57
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - strcasecmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vlog.c:683,14'
          Dst:             strcasecmp
    - functionName:    vlog_get_level_val
      functionSourceFile: '/src/openvswitch/lib/vlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 189
      functionLinenumberEnd: 190
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - search_name_array
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vlog.c:190,12'
          Dst:             search_name_array
    - functionName:    search_name_array
      functionSourceFile: '/src/openvswitch/lib/vlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 165
      functionLinenumberEnd: 174
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          51
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - strcasecmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vlog.c:170,14'
          Dst:             strcasecmp
    - functionName:    do_set_pattern
      functionSourceFile: '/src/openvswitch/lib/vlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 318
      functionLinenumberEnd: 329
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_rwlock_unlock
        - ovs_rwlock_wrlock_at
        - xstrdup
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vlog.c:321,5'
          Dst:             ovs_rwlock_wrlock_at
        - Src:             'lib/vlog.c:327,18'
          Dst:             xstrdup
        - Src:             'lib/vlog.c:328,5'
          Dst:             ovs_rwlock_unlock
    - functionName:    set_destination_level
      functionSourceFile: '/src/openvswitch/lib/vlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 279
      functionLinenumberEnd: 295
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          81
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - update_min_level
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vlog.c:283,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/vlog.c:288,13'
          Dst:             update_min_level
        - Src:             'lib/vlog.c:292,9'
          Dst:             update_min_level
        - Src:             'lib/vlog.c:294,5'
          Dst:             ovs_mutex_unlock
    - functionName:    vlog_is_enabled
      functionSourceFile: '/src/openvswitch/lib/vlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1000
      functionLinenumberEnd: 1001
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    22
      BranchProfiles:  []
      Callsites:       []
    - functionName:    vlog_disable_async
      functionSourceFile: '/src/openvswitch/lib/vlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 919
      functionLinenumberEnd: 925
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - async_append_destroy
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vlog.c:920,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/vlog.c:922,5'
          Dst:             async_append_destroy
        - Src:             'lib/vlog.c:924,5'
          Dst:             ovs_mutex_unlock
    - functionName:    vlog_enable_async
      functionSourceFile: '/src/openvswitch/lib/vlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 908
      functionLinenumberEnd: 915
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         8
      ICount:          36
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - async_append_create
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vlog.c:909,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/vlog.c:912,22'
          Dst:             async_append_create
        - Src:             'lib/vlog.c:914,5'
          Dst:             ovs_mutex_unlock
    - functionName:    vlog_get_log_file_fd_unsafe
      functionSourceFile: '/src/openvswitch/lib/vlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 671
      functionLinenumberEnd: 672
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    vlog_direct_write_to_log_file_unsafe
      functionSourceFile: '/src/openvswitch/lib/vlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 662
      functionLinenumberEnd: 666
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
        - strlen
        - write
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vlog.c:664,37'
          Dst:             strlen
        - Src:             'lib/vlog.c:664,20'
          Dst:             write
        - Src:             'lib/vlog.c:664,9'
          Dst:             ovs_ignore
    - functionName:    vlog_set_syslog_target
      functionSourceFile: '/src/openvswitch/lib/vlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 640
      functionLinenumberEnd: 651
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - close
        - inet_open_active
        - ovs_rwlock_unlock
        - ovs_rwlock_wrlock_at
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vlog.c:643,5'
          Dst:             inet_open_active
        - Src:             'lib/vlog.c:645,5'
          Dst:             ovs_rwlock_wrlock_at
        - Src:             'lib/vlog.c:647,9'
          Dst:             close
        - Src:             'lib/vlog.c:650,5'
          Dst:             ovs_rwlock_unlock
    - functionName:    vlog_set_verbosity
      functionSourceFile: '/src/openvswitch/lib/vlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 606
      functionLinenumberEnd: 615
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          39
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_fatal
        - vlog_set_levels
        - vlog_set_levels_from_string
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vlog.c:608,21'
          Dst:             vlog_set_levels_from_string
        - Src:             'lib/vlog.c:610,13'
          Dst:             ovs_fatal
        - Src:             'lib/vlog.c:613,9'
          Dst:             vlog_set_levels
    - functionName:    vlog_set_levels_from_string_assert
      functionSourceFile: '/src/openvswitch/lib/vlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 595
      functionLinenumberEnd: 600
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         5
      ICount:          29
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_fatal
        - vlog_set_levels_from_string
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vlog.c:596,19'
          Dst:             vlog_set_levels_from_string
        - Src:             'lib/vlog.c:598,9'
          Dst:             ovs_fatal
    - functionName:    vlog_change_owner_unix
      functionSourceFile: '/src/openvswitch/lib/vlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 488
      functionLinenumberEnd: 507
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          67
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - __errno_location
        - chown
        - ds_put_format
        - ds_steal_cstr
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovs_strerror
        - vlog_fatal
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vlog.c:492,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/vlog.c:493,29'
          Dst:             chown
        - Src:             'lib/vlog.c:500,51'
          Dst:             __errno_location
        - Src:             'lib/vlog.c:500,38'
          Dst:             ovs_strerror
        - Src:             'lib/vlog.c:499,9'
          Dst:             ds_put_format
        - Src:             'lib/vlog.c:502,5'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/vlog.c:505,9'
          Dst:             ds_steal_cstr
        - Src:             'lib/vlog.c:505,9'
          Dst:             vlog_fatal
    - functionName:    chown
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    vlog_fatal
      functionSourceFile: '/src/openvswitch/lib/vlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1283
      functionLinenumberEnd: 1284
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_fatal_valist
      functionUses:    43
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vlog.c:1284,5'
          Dst:             vlog_fatal_valist
    - functionName:    vlog_fatal_valist
      functionSourceFile: '/src/openvswitch/lib/vlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1262
      functionLinenumberEnd: 1269
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_fatal_valist
        - vlog_valist
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vlog.c:1268,5'
          Dst:             vlog_valist
        - Src:             'lib/vlog.c:1269,5'
          Dst:             ovs_fatal_valist
    - functionName:    vlog_close_log_file
      functionSourceFile: '/src/openvswitch/lib/vlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 445
      functionLinenumberEnd: 447
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_set_log_file__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vlog.c:446,5'
          Dst:             vlog_set_log_file__
    - functionName:    vlog_get_log_file
      functionSourceFile: '/src/openvswitch/lib/vlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 351
      functionLinenumberEnd: 356
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nullable_xstrdup
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vlog.c:352,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/vlog.c:353,16'
          Dst:             nullable_xstrdup
        - Src:             'lib/vlog.c:354,5'
          Dst:             ovs_mutex_unlock
    - functionName:    vlog_get_destination_name
      functionSourceFile: '/src/openvswitch/lib/vlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 196
      functionLinenumberEnd: 198
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    vlog_abort_valist
      functionSourceFile: '/src/openvswitch/lib/vlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1298
      functionLinenumberEnd: 1309
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          22
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached:
        - log_backtrace_at
        - ovs_abort_valist
        - vlog_valist
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vlog.c:1307,5'
          Dst:             log_backtrace_at
        - Src:             'lib/vlog.c:1308,5'
          Dst:             vlog_valist
        - Src:             'lib/vlog.c:1309,5'
          Dst:             ovs_abort_valist
    - functionName:    vlog_abort
      functionSourceFile: '/src/openvswitch/lib/vlog.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1323
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_abort_valist
      functionUses:    47
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vlog.c:1323,5'
          Dst:             vlog_abort_valist
    - functionName:    latch_wait_at
      functionSourceFile: '/src/openvswitch/lib/latch-unix.c'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 96
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - poll_fd_wait_at
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/latch-unix.c:95,5'
          Dst:             poll_fd_wait_at
    - functionName:    latch_is_set
      functionSourceFile: '/src/openvswitch/lib/latch-unix.c'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 84
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          59
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - __errno_location
        - poll
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/latch-unix.c:81,18'
          Dst:             poll
        - Src:             'lib/latch-unix.c:82,28'
          Dst:             __errno_location
    - functionName:    latch_set
      functionSourceFile: '/src/openvswitch/lib/latch-unix.c'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 68
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - write
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/latch-unix.c:67,16'
          Dst:             write
        - Src:             'lib/latch-unix.c:67,5'
          Dst:             ovs_ignore
    - functionName:    latch_poll
      functionSourceFile: '/src/openvswitch/lib/latch-unix.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 57
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          51
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - read
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/latch-unix.c:52,15'
          Dst:             read
    - functionName:    latch_destroy
      functionSourceFile: '/src/openvswitch/lib/latch-unix.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37
      functionLinenumberEnd: 40
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - close
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/latch-unix.c:38,5'
          Dst:             close
        - Src:             'lib/latch-unix.c:39,5'
          Dst:             close
    - functionName:    latch_init
      functionSourceFile: '/src/openvswitch/lib/latch-unix.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 32
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - xpipe_nonblocking
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/latch-unix.c:31,5'
          Dst:             xpipe_nonblocking
    - functionName:    init_this_module_socket_util_unix
      functionSourceFile: '/src/openvswitch/lib/socket-util-unix.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33
      functionLinenumberEnd: 33
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/socket-util-unix.c:33,1'
          Dst:             vlog_insert_module
    - functionName:    shorten_name_via_symlink
      functionSourceFile: '/src/openvswitch/lib/socket-util-unix.c'
      linkageType:     InternalLinkage
      functionLinenumber: 158
      functionLinenumberEnd: 205
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         34
      ICount:          180
      EdgeCount:       44
      CyclomaticComplexity: 12
      functionsReached:
        - __errno_location
        - abs_file_name
        - base_name
        - dir_name
        - fatal_signal_add_file_to_unlink
        - fatal_signal_unlink_file_now
        - getenv
        - random_uint32
        - snprintf
        - symlink
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/socket-util-unix.c:164,11'
          Dst:             abs_file_name
        - Src:             'lib/socket-util-unix.c:165,11'
          Dst:             dir_name
        - Src:             'lib/socket-util-unix.c:166,12'
          Dst:             base_name
        - Src:             'lib/socket-util-unix.c:169,14'
          Dst:             getenv
        - Src:             'lib/socket-util-unix.c:178,55'
          Dst:             random_uint32
        - Src:             'lib/socket-util-unix.c:177,15'
          Dst:             snprintf
        - Src:             'lib/socket-util-unix.c:180,20'
          Dst:             symlink
        - Src:             'lib/socket-util-unix.c:180,45'
          Dst:             __errno_location
        - Src:             'lib/socket-util-unix.c:190,9'
          Dst:             fatal_signal_add_file_to_unlink
        - Src:             'lib/socket-util-unix.c:192,15'
          Dst:             snprintf
        - Src:             'lib/socket-util-unix.c:194,13'
          Dst:             fatal_signal_unlink_file_now
    - functionName:    symlink
      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:    shorten_name_via_proc
      functionSourceFile: '/src/openvswitch/lib/socket-util-unix.c'
      linkageType:     InternalLinkage
      functionLinenumber: 113
      functionLinenumberEnd: 147
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          108
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - __errno_location
        - base_name
        - close
        - dir_name
        - open
        - ovs_strerror
        - snprintf
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/socket-util-unix.c:122,11'
          Dst:             dir_name
        - Src:             'lib/socket-util-unix.c:123,13'
          Dst:             open
        - Src:             'lib/socket-util-unix.c:126,21'
          Dst:             __errno_location
        - Src:             'lib/socket-util-unix.c:128,9'
          Dst:             ovs_strerror
        - Src:             'lib/socket-util-unix.c:128,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/socket-util-unix.c:135,12'
          Dst:             base_name
        - Src:             'lib/socket-util-unix.c:136,11'
          Dst:             snprintf
        - Src:             'lib/socket-util-unix.c:144,9'
          Dst:             close
    - functionName:    af_inet_ifreq_ioctl
      functionSourceFile: '/src/openvswitch/lib/socket-util-unix.c'
      linkageType:     InternalLinkage
      functionLinenumber: 424
      functionLinenumberEnd: 434
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          65
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - af_inet_ioctl
        - ovs_strerror
        - ovs_strzcpy
        - vlog_rate_limit
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/socket-util-unix.c:427,5'
          Dst:             ovs_strzcpy
        - Src:             'lib/socket-util-unix.c:428,13'
          Dst:             af_inet_ioctl
        - Src:             'lib/socket-util-unix.c:431,9'
          Dst:             ovs_strerror
        - Src:             'lib/socket-util-unix.c:431,9'
          Dst:             vlog_rate_limit
    - functionName:    af_inet_ioctl
      functionSourceFile: '/src/openvswitch/lib/socket-util-unix.c'
      linkageType:     InternalLinkage
      functionLinenumber: 402
      functionLinenumberEnd: 417
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         20
      ICount:          94
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - __errno_location
        - ioctl
        - ovsthread_once_done
        - ovsthread_once_start
        - sock_errno
        - sock_strerror
        - socket
        - vlog
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/socket-util-unix.c:406,9'
          Dst:             ovsthread_once_start
        - Src:             'lib/socket-util-unix.c:407,16'
          Dst:             socket
        - Src:             'lib/socket-util-unix.c:409,25'
          Dst:             sock_errno
        - Src:             'lib/socket-util-unix.c:410,13'
          Dst:             sock_strerror
        - Src:             'lib/socket-util-unix.c:410,13'
          Dst:             vlog
        - Src:             'lib/socket-util-unix.c:413,9'
          Dst:             ovsthread_once_done
        - Src:             'lib/socket-util-unix.c:417,15'
          Dst:             ioctl
        - Src:             'lib/socket-util-unix.c:417,49'
          Dst:             __errno_location
    - functionName:    ovsthread_once_start
      functionSourceFile: '/src/openvswitch/./include/openvswitch/thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsthread_once_start__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/thread.h:161,12'
          Dst:             ovsthread_once_start__
    - functionName:    sock_errno
      functionSourceFile: '/src/openvswitch/lib/socket-util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 148
      functionLinenumberEnd: 149
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __errno_location
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/socket-util.h:149,12'
          Dst:             __errno_location
    - 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:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_unix_name_len
      functionSourceFile: '/src/openvswitch/lib/socket-util-unix.c'
      linkageType:     InternalLinkage
      functionLinenumber: 391
      functionLinenumberEnd: 394
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          39
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    free_sockaddr_un
      functionSourceFile: '/src/openvswitch/lib/socket-util-unix.c'
      linkageType:     InternalLinkage
      functionLinenumber: 252
      functionLinenumberEnd: 259
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          45
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - close
        - fatal_signal_unlink_file_now
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/socket-util-unix.c:254,9'
          Dst:             close
        - Src:             'lib/socket-util-unix.c:257,9'
          Dst:             fatal_signal_unlink_file_now
    - functionName:    bind_unix_socket
      functionSourceFile: '/src/openvswitch/lib/socket-util-unix.c'
      linkageType:     InternalLinkage
      functionLinenumber: 263
      functionLinenumberEnd: 303
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          56
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - __errno_location
        - bind
        - fchmod
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/socket-util-unix.c:269,13'
          Dst:             fchmod
        - Src:             'lib/socket-util-unix.c:270,20'
          Dst:             __errno_location
        - Src:             'lib/socket-util-unix.c:274,13'
          Dst:             bind
        - Src:             'lib/socket-util-unix.c:275,20'
          Dst:             __errno_location
    - 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:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    make_sockaddr_un
      functionSourceFile: '/src/openvswitch/lib/socket-util-unix.c'
      linkageType:     InternalLinkage
      functionLinenumber: 220
      functionLinenumberEnd: 247
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          116
      EdgeCount:       21
      CyclomaticComplexity: 6
      functionsReached:
        - ovs_strzcpy
        - shorten_name_via_proc
        - shorten_name_via_symlink
        - strlen
        - vlog_rate_limit
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/socket-util-unix.c:225,9'
          Dst:             strlen
        - Src:             'lib/socket-util-unix.c:227,21'
          Dst:             shorten_name_via_proc
        - Src:             'lib/socket-util-unix.c:229,21'
          Dst:             shorten_name_via_symlink
        - Src:             'lib/socket-util-unix.c:234,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/socket-util-unix.c:243,5'
          Dst:             ovs_strzcpy
        - Src:             'lib/socket-util-unix.c:245,19'
          Dst:             strlen
    - functionName:    make_unix_socket
      functionSourceFile: '/src/openvswitch/lib/socket-util-unix.c'
      linkageType:     InternalLinkage
      functionLinenumber: 314
      functionLinenumberEnd: 387
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - int
        - bool
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         48
      ICount:          257
      EdgeCount:       64
      CyclomaticComplexity: 18
      functionsReached:
        - __errno_location
        - bind_unix_socket
        - close
        - connect
        - fatal_signal_add_file_to_unlink
        - fatal_signal_unlink_file_now
        - free_sockaddr_un
        - make_sockaddr_un
        - ovs_strerror
        - set_nonblocking
        - socket
        - unlink
        - vlog
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/socket-util-unix.c:318,10'
          Dst:             socket
        - Src:             'lib/socket-util-unix.c:320,17'
          Dst:             __errno_location
        - Src:             'lib/socket-util-unix.c:328,17'
          Dst:             set_nonblocking
        - Src:             'lib/socket-util-unix.c:340,13'
          Dst:             unlink
        - Src:             'lib/socket-util-unix.c:340,34'
          Dst:             __errno_location
        - Src:             'lib/socket-util-unix.c:341,13'
          Dst:             __errno_location
        - Src:             'lib/socket-util-unix.c:341,13'
          Dst:             ovs_strerror
        - Src:             'lib/socket-util-unix.c:341,13'
          Dst:             vlog
        - Src:             'lib/socket-util-unix.c:344,9'
          Dst:             fatal_signal_add_file_to_unlink
        - Src:             'lib/socket-util-unix.c:346,17'
          Dst:             make_sockaddr_un
        - Src:             'lib/socket-util-unix.c:348,21'
          Dst:             bind_unix_socket
        - Src:             'lib/socket-util-unix.c:350,9'
          Dst:             free_sockaddr_un
        - Src:             'lib/socket-util-unix.c:363,17'
          Dst:             make_sockaddr_un
        - Src:             'lib/socket-util-unix.c:365,16'
          Dst:             connect
        - Src:             'lib/socket-util-unix.c:366,16'
          Dst:             __errno_location
        - Src:             'lib/socket-util-unix.c:367,21'
          Dst:             __errno_location
        - Src:             'lib/socket-util-unix.c:369,9'
          Dst:             free_sockaddr_un
        - Src:             'lib/socket-util-unix.c:383,9'
          Dst:             fatal_signal_unlink_file_now
        - Src:             'lib/socket-util-unix.c:385,5'
          Dst:             close
    - 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:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    drain_rcvbuf
      functionSourceFile: '/src/openvswitch/lib/socket-util-unix.c'
      linkageType:     InternalLinkage
      functionLinenumber: 75
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          75
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - get_socket_rcvbuf
        - recv
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/socket-util-unix.c:78,14'
          Dst:             get_socket_rcvbuf
        - Src:             'lib/socket-util-unix.c:93,27'
          Dst:             recv
    - 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:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    xpipe_nonblocking
      functionSourceFile: '/src/openvswitch/lib/socket-util-unix.c'
      linkageType:     InternalLinkage
      functionLinenumber: 62
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - xpipe
        - xset_nonblocking
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/socket-util-unix.c:63,5'
          Dst:             xpipe
        - Src:             'lib/socket-util-unix.c:64,5'
          Dst:             xset_nonblocking
        - Src:             'lib/socket-util-unix.c:65,5'
          Dst:             xset_nonblocking
    - functionName:    xpipe
      functionSourceFile: '/src/openvswitch/lib/socket-util-unix.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 58
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         5
      ICount:          29
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - __errno_location
        - ovs_strerror
        - pipe
        - vlog_fatal
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/socket-util-unix.c:55,9'
          Dst:             pipe
        - Src:             'lib/socket-util-unix.c:56,9'
          Dst:             __errno_location
        - Src:             'lib/socket-util-unix.c:56,9'
          Dst:             ovs_strerror
        - Src:             'lib/socket-util-unix.c:56,9'
          Dst:             vlog_fatal
    - functionName:    pipe
      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:    init_this_module_netdev_linux
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 84
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:84,1'
          Dst:             vlog_insert_module
    - functionName:    netdev_set_policing_init_coverage
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 86
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:86,1'
          Dst:             coverage_counter_register
    - functionName:    netdev_arp_lookup_init_coverage
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 87
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:87,1'
          Dst:             coverage_counter_register
    - functionName:    netdev_get_ifindex_init_coverage
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 88
      functionLinenumberEnd: 88
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:88,1'
          Dst:             coverage_counter_register
    - functionName:    netdev_get_hwaddr_init_coverage
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 89
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:89,1'
          Dst:             coverage_counter_register
    - functionName:    netdev_set_hwaddr_init_coverage
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 90
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:90,1'
          Dst:             coverage_counter_register
    - functionName:    netdev_get_ethtool_init_coverage
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 91
      functionLinenumberEnd: 91
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:91,1'
          Dst:             coverage_counter_register
    - functionName:    netdev_set_ethtool_init_coverage
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 92
      functionLinenumberEnd: 92
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:92,1'
          Dst:             coverage_counter_register
    - functionName:    netdev_linux_invalid_l4_csum_init_coverage
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 93
      functionLinenumberEnd: 93
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:93,1'
          Dst:             coverage_counter_register
    - functionName:    netdev_linux_unknown_l4_csum_init_coverage
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 94
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:94,1'
          Dst:             coverage_counter_register
    - functionName:    netdev_linux_unknown_l4_csum_count
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 94
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_netdev_linux_unknown_l4_csum_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:94,1'
          Dst:             counter_netdev_linux_unknown_l4_csum_get
    - functionName:    counter_netdev_linux_unknown_l4_csum_get
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 94
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_netdev_linux_unknown_l4_csum_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:94,1'
          Dst:             counter_netdev_linux_unknown_l4_csum_get_unsafe
    - functionName:    counter_netdev_linux_unknown_l4_csum_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 94
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_linux_invalid_l4_csum_count
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 93
      functionLinenumberEnd: 93
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_netdev_linux_invalid_l4_csum_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:93,1'
          Dst:             counter_netdev_linux_invalid_l4_csum_get
    - functionName:    counter_netdev_linux_invalid_l4_csum_get
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 93
      functionLinenumberEnd: 93
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_netdev_linux_invalid_l4_csum_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:93,1'
          Dst:             counter_netdev_linux_invalid_l4_csum_get_unsafe
    - functionName:    counter_netdev_linux_invalid_l4_csum_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 93
      functionLinenumberEnd: 93
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_set_ethtool_count
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 92
      functionLinenumberEnd: 92
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_netdev_set_ethtool_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:92,1'
          Dst:             counter_netdev_set_ethtool_get
    - functionName:    counter_netdev_set_ethtool_get
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 92
      functionLinenumberEnd: 92
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_netdev_set_ethtool_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:92,1'
          Dst:             counter_netdev_set_ethtool_get_unsafe
    - functionName:    counter_netdev_set_ethtool_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 92
      functionLinenumberEnd: 92
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_get_ethtool_count
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 91
      functionLinenumberEnd: 91
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_netdev_get_ethtool_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:91,1'
          Dst:             counter_netdev_get_ethtool_get
    - functionName:    counter_netdev_get_ethtool_get
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 91
      functionLinenumberEnd: 91
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_netdev_get_ethtool_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:91,1'
          Dst:             counter_netdev_get_ethtool_get_unsafe
    - functionName:    counter_netdev_get_ethtool_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 91
      functionLinenumberEnd: 91
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_set_hwaddr_count
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 90
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_netdev_set_hwaddr_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:90,1'
          Dst:             counter_netdev_set_hwaddr_get
    - functionName:    counter_netdev_set_hwaddr_get
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 90
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_netdev_set_hwaddr_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:90,1'
          Dst:             counter_netdev_set_hwaddr_get_unsafe
    - functionName:    counter_netdev_set_hwaddr_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 90
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_get_hwaddr_count
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 89
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_netdev_get_hwaddr_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:89,1'
          Dst:             counter_netdev_get_hwaddr_get
    - functionName:    counter_netdev_get_hwaddr_get
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 89
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_netdev_get_hwaddr_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:89,1'
          Dst:             counter_netdev_get_hwaddr_get_unsafe
    - functionName:    counter_netdev_get_hwaddr_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 89
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_get_ifindex_count
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 88
      functionLinenumberEnd: 88
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_netdev_get_ifindex_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:88,1'
          Dst:             counter_netdev_get_ifindex_get
    - functionName:    counter_netdev_get_ifindex_get
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 88
      functionLinenumberEnd: 88
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_netdev_get_ifindex_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:88,1'
          Dst:             counter_netdev_get_ifindex_get_unsafe
    - functionName:    counter_netdev_get_ifindex_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 88
      functionLinenumberEnd: 88
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_arp_lookup_count
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 87
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_netdev_arp_lookup_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:87,1'
          Dst:             counter_netdev_arp_lookup_get
    - functionName:    counter_netdev_arp_lookup_get
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 87
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_netdev_arp_lookup_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:87,1'
          Dst:             counter_netdev_arp_lookup_get_unsafe
    - functionName:    counter_netdev_arp_lookup_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 87
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_set_policing_count
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 86
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_netdev_set_policing_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:86,1'
          Dst:             counter_netdev_set_policing_get
    - functionName:    counter_netdev_set_policing_get
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 86
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_netdev_set_policing_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:86,1'
          Dst:             counter_netdev_set_policing_get_unsafe
    - functionName:    counter_netdev_set_policing_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 86
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofpbuf_pull
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 258
      functionLinenumberEnd: 269
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          64
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:259,5'
          Dst:             ovs_ignore
    - functionName:    nl_msg_act_police_end_nest
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3005
      functionLinenumberEnd: 3009
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_msg_end_nested
        - nl_msg_put_u32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:3006,5'
          Dst:             nl_msg_put_u32
        - Src:             'lib/netdev-linux.c:3007,5'
          Dst:             nl_msg_end_nested
        - Src:             'lib/netdev-linux.c:3008,5'
          Dst:             nl_msg_end_nested
    - functionName:    nl_msg_act_police_start_nest
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2990
      functionLinenumberEnd: 3000
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - nl_msg_put_act_tc_policy_flag
        - nl_msg_put_string
        - nl_msg_start_nested
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:2991,19'
          Dst:             nl_msg_start_nested
        - Src:             'lib/netdev-linux.c:2992,5'
          Dst:             nl_msg_put_string
        - Src:             'lib/netdev-linux.c:2997,9'
          Dst:             nl_msg_put_act_tc_policy_flag
        - Src:             'lib/netdev-linux.c:2999,15'
          Dst:             nl_msg_start_nested
    - functionName:    tc_policer_init
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6095
      functionLinenumberEnd: 6113
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          48
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - tc_bytes_to_ticks
        - tc_fill_rate
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:6102,5'
          Dst:             tc_fill_rate
        - Src:             'lib/netdev-linux.c:6111,24'
          Dst:             tc_bytes_to_ticks
    - functionName:    tc_fill_rate
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6766
      functionLinenumberEnd: 6773
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - tc_calc_cell_log
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:6768,22'
          Dst:             tc_calc_cell_log
    - functionName:    tc_bytes_to_ticks
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6409
      functionLinenumberEnd: 6411
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - read_psched
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:6410,5'
          Dst:             read_psched
    - functionName:    read_psched
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6315
      functionLinenumberEnd: 6394
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         51
      ICount:          230
      EdgeCount:       64
      CyclomaticComplexity: 15
      functionsReached:
        - __errno_location
        - __isoc99_fscanf
        - fclose
        - fopen
        - ovs_strerror
        - ovsthread_once_done
        - ovsthread_once_start
        - vlog
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:6357,10'
          Dst:             ovsthread_once_start
        - Src:             'lib/netdev-linux.c:6364,14'
          Dst:             fopen
        - Src:             'lib/netdev-linux.c:6366,9'
          Dst:             __errno_location
        - Src:             'lib/netdev-linux.c:6366,9'
          Dst:             ovs_strerror
        - Src:             'lib/netdev-linux.c:6366,9'
          Dst:             vlog
        - Src:             'lib/netdev-linux.c:6370,9'
          Dst:             __isoc99_fscanf
        - Src:             'lib/netdev-linux.c:6371,9'
          Dst:             vlog
        - Src:             'lib/netdev-linux.c:6372,9'
          Dst:             fclose
        - Src:             'lib/netdev-linux.c:6375,5'
          Dst:             vlog
        - Src:             'lib/netdev-linux.c:6376,5'
          Dst:             fclose
        - Src:             'lib/netdev-linux.c:6379,9'
          Dst:             vlog
        - Src:             'lib/netdev-linux.c:6387,9'
          Dst:             vlog
        - Src:             'lib/netdev-linux.c:6390,5'
          Dst:             vlog
        - Src:             'lib/netdev-linux.c:6393,5'
          Dst:             ovsthread_once_done
    - functionName:    ovsthread_once_start
      functionSourceFile: '/src/openvswitch/./include/openvswitch/thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsthread_once_start__
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/thread.h:161,12'
          Dst:             ovsthread_once_start__
    - functionName:    __isoc99_fscanf
      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:    tc_calc_cell_log
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6747
      functionLinenumberEnd: 6759
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          44
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    swap_uint64
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2326
      functionLinenumberEnd: 2330
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          19
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    auxdata_to_vlan_tpid
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1360
      functionLinenumberEnd: 1368
      functionDepth:   0
      returnType:      short
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          49
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - htons
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:1362,16'
          Dst:             htons
        - Src:             'lib/netdev-linux.c:1364,16'
          Dst:             htons
        - Src:             'lib/netdev-linux.c:1366,16'
          Dst:             htons
    - functionName:    auxdata_has_vlan_tci
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1372
      functionLinenumberEnd: 1373
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __packet_set_data
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 780
      functionLinenumberEnd: 782
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_set_data
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 852
      functionLinenumberEnd: 858
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __packet_set_data
        - dp_packet_base
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:854,55'
          Dst:             dp_packet_base
        - Src:             'lib/dp-packet.h:854,9'
          Dst:             __packet_set_data
        - Src:             'lib/dp-packet.h:856,9'
          Dst:             __packet_set_data
    - functionName:    dp_packet_base
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 750
      functionLinenumberEnd: 751
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_l2_pad_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 432
      functionLinenumberEnd: 433
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_set_tso_segsz
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 804
      functionLinenumberEnd: 806
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_l4_checksum_set_good
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1310
      functionLinenumberEnd: 1313
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_at
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 308
      functionLinenumberEnd: 310
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_data
        - dp_packet_size
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:309,29'
          Dst:             dp_packet_size
        - Src:             'lib/dp-packet.h:310,23'
          Dst:             dp_packet_data
    - functionName:    dp_packet_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 762
      functionLinenumberEnd: 763
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    11
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_data
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 845
      functionLinenumberEnd: 847
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __packet_data
        - dp_packet_base
      functionUses:    20
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:846,12'
          Dst:             __packet_data
        - Src:             'lib/dp-packet.h:847,23'
          Dst:             dp_packet_base
        - Src:             'lib/dp-packet.h:847,43'
          Dst:             __packet_data
    - functionName:    __packet_data
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 774
      functionLinenumberEnd: 775
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_linux_unknown_l4_csum_add
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 94
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_netdev_linux_unknown_l4_csum_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:94,1'
          Dst:             counter_netdev_linux_unknown_l4_csum_get
    - functionName:    dp_packet_l4_checksum_set_partial
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1342
      functionLinenumberEnd: 1344
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_linux_invalid_l4_csum_add
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 93
      functionLinenumberEnd: 93
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_netdev_linux_invalid_l4_csum_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:93,1'
          Dst:             counter_netdev_linux_invalid_l4_csum_get
    - functionName:    dp_packet_pull
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 370
      functionLinenumberEnd: 375
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          45
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_data
        - dp_packet_l2_pad_size
        - dp_packet_set_data
        - dp_packet_set_size
        - dp_packet_size
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:371,18'
          Dst:             dp_packet_data
        - Src:             'lib/dp-packet.h:372,16'
          Dst:             dp_packet_size
        - Src:             'lib/dp-packet.h:372,36'
          Dst:             dp_packet_l2_pad_size
        - Src:             'lib/dp-packet.h:372,5'
          Dst:             ovs_ignore
        - Src:             'lib/dp-packet.h:373,36'
          Dst:             dp_packet_data
        - Src:             'lib/dp-packet.h:373,5'
          Dst:             dp_packet_set_data
        - Src:             'lib/dp-packet.h:374,27'
          Dst:             dp_packet_size
        - Src:             'lib/dp-packet.h:374,5'
          Dst:             dp_packet_set_size
    - functionName:    dp_packet_set_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 768
      functionLinenumberEnd: 770
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_get_allocated
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 786
      functionLinenumberEnd: 787
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_tail
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 326
      functionLinenumberEnd: 327
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_data
        - dp_packet_size
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:327,21'
          Dst:             dp_packet_data
        - Src:             'lib/dp-packet.h:327,41'
          Dst:             dp_packet_size
    - functionName:    dp_packet_end
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 334
      functionLinenumberEnd: 335
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_base
        - dp_packet_get_allocated
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:335,21'
          Dst:             dp_packet_base
        - Src:             'lib/dp-packet.h:335,41'
          Dst:             dp_packet_get_allocated
    - functionName:    dp_packet_batch_add
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 889
      functionLinenumberEnd: 894
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_batch_grow
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:891,9'
          Dst:             dp_packet_batch_grow
    - functionName:    netdev_linux_parse_vnet_hdr
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7249
      functionLinenumberEnd: 7326
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         65
      ICount:          341
      EdgeCount:       83
      CyclomaticComplexity: 20
      functionsReached:
        - csum
        - dp_packet_at
        - dp_packet_l4_checksum_set_good
        - dp_packet_l4_checksum_set_partial
        - dp_packet_l4_proto_sctp
        - dp_packet_l4_proto_tcp
        - dp_packet_l4_proto_udp
        - dp_packet_pull
        - dp_packet_set_tso_segsz
        - dp_packet_size
        - netdev_linux_invalid_l4_csum_add
        - netdev_linux_unknown_l4_csum_add
        - parse_tcp_flags
        - vlog_rate_limit
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/netdev-linux.c:7304,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/netdev-linux.c:7250,35'
          Dst:             dp_packet_pull
        - Src:             'lib/netdev-linux.c:7264,27'
          Dst:             dp_packet_size
        - Src:             'lib/netdev-linux.c:7265,44'
          Dst:             dp_packet_size
        - Src:             'lib/netdev-linux.c:7266,13'
          Dst:             netdev_linux_invalid_l4_csum_add
        - Src:             'lib/netdev-linux.c:7270,9'
          Dst:             parse_tcp_flags
        - Src:             'lib/netdev-linux.c:7274,21'
          Dst:             dp_packet_l4_proto_tcp
        - Src:             'lib/netdev-linux.c:7276,24'
          Dst:             dp_packet_l4_proto_udp
        - Src:             'lib/netdev-linux.c:7278,24'
          Dst:             dp_packet_l4_proto_sctp
        - Src:             'lib/netdev-linux.c:7279,13'
          Dst:             dp_packet_l4_checksum_set_partial
        - Src:             'lib/netdev-linux.c:7284,13'
          Dst:             netdev_linux_unknown_l4_csum_add
        - Src:             'lib/netdev-linux.c:7286,23'
          Dst:             dp_packet_at
        - Src:             'lib/netdev-linux.c:7292,46'
          Dst:             dp_packet_size
        - Src:             'lib/netdev-linux.c:7292,18'
          Dst:             dp_packet_at
        - Src:             'lib/netdev-linux.c:7293,33'
          Dst:             dp_packet_size
        - Src:             'lib/netdev-linux.c:7293,24'
          Dst:             csum
        - Src:             'lib/netdev-linux.c:7295,17'
          Dst:             dp_packet_l4_proto_tcp
        - Src:             'lib/netdev-linux.c:7296,20'
          Dst:             dp_packet_l4_proto_udp
        - Src:             'lib/netdev-linux.c:7297,20'
          Dst:             dp_packet_l4_proto_sctp
        - Src:             'lib/netdev-linux.c:7298,17'
          Dst:             dp_packet_l4_checksum_set_good
        - Src:             'lib/netdev-linux.c:7307,9'
          Dst:             dp_packet_set_tso_segsz
        - Src:             'lib/netdev-linux.c:7312,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/netdev-linux.c:7321,9'
          Dst:             vlog_rate_limit
    - functionName:    dp_packet_l4_proto_tcp
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1259
      functionLinenumberEnd: 1261
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_l4_proto_udp
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1273
      functionLinenumberEnd: 1275
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_l4_proto_sctp
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1287
      functionLinenumberEnd: 1289
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_tailroom
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 352
      functionLinenumberEnd: 353
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_end
        - dp_packet_tail
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:353,21'
          Dst:             dp_packet_end
        - Src:             'lib/dp-packet.h:353,49'
          Dst:             dp_packet_tail
    - functionName:    netdev_linux_batch_rxq_recv_sock
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1386
      functionLinenumberEnd: 1543
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         83
      ICount:          641
      EdgeCount:       107
      CyclomaticComplexity: 26
      functionsReached:
        - __cmsg_nxthdr
        - __errno_location
        - auxdata_has_vlan_tci
        - auxdata_to_vlan_tpid
        - dp_packet_batch_add
        - dp_packet_data
        - dp_packet_delete
        - dp_packet_new_with_headroom
        - dp_packet_push
        - dp_packet_resize
        - dp_packet_set_size
        - dp_packet_tailroom
        - eth_push_vlan
        - htons
        - netdev_get_name
        - netdev_linux_cast
        - netdev_linux_parse_vnet_hdr
        - netdev_rxq_get_netdev
        - ovs_strerror
        - userspace_tso_enabled
        - vlog_rate_limit
        - wrap_recvmmsg
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:1401,9'
          Dst:             userspace_tso_enabled
        - Src:             'lib/netdev-linux.c:1416,22'
          Dst:             dp_packet_new_with_headroom
        - Src:             'lib/netdev-linux.c:1417,40'
          Dst:             dp_packet_data
        - Src:             'lib/netdev-linux.c:1420,44'
          Dst:             dp_packet_data
        - Src:             'lib/netdev-linux.c:1421,43'
          Dst:             dp_packet_tailroom
        - Src:             'lib/netdev-linux.c:1434,18'
          Dst:             wrap_recvmmsg
        - Src:             'lib/netdev-linux.c:1435,28'
          Dst:             __errno_location
        - Src:             'lib/netdev-linux.c:1438,18'
          Dst:             __errno_location
        - Src:             'lib/netdev-linux.c:1440,13'
          Dst:             dp_packet_delete
        - Src:             'lib/netdev-linux.c:1451,38'
          Dst:             netdev_rxq_get_netdev
        - Src:             'lib/netdev-linux.c:1452,43'
          Dst:             netdev_linux_cast
        - Src:             'lib/netdev-linux.c:1455,13'
          Dst:             dp_packet_delete
        - Src:             'lib/netdev-linux.c:1462,17'
          Dst:             netdev_get_name
        - Src:             'lib/netdev-linux.c:1462,17'
          Dst:             vlog_rate_limit
        - Src:             'lib/netdev-linux.c:1466,17'
          Dst:             netdev_get_name
        - Src:             'lib/netdev-linux.c:1466,17'
          Dst:             vlog_rate_limit
        - Src:             'lib/netdev-linux.c:1478,13'
          Dst:             dp_packet_set_size
        - Src:             'lib/netdev-linux.c:1479,33'
          Dst:             dp_packet_data
        - Src:             'lib/netdev-linux.c:1479,13'
          Dst:             dp_packet_push
        - Src:             'lib/netdev-linux.c:1482,13'
          Dst:             dp_packet_resize
        - Src:             'lib/netdev-linux.c:1483,13'
          Dst:             dp_packet_delete
        - Src:             'lib/netdev-linux.c:1486,13'
          Dst:             dp_packet_set_size
        - Src:             'lib/netdev-linux.c:1491,23'
          Dst:             netdev_linux_parse_vnet_hdr
        - Src:             'lib/netdev-linux.c:1493,42'
          Dst:             netdev_rxq_get_netdev
        - Src:             'lib/netdev-linux.c:1494,47'
          Dst:             netdev_linux_cast
        - Src:             'lib/netdev-linux.c:1500,17'
          Dst:             dp_packet_delete
        - Src:             'lib/netdev-linux.c:1502,17'
          Dst:             netdev_get_name
        - Src:             'lib/netdev-linux.c:1502,17'
          Dst:             ovs_strerror
        - Src:             'lib/netdev-linux.c:1502,17'
          Dst:             vlog_rate_limit
        - Src:             'lib/netdev-linux.c:1521,17'
          Dst:             auxdata_has_vlan_tci
        - Src:             'lib/netdev-linux.c:1525,23'
          Dst:             dp_packet_data
        - Src:             'lib/netdev-linux.c:1526,50'
          Dst:             htons
        - Src:             'lib/netdev-linux.c:1529,31'
          Dst:             auxdata_to_vlan_tpid
        - Src:             'lib/netdev-linux.c:1530,31'
          Dst:             htons
        - Src:             'lib/netdev-linux.c:1528,17'
          Dst:             eth_push_vlan
        - Src:             'lib/netdev-linux.c:1510,25'
          Dst:             __cmsg_nxthdr
        - Src:             'lib/netdev-linux.c:1534,9'
          Dst:             dp_packet_batch_add
        - Src:             'lib/netdev-linux.c:1539,9'
          Dst:             dp_packet_delete
    - functionName:    dp_packet_delete
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 271
      functionLinenumberEnd: 290
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          54
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - dp_packet_uninit
        - free_afxdp_buf
        - free_dpdk_buf
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:274,13'
          Dst:             free_dpdk_buf
        - Src:             'lib/dp-packet.h:279,13'
          Dst:             free_afxdp_buf
        - Src:             'lib/dp-packet.h:283,9'
          Dst:             dp_packet_uninit
    - functionName:    netdev_linux_cast
      functionSourceFile: '/src/openvswitch/lib/netdev-linux-private.h'
      linkageType:     InternalLinkage
      functionLinenumber: 135
      functionLinenumberEnd: 138
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - is_netdev_linux_class
        - netdev_get_class
        - ovs_ignore
      functionUses:    75
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux-private.h:136,38'
          Dst:             netdev_get_class
        - Src:             'lib/netdev-linux-private.h:136,16'
          Dst:             is_netdev_linux_class
        - Src:             'lib/netdev-linux-private.h:136,5'
          Dst:             ovs_ignore
    - functionName:    __cmsg_nxthdr
      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:    is_netdev_linux_class
      functionSourceFile: '/src/openvswitch/lib/netdev-linux-private.h'
      linkageType:     InternalLinkage
      functionLinenumber: 129
      functionLinenumberEnd: 130
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_linux_run
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 858
      functionLinenumberEnd: 938
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         55
      ICount:          282
      EdgeCount:       72
      CyclomaticComplexity: 19
      functionsReached:
        - get_flags
        - hmap_first
        - hmap_next
        - if_indextoname
        - is_netdev_linux_class
        - netdev_close
        - netdev_from_name
        - netdev_get_devices
        - netdev_linux_cast
        - netdev_linux_changed
        - netdev_linux_miimon_enabled
        - netdev_linux_miimon_run
        - netdev_linux_notify_sock
        - netdev_linux_update
        - netdev_linux_update_lag
        - nl_sock_drain
        - nl_sock_recv
        - ofpbuf_uninit
        - ofpbuf_use_stub
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovs_strerror
        - rtnetlink_parse
        - rtnetlink_type_is_rtnlgrp_link
        - shash_destroy
        - shash_init
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:862,9'
          Dst:             netdev_linux_miimon_enabled
        - Src:             'lib/netdev-linux.c:863,9'
          Dst:             netdev_linux_miimon_run
        - Src:             'lib/netdev-linux.c:866,12'
          Dst:             netdev_linux_notify_sock
        - Src:             'lib/netdev-linux.c:876,9'
          Dst:             ofpbuf_use_stub
        - Src:             'lib/netdev-linux.c:877,17'
          Dst:             nl_sock_recv
        - Src:             'lib/netdev-linux.c:881,17'
          Dst:             rtnetlink_parse
        - Src:             'lib/netdev-linux.c:886,38'
          Dst:             if_indextoname
        - Src:             'lib/netdev-linux.c:890,31'
          Dst:             netdev_from_name
        - Src:             'lib/netdev-linux.c:892,32'
          Dst:             is_netdev_linux_class
        - Src:             'lib/netdev-linux.c:893,51'
          Dst:             netdev_linux_cast
        - Src:             'lib/netdev-linux.c:895,21'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-linux.c:896,21'
          Dst:             netdev_linux_update
        - Src:             'lib/netdev-linux.c:897,21'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/netdev-linux.c:901,21'
          Dst:             rtnetlink_type_is_rtnlgrp_link
        - Src:             'lib/netdev-linux.c:904,21'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-linux.c:905,21'
          Dst:             netdev_linux_update_lag
        - Src:             'lib/netdev-linux.c:906,21'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/netdev-linux.c:908,17'
          Dst:             netdev_close
        - Src:             'lib/netdev-linux.c:914,13'
          Dst:             nl_sock_drain
        - Src:             'lib/netdev-linux.c:916,13'
          Dst:             shash_init
        - Src:             'lib/netdev-linux.c:917,13'
          Dst:             netdev_get_devices
        - Src:             'lib/netdev-linux.c:918,13'
          Dst:             hmap_first
        - Src:             'lib/netdev-linux.c:920,47'
          Dst:             netdev_linux_cast
        - Src:             'lib/netdev-linux.c:923,17'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-linux.c:924,17'
          Dst:             get_flags
        - Src:             'lib/netdev-linux.c:925,17'
          Dst:             netdev_linux_changed
        - Src:             'lib/netdev-linux.c:926,17'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/netdev-linux.c:928,17'
          Dst:             netdev_close
        - Src:             'lib/netdev-linux.c:918,13'
          Dst:             hmap_next
        - Src:             'lib/netdev-linux.c:930,13'
          Dst:             shash_destroy
        - Src:             'lib/netdev-linux.c:933,13'
          Dst:             ovs_strerror
        - Src:             'lib/netdev-linux.c:933,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/netdev-linux.c:936,9'
          Dst:             ofpbuf_uninit
    - functionName:    netdev_linux_miimon_enabled
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 777
      functionLinenumberEnd: 778
      functionDepth:   0
      returnType:      bool
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          14
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - atomic_count_get
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:778,12'
          Dst:             atomic_count_get
    - functionName:    netdev_linux_miimon_run
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2274
      functionLinenumberEnd: 2300
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         18
      ICount:          130
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - hmap_first
        - hmap_next
        - netdev_close
        - netdev_get_devices
        - netdev_linux_cast
        - netdev_linux_changed
        - netdev_linux_get_miimon
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - shash_destroy
        - shash_init
        - timer_expired
        - timer_set_duration
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:2278,5'
          Dst:             shash_init
        - Src:             'lib/netdev-linux.c:2279,5'
          Dst:             netdev_get_devices
        - Src:             'lib/netdev-linux.c:2280,5'
          Dst:             hmap_first
        - Src:             'lib/netdev-linux.c:2282,36'
          Dst:             netdev_linux_cast
        - Src:             'lib/netdev-linux.c:2285,9'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-linux.c:2286,41'
          Dst:             timer_expired
        - Src:             'lib/netdev-linux.c:2287,13'
          Dst:             netdev_linux_get_miimon
        - Src:             'lib/netdev-linux.c:2290,17'
          Dst:             netdev_linux_changed
        - Src:             'lib/netdev-linux.c:2293,13'
          Dst:             timer_set_duration
        - Src:             'lib/netdev-linux.c:2295,9'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/netdev-linux.c:2296,9'
          Dst:             netdev_close
        - Src:             'lib/netdev-linux.c:2280,5'
          Dst:             hmap_next
        - Src:             'lib/netdev-linux.c:2299,5'
          Dst:             shash_destroy
    - functionName:    netdev_linux_notify_sock
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 741
      functionLinenumberEnd: 772
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         16
      ICount:          73
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - netdev_linux_init_self_nsid
        - nl_sock_create
        - nl_sock_destroy
        - nl_sock_join_mcgroup
        - nl_sock_listen_all_nsid
        - ovsthread_once_done
        - ovsthread_once_start
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:747,9'
          Dst:             ovsthread_once_start
        - Src:             'lib/netdev-linux.c:753,9'
          Dst:             netdev_linux_init_self_nsid
        - Src:             'lib/netdev-linux.c:755,17'
          Dst:             nl_sock_create
        - Src:             'lib/netdev-linux.c:759,13'
          Dst:             nl_sock_listen_all_nsid
        - Src:             'lib/netdev-linux.c:761,25'
          Dst:             nl_sock_join_mcgroup
        - Src:             'lib/netdev-linux.c:763,21'
          Dst:             nl_sock_destroy
        - Src:             'lib/netdev-linux.c:769,9'
          Dst:             ovsthread_once_done
    - functionName:    netdev_linux_update
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1025
      functionLinenumberEnd: 1029
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - netdev_linux_netnsid_is_eq
        - netdev_linux_update__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:1026,9'
          Dst:             netdev_linux_netnsid_is_eq
        - Src:             'lib/netdev-linux.c:1027,9'
          Dst:             netdev_linux_update__
    - functionName:    netdev_linux_update_lag
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 794
      functionLinenumberEnd: 854
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         37
      ICount:          211
      EdgeCount:       49
      CyclomaticComplexity: 14
      functionsReached:
        - if_indextoname
        - is_netdev_linux_class
        - netdev_close
        - netdev_from_name
        - netdev_get_block_id
        - netdev_linux_kind_is_lag
        - shash_add
        - shash_delete
        - shash_find_data
        - tc_add_del_qdisc
        - vlog
        - xmalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:797,24'
          Dst:             netdev_linux_kind_is_lag
        - Src:             'lib/netdev-linux.c:798,15'
          Dst:             shash_find_data
        - Src:             'lib/netdev-linux.c:806,18'
          Dst:             if_indextoname
        - Src:             'lib/netdev-linux.c:809,30'
          Dst:             netdev_from_name
        - Src:             'lib/netdev-linux.c:817,17'
          Dst:             is_netdev_linux_class
        - Src:             'lib/netdev-linux.c:818,28'
          Dst:             netdev_get_block_id
        - Src:             'lib/netdev-linux.c:820,21'
          Dst:             netdev_close
        - Src:             'lib/netdev-linux.c:824,23'
          Dst:             xmalloc
        - Src:             'lib/netdev-linux.c:826,29'
          Dst:             shash_add
        - Src:             'lib/netdev-linux.c:829,17'
          Dst:             tc_add_del_qdisc
        - Src:             'lib/netdev-linux.c:831,25'
          Dst:             tc_add_del_qdisc
        - Src:             'lib/netdev-linux.c:834,21'
          Dst:             vlog
        - Src:             'lib/netdev-linux.c:836,21'
          Dst:             shash_delete
        - Src:             'lib/netdev-linux.c:841,13'
          Dst:             netdev_close
        - Src:             'lib/netdev-linux.c:845,15'
          Dst:             shash_find_data
        - Src:             'lib/netdev-linux.c:848,13'
          Dst:             tc_add_del_qdisc
        - Src:             'lib/netdev-linux.c:850,13'
          Dst:             shash_delete
    - functionName:    hmap_first
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 416
      functionLinenumberEnd: 417
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next__
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:417,12'
          Dst:             hmap_next__
    - functionName:    get_flags
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6979
      functionLinenumberEnd: 6989
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - af_inet_ifreq_ioctl
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:6985,13'
          Dst:             af_inet_ifreq_ioctl
    - functionName:    netdev_linux_changed
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 958
      functionLinenumberEnd: 970
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          66
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - netdev_change_seq_changed
        - netdev_get_addrs_list_flush
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:959,5'
          Dst:             netdev_change_seq_changed
        - Src:             'lib/netdev-linux.c:968,9'
          Dst:             netdev_get_addrs_list_flush
    - functionName:    hmap_next
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 429
      functionLinenumberEnd: 432
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_next__
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:432,15'
          Dst:             hmap_next__
    - functionName:    hmap_next__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 401
      functionLinenumberEnd: 410
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          51
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_change_seq_changed
      functionSourceFile: '/src/openvswitch/lib/netdev-provider.h'
      linkageType:     InternalLinkage
      functionLinenumber: 112
      functionLinenumberEnd: 124
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          58
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - connectivity_seq_get
        - seq_change
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-provider.h:115,16'
          Dst:             connectivity_seq_get
        - Src:             'lib/netdev-provider.h:115,5'
          Dst:             seq_change
    - functionName:    netdev_linux_wait
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 942
      functionLinenumberEnd: 952
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          40
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - netdev_linux_miimon_enabled
        - netdev_linux_miimon_wait
        - netdev_linux_notify_sock
        - nl_sock_wait
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:945,9'
          Dst:             netdev_linux_miimon_enabled
        - Src:             'lib/netdev-linux.c:946,9'
          Dst:             netdev_linux_miimon_wait
        - Src:             'lib/netdev-linux.c:948,12'
          Dst:             netdev_linux_notify_sock
        - Src:             'lib/netdev-linux.c:950,9'
          Dst:             nl_sock_wait
    - functionName:    netdev_linux_alloc
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1033
      functionLinenumberEnd: 1035
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - xzalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:1034,35'
          Dst:             xzalloc
    - functionName:    netdev_linux_construct
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1071
      functionLinenumberEnd: 1100
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          77
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - get_flags
        - netdev_linux_cast
        - netdev_linux_common_construct
        - netdev_linux_set_ol
        - userspace_tso_enabled
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:1072,35'
          Dst:             netdev_linux_cast
        - Src:             'lib/netdev-linux.c:1073,17'
          Dst:             netdev_linux_common_construct
        - Src:             'lib/netdev-linux.c:1078,9'
          Dst:             userspace_tso_enabled
        - Src:             'lib/netdev-linux.c:1083,9'
          Dst:             netdev_linux_set_ol
        - Src:             'lib/netdev-linux.c:1086,13'
          Dst:             get_flags
    - functionName:    netdev_linux_destruct
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1203
      functionLinenumberEnd: 1222
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         16
      ICount:          104
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - atomic_count_dec
        - close
        - ioctl
        - netdev_get_class
        - netdev_linux_cast
        - ovs_mutex_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:1204,35'
          Dst:             netdev_linux_cast
        - Src:             'lib/netdev-linux.c:1210,9'
          Dst:             netdev_get_class
        - Src:             'lib/netdev-linux.c:1213,9'
          Dst:             ioctl
        - Src:             'lib/netdev-linux.c:1214,9'
          Dst:             close
        - Src:             'lib/netdev-linux.c:1218,9'
          Dst:             atomic_count_dec
        - Src:             'lib/netdev-linux.c:1221,5'
          Dst:             ovs_mutex_destroy
    - functionName:    netdev_linux_dealloc
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1226
      functionLinenumberEnd: 1229
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - netdev_linux_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:1227,35'
          Dst:             netdev_linux_cast
    - functionName:    netdev_linux_send
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1911
      functionLinenumberEnd: 1958
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          155
      EdgeCount:       35
      CyclomaticComplexity: 10
      functionsReached:
        - af_packet_sock
        - dp_packet_delete_batch
        - is_tap_netdev
        - netdev_get_ifindex
        - netdev_get_name
        - netdev_linux_cast
        - netdev_linux_get_mtu__
        - netdev_linux_netnsid_is_remote
        - netdev_linux_sock_batch_send
        - netdev_linux_tap_batch_send
        - ovs_strerror
        - userspace_tso_enabled
        - vlog_rate_limit
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:1912,16'
          Dst:             userspace_tso_enabled
        - Src:             'lib/netdev-linux.c:1918,32'
          Dst:             netdev_linux_cast
        - Src:             'lib/netdev-linux.c:1918,9'
          Dst:             netdev_linux_get_mtu__
        - Src:             'lib/netdev-linux.c:1921,10'
          Dst:             is_tap_netdev
        - Src:             'lib/netdev-linux.c:1922,44'
          Dst:             netdev_linux_cast
        - Src:             'lib/netdev-linux.c:1922,13'
          Dst:             netdev_linux_netnsid_is_remote
        - Src:             'lib/netdev-linux.c:1927,16'
          Dst:             af_packet_sock
        - Src:             'lib/netdev-linux.c:1933,23'
          Dst:             netdev_get_ifindex
        - Src:             'lib/netdev-linux.c:1939,17'
          Dst:             netdev_linux_sock_batch_send
        - Src:             'lib/netdev-linux.c:1942,17'
          Dst:             netdev_linux_tap_batch_send
        - Src:             'lib/netdev-linux.c:1951,13'
          Dst:             netdev_get_name
        - Src:             'lib/netdev-linux.c:1951,13'
          Dst:             ovs_strerror
        - Src:             'lib/netdev-linux.c:1951,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/netdev-linux.c:1957,5'
          Dst:             dp_packet_delete_batch
    - functionName:    netdev_linux_send_wait
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1970
      functionLinenumberEnd: 1975
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          27
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - is_tap_netdev
        - poll_immediate_wake_at
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:1971,9'
          Dst:             is_tap_netdev
        - Src:             'lib/netdev-linux.c:1973,9'
          Dst:             poll_immediate_wake_at
    - functionName:    netdev_linux_set_etheraddr
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1981
      functionLinenumberEnd: 2019
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         31
      ICount:          180
      EdgeCount:       41
      CyclomaticComplexity: 12
      functionsReached:
        - eth_addr_equals
        - is_tap_netdev
        - netdev_get_name
        - netdev_linux_cast
        - netdev_linux_netnsid_is_remote
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - set_etheraddr
        - update_flags
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:1982,35'
          Dst:             netdev_linux_cast
        - Src:             'lib/netdev-linux.c:1986,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-linux.c:1987,9'
          Dst:             netdev_linux_netnsid_is_remote
        - Src:             'lib/netdev-linux.c:1994,22'
          Dst:             eth_addr_equals
        - Src:             'lib/netdev-linux.c:2001,9'
          Dst:             is_tap_netdev
        - Src:             'lib/netdev-linux.c:2002,9'
          Dst:             update_flags
        - Src:             'lib/netdev-linux.c:2004,27'
          Dst:             netdev_get_name
        - Src:             'lib/netdev-linux.c:2004,13'
          Dst:             set_etheraddr
        - Src:             'lib/netdev-linux.c:2013,9'
          Dst:             is_tap_netdev
        - Src:             'lib/netdev-linux.c:2014,9'
          Dst:             update_flags
        - Src:             'lib/netdev-linux.c:2018,5'
          Dst:             ovs_mutex_unlock
    - functionName:    netdev_linux_get_etheraddr
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2025
      functionLinenumberEnd: 2047
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          92
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - get_etheraddr
        - netdev_get_name
        - netdev_linux_cast
        - netdev_linux_update_via_netlink
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:2026,35'
          Dst:             netdev_linux_cast
        - Src:             'lib/netdev-linux.c:2029,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-linux.c:2031,9'
          Dst:             netdev_linux_update_via_netlink
        - Src:             'lib/netdev-linux.c:2036,50'
          Dst:             netdev_get_name
        - Src:             'lib/netdev-linux.c:2036,36'
          Dst:             get_etheraddr
        - Src:             'lib/netdev-linux.c:2045,5'
          Dst:             ovs_mutex_unlock
    - functionName:    netdev_linux_get_mtu
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2083
      functionLinenumberEnd: 2091
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - netdev_linux_cast
        - netdev_linux_get_mtu__
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:2084,35'
          Dst:             netdev_linux_cast
        - Src:             'lib/netdev-linux.c:2087,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-linux.c:2088,13'
          Dst:             netdev_linux_get_mtu__
        - Src:             'lib/netdev-linux.c:2089,5'
          Dst:             ovs_mutex_unlock
    - functionName:    netdev_linux_set_mtu
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2099
      functionLinenumberEnd: 2139
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         20
      ICount:          124
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - af_inet_ifreq_ioctl
        - netdev_get_name
        - netdev_linux_cast
        - netdev_linux_netnsid_is_remote
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:2100,35'
          Dst:             netdev_linux_cast
        - Src:             'lib/netdev-linux.c:2104,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-linux.c:2105,9'
          Dst:             netdev_linux_netnsid_is_remote
        - Src:             'lib/netdev-linux.c:2130,33'
          Dst:             netdev_get_name
        - Src:             'lib/netdev-linux.c:2130,13'
          Dst:             af_inet_ifreq_ioctl
        - Src:             'lib/netdev-linux.c:2138,5'
          Dst:             ovs_mutex_unlock
    - functionName:    netdev_linux_get_ifindex
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2146
      functionLinenumberEnd: 2159
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          56
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - get_ifindex
        - netdev_linux_cast
        - netdev_linux_netnsid_is_remote
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:2147,35'
          Dst:             netdev_linux_cast
        - Src:             'lib/netdev-linux.c:2150,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-linux.c:2151,9'
          Dst:             netdev_linux_netnsid_is_remote
        - Src:             'lib/netdev-linux.c:2155,13'
          Dst:             get_ifindex
        - Src:             'lib/netdev-linux.c:2158,5'
          Dst:             ovs_mutex_unlock
    - functionName:    netdev_linux_get_carrier
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2164
      functionLinenumberEnd: 2175
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          55
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - netdev_linux_cast
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:2165,35'
          Dst:             netdev_linux_cast
        - Src:             'lib/netdev-linux.c:2167,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-linux.c:2173,5'
          Dst:             ovs_mutex_unlock
    - functionName:    netdev_linux_get_carrier_resets
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2180
      functionLinenumberEnd: 2188
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - netdev_linux_cast
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:2181,35'
          Dst:             netdev_linux_cast
        - Src:             'lib/netdev-linux.c:2184,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-linux.c:2186,5'
          Dst:             ovs_mutex_unlock
    - functionName:    netdev_linux_set_miimon_interval
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2252
      functionLinenumberEnd: 2269
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         23
      ICount:          116
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - atomic_count_dec
        - atomic_count_inc
        - netdev_linux_cast
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - timer_set_expired
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:2253,35'
          Dst:             netdev_linux_cast
        - Src:             'lib/netdev-linux.c:2255,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-linux.c:2259,13'
          Dst:             atomic_count_inc
        - Src:             'lib/netdev-linux.c:2261,13'
          Dst:             atomic_count_dec
        - Src:             'lib/netdev-linux.c:2265,9'
          Dst:             timer_set_expired
        - Src:             'lib/netdev-linux.c:2267,5'
          Dst:             ovs_mutex_unlock
    - functionName:    netdev_linux_get_stats
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2411
      functionLinenumberEnd: 2443
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          162
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - get_stats_via_netlink
        - get_stats_via_vport
        - netdev_linux_cast
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:2412,35'
          Dst:             netdev_linux_cast
        - Src:             'lib/netdev-linux.c:2416,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-linux.c:2417,5'
          Dst:             get_stats_via_vport
        - Src:             'lib/netdev-linux.c:2418,13'
          Dst:             get_stats_via_netlink
        - Src:             'lib/netdev-linux.c:2441,5'
          Dst:             ovs_mutex_unlock
    - functionName:    netdev_linux_get_features
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2831
      functionLinenumberEnd: 2852
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          79
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - netdev_linux_cast
        - netdev_linux_netnsid_is_remote
        - netdev_linux_read_features
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:2832,35'
          Dst:             netdev_linux_cast
        - Src:             'lib/netdev-linux.c:2835,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-linux.c:2836,9'
          Dst:             netdev_linux_netnsid_is_remote
        - Src:             'lib/netdev-linux.c:2841,5'
          Dst:             netdev_linux_read_features
        - Src:             'lib/netdev-linux.c:2851,5'
          Dst:             ovs_mutex_unlock
    - functionName:    netdev_linux_get_speed
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2879
      functionLinenumberEnd: 2886
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - netdev_linux_cast
        - netdev_linux_get_speed_locked
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:2880,35'
          Dst:             netdev_linux_cast
        - Src:             'lib/netdev-linux.c:2883,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-linux.c:2884,13'
          Dst:             netdev_linux_get_speed_locked
        - Src:             'lib/netdev-linux.c:2885,5'
          Dst:             ovs_mutex_unlock
    - functionName:    netdev_linux_get_duplex
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2891
      functionLinenumberEnd: 2912
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          75
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - netdev_linux_cast
        - netdev_linux_netnsid_is_remote
        - netdev_linux_read_features
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:2892,35'
          Dst:             netdev_linux_cast
        - Src:             'lib/netdev-linux.c:2895,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-linux.c:2897,9'
          Dst:             netdev_linux_netnsid_is_remote
        - Src:             'lib/netdev-linux.c:2902,5'
          Dst:             netdev_linux_read_features
        - Src:             'lib/netdev-linux.c:2911,5'
          Dst:             ovs_mutex_unlock
    - functionName:    netdev_linux_set_advertisements
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2919
      functionLinenumberEnd: 2983
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         44
      ICount:          286
      EdgeCount:       58
      CyclomaticComplexity: 16
      functionsReached:
        - netdev_get_ethtool_add
        - netdev_get_name
        - netdev_linux_cast
        - netdev_linux_do_ethtool
        - netdev_linux_netnsid_is_remote
        - netdev_set_ethtool_add
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:2920,35'
          Dst:             netdev_linux_cast
        - Src:             'lib/netdev-linux.c:2924,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-linux.c:2926,5'
          Dst:             netdev_get_ethtool_add
        - Src:             'lib/netdev-linux.c:2928,9'
          Dst:             netdev_linux_netnsid_is_remote
        - Src:             'lib/netdev-linux.c:2934,37'
          Dst:             netdev_get_name
        - Src:             'lib/netdev-linux.c:2934,13'
          Dst:             netdev_linux_do_ethtool
        - Src:             'lib/netdev-linux.c:2977,5'
          Dst:             netdev_set_ethtool_add
        - Src:             'lib/netdev-linux.c:2978,37'
          Dst:             netdev_get_name
        - Src:             'lib/netdev-linux.c:2978,13'
          Dst:             netdev_linux_do_ethtool
        - Src:             'lib/netdev-linux.c:2982,5'
          Dst:             ovs_mutex_unlock
    - functionName:    netdev_linux_set_policing
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3132
      functionLinenumberEnd: 3228
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         82
      ICount:          432
      EdgeCount:       109
      CyclomaticComplexity: 29
      functionsReached:
        - dpif_offload_enabled
        - get_ifindex
        - netdev_get_name
        - netdev_linux_cast
        - netdev_linux_netnsid_is_remote
        - netdev_set_policing_add
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovs_strerror
        - tc_add_del_qdisc
        - tc_add_matchall_policer
        - tc_add_policer
        - tc_del_matchall_policer
        - vlog_rate_limit
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:3133,35'
          Dst:             netdev_linux_cast
        - Src:             'lib/netdev-linux.c:3134,31'
          Dst:             netdev_get_name
        - Src:             'lib/netdev-linux.c:3146,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-linux.c:3147,9'
          Dst:             netdev_linux_netnsid_is_remote
        - Src:             'lib/netdev-linux.c:3164,5'
          Dst:             netdev_set_policing_add
        - Src:             'lib/netdev-linux.c:3167,9'
          Dst:             dpif_offload_enabled
        - Src:             'lib/netdev-linux.c:3168,17'
          Dst:             tc_del_matchall_policer
        - Src:             'lib/netdev-linux.c:3170,21'
          Dst:             tc_add_matchall_policer
        - Src:             'lib/netdev-linux.c:3176,13'
          Dst:             get_ifindex
        - Src:             'lib/netdev-linux.c:3182,13'
          Dst:             tc_add_del_qdisc
        - Src:             'lib/netdev-linux.c:3184,9'
          Dst:             ovs_strerror
        - Src:             'lib/netdev-linux.c:3184,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/netdev-linux.c:3192,17'
          Dst:             tc_add_del_qdisc
        - Src:             'lib/netdev-linux.c:3194,13'
          Dst:             ovs_strerror
        - Src:             'lib/netdev-linux.c:3194,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/netdev-linux.c:3199,17'
          Dst:             tc_add_matchall_policer
        - Src:             'lib/netdev-linux.c:3205,21'
          Dst:             tc_add_policer
        - Src:             'lib/netdev-linux.c:3209,13'
          Dst:             ovs_strerror
        - Src:             'lib/netdev-linux.c:3209,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/netdev-linux.c:3227,5'
          Dst:             ovs_mutex_unlock
    - functionName:    netdev_linux_get_qos_types
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3234
      functionLinenumberEnd: 3242
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          68
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - sset_add
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:3239,13'
          Dst:             sset_add
    - functionName:    netdev_linux_get_qos_capabilities
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3298
      functionLinenumberEnd: 3305
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - tc_lookup_ovs_name
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:3299,32'
          Dst:             tc_lookup_ovs_name
    - functionName:    netdev_linux_get_qos
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3310
      functionLinenumberEnd: 3330
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          90
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - netdev_linux_cast
        - netdev_linux_netnsid_is_remote
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - tc_query_qdisc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:3311,35'
          Dst:             netdev_linux_cast
        - Src:             'lib/netdev-linux.c:3314,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-linux.c:3315,9'
          Dst:             netdev_linux_netnsid_is_remote
        - Src:             'lib/netdev-linux.c:3320,13'
          Dst:             tc_query_qdisc
        - Src:             'lib/netdev-linux.c:3329,5'
          Dst:             ovs_mutex_unlock
    - functionName:    netdev_linux_set_qos
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3336
      functionLinenumberEnd: 3385
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         37
      ICount:          219
      EdgeCount:       48
      CyclomaticComplexity: 13
      functionsReached:
        - netdev_get_name
        - netdev_linux_cast
        - netdev_linux_netnsid_is_remote
        - ovs_ignore
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovs_strerror
        - tc_del_qdisc
        - tc_lookup_ovs_name
        - tc_query_qdisc
        - vlog_rate_limit
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:3337,35'
          Dst:             netdev_linux_cast
        - Src:             'lib/netdev-linux.c:3341,15'
          Dst:             tc_lookup_ovs_name
        - Src:             'lib/netdev-linux.c:3350,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-linux.c:3351,9'
          Dst:             netdev_linux_netnsid_is_remote
        - Src:             'lib/netdev-linux.c:3356,13'
          Dst:             tc_query_qdisc
        - Src:             'lib/netdev-linux.c:3365,17'
          Dst:             tc_del_qdisc
        - Src:             'lib/netdev-linux.c:3367,13'
          Dst:             netdev_get_name
        - Src:             'lib/netdev-linux.c:3367,13'
          Dst:             ovs_strerror
        - Src:             'lib/netdev-linux.c:3367,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/netdev-linux.c:3371,9'
          Dst:             ovs_ignore
        - Src:             'lib/netdev-linux.c:3376,13'
          Dst:             netdev_get_name
        - Src:             'lib/netdev-linux.c:3376,13'
          Dst:             ovs_strerror
        - Src:             'lib/netdev-linux.c:3376,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/netdev-linux.c:3379,9'
          Dst:             ovs_ignore
        - Src:             'lib/netdev-linux.c:3383,5'
          Dst:             ovs_mutex_unlock
    - functionName:    netdev_linux_get_queue
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3390
      functionLinenumberEnd: 3410
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          81
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - netdev_linux_cast
        - netdev_linux_netnsid_is_remote
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - tc_find_queue
        - tc_query_qdisc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:3391,35'
          Dst:             netdev_linux_cast
        - Src:             'lib/netdev-linux.c:3394,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-linux.c:3395,9'
          Dst:             netdev_linux_netnsid_is_remote
        - Src:             'lib/netdev-linux.c:3400,13'
          Dst:             tc_query_qdisc
        - Src:             'lib/netdev-linux.c:3402,34'
          Dst:             tc_find_queue
        - Src:             'lib/netdev-linux.c:3409,5'
          Dst:             ovs_mutex_unlock
    - functionName:    netdev_linux_set_queue
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3416
      functionLinenumberEnd: 3436
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          98
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - netdev_linux_cast
        - netdev_linux_netnsid_is_remote
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - tc_query_qdisc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:3417,35'
          Dst:             netdev_linux_cast
        - Src:             'lib/netdev-linux.c:3420,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-linux.c:3421,9'
          Dst:             netdev_linux_netnsid_is_remote
        - Src:             'lib/netdev-linux.c:3426,13'
          Dst:             tc_query_qdisc
        - Src:             'lib/netdev-linux.c:3435,5'
          Dst:             ovs_mutex_unlock
    - functionName:    netdev_linux_delete_queue
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3441
      functionLinenumberEnd: 3465
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          93
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - netdev_linux_cast
        - netdev_linux_netnsid_is_remote
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - tc_find_queue
        - tc_query_qdisc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:3442,35'
          Dst:             netdev_linux_cast
        - Src:             'lib/netdev-linux.c:3445,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-linux.c:3446,9'
          Dst:             netdev_linux_netnsid_is_remote
        - Src:             'lib/netdev-linux.c:3451,13'
          Dst:             tc_query_qdisc
        - Src:             'lib/netdev-linux.c:3454,38'
          Dst:             tc_find_queue
        - Src:             'lib/netdev-linux.c:3464,5'
          Dst:             ovs_mutex_unlock
    - functionName:    netdev_linux_get_queue_stats
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3472
      functionLinenumberEnd: 3500
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          102
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - netdev_linux_cast
        - netdev_linux_netnsid_is_remote
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - tc_find_queue
        - tc_query_qdisc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:3473,35'
          Dst:             netdev_linux_cast
        - Src:             'lib/netdev-linux.c:3476,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-linux.c:3477,9'
          Dst:             netdev_linux_netnsid_is_remote
        - Src:             'lib/netdev-linux.c:3482,13'
          Dst:             tc_query_qdisc
        - Src:             'lib/netdev-linux.c:3485,44'
          Dst:             tc_find_queue
        - Src:             'lib/netdev-linux.c:3499,5'
          Dst:             ovs_mutex_unlock
    - functionName:    netdev_linux_queue_dump_start
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3541
      functionLinenumberEnd: 3574
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          143
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - hmap_count
        - hmap_first
        - hmap_next
        - netdev_linux_cast
        - netdev_linux_netnsid_is_remote
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - tc_query_qdisc
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:3542,35'
          Dst:             netdev_linux_cast
        - Src:             'lib/netdev-linux.c:3545,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-linux.c:3546,9'
          Dst:             netdev_linux_netnsid_is_remote
        - Src:             'lib/netdev-linux.c:3551,13'
          Dst:             tc_query_qdisc
        - Src:             'lib/netdev-linux.c:3558,31'
          Dst:             xmalloc
        - Src:             'lib/netdev-linux.c:3559,31'
          Dst:             hmap_count
        - Src:             'lib/netdev-linux.c:3561,29'
          Dst:             xmalloc
        - Src:             'lib/netdev-linux.c:3564,13'
          Dst:             hmap_first
        - Src:             'lib/netdev-linux.c:3564,13'
          Dst:             hmap_next
        - Src:             'lib/netdev-linux.c:3573,5'
          Dst:             ovs_mutex_unlock
    - functionName:    netdev_linux_queue_dump_next
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3580
      functionLinenumberEnd: 3604
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          103
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - netdev_linux_cast
        - netdev_linux_netnsid_is_remote
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - tc_find_queue
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:3581,35'
          Dst:             netdev_linux_cast
        - Src:             'lib/netdev-linux.c:3585,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-linux.c:3586,9'
          Dst:             netdev_linux_netnsid_is_remote
        - Src:             'lib/netdev-linux.c:3593,34'
          Dst:             tc_find_queue
        - Src:             'lib/netdev-linux.c:3603,5'
          Dst:             ovs_mutex_unlock
    - functionName:    netdev_linux_queue_dump_done
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3610
      functionLinenumberEnd: 3615
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_linux_dump_queue_stats
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3621
      functionLinenumberEnd: 3660
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          127
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - finish_queue_dump
        - netdev_linux_cast
        - netdev_linux_netnsid_is_remote
        - nl_dump_next
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - start_queue_dump
        - tc_query_qdisc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:3622,35'
          Dst:             netdev_linux_cast
        - Src:             'lib/netdev-linux.c:3625,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-linux.c:3626,9'
          Dst:             netdev_linux_netnsid_is_remote
        - Src:             'lib/netdev-linux.c:3631,13'
          Dst:             tc_query_qdisc
        - Src:             'lib/netdev-linux.c:3637,21'
          Dst:             start_queue_dump
        - Src:             'lib/netdev-linux.c:3643,20'
          Dst:             nl_dump_next
        - Src:             'lib/netdev-linux.c:3651,22'
          Dst:             finish_queue_dump
        - Src:             'lib/netdev-linux.c:3659,5'
          Dst:             ovs_mutex_unlock
    - functionName:    netdev_linux_set_in4
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3666
      functionLinenumberEnd: 3686
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          72
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - do_set_addr
        - netdev_linux_cast
        - netdev_linux_netnsid_is_remote
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:3667,35'
          Dst:             netdev_linux_cast
        - Src:             'lib/netdev-linux.c:3670,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-linux.c:3671,9'
          Dst:             netdev_linux_netnsid_is_remote
        - Src:             'lib/netdev-linux.c:3676,13'
          Dst:             do_set_addr
        - Src:             'lib/netdev-linux.c:3679,21'
          Dst:             do_set_addr
        - Src:             'lib/netdev-linux.c:3685,5'
          Dst:             ovs_mutex_unlock
    - functionName:    netdev_linux_get_addr_list
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3695
      functionLinenumberEnd: 3709
      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:
        - netdev_get_addrs
        - netdev_get_name
        - netdev_linux_cast
        - netdev_linux_netnsid_is_remote
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:3696,35'
          Dst:             netdev_linux_cast
        - Src:             'lib/netdev-linux.c:3699,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-linux.c:3700,9'
          Dst:             netdev_linux_netnsid_is_remote
        - Src:             'lib/netdev-linux.c:3705,30'
          Dst:             netdev_get_name
        - Src:             'lib/netdev-linux.c:3705,13'
          Dst:             netdev_get_addrs
        - Src:             'lib/netdev-linux.c:3708,5'
          Dst:             ovs_mutex_unlock
    - functionName:    netdev_linux_add_router
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3740
      functionLinenumberEnd: 3754
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          71
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - af_inet_ioctl
        - make_in4_sockaddr
        - ovs_strerror
        - vlog
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:3746,5'
          Dst:             make_in4_sockaddr
        - Src:             'lib/netdev-linux.c:3747,5'
          Dst:             make_in4_sockaddr
        - Src:             'lib/netdev-linux.c:3748,5'
          Dst:             make_in4_sockaddr
        - Src:             'lib/netdev-linux.c:3750,13'
          Dst:             af_inet_ioctl
        - Src:             'lib/netdev-linux.c:3752,9'
          Dst:             ovs_strerror
        - Src:             'lib/netdev-linux.c:3752,9'
          Dst:             vlog
    - functionName:    netdev_linux_get_next_hop
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3760
      functionLinenumberEnd: 3815
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         31
      ICount:          173
      EdgeCount:       40
      CyclomaticComplexity: 11
      functionsReached:
        - __errno_location
        - fclose
        - fgets
        - fopen
        - ovs_scan
        - ovs_strerror
        - vlog_rate_limit
        - xstrdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:3767,14'
          Dst:             fopen
        - Src:             'lib/netdev-linux.c:3769,9'
          Dst:             __errno_location
        - Src:             'lib/netdev-linux.c:3769,9'
          Dst:             ovs_strerror
        - Src:             'lib/netdev-linux.c:3769,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/netdev-linux.c:3770,16'
          Dst:             __errno_location
        - Src:             'lib/netdev-linux.c:3774,12'
          Dst:             fgets
        - Src:             'lib/netdev-linux.c:3781,18'
          Dst:             ovs_scan
        - Src:             'lib/netdev-linux.c:3786,17'
          Dst:             vlog_rate_limit
        - Src:             'lib/netdev-linux.c:3806,32'
          Dst:             xstrdup
        - Src:             'lib/netdev-linux.c:3807,17'
          Dst:             fclose
        - Src:             'lib/netdev-linux.c:3813,5'
          Dst:             fclose
    - functionName:    netdev_linux_get_status
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3864
      functionLinenumberEnd: 3897
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          123
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - netdev_get_ethtool_add
        - netdev_linux_cast
        - netdev_linux_do_ethtool
        - netdev_linux_get_peer_ifindex
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - smap_add
        - smap_add_format
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:3865,35'
          Dst:             netdev_linux_cast
        - Src:             'lib/netdev-linux.c:3868,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-linux.c:3872,9'
          Dst:             netdev_get_ethtool_add
        - Src:             'lib/netdev-linux.c:3875,17'
          Dst:             netdev_linux_do_ethtool
        - Src:             'lib/netdev-linux.c:3880,13'
          Dst:             netdev_linux_get_peer_ifindex
        - Src:             'lib/netdev-linux.c:3886,9'
          Dst:             smap_add
        - Src:             'lib/netdev-linux.c:3887,9'
          Dst:             smap_add
        - Src:             'lib/netdev-linux.c:3888,9'
          Dst:             smap_add
        - Src:             'lib/netdev-linux.c:3891,13'
          Dst:             smap_add_format
        - Src:             'lib/netdev-linux.c:3895,5'
          Dst:             ovs_mutex_unlock
    - functionName:    netdev_linux_arp_lookup
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3937
      functionLinenumberEnd: 3960
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          109
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - af_inet_ioctl
        - netdev_arp_lookup_add
        - netdev_get_name
        - ntohl
        - ovs_strerror
        - ovs_strzcpy
        - vlog_rate_limit
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:3950,28'
          Dst:             netdev_get_name
        - Src:             'lib/netdev-linux.c:3950,5'
          Dst:             ovs_strzcpy
        - Src:             'lib/netdev-linux.c:3951,5'
          Dst:             netdev_arp_lookup_add
        - Src:             'lib/netdev-linux.c:3952,14'
          Dst:             af_inet_ioctl
        - Src:             'lib/netdev-linux.c:3956,9'
          Dst:             netdev_get_name
        - Src:             'lib/netdev-linux.c:3956,9'
          Dst:             ntohl
        - Src:             'lib/netdev-linux.c:3956,9'
          Dst:             ntohl
        - Src:             'lib/netdev-linux.c:3956,9'
          Dst:             ntohl
        - Src:             'lib/netdev-linux.c:3956,9'
          Dst:             ntohl
        - Src:             'lib/netdev-linux.c:3956,9'
          Dst:             ovs_strerror
        - Src:             'lib/netdev-linux.c:3956,9'
          Dst:             vlog_rate_limit
    - functionName:    netdev_linux_update_flags
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4017
      functionLinenumberEnd: 4040
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          93
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - iff_to_nd_flags
        - netdev_linux_cast
        - netdev_linux_netnsid_is_remote
        - netdev_linux_update_via_netlink
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - update_flags
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:4018,35'
          Dst:             netdev_linux_cast
        - Src:             'lib/netdev-linux.c:4021,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-linux.c:4024,13'
          Dst:             netdev_linux_netnsid_is_remote
        - Src:             'lib/netdev-linux.c:4028,17'
          Dst:             update_flags
        - Src:             'lib/netdev-linux.c:4031,14'
          Dst:             netdev_linux_update_via_netlink
        - Src:             'lib/netdev-linux.c:4032,27'
          Dst:             iff_to_nd_flags
        - Src:             'lib/netdev-linux.c:4034,21'
          Dst:             update_flags
        - Src:             'lib/netdev-linux.c:4039,5'
          Dst:             ovs_mutex_unlock
    - functionName:    netdev_linux_rxq_alloc
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1233
      functionLinenumberEnd: 1235
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - xzalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:1234,35'
          Dst:             xzalloc
    - functionName:    netdev_linux_rxq_construct
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1240
      functionLinenumberEnd: 1333
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         53
      ICount:          328
      EdgeCount:       68
      CyclomaticComplexity: 17
      functionsReached:
        - __errno_location
        - bind
        - close
        - get_ifindex
        - htons
        - is_tap_netdev
        - netdev_get_name
        - netdev_linux_cast
        - netdev_rxq_linux_cast
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovs_strerror
        - set_nonblocking
        - setsockopt
        - socket
        - userspace_tso_enabled
        - vlog
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:1241,35'
          Dst:             netdev_rxq_linux_cast
        - Src:             'lib/netdev-linux.c:1243,35'
          Dst:             netdev_linux_cast
        - Src:             'lib/netdev-linux.c:1246,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-linux.c:1247,18'
          Dst:             is_tap_netdev
        - Src:             'lib/netdev-linux.c:1265,18'
          Dst:             socket
        - Src:             'lib/netdev-linux.c:1267,21'
          Dst:             __errno_location
        - Src:             'lib/netdev-linux.c:1268,13'
          Dst:             ovs_strerror
        - Src:             'lib/netdev-linux.c:1268,13'
          Dst:             vlog
        - Src:             'lib/netdev-linux.c:1273,13'
          Dst:             setsockopt
        - Src:             'lib/netdev-linux.c:1274,21'
          Dst:             __errno_location
        - Src:             'lib/netdev-linux.c:1275,13'
          Dst:             netdev_get_name
        - Src:             'lib/netdev-linux.c:1275,13'
          Dst:             ovs_strerror
        - Src:             'lib/netdev-linux.c:1275,13'
          Dst:             vlog
        - Src:             'lib/netdev-linux.c:1280,13'
          Dst:             userspace_tso_enabled
        - Src:             'lib/netdev-linux.c:1281,16'
          Dst:             setsockopt
        - Src:             'lib/netdev-linux.c:1283,21'
          Dst:             __errno_location
        - Src:             'lib/netdev-linux.c:1284,13'
          Dst:             netdev_get_name
        - Src:             'lib/netdev-linux.c:1284,13'
          Dst:             __errno_location
        - Src:             'lib/netdev-linux.c:1284,13'
          Dst:             ovs_strerror
        - Src:             'lib/netdev-linux.c:1284,13'
          Dst:             vlog
        - Src:             'lib/netdev-linux.c:1290,17'
          Dst:             set_nonblocking
        - Src:             'lib/netdev-linux.c:1296,17'
          Dst:             get_ifindex
        - Src:             'lib/netdev-linux.c:1305,28'
          Dst:             htons
        - Src:             'lib/netdev-linux.c:1306,13'
          Dst:             bind
        - Src:             'lib/netdev-linux.c:1307,21'
          Dst:             __errno_location
        - Src:             'lib/netdev-linux.c:1308,13'
          Dst:             netdev_get_name
        - Src:             'lib/netdev-linux.c:1308,13'
          Dst:             ovs_strerror
        - Src:             'lib/netdev-linux.c:1308,13'
          Dst:             vlog
        - Src:             'lib/netdev-linux.c:1314,17'
          Dst:             setsockopt
        - Src:             'lib/netdev-linux.c:1317,21'
          Dst:             __errno_location
        - Src:             'lib/netdev-linux.c:1318,13'
          Dst:             netdev_get_name
        - Src:             'lib/netdev-linux.c:1318,13'
          Dst:             ovs_strerror
        - Src:             'lib/netdev-linux.c:1318,13'
          Dst:             vlog
        - Src:             'lib/netdev-linux.c:1323,5'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/netdev-linux.c:1329,9'
          Dst:             close
        - Src:             'lib/netdev-linux.c:1331,5'
          Dst:             ovs_mutex_unlock
    - functionName:    netdev_linux_rxq_destruct
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1337
      functionLinenumberEnd: 1348
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          59
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - close
        - dp_packet_delete
        - netdev_rxq_linux_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:1338,35'
          Dst:             netdev_rxq_linux_cast
        - Src:             'lib/netdev-linux.c:1342,9'
          Dst:             close
        - Src:             'lib/netdev-linux.c:1346,9'
          Dst:             dp_packet_delete
    - functionName:    netdev_linux_rxq_dealloc
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1352
      functionLinenumberEnd: 1356
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - netdev_rxq_linux_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:1353,35'
          Dst:             netdev_rxq_linux_cast
    - functionName:    netdev_linux_rxq_recv
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1644
      functionLinenumberEnd: 1687
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         34
      ICount:          193
      EdgeCount:       44
      CyclomaticComplexity: 12
      functionsReached:
        - __errno_location
        - dp_packet_batch_reset
        - dp_packet_new_with_headroom
        - netdev_linux_batch_rxq_recv_sock
        - netdev_linux_batch_rxq_recv_tap
        - netdev_linux_cast
        - netdev_linux_get_mtu__
        - netdev_rxq_get_name
        - netdev_rxq_linux_cast
        - ovs_strerror
        - userspace_tso_enabled
        - vlog_rate_limit
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:1645,35'
          Dst:             netdev_rxq_linux_cast
        - Src:             'lib/netdev-linux.c:1650,32'
          Dst:             netdev_linux_cast
        - Src:             'lib/netdev-linux.c:1650,9'
          Dst:             netdev_linux_get_mtu__
        - Src:             'lib/netdev-linux.c:1654,9'
          Dst:             userspace_tso_enabled
        - Src:             'lib/netdev-linux.c:1667,31'
          Dst:             dp_packet_new_with_headroom
        - Src:             'lib/netdev-linux.c:1671,5'
          Dst:             dp_packet_batch_reset
        - Src:             'lib/netdev-linux.c:1673,17'
          Dst:             netdev_linux_batch_rxq_recv_tap
        - Src:             'lib/netdev-linux.c:1674,17'
          Dst:             netdev_linux_batch_rxq_recv_sock
        - Src:             'lib/netdev-linux.c:1678,13'
          Dst:             netdev_rxq_get_name
        - Src:             'lib/netdev-linux.c:1678,13'
          Dst:             __errno_location
        - Src:             'lib/netdev-linux.c:1678,13'
          Dst:             ovs_strerror
        - Src:             'lib/netdev-linux.c:1678,13'
          Dst:             vlog_rate_limit
    - functionName:    netdev_linux_rxq_wait
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1692
      functionLinenumberEnd: 1695
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - netdev_rxq_linux_cast
        - poll_fd_wait_at
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:1693,35'
          Dst:             netdev_rxq_linux_cast
        - Src:             'lib/netdev-linux.c:1694,5'
          Dst:             poll_fd_wait_at
    - functionName:    netdev_linux_rxq_drain
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1699
      functionLinenumberEnd: 1716
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          62
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - af_inet_ifreq_ioctl
        - drain_fd
        - drain_rcvbuf
        - netdev_rxq_get_name
        - netdev_rxq_linux_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:1700,35'
          Dst:             netdev_rxq_linux_cast
        - Src:             'lib/netdev-linux.c:1706,37'
          Dst:             netdev_rxq_get_name
        - Src:             'lib/netdev-linux.c:1706,17'
          Dst:             af_inet_ifreq_ioctl
        - Src:             'lib/netdev-linux.c:1711,9'
          Dst:             drain_fd
        - Src:             'lib/netdev-linux.c:1714,16'
          Dst:             drain_rcvbuf
    - functionName:    netdev_linux_get_block_id
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3910
      functionLinenumberEnd: 3927
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          60
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - netdev_linux_cast
        - netdev_linux_update_via_netlink
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:3911,35'
          Dst:             netdev_linux_cast
        - Src:             'lib/netdev-linux.c:3914,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-linux.c:3917,9'
          Dst:             netdev_linux_update_via_netlink
        - Src:             'lib/netdev-linux.c:3925,5'
          Dst:             ovs_mutex_unlock
    - functionName:    netdev_linux_update_via_netlink
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7054
      functionLinenumberEnd: 7130
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         44
      ICount:          310
      EdgeCount:       59
      CyclomaticComplexity: 17
      functionsReached:
        - eth_addr_equals
        - eth_addr_is_zero
        - netdev_change_seq_changed
        - netdev_get_name
        - netdev_linux_kind_is_lag
        - netdev_linux_netnsid_is_remote
        - nl_msg_put_nlmsghdr
        - nl_msg_put_string
        - nl_msg_put_u32
        - nl_transact
        - ofpbuf_delete
        - ofpbuf_init
        - ofpbuf_put_zeros
        - ofpbuf_uninit
        - rtnetlink_parse
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:7061,5'
          Dst:             ofpbuf_init
        - Src:             'lib/netdev-linux.c:7062,5'
          Dst:             nl_msg_put_nlmsghdr
        - Src:             'lib/netdev-linux.c:7065,5'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/netdev-linux.c:7070,46'
          Dst:             netdev_get_name
        - Src:             'lib/netdev-linux.c:7070,5'
          Dst:             nl_msg_put_string
        - Src:             'lib/netdev-linux.c:7071,9'
          Dst:             netdev_linux_netnsid_is_remote
        - Src:             'lib/netdev-linux.c:7072,9'
          Dst:             nl_msg_put_u32
        - Src:             'lib/netdev-linux.c:7075,5'
          Dst:             nl_msg_put_u32
        - Src:             'lib/netdev-linux.c:7077,13'
          Dst:             nl_transact
        - Src:             'lib/netdev-linux.c:7078,5'
          Dst:             ofpbuf_uninit
        - Src:             'lib/netdev-linux.c:7080,9'
          Dst:             ofpbuf_delete
        - Src:             'lib/netdev-linux.c:7084,9'
          Dst:             rtnetlink_parse
        - Src:             'lib/netdev-linux.c:7105,14'
          Dst:             eth_addr_is_zero
        - Src:             'lib/netdev-linux.c:7106,17'
          Dst:             eth_addr_equals
        - Src:             'lib/netdev-linux.c:7118,32'
          Dst:             netdev_linux_kind_is_lag
        - Src:             'lib/netdev-linux.c:7122,13'
          Dst:             netdev_change_seq_changed
        - Src:             'lib/netdev-linux.c:7128,5'
          Dst:             ofpbuf_delete
    - functionName:    netdev_linux_netnsid_is_remote
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 723
      functionLinenumberEnd: 725
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - netdev_linux_netnsid_update
        - netnsid_is_remote
      functionUses:    22
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:724,5'
          Dst:             netdev_linux_netnsid_update
        - Src:             'lib/netdev-linux.c:725,12'
          Dst:             netnsid_is_remote
    - functionName:    ofpbuf_delete
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 172
      functionLinenumberEnd: 177
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          28
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofpbuf_uninit
      functionUses:    13
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:174,9'
          Dst:             ofpbuf_uninit
    - functionName:    eth_addr_is_zero
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 246
      functionLinenumberEnd: 247
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          25
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    eth_addr_equals
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 272
      functionLinenumberEnd: 273
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - eth_addr_compare_3way
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:273,13'
          Dst:             eth_addr_compare_3way
    - functionName:    netdev_linux_kind_is_lag
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 783
      functionLinenumberEnd: 789
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          40
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - strcmp
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:784,10'
          Dst:             strcmp
        - Src:             'lib/netdev-linux.c:784,35'
          Dst:             strcmp
    - functionName:    eth_addr_compare_3way
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 261
      functionLinenumberEnd: 262
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:262,12'
          Dst:             memcmp
    - functionName:    netdev_linux_netnsid_update
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 697
      functionLinenumberEnd: 712
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         16
      ICount:          72
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - netdev_get_class
        - netdev_get_dpif_type
        - netdev_linux_netnsid_update__
        - netnsid_is_unset
        - netnsid_set_local
        - strcmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:698,9'
          Dst:             netnsid_is_unset
        - Src:             'lib/netdev-linux.c:699,33'
          Dst:             netdev_get_dpif_type
        - Src:             'lib/netdev-linux.c:701,13'
          Dst:             netdev_get_class
        - Src:             'lib/netdev-linux.c:702,30'
          Dst:             strcmp
        - Src:             'lib/netdev-linux.c:705,13'
          Dst:             netnsid_set_local
        - Src:             'lib/netdev-linux.c:707,20'
          Dst:             netdev_linux_netnsid_update__
    - functionName:    netnsid_is_remote
      functionSourceFile: '/src/openvswitch/lib/netnsid.h'
      linkageType:     InternalLinkage
      functionLinenumber: 116
      functionLinenumberEnd: 122
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          36
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - netnsid_is_local
        - netnsid_is_unset
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netnsid.h:117,9'
          Dst:             netnsid_is_unset
        - Src:             'lib/netnsid.h:117,35'
          Dst:             netnsid_is_local
    - functionName:    netnsid_is_unset
      functionSourceFile: '/src/openvswitch/lib/netnsid.h'
      linkageType:     InternalLinkage
      functionLinenumber: 110
      functionLinenumberEnd: 111
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netnsid_is_local
      functionSourceFile: '/src/openvswitch/lib/netnsid.h'
      linkageType:     InternalLinkage
      functionLinenumber: 98
      functionLinenumberEnd: 99
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          23
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netnsid_set_local
      functionSourceFile: '/src/openvswitch/lib/netnsid.h'
      linkageType:     InternalLinkage
      functionLinenumber: 92
      functionLinenumberEnd: 94
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_linux_netnsid_update__
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 673
      functionLinenumberEnd: 693
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          60
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - dpif_netlink_vport_get
        - netdev_get_name
        - netnsid_set
        - netnsid_set_local
        - netnsid_unset
        - ofpbuf_delete
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:678,36'
          Dst:             netdev_get_name
        - Src:             'lib/netdev-linux.c:678,13'
          Dst:             dpif_netlink_vport_get
        - Src:             'lib/netdev-linux.c:683,13'
          Dst:             netnsid_set_local
        - Src:             'lib/netdev-linux.c:685,13'
          Dst:             netnsid_unset
        - Src:             'lib/netdev-linux.c:690,5'
          Dst:             netnsid_set
        - Src:             'lib/netdev-linux.c:691,5'
          Dst:             ofpbuf_delete
    - functionName:    netnsid_unset
      functionSourceFile: '/src/openvswitch/lib/netnsid.h'
      linkageType:     InternalLinkage
      functionLinenumber: 104
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netnsid_set
      functionSourceFile: '/src/openvswitch/lib/netnsid.h'
      linkageType:     InternalLinkage
      functionLinenumber: 126
      functionLinenumberEnd: 133
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netnsid.h:129,9'
          Dst:             ovs_ignore
    - functionName:    netdev_linux_construct_tap
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1110
      functionLinenumberEnd: 1199
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         69
      ICount:          364
      EdgeCount:       88
      CyclomaticComplexity: 21
      functionsReached:
        - __errno_location
        - close
        - get_flags
        - ioctl
        - netdev_linux_cast
        - netdev_linux_common_construct
        - open
        - ovs_strerror
        - ovs_strzcpy
        - ovsthread_once_done
        - ovsthread_once_start
        - set_nonblocking
        - userspace_tso_enabled
        - vlog
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:1112,35'
          Dst:             netdev_linux_cast
        - Src:             'lib/netdev-linux.c:1119,17'
          Dst:             netdev_linux_common_construct
        - Src:             'lib/netdev-linux.c:1125,22'
          Dst:             open
        - Src:             'lib/netdev-linux.c:1127,17'
          Dst:             __errno_location
        - Src:             'lib/netdev-linux.c:1128,9'
          Dst:             ovs_strerror
        - Src:             'lib/netdev-linux.c:1128,9'
          Dst:             vlog
        - Src:             'lib/netdev-linux.c:1133,5'
          Dst:             get_flags
        - Src:             'lib/netdev-linux.c:1135,9'
          Dst:             ovsthread_once_start
        - Src:             'lib/netdev-linux.c:1136,13'
          Dst:             ioctl
        - Src:             'lib/netdev-linux.c:1137,13'
          Dst:             __errno_location
        - Src:             'lib/netdev-linux.c:1137,13'
          Dst:             ovs_strerror
        - Src:             'lib/netdev-linux.c:1137,13'
          Dst:             vlog
        - Src:             'lib/netdev-linux.c:1141,13'
          Dst:             vlog
        - Src:             'lib/netdev-linux.c:1144,9'
          Dst:             ovsthread_once_done
        - Src:             'lib/netdev-linux.c:1154,5'
          Dst:             ovs_strzcpy
        - Src:             'lib/netdev-linux.c:1155,9'
          Dst:             ioctl
        - Src:             'lib/netdev-linux.c:1156,9'
          Dst:             __errno_location
        - Src:             'lib/netdev-linux.c:1156,9'
          Dst:             ovs_strerror
        - Src:             'lib/netdev-linux.c:1156,9'
          Dst:             vlog
        - Src:             'lib/netdev-linux.c:1158,17'
          Dst:             __errno_location
        - Src:             'lib/netdev-linux.c:1163,13'
          Dst:             set_nonblocking
        - Src:             'lib/netdev-linux.c:1168,9'
          Dst:             ioctl
        - Src:             'lib/netdev-linux.c:1169,9'
          Dst:             __errno_location
        - Src:             'lib/netdev-linux.c:1169,9'
          Dst:             ovs_strerror
        - Src:             'lib/netdev-linux.c:1169,9'
          Dst:             vlog
        - Src:             'lib/netdev-linux.c:1171,17'
          Dst:             __errno_location
        - Src:             'lib/netdev-linux.c:1176,9'
          Dst:             userspace_tso_enabled
        - Src:             'lib/netdev-linux.c:1181,12'
          Dst:             ioctl
        - Src:             'lib/netdev-linux.c:1185,13'
          Dst:             userspace_tso_enabled
        - Src:             'lib/netdev-linux.c:1189,8'
          Dst:             vlog
        - Src:             'lib/netdev-linux.c:1197,5'
          Dst:             close
    - functionName:    netdev_tap_get_stats
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2450
      functionLinenumberEnd: 2507
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          202
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - get_stats_via_netlink
        - get_stats_via_vport
        - netdev_linux_cast
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - swap_uint64
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:2451,35'
          Dst:             netdev_linux_cast
        - Src:             'lib/netdev-linux.c:2455,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-linux.c:2456,5'
          Dst:             get_stats_via_vport
        - Src:             'lib/netdev-linux.c:2457,13'
          Dst:             get_stats_via_netlink
        - Src:             'lib/netdev-linux.c:2470,9'
          Dst:             swap_uint64
        - Src:             'lib/netdev-linux.c:2471,9'
          Dst:             swap_uint64
        - Src:             'lib/netdev-linux.c:2472,9'
          Dst:             swap_uint64
        - Src:             'lib/netdev-linux.c:2473,9'
          Dst:             swap_uint64
        - Src:             'lib/netdev-linux.c:2505,5'
          Dst:             ovs_mutex_unlock
    - functionName:    get_stats_via_vport
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2389
      functionLinenumberEnd: 2405
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          110
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - get_stats_via_vport__
        - netdev_get_name
        - netdev_linux_cast
        - ovs_strerror
        - vlog_rate_limit
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:2390,35'
          Dst:             netdev_linux_cast
        - Src:             'lib/netdev-linux.c:2396,17'
          Dst:             get_stats_via_vport__
        - Src:             'lib/netdev-linux.c:2398,13'
          Dst:             netdev_get_name
        - Src:             'lib/netdev-linux.c:2398,13'
          Dst:             ovs_strerror
        - Src:             'lib/netdev-linux.c:2398,13'
          Dst:             vlog_rate_limit
    - functionName:    get_stats_via_netlink
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6924
      functionLinenumberEnd: 6975
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         36
      ICount:          182
      EdgeCount:       46
      CyclomaticComplexity: 12
      functionsReached:
        - netdev_get_name
        - netdev_stats_from_rtnl_link_stats
        - netdev_stats_from_rtnl_link_stats64
        - nl_attr_find
        - nl_attr_get
        - nl_attr_get_size
        - nl_msg_put_nlmsghdr
        - nl_msg_put_string
        - nl_transact
        - ofpbuf_delete
        - ofpbuf_init
        - ofpbuf_put_zeros
        - ofpbuf_try_pull
        - ofpbuf_uninit
        - vlog_rate_limit
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:6932,5'
          Dst:             ofpbuf_init
        - Src:             'lib/netdev-linux.c:6933,5'
          Dst:             nl_msg_put_nlmsghdr
        - Src:             'lib/netdev-linux.c:6936,5'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/netdev-linux.c:6937,46'
          Dst:             netdev_get_name
        - Src:             'lib/netdev-linux.c:6937,5'
          Dst:             nl_msg_put_string
        - Src:             'lib/netdev-linux.c:6938,13'
          Dst:             nl_transact
        - Src:             'lib/netdev-linux.c:6939,5'
          Dst:             ofpbuf_uninit
        - Src:             'lib/netdev-linux.c:6944,9'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/netdev-linux.c:6945,34'
          Dst:             nl_attr_find
        - Src:             'lib/netdev-linux.c:6946,18'
          Dst:             nl_attr_get_size
        - Src:             'lib/netdev-linux.c:6947,54'
          Dst:             nl_attr_get
        - Src:             'lib/netdev-linux.c:6955,13'
          Dst:             netdev_stats_from_rtnl_link_stats64
        - Src:             'lib/netdev-linux.c:6958,17'
          Dst:             nl_attr_find
        - Src:             'lib/netdev-linux.c:6959,22'
          Dst:             nl_attr_get_size
        - Src:             'lib/netdev-linux.c:6960,58'
          Dst:             nl_attr_get
        - Src:             'lib/netdev-linux.c:6960,17'
          Dst:             netdev_stats_from_rtnl_link_stats
        - Src:             'lib/netdev-linux.c:6963,17'
          Dst:             vlog_rate_limit
        - Src:             'lib/netdev-linux.c:6968,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/netdev-linux.c:6973,5'
          Dst:             ofpbuf_delete
    - functionName:    ofpbuf_try_pull
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 275
      functionLinenumberEnd: 276
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofpbuf_pull
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:276,30'
          Dst:             ofpbuf_pull
    - functionName:    netdev_stats_from_rtnl_link_stats64
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6898
      functionLinenumberEnd: 6920
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          134
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_stats_from_rtnl_link_stats
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6870
      functionLinenumberEnd: 6892
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          155
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_stats_via_vport__
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2366
      functionLinenumberEnd: 2384
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - dpif_netlink_vport_get
        - netdev_get_name
        - netdev_stats_from_ovs_vport_stats
        - ofpbuf_delete
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:2371,36'
          Dst:             netdev_get_name
        - Src:             'lib/netdev-linux.c:2371,13'
          Dst:             dpif_netlink_vport_get
        - Src:             'lib/netdev-linux.c:2375,9'
          Dst:             ofpbuf_delete
        - Src:             'lib/netdev-linux.c:2379,5'
          Dst:             netdev_stats_from_ovs_vport_stats
        - Src:             'lib/netdev-linux.c:2381,5'
          Dst:             ofpbuf_delete
    - functionName:    netdev_stats_from_ovs_vport_stats
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2338
      functionLinenumberEnd: 2362
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          130
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_32aligned_u64
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:2339,23'
          Dst:             get_32aligned_u64
        - Src:             'lib/netdev-linux.c:2340,23'
          Dst:             get_32aligned_u64
        - Src:             'lib/netdev-linux.c:2341,21'
          Dst:             get_32aligned_u64
        - Src:             'lib/netdev-linux.c:2342,21'
          Dst:             get_32aligned_u64
        - Src:             'lib/netdev-linux.c:2343,22'
          Dst:             get_32aligned_u64
        - Src:             'lib/netdev-linux.c:2344,22'
          Dst:             get_32aligned_u64
        - Src:             'lib/netdev-linux.c:2345,23'
          Dst:             get_32aligned_u64
        - Src:             'lib/netdev-linux.c:2346,23'
          Dst:             get_32aligned_u64
    - functionName:    get_32aligned_u64
      functionSourceFile: '/src/openvswitch/lib/unaligned.h'
      linkageType:     InternalLinkage
      functionLinenumber: 208
      functionLinenumberEnd: 209
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    13
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_linux_common_construct
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1040
      functionLinenumberEnd: 1066
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         16
      ICount:          88
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - netdev_linux_cast
        - netnsid_unset
        - ovs_mutex_init
        - strcmp
        - strlen
        - vlog_rate_limit
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:1049,35'
          Dst:             netdev_linux_cast
        - Src:             'lib/netdev-linux.c:1051,10'
          Dst:             strcmp
        - Src:             'lib/netdev-linux.c:1051,38'
          Dst:             strcmp
        - Src:             'lib/netdev-linux.c:1053,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/netdev-linux.c:1057,9'
          Dst:             strlen
        - Src:             'lib/netdev-linux.c:1062,5'
          Dst:             netnsid_unset
        - Src:             'lib/netdev-linux.c:1063,5'
          Dst:             ovs_mutex_init
    - functionName:    netdev_rxq_linux_cast
      functionSourceFile: '/src/openvswitch/lib/netdev-linux-private.h'
      linkageType:     InternalLinkage
      functionLinenumber: 143
      functionLinenumberEnd: 146
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - is_netdev_linux_class
        - netdev_get_class
        - ovs_ignore
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux-private.h:144,38'
          Dst:             netdev_get_class
        - Src:             'lib/netdev-linux-private.h:144,16'
          Dst:             is_netdev_linux_class
        - Src:             'lib/netdev-linux-private.h:144,5'
          Dst:             ovs_ignore
    - functionName:    netdev_linux_get_mtu__
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2052
      functionLinenumberEnd: 2075
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          89
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - af_inet_ifreq_ioctl
        - netdev_get_name
        - netdev_linux_update_via_netlink
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:2056,9'
          Dst:             netdev_linux_update_via_netlink
        - Src:             'lib/netdev-linux.c:2065,13'
          Dst:             netdev_get_name
        - Src:             'lib/netdev-linux.c:2064,36'
          Dst:             af_inet_ifreq_ioctl
    - functionName:    dp_packet_batch_reset
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 872
      functionLinenumberEnd: 875
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_linux_batch_rxq_recv_tap
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1553
      functionLinenumberEnd: 1639
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         45
      ICount:          307
      EdgeCount:       58
      CyclomaticComplexity: 15
      functionsReached:
        - __errno_location
        - dp_packet_batch_add
        - dp_packet_data
        - dp_packet_delete
        - dp_packet_new_with_headroom
        - dp_packet_push
        - dp_packet_resize
        - dp_packet_set_size
        - dp_packet_size
        - dp_packet_tailroom
        - netdev_get_name
        - netdev_linux_cast
        - netdev_linux_parse_vnet_hdr
        - netdev_rxq_get_netdev
        - readv
        - userspace_tso_enabled
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:1560,9'
          Dst:             userspace_tso_enabled
        - Src:             'lib/netdev-linux.c:1583,18'
          Dst:             dp_packet_new_with_headroom
        - Src:             'lib/netdev-linux.c:1584,36'
          Dst:             dp_packet_data
        - Src:             'lib/netdev-linux.c:1587,40'
          Dst:             dp_packet_data
        - Src:             'lib/netdev-linux.c:1588,39'
          Dst:             dp_packet_tailroom
        - Src:             'lib/netdev-linux.c:1592,22'
          Dst:             readv
        - Src:             'lib/netdev-linux.c:1593,32'
          Dst:             __errno_location
        - Src:             'lib/netdev-linux.c:1596,13'
          Dst:             dp_packet_delete
        - Src:             'lib/netdev-linux.c:1604,13'
          Dst:             dp_packet_set_size
        - Src:             'lib/netdev-linux.c:1605,33'
          Dst:             dp_packet_data
        - Src:             'lib/netdev-linux.c:1605,13'
          Dst:             dp_packet_push
        - Src:             'lib/netdev-linux.c:1608,13'
          Dst:             dp_packet_resize
        - Src:             'lib/netdev-linux.c:1609,13'
          Dst:             dp_packet_delete
        - Src:             'lib/netdev-linux.c:1612,40'
          Dst:             dp_packet_size
        - Src:             'lib/netdev-linux.c:1612,13'
          Dst:             dp_packet_set_size
        - Src:             'lib/netdev-linux.c:1617,13'
          Dst:             netdev_linux_parse_vnet_hdr
        - Src:             'lib/netdev-linux.c:1618,38'
          Dst:             netdev_rxq_get_netdev
        - Src:             'lib/netdev-linux.c:1619,43'
          Dst:             netdev_linux_cast
        - Src:             'lib/netdev-linux.c:1624,13'
          Dst:             dp_packet_delete
        - Src:             'lib/netdev-linux.c:1626,13'
          Dst:             netdev_get_name
        - Src:             'lib/netdev-linux.c:1626,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/netdev-linux.c:1631,9'
          Dst:             dp_packet_batch_add
        - Src:             'lib/netdev-linux.c:1635,16'
          Dst:             __errno_location
    - functionName:    readv
      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:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    is_tap_netdev
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 585
      functionLinenumberEnd: 586
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - netdev_get_class
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:586,12'
          Dst:             netdev_get_class
    - functionName:    get_ifindex
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7027
      functionLinenumberEnd: 7049
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          93
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - linux_get_ifindex
        - netdev_get_name
        - netdev_linux_cast
        - netdev_linux_update_via_netlink
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:7028,35'
          Dst:             netdev_linux_cast
        - Src:             'lib/netdev-linux.c:7031,9'
          Dst:             netdev_linux_update_via_netlink
        - Src:             'lib/netdev-linux.c:7036,41'
          Dst:             netdev_get_name
        - Src:             'lib/netdev-linux.c:7036,23'
          Dst:             linux_get_ifindex
    - functionName:    linux_get_ifindex
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7004
      functionLinenumberEnd: 7023
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          70
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - af_inet_ioctl
        - netdev_get_ifindex_add
        - ovs_strerror
        - ovs_strzcpy
        - vlog_rate_limit
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:7009,5'
          Dst:             ovs_strzcpy
        - Src:             'lib/netdev-linux.c:7010,5'
          Dst:             netdev_get_ifindex_add
        - Src:             'lib/netdev-linux.c:7012,13'
          Dst:             af_inet_ioctl
        - Src:             'lib/netdev-linux.c:7017,9'
          Dst:             ovs_strerror
        - Src:             'lib/netdev-linux.c:7017,9'
          Dst:             vlog_rate_limit
    - functionName:    netdev_get_ifindex_add
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 88
      functionLinenumberEnd: 88
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_netdev_get_ifindex_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:88,1'
          Dst:             counter_netdev_get_ifindex_get
    - functionName:    update_flags
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3999
      functionLinenumberEnd: 4011
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          65
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - get_flags
        - iff_to_nd_flags
        - nd_to_iff_flags
        - netdev_get_name
        - set_flags
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:4004,19'
          Dst:             iff_to_nd_flags
        - Src:             'lib/netdev-linux.c:4005,31'
          Dst:             nd_to_iff_flags
        - Src:             'lib/netdev-linux.c:4005,55'
          Dst:             nd_to_iff_flags
        - Src:             'lib/netdev-linux.c:4007,27'
          Dst:             netdev_get_name
        - Src:             'lib/netdev-linux.c:4007,17'
          Dst:             set_flags
        - Src:             'lib/netdev-linux.c:4008,9'
          Dst:             get_flags
    - functionName:    iff_to_nd_flags
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3981
      functionLinenumberEnd: 3992
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          57
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nd_to_iff_flags
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3965
      functionLinenumberEnd: 3976
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          57
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_flags
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6994
      functionLinenumberEnd: 6999
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - af_inet_ifreq_ioctl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:6999,12'
          Dst:             af_inet_ifreq_ioctl
    - functionName:    netdev_arp_lookup_add
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 87
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_netdev_arp_lookup_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:87,1'
          Dst:             counter_netdev_arp_lookup_get
    - functionName:    netdev_get_ethtool_add
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 91
      functionLinenumberEnd: 91
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_netdev_get_ethtool_get
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:91,1'
          Dst:             counter_netdev_get_ethtool_get
    - functionName:    netdev_linux_do_ethtool
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7185
      functionLinenumberEnd: 7204
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          80
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - af_inet_ioctl
        - ovs_strerror
        - ovs_strzcpy
        - vlog_rate_limit
      functionUses:    12
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:7190,5'
          Dst:             ovs_strzcpy
        - Src:             'lib/netdev-linux.c:7194,13'
          Dst:             af_inet_ioctl
        - Src:             'lib/netdev-linux.c:7197,13'
          Dst:             ovs_strerror
        - Src:             'lib/netdev-linux.c:7197,13'
          Dst:             vlog_rate_limit
    - functionName:    netdev_linux_get_peer_ifindex
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3820
      functionLinenumberEnd: 3860
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         23
      ICount:          161
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - netdev_linux_do_ethtool
        - netdev_linux_read_definitions
        - strcmp
        - xzalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:3827,9'
          Dst:             strcmp
        - Src:             'lib/netdev-linux.c:3831,13'
          Dst:             netdev_linux_read_definitions
        - Src:             'lib/netdev-linux.c:3836,13'
          Dst:             xzalloc
        - Src:             'lib/netdev-linux.c:3841,13'
          Dst:             netdev_linux_do_ethtool
        - Src:             'lib/netdev-linux.c:3852,14'
          Dst:             strcmp
    - functionName:    netdev_linux_read_definitions
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2564
      functionLinenumberEnd: 2599
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          120
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - netdev_get_name
        - netdev_linux_do_ethtool
        - netdev_linux_read_stringset_info
        - xzalloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:2569,13'
          Dst:             netdev_linux_read_stringset_info
        - Src:             'lib/netdev-linux.c:2576,15'
          Dst:             xzalloc
        - Src:             'lib/netdev-linux.c:2581,37'
          Dst:             netdev_get_name
        - Src:             'lib/netdev-linux.c:2581,13'
          Dst:             netdev_linux_do_ethtool
    - functionName:    netdev_linux_read_stringset_info
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2529
      functionLinenumberEnd: 2557
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          69
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - netdev_get_name
        - netdev_linux_do_ethtool
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:2544,37'
          Dst:             netdev_get_name
        - Src:             'lib/netdev-linux.c:2544,13'
          Dst:             netdev_linux_do_ethtool
    - functionName:    make_in4_sockaddr
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3714
      functionLinenumberEnd: 3723
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    do_set_addr
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3728
      functionLinenumberEnd: 3734
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          32
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - af_inet_ifreq_ioctl
        - make_in4_sockaddr
        - netdev_get_name
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:3732,5'
          Dst:             make_in4_sockaddr
        - Src:             'lib/netdev-linux.c:3733,32'
          Dst:             netdev_get_name
        - Src:             'lib/netdev-linux.c:3733,12'
          Dst:             af_inet_ifreq_ioctl
    - functionName:    tc_query_qdisc
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6662
      functionLinenumberEnd: 6735
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         42
      ICount:          231
      EdgeCount:       54
      CyclomaticComplexity: 14
      functionsReached:
        - getqdisc_is_safe
        - netdev_get_name
        - netdev_linux_cast
        - netdev_linux_tc_make_request
        - ofpbuf_delete
        - ovs_ignore
        - ovs_strerror
        - tc_lookup_linux_name
        - tc_make_handle
        - tc_parse_qdisc
        - tc_transact
        - vlog_rate_limit
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:6663,35'
          Dst:             netdev_linux_cast
        - Src:             'lib/netdev-linux.c:6691,13'
          Dst:             netdev_linux_tc_make_request
        - Src:             'lib/netdev-linux.c:6696,40'
          Dst:             getqdisc_is_safe
        - Src:             'lib/netdev-linux.c:6696,25'
          Dst:             tc_make_handle
        - Src:             'lib/netdev-linux.c:6697,25'
          Dst:             getqdisc_is_safe
        - Src:             'lib/netdev-linux.c:6700,13'
          Dst:             tc_transact
        - Src:             'lib/netdev-linux.c:6704,17'
          Dst:             tc_parse_qdisc
        - Src:             'lib/netdev-linux.c:6708,19'
          Dst:             tc_lookup_linux_name
        - Src:             'lib/netdev-linux.c:6711,17'
          Dst:             vlog_rate_limit
        - Src:             'lib/netdev-linux.c:6724,9'
          Dst:             netdev_get_name
        - Src:             'lib/netdev-linux.c:6724,9'
          Dst:             ovs_strerror
        - Src:             'lib/netdev-linux.c:6724,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/netdev-linux.c:6731,5'
          Dst:             ovs_ignore
        - Src:             'lib/netdev-linux.c:6732,5'
          Dst:             ofpbuf_delete
    - functionName:    start_queue_dump
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3510
      functionLinenumberEnd: 3524
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - netdev_linux_tc_make_request
        - nl_dump_start
        - ofpbuf_init
        - ofpbuf_uninit
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:3514,13'
          Dst:             netdev_linux_tc_make_request
        - Src:             'lib/netdev-linux.c:3519,5'
          Dst:             nl_dump_start
        - Src:             'lib/netdev-linux.c:3520,5'
          Dst:             ofpbuf_uninit
        - Src:             'lib/netdev-linux.c:3522,5'
          Dst:             ofpbuf_init
    - functionName:    finish_queue_dump
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3528
      functionLinenumberEnd: 3530
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_dump_done
        - ofpbuf_uninit
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:3529,5'
          Dst:             ofpbuf_uninit
        - Src:             'lib/netdev-linux.c:3530,12'
          Dst:             nl_dump_done
    - functionName:    netdev_linux_tc_make_request
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6080
      functionLinenumberEnd: 6090
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - get_ifindex
        - tc_make_request
      functionUses:    14
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:6084,13'
          Dst:             get_ifindex
        - Src:             'lib/netdev-linux.c:6089,12'
          Dst:             tc_make_request
    - functionName:    getqdisc_is_safe
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6642
      functionLinenumberEnd: 6654
      functionDepth:   0
      returnType:      bool
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         14
      ICount:          51
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - ovs_kernel_is_version_or_newer
        - ovsthread_once_done
        - ovsthread_once_start
        - vlog
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:6646,9'
          Dst:             ovsthread_once_start
        - Src:             'lib/netdev-linux.c:6647,13'
          Dst:             ovs_kernel_is_version_or_newer
        - Src:             'lib/netdev-linux.c:6650,13'
          Dst:             vlog
        - Src:             'lib/netdev-linux.c:6652,9'
          Dst:             ovsthread_once_done
    - functionName:    tc_make_handle
      functionSourceFile: '/src/openvswitch/lib/tc.h'
      linkageType:     InternalLinkage
      functionLinenumber: 85
      functionLinenumberEnd: 86
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    30
      BranchProfiles:  []
      Callsites:       []
    - functionName:    tc_parse_qdisc
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6441
      functionLinenumberEnd: 6472
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          105
      EdgeCount:       30
      CyclomaticComplexity: 8
      functionsReached:
        - nl_attr_get_string
        - nl_policy_parse
        - vlog_rate_limit
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:6448,10'
          Dst:             nl_policy_parse
        - Src:             'lib/netdev-linux.c:6450,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/netdev-linux.c:6455,17'
          Dst:             nl_attr_get_string
    - functionName:    tc_lookup_linux_name
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3261
      functionLinenumberEnd: 3271
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          66
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:3266,33'
          Dst:             strcmp
    - functionName:    default_tc_install
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6014
      functionLinenumberEnd: 6016
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - default_install__
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:6015,5'
          Dst:             default_install__
    - functionName:    default_tc_load
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6021
      functionLinenumberEnd: 6023
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - default_install__
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:6022,5'
          Dst:             default_install__
    - functionName:    default_install__
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6002
      functionLinenumberEnd: 6009
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - netdev_linux_cast
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:6003,35'
          Dst:             netdev_linux_cast
    - functionName:    noop_tc_install
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5977
      functionLinenumberEnd: 5979
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - noop_install__
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:5978,5'
          Dst:             noop_install__
    - functionName:    noop_tc_load
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5984
      functionLinenumberEnd: 5986
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - noop_install__
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:5985,5'
          Dst:             noop_install__
    - functionName:    noop_install__
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5967
      functionLinenumberEnd: 5972
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - netdev_linux_cast
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:5968,35'
          Dst:             netdev_linux_cast
    - functionName:    netem_tc_install
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4883
      functionLinenumberEnd: 4894
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - netem_install__
        - netem_parse_qdisc_details__
        - netem_setup_qdisc__
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:4887,5'
          Dst:             netem_parse_qdisc_details__
        - Src:             'lib/netdev-linux.c:4888,13'
          Dst:             netem_setup_qdisc__
        - Src:             'lib/netdev-linux.c:4891,9'
          Dst:             netem_install__
    - functionName:    netem_tc_load
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4899
      functionLinenumberEnd: 4914
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - netem_install__
        - nl_attr_get
        - tc_parse_qdisc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:4905,13'
          Dst:             tc_parse_qdisc
        - Src:             'lib/netdev-linux.c:4907,17'
          Dst:             nl_attr_get
        - Src:             'lib/netdev-linux.c:4908,9'
          Dst:             netem_install__
    - functionName:    netem_tc_destroy
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4918
      functionLinenumberEnd: 4922
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - tc_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:4920,5'
          Dst:             tc_destroy
    - functionName:    netem_qdisc_get
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4926
      functionLinenumberEnd: 4932
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          39
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - netem_get__
        - smap_add_format
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:4927,33'
          Dst:             netem_get__
        - Src:             'lib/netdev-linux.c:4928,5'
          Dst:             smap_add_format
        - Src:             'lib/netdev-linux.c:4929,5'
          Dst:             smap_add_format
        - Src:             'lib/netdev-linux.c:4930,5'
          Dst:             smap_add_format
        - Src:             'lib/netdev-linux.c:4931,5'
          Dst:             smap_add_format
    - functionName:    netem_qdisc_set
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4937
      functionLinenumberEnd: 4947
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          53
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - netem_get__
        - netem_install__
        - netem_parse_qdisc_details__
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:4940,5'
          Dst:             netem_parse_qdisc_details__
        - Src:             'lib/netdev-linux.c:4941,5'
          Dst:             netem_install__
        - Src:             'lib/netdev-linux.c:4943,5'
          Dst:             netem_get__
        - Src:             'lib/netdev-linux.c:4944,5'
          Dst:             netem_get__
        - Src:             'lib/netdev-linux.c:4945,5'
          Dst:             netem_get__
        - Src:             'lib/netdev-linux.c:4946,5'
          Dst:             netem_get__
    - functionName:    netem_parse_qdisc_details__
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4870
      functionLinenumberEnd: 4879
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          58
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - smap_get_ullong
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:4871,22'
          Dst:             smap_get_ullong
        - Src:             'lib/netdev-linux.c:4872,20'
          Dst:             smap_get_ullong
        - Src:             'lib/netdev-linux.c:4873,19'
          Dst:             smap_get_ullong
        - Src:             'lib/netdev-linux.c:4874,21'
          Dst:             smap_get_ullong
    - functionName:    netem_install__
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4798
      functionLinenumberEnd: 4810
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          52
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - netdev_linux_cast
        - tc_init
        - xmalloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:4799,35'
          Dst:             netdev_linux_cast
        - Src:             'lib/netdev-linux.c:4802,13'
          Dst:             xmalloc
        - Src:             'lib/netdev-linux.c:4803,5'
          Dst:             tc_init
    - functionName:    netem_get__
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4790
      functionLinenumberEnd: 4792
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - netdev_linux_cast
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:4791,35'
          Dst:             netdev_linux_cast
    - functionName:    tc_init
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 473
      functionLinenumberEnd: 476
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_init
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:475,5'
          Dst:             hmap_init
    - functionName:    tc_destroy
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 480
      functionLinenumberEnd: 482
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_destroy
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:481,5'
          Dst:             hmap_destroy
    - functionName:    netem_setup_qdisc__
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4815
      functionLinenumberEnd: 4865
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          173
      EdgeCount:       34
      CyclomaticComplexity: 9
      functionsReached:
        - netdev_get_name
        - netdev_linux_tc_make_request
        - nl_msg_put_string
        - nl_msg_put_unspec
        - ovs_strerror
        - tc_del_qdisc
        - tc_make_handle
        - tc_time_to_ticks
        - tc_transact
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:4821,5'
          Dst:             tc_del_qdisc
        - Src:             'lib/netdev-linux.c:4823,13'
          Dst:             netdev_linux_tc_make_request
        - Src:             'lib/netdev-linux.c:4828,25'
          Dst:             tc_make_handle
        - Src:             'lib/netdev-linux.c:4841,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/netdev-linux.c:4849,19'
          Dst:             tc_time_to_ticks
        - Src:             'lib/netdev-linux.c:4850,18'
          Dst:             tc_time_to_ticks
        - Src:             'lib/netdev-linux.c:4852,5'
          Dst:             nl_msg_put_string
        - Src:             'lib/netdev-linux.c:4853,5'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/netdev-linux.c:4855,13'
          Dst:             tc_transact
        - Src:             'lib/netdev-linux.c:4857,9'
          Dst:             netdev_get_name
        - Src:             'lib/netdev-linux.c:4857,9'
          Dst:             ovs_strerror
        - Src:             'lib/netdev-linux.c:4857,9'
          Dst:             vlog_rate_limit
    - functionName:    tc_del_qdisc
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6613
      functionLinenumberEnd: 6638
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         20
      ICount:          114
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - netdev_linux_cast
        - netdev_linux_tc_make_request
        - tc_transact
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:6614,35'
          Dst:             netdev_linux_cast
        - Src:             'lib/netdev-linux.c:6619,13'
          Dst:             netdev_linux_tc_make_request
        - Src:             'lib/netdev-linux.c:6625,13'
          Dst:             tc_transact
    - functionName:    tc_time_to_ticks
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6424
      functionLinenumberEnd: 6426
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - read_psched
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:6425,5'
          Dst:             read_psched
    - functionName:    sfq_tc_install
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4708
      functionLinenumberEnd: 4717
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - sfq_install__
        - sfq_parse_qdisc_details__
        - sfq_setup_qdisc__
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:4712,5'
          Dst:             sfq_parse_qdisc_details__
        - Src:             'lib/netdev-linux.c:4713,13'
          Dst:             sfq_setup_qdisc__
        - Src:             'lib/netdev-linux.c:4715,9'
          Dst:             sfq_install__
    - functionName:    sfq_tc_load
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4722
      functionLinenumberEnd: 4736
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - nl_attr_get
        - sfq_install__
        - tc_parse_qdisc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:4728,13'
          Dst:             tc_parse_qdisc
        - Src:             'lib/netdev-linux.c:4730,15'
          Dst:             nl_attr_get
        - Src:             'lib/netdev-linux.c:4731,9'
          Dst:             sfq_install__
    - functionName:    sfq_tc_destroy
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4740
      functionLinenumberEnd: 4744
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - tc_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:4742,5'
          Dst:             tc_destroy
    - functionName:    sfq_qdisc_get
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4748
      functionLinenumberEnd: 4752
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sfq_get__
        - smap_add_format
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:4749,29'
          Dst:             sfq_get__
        - Src:             'lib/netdev-linux.c:4750,5'
          Dst:             smap_add_format
        - Src:             'lib/netdev-linux.c:4751,5'
          Dst:             smap_add_format
    - functionName:    sfq_qdisc_set
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4757
      functionLinenumberEnd: 4764
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sfq_get__
        - sfq_install__
        - sfq_parse_qdisc_details__
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:4760,5'
          Dst:             sfq_parse_qdisc_details__
        - Src:             'lib/netdev-linux.c:4761,5'
          Dst:             sfq_install__
        - Src:             'lib/netdev-linux.c:4762,5'
          Dst:             sfq_get__
        - Src:             'lib/netdev-linux.c:4763,5'
          Dst:             sfq_get__
    - functionName:    sfq_parse_qdisc_details__
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4687
      functionLinenumberEnd: 4704
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          95
      EdgeCount:       21
      CyclomaticComplexity: 6
      functionsReached:
        - netdev_linux_cast
        - netdev_linux_get_mtu__
        - smap_get_ullong
        - vlog_rate_limit
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:4688,20'
          Dst:             smap_get_ullong
        - Src:             'lib/netdev-linux.c:4689,20'
          Dst:             smap_get_ullong
        - Src:             'lib/netdev-linux.c:4697,37'
          Dst:             netdev_linux_cast
        - Src:             'lib/netdev-linux.c:4697,14'
          Dst:             netdev_linux_get_mtu__
        - Src:             'lib/netdev-linux.c:4700,13'
          Dst:             vlog_rate_limit
    - functionName:    sfq_install__
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4623
      functionLinenumberEnd: 4633
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          40
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - netdev_linux_cast
        - tc_init
        - xmalloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:4624,35'
          Dst:             netdev_linux_cast
        - Src:             'lib/netdev-linux.c:4627,11'
          Dst:             xmalloc
        - Src:             'lib/netdev-linux.c:4628,5'
          Dst:             tc_init
    - functionName:    sfq_get__
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4616
      functionLinenumberEnd: 4618
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - netdev_linux_cast
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:4617,35'
          Dst:             netdev_linux_cast
    - functionName:    sfq_setup_qdisc__
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4637
      functionLinenumberEnd: 4682
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          141
      EdgeCount:       29
      CyclomaticComplexity: 8
      functionsReached:
        - netdev_get_name
        - netdev_linux_cast
        - netdev_linux_get_mtu__
        - netdev_linux_tc_make_request
        - nl_msg_put_string
        - nl_msg_put_unspec
        - ovs_strerror
        - tc_del_qdisc
        - tc_make_handle
        - tc_transact
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:4643,40'
          Dst:             netdev_linux_cast
        - Src:             'lib/netdev-linux.c:4643,17'
          Dst:             netdev_linux_get_mtu__
        - Src:             'lib/netdev-linux.c:4645,5'
          Dst:             tc_del_qdisc
        - Src:             'lib/netdev-linux.c:4647,13'
          Dst:             netdev_linux_tc_make_request
        - Src:             'lib/netdev-linux.c:4652,25'
          Dst:             tc_make_handle
        - Src:             'lib/netdev-linux.c:4670,5'
          Dst:             nl_msg_put_string
        - Src:             'lib/netdev-linux.c:4671,5'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/netdev-linux.c:4673,13'
          Dst:             tc_transact
        - Src:             'lib/netdev-linux.c:4675,9'
          Dst:             netdev_get_name
        - Src:             'lib/netdev-linux.c:4675,9'
          Dst:             ovs_strerror
        - Src:             'lib/netdev-linux.c:4675,9'
          Dst:             vlog_rate_limit
    - functionName:    fqcodel_tc_install
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4492
      functionLinenumberEnd: 4504
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          58
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - fqcodel_install__
        - fqcodel_parse_qdisc_details__
        - fqcodel_setup_qdisc__
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:4496,5'
          Dst:             fqcodel_parse_qdisc_details__
        - Src:             'lib/netdev-linux.c:4497,13'
          Dst:             fqcodel_setup_qdisc__
        - Src:             'lib/netdev-linux.c:4501,9'
          Dst:             fqcodel_install__
    - functionName:    fqcodel_tc_load
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4536
      functionLinenumberEnd: 4555
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          64
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - fqcodel_install__
        - fqcodel_parse_tca_options__
        - tc_parse_qdisc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:4542,13'
          Dst:             tc_parse_qdisc
        - Src:             'lib/netdev-linux.c:4547,13'
          Dst:             fqcodel_parse_tca_options__
        - Src:             'lib/netdev-linux.c:4552,5'
          Dst:             fqcodel_install__
    - functionName:    fqcodel_tc_destroy
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4559
      functionLinenumberEnd: 4563
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - tc_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:4561,5'
          Dst:             tc_destroy
    - functionName:    fqcodel_qdisc_get
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4567
      functionLinenumberEnd: 4574
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          44
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - fqcodel_get__
        - smap_add_format
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:4568,37'
          Dst:             fqcodel_get__
        - Src:             'lib/netdev-linux.c:4569,5'
          Dst:             smap_add_format
        - Src:             'lib/netdev-linux.c:4570,5'
          Dst:             smap_add_format
        - Src:             'lib/netdev-linux.c:4571,5'
          Dst:             smap_add_format
        - Src:             'lib/netdev-linux.c:4572,5'
          Dst:             smap_add_format
        - Src:             'lib/netdev-linux.c:4573,5'
          Dst:             smap_add_format
    - functionName:    fqcodel_qdisc_set
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4579
      functionLinenumberEnd: 4590
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          61
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - fqcodel_get__
        - fqcodel_install__
        - fqcodel_parse_qdisc_details__
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:4582,5'
          Dst:             fqcodel_parse_qdisc_details__
        - Src:             'lib/netdev-linux.c:4583,5'
          Dst:             fqcodel_install__
        - Src:             'lib/netdev-linux.c:4585,5'
          Dst:             fqcodel_get__
        - Src:             'lib/netdev-linux.c:4586,5'
          Dst:             fqcodel_get__
        - Src:             'lib/netdev-linux.c:4587,5'
          Dst:             fqcodel_get__
        - Src:             'lib/netdev-linux.c:4588,5'
          Dst:             fqcodel_get__
        - Src:             'lib/netdev-linux.c:4589,5'
          Dst:             fqcodel_get__
    - functionName:    fqcodel_parse_qdisc_details__
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4466
      functionLinenumberEnd: 4488
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          132
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - smap_get_ullong
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:4467,23'
          Dst:             smap_get_ullong
        - Src:             'lib/netdev-linux.c:4468,22'
          Dst:             smap_get_ullong
        - Src:             'lib/netdev-linux.c:4469,25'
          Dst:             smap_get_ullong
        - Src:             'lib/netdev-linux.c:4470,22'
          Dst:             smap_get_ullong
        - Src:             'lib/netdev-linux.c:4471,24'
          Dst:             smap_get_ullong
    - functionName:    fqcodel_install__
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4401
      functionLinenumberEnd: 4414
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          58
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - netdev_linux_cast
        - tc_init
        - xmalloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:4402,35'
          Dst:             netdev_linux_cast
        - Src:             'lib/netdev-linux.c:4405,15'
          Dst:             xmalloc
        - Src:             'lib/netdev-linux.c:4406,5'
          Dst:             tc_init
    - functionName:    fqcodel_get__
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4393
      functionLinenumberEnd: 4395
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - netdev_linux_cast
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:4394,35'
          Dst:             netdev_linux_cast
    - functionName:    fqcodel_parse_tca_options__
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4509
      functionLinenumberEnd: 4532
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          81
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - nl_attr_get_u32
        - nl_parse_nested
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:4520,10'
          Dst:             nl_parse_nested
        - Src:             'lib/netdev-linux.c:4522,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/netdev-linux.c:4526,23'
          Dst:             nl_attr_get_u32
        - Src:             'lib/netdev-linux.c:4527,22'
          Dst:             nl_attr_get_u32
        - Src:             'lib/netdev-linux.c:4528,24'
          Dst:             nl_attr_get_u32
        - Src:             'lib/netdev-linux.c:4529,22'
          Dst:             nl_attr_get_u32
        - Src:             'lib/netdev-linux.c:4530,24'
          Dst:             nl_attr_get_u32
    - functionName:    fqcodel_setup_qdisc__
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4419
      functionLinenumberEnd: 4461
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          190
      EdgeCount:       37
      CyclomaticComplexity: 10
      functionsReached:
        - netdev_get_name
        - netdev_linux_tc_make_request
        - nl_msg_end_nested
        - nl_msg_put_string
        - nl_msg_put_u32
        - nl_msg_start_nested
        - ovs_strerror
        - tc_del_qdisc
        - tc_make_handle
        - tc_transact
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:4426,5'
          Dst:             tc_del_qdisc
        - Src:             'lib/netdev-linux.c:4428,13'
          Dst:             netdev_linux_tc_make_request
        - Src:             'lib/netdev-linux.c:4433,25'
          Dst:             tc_make_handle
        - Src:             'lib/netdev-linux.c:4443,5'
          Dst:             nl_msg_put_string
        - Src:             'lib/netdev-linux.c:4444,18'
          Dst:             nl_msg_start_nested
        - Src:             'lib/netdev-linux.c:4445,5'
          Dst:             nl_msg_put_u32
        - Src:             'lib/netdev-linux.c:4446,5'
          Dst:             nl_msg_put_u32
        - Src:             'lib/netdev-linux.c:4447,5'
          Dst:             nl_msg_put_u32
        - Src:             'lib/netdev-linux.c:4448,5'
          Dst:             nl_msg_put_u32
        - Src:             'lib/netdev-linux.c:4449,5'
          Dst:             nl_msg_put_u32
        - Src:             'lib/netdev-linux.c:4450,5'
          Dst:             nl_msg_end_nested
        - Src:             'lib/netdev-linux.c:4452,13'
          Dst:             tc_transact
        - Src:             'lib/netdev-linux.c:4454,9'
          Dst:             netdev_get_name
        - Src:             'lib/netdev-linux.c:4454,9'
          Dst:             ovs_strerror
        - Src:             'lib/netdev-linux.c:4454,9'
          Dst:             vlog_rate_limit
    - functionName:    codel_tc_install
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4266
      functionLinenumberEnd: 4276
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - codel_install__
        - codel_parse_qdisc_details__
        - codel_setup_qdisc__
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:4270,5'
          Dst:             codel_parse_qdisc_details__
        - Src:             'lib/netdev-linux.c:4271,13'
          Dst:             codel_setup_qdisc__
        - Src:             'lib/netdev-linux.c:4274,9'
          Dst:             codel_install__
    - functionName:    codel_tc_load
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4304
      functionLinenumberEnd: 4322
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          60
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - codel_install__
        - codel_parse_tca_options__
        - tc_parse_qdisc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:4310,13'
          Dst:             tc_parse_qdisc
        - Src:             'lib/netdev-linux.c:4315,13'
          Dst:             codel_parse_tca_options__
        - Src:             'lib/netdev-linux.c:4320,5'
          Dst:             codel_install__
    - functionName:    codel_tc_destroy
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4327
      functionLinenumberEnd: 4331
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - tc_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:4329,5'
          Dst:             tc_destroy
    - functionName:    codel_qdisc_get
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4335
      functionLinenumberEnd: 4340
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - codel_get__
        - smap_add_format
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:4336,33'
          Dst:             codel_get__
        - Src:             'lib/netdev-linux.c:4337,5'
          Dst:             smap_add_format
        - Src:             'lib/netdev-linux.c:4338,5'
          Dst:             smap_add_format
        - Src:             'lib/netdev-linux.c:4339,5'
          Dst:             smap_add_format
    - functionName:    codel_qdisc_set
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4345
      functionLinenumberEnd: 4353
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          45
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - codel_get__
        - codel_install__
        - codel_parse_qdisc_details__
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:4348,5'
          Dst:             codel_parse_qdisc_details__
        - Src:             'lib/netdev-linux.c:4349,5'
          Dst:             codel_install__
        - Src:             'lib/netdev-linux.c:4350,5'
          Dst:             codel_get__
        - Src:             'lib/netdev-linux.c:4351,5'
          Dst:             codel_get__
        - Src:             'lib/netdev-linux.c:4352,5'
          Dst:             codel_get__
    - functionName:    codel_parse_qdisc_details__
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4248
      functionLinenumberEnd: 4262
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          86
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - smap_get_ullong
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:4249,21'
          Dst:             smap_get_ullong
        - Src:             'lib/netdev-linux.c:4250,20'
          Dst:             smap_get_ullong
        - Src:             'lib/netdev-linux.c:4251,23'
          Dst:             smap_get_ullong
    - functionName:    codel_install__
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4190
      functionLinenumberEnd: 4201
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - netdev_linux_cast
        - tc_init
        - xmalloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:4191,35'
          Dst:             netdev_linux_cast
        - Src:             'lib/netdev-linux.c:4194,13'
          Dst:             xmalloc
        - Src:             'lib/netdev-linux.c:4195,5'
          Dst:             tc_init
    - functionName:    codel_get__
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4182
      functionLinenumberEnd: 4184
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - netdev_linux_cast
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:4183,35'
          Dst:             netdev_linux_cast
    - functionName:    codel_parse_tca_options__
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4281
      functionLinenumberEnd: 4300
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          69
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - nl_attr_get_u32
        - nl_parse_nested
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:4290,10'
          Dst:             nl_parse_nested
        - Src:             'lib/netdev-linux.c:4292,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/netdev-linux.c:4296,21'
          Dst:             nl_attr_get_u32
        - Src:             'lib/netdev-linux.c:4297,20'
          Dst:             nl_attr_get_u32
        - Src:             'lib/netdev-linux.c:4298,23'
          Dst:             nl_attr_get_u32
    - functionName:    codel_setup_qdisc__
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4206
      functionLinenumberEnd: 4243
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          148
      EdgeCount:       29
      CyclomaticComplexity: 8
      functionsReached:
        - netdev_get_name
        - netdev_linux_tc_make_request
        - nl_msg_end_nested
        - nl_msg_put_string
        - nl_msg_put_u32
        - nl_msg_start_nested
        - ovs_strerror
        - tc_del_qdisc
        - tc_make_handle
        - tc_transact
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:4213,5'
          Dst:             tc_del_qdisc
        - Src:             'lib/netdev-linux.c:4215,13'
          Dst:             netdev_linux_tc_make_request
        - Src:             'lib/netdev-linux.c:4220,25'
          Dst:             tc_make_handle
        - Src:             'lib/netdev-linux.c:4227,5'
          Dst:             nl_msg_put_string
        - Src:             'lib/netdev-linux.c:4228,18'
          Dst:             nl_msg_start_nested
        - Src:             'lib/netdev-linux.c:4229,5'
          Dst:             nl_msg_put_u32
        - Src:             'lib/netdev-linux.c:4230,5'
          Dst:             nl_msg_put_u32
        - Src:             'lib/netdev-linux.c:4231,5'
          Dst:             nl_msg_put_u32
        - Src:             'lib/netdev-linux.c:4232,5'
          Dst:             nl_msg_end_nested
        - Src:             'lib/netdev-linux.c:4234,13'
          Dst:             tc_transact
        - Src:             'lib/netdev-linux.c:4236,9'
          Dst:             netdev_get_name
        - Src:             'lib/netdev-linux.c:4236,9'
          Dst:             ovs_strerror
        - Src:             'lib/netdev-linux.c:4236,9'
          Dst:             vlog_rate_limit
    - functionName:    hfsc_tc_install
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5771
      functionLinenumberEnd: 5791
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          59
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - hfsc_install__
        - hfsc_parse_qdisc_details__
        - hfsc_setup_class__
        - hfsc_setup_qdisc__
        - tc_make_handle
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:5775,13'
          Dst:             hfsc_setup_qdisc__
        - Src:             'lib/netdev-linux.c:5781,5'
          Dst:             hfsc_parse_qdisc_details__
        - Src:             'lib/netdev-linux.c:5782,40'
          Dst:             tc_make_handle
        - Src:             'lib/netdev-linux.c:5783,32'
          Dst:             tc_make_handle
        - Src:             'lib/netdev-linux.c:5782,13'
          Dst:             hfsc_setup_class__
        - Src:             'lib/netdev-linux.c:5789,5'
          Dst:             hfsc_install__
    - functionName:    hfsc_tc_load
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5795
      functionLinenumberEnd: 5818
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          65
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - finish_queue_dump
        - hfsc_install__
        - hfsc_parse_tcmsg__
        - hfsc_query_class__
        - hfsc_update_queue__
        - nl_dump_next
        - start_queue_dump
        - tc_make_handle
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:5801,32'
          Dst:             tc_make_handle
        - Src:             'lib/netdev-linux.c:5801,5'
          Dst:             hfsc_query_class__
        - Src:             'lib/netdev-linux.c:5802,5'
          Dst:             hfsc_install__
        - Src:             'lib/netdev-linux.c:5804,10'
          Dst:             start_queue_dump
        - Src:             'lib/netdev-linux.c:5808,12'
          Dst:             nl_dump_next
        - Src:             'lib/netdev-linux.c:5811,14'
          Dst:             hfsc_parse_tcmsg__
        - Src:             'lib/netdev-linux.c:5812,13'
          Dst:             hfsc_update_queue__
        - Src:             'lib/netdev-linux.c:5816,5'
          Dst:             finish_queue_dump
    - functionName:    hfsc_tc_destroy
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5822
      functionLinenumberEnd: 5835
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          75
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - hmap_first
        - hmap_next
        - hmap_remove
        - tc_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:5828,5'
          Dst:             hmap_first
        - Src:             'lib/netdev-linux.c:5828,5'
          Dst:             hmap_next
        - Src:             'lib/netdev-linux.c:5829,9'
          Dst:             hmap_remove
        - Src:             'lib/netdev-linux.c:5833,5'
          Dst:             tc_destroy
    - functionName:    hfsc_qdisc_get
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5839
      functionLinenumberEnd: 5843
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hfsc_get__
        - smap_add_format
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:5841,12'
          Dst:             hfsc_get__
        - Src:             'lib/netdev-linux.c:5842,5'
          Dst:             smap_add_format
    - functionName:    hfsc_qdisc_set
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5848
      functionLinenumberEnd: 5860
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hfsc_get__
        - hfsc_parse_qdisc_details__
        - hfsc_setup_class__
        - tc_make_handle
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:5852,5'
          Dst:             hfsc_parse_qdisc_details__
        - Src:             'lib/netdev-linux.c:5853,40'
          Dst:             tc_make_handle
        - Src:             'lib/netdev-linux.c:5854,32'
          Dst:             tc_make_handle
        - Src:             'lib/netdev-linux.c:5853,13'
          Dst:             hfsc_setup_class__
        - Src:             'lib/netdev-linux.c:5857,9'
          Dst:             hfsc_get__
    - functionName:    hfsc_class_get
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5866
      functionLinenumberEnd: 5874
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hfsc_class_cast__
        - smap_add_format
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:5869,10'
          Dst:             hfsc_class_cast__
        - Src:             'lib/netdev-linux.c:5870,5'
          Dst:             smap_add_format
        - Src:             'lib/netdev-linux.c:5872,9'
          Dst:             smap_add_format
    - functionName:    hfsc_class_set
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5880
      functionLinenumberEnd: 5897
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          60
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - hfsc_parse_class_details__
        - hfsc_setup_class__
        - hfsc_update_queue__
        - tc_make_handle
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:5884,13'
          Dst:             hfsc_parse_class_details__
        - Src:             'lib/netdev-linux.c:5889,40'
          Dst:             tc_make_handle
        - Src:             'lib/netdev-linux.c:5890,32'
          Dst:             tc_make_handle
        - Src:             'lib/netdev-linux.c:5889,13'
          Dst:             hfsc_setup_class__
        - Src:             'lib/netdev-linux.c:5895,5'
          Dst:             hfsc_update_queue__
    - functionName:    hfsc_class_delete
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5901
      functionLinenumberEnd: 5914
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hfsc_class_cast__
        - hfsc_get__
        - hmap_remove
        - tc_delete_class
        - tc_make_handle
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:5906,12'
          Dst:             hfsc_class_cast__
        - Src:             'lib/netdev-linux.c:5907,12'
          Dst:             hfsc_get__
        - Src:             'lib/netdev-linux.c:5909,37'
          Dst:             tc_make_handle
        - Src:             'lib/netdev-linux.c:5909,13'
          Dst:             tc_delete_class
        - Src:             'lib/netdev-linux.c:5911,9'
          Dst:             hmap_remove
    - functionName:    hfsc_class_get_stats
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5920
      functionLinenumberEnd: 5922
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hfsc_query_class__
        - tc_make_handle
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:5921,39'
          Dst:             tc_make_handle
        - Src:             'lib/netdev-linux.c:5922,30'
          Dst:             tc_make_handle
        - Src:             'lib/netdev-linux.c:5921,12'
          Dst:             hfsc_query_class__
    - functionName:    hfsc_class_dump_stats
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5929
      functionLinenumberEnd: 5945
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          82
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - tc_get_major
        - tc_get_minor
        - tc_parse_class
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:5934,13'
          Dst:             tc_parse_class
        - Src:             'lib/netdev-linux.c:5939,13'
          Dst:             tc_get_major
        - Src:             'lib/netdev-linux.c:5940,13'
          Dst:             tc_get_minor
    - functionName:    tc_parse_class
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6483
      functionLinenumberEnd: 6553
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         47
      ICount:          244
      EdgeCount:       60
      CyclomaticComplexity: 15
      functionsReached:
        - nl_attr_get
        - nl_attr_get_size
        - nl_parse_nested
        - nl_policy_parse
        - ofpbuf_const_initializer
        - ofpbuf_try_pull
        - vlog_rate_limit
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:6484,23'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/netdev-linux.c:6485,30'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/netdev-linux.c:6486,24'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/netdev-linux.c:6494,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/netdev-linux.c:6498,10'
          Dst:             nl_policy_parse
        - Src:             'lib/netdev-linux.c:6499,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/netdev-linux.c:6523,14'
          Dst:             nl_parse_nested
        - Src:             'lib/netdev-linux.c:6525,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/netdev-linux.c:6534,22'
          Dst:             nl_attr_get
        - Src:             'lib/netdev-linux.c:6535,16'
          Dst:             nl_attr_get_size
        - Src:             'lib/netdev-linux.c:6535,16'
          Dst:             nl_attr_get_size
        - Src:             'lib/netdev-linux.c:6539,15'
          Dst:             nl_attr_get
    - functionName:    tc_get_major
      functionSourceFile: '/src/openvswitch/lib/tc.h'
      linkageType:     InternalLinkage
      functionLinenumber: 92
      functionLinenumberEnd: 93
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    11
      BranchProfiles:  []
      Callsites:       []
    - functionName:    tc_get_minor
      functionSourceFile: '/src/openvswitch/lib/tc.h'
      linkageType:     InternalLinkage
      functionLinenumber: 99
      functionLinenumberEnd: 100
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    11
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofpbuf_const_initializer
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 97
      functionLinenumberEnd: 105
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          30
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hfsc_query_class__
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5629
      functionLinenumberEnd: 5641
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hfsc_parse_tcmsg__
        - ofpbuf_delete
        - tc_query_class
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:5633,13'
          Dst:             tc_query_class
        - Src:             'lib/netdev-linux.c:5638,13'
          Dst:             hfsc_parse_tcmsg__
        - Src:             'lib/netdev-linux.c:5639,5'
          Dst:             ofpbuf_delete
    - functionName:    tc_query_class
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6561
      functionLinenumberEnd: 6583
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          92
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - netdev_get_name
        - netdev_linux_tc_make_request
        - ovs_strerror
        - tc_get_major
        - tc_get_minor
        - tc_transact
        - vlog_rate_limit
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:6566,13'
          Dst:             netdev_linux_tc_make_request
        - Src:             'lib/netdev-linux.c:6574,13'
          Dst:             tc_transact
        - Src:             'lib/netdev-linux.c:6576,9'
          Dst:             netdev_get_name
        - Src:             'lib/netdev-linux.c:6576,9'
          Dst:             tc_get_major
        - Src:             'lib/netdev-linux.c:6576,9'
          Dst:             tc_get_minor
        - Src:             'lib/netdev-linux.c:6576,9'
          Dst:             tc_get_major
        - Src:             'lib/netdev-linux.c:6576,9'
          Dst:             tc_get_minor
        - Src:             'lib/netdev-linux.c:6576,9'
          Dst:             ovs_strerror
        - Src:             'lib/netdev-linux.c:6576,9'
          Dst:             vlog_rate_limit
    - functionName:    hfsc_parse_tcmsg__
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5596
      functionLinenumberEnd: 5623
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          106
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - hfsc_parse_tca_options__
        - tc_get_major
        - tc_get_minor
        - tc_parse_class
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:5601,13'
          Dst:             tc_parse_class
        - Src:             'lib/netdev-linux.c:5609,17'
          Dst:             tc_get_major
        - Src:             'lib/netdev-linux.c:5610,17'
          Dst:             tc_get_minor
        - Src:             'lib/netdev-linux.c:5619,17'
          Dst:             hfsc_parse_tca_options__
    - functionName:    hfsc_parse_tca_options__
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5535
      functionLinenumberEnd: 5590
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         43
      ICount:          228
      EdgeCount:       56
      CyclomaticComplexity: 15
      functionsReached:
        - nl_attr_get
        - nl_parse_nested
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:5556,10'
          Dst:             nl_parse_nested
        - Src:             'lib/netdev-linux.c:5558,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/netdev-linux.c:5562,11'
          Dst:             nl_attr_get
        - Src:             'lib/netdev-linux.c:5563,11'
          Dst:             nl_attr_get
        - Src:             'lib/netdev-linux.c:5564,11'
          Dst:             nl_attr_get
        - Src:             'lib/netdev-linux.c:5569,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/netdev-linux.c:5575,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/netdev-linux.c:5581,9'
          Dst:             vlog_rate_limit
    - functionName:    hfsc_class_cast__
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5490
      functionLinenumberEnd: 5491
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hfsc_get__
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5483
      functionLinenumberEnd: 5485
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - netdev_linux_cast
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:5484,35'
          Dst:             netdev_linux_cast
    - functionName:    tc_delete_class
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6588
      functionLinenumberEnd: 6608
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          82
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - netdev_get_name
        - netdev_linux_tc_make_request
        - ovs_strerror
        - tc_get_major
        - tc_get_minor
        - tc_transact
        - vlog_rate_limit
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:6593,13'
          Dst:             netdev_linux_tc_make_request
        - Src:             'lib/netdev-linux.c:6600,13'
          Dst:             tc_transact
        - Src:             'lib/netdev-linux.c:6602,9'
          Dst:             netdev_get_name
        - Src:             'lib/netdev-linux.c:6602,9'
          Dst:             tc_get_major
        - Src:             'lib/netdev-linux.c:6602,9'
          Dst:             tc_get_minor
        - Src:             'lib/netdev-linux.c:6602,9'
          Dst:             ovs_strerror
        - Src:             'lib/netdev-linux.c:6602,9'
          Dst:             vlog_rate_limit
    - functionName:    hmap_remove
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 317
      functionLinenumberEnd: 324
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          48
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hfsc_parse_class_details__
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5666
      functionLinenumberEnd: 5683
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          120
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - hfsc_get__
        - smap_get_ullong
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:5670,18'
          Dst:             hfsc_get__
        - Src:             'lib/netdev-linux.c:5672,16'
          Dst:             smap_get_ullong
        - Src:             'lib/netdev-linux.c:5676,16'
          Dst:             smap_get_ullong
    - functionName:    hfsc_setup_class__
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5724
      functionLinenumberEnd: 5767
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          126
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - netdev_get_name
        - netdev_linux_tc_make_request
        - nl_msg_end_nested
        - nl_msg_put_string
        - nl_msg_put_unspec
        - nl_msg_start_nested
        - ovs_strerror
        - tc_get_major
        - tc_get_minor
        - tc_transact
        - vlog_rate_limit
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:5731,13'
          Dst:             netdev_linux_tc_make_request
        - Src:             'lib/netdev-linux.c:5749,5'
          Dst:             nl_msg_put_string
        - Src:             'lib/netdev-linux.c:5750,18'
          Dst:             nl_msg_start_nested
        - Src:             'lib/netdev-linux.c:5751,5'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/netdev-linux.c:5752,5'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/netdev-linux.c:5753,5'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/netdev-linux.c:5754,5'
          Dst:             nl_msg_end_nested
        - Src:             'lib/netdev-linux.c:5756,13'
          Dst:             tc_transact
        - Src:             'lib/netdev-linux.c:5758,9'
          Dst:             netdev_get_name
        - Src:             'lib/netdev-linux.c:5758,9'
          Dst:             tc_get_major
        - Src:             'lib/netdev-linux.c:5758,9'
          Dst:             tc_get_minor
        - Src:             'lib/netdev-linux.c:5758,9'
          Dst:             tc_get_major
        - Src:             'lib/netdev-linux.c:5758,9'
          Dst:             tc_get_minor
        - Src:             'lib/netdev-linux.c:5758,9'
          Dst:             ovs_strerror
        - Src:             'lib/netdev-linux.c:5758,9'
          Dst:             vlog_rate_limit
    - functionName:    hfsc_update_queue__
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5509
      functionLinenumberEnd: 5531
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          79
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hash_int
        - hfsc_class_cast__
        - hfsc_get__
        - hmap_insert_at
        - tc_find_queue__
        - time_msec
        - xmalloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:5515,12'
          Dst:             hfsc_get__
        - Src:             'lib/netdev-linux.c:5516,12'
          Dst:             hash_int
        - Src:             'lib/netdev-linux.c:5518,13'
          Dst:             tc_find_queue__
        - Src:             'lib/netdev-linux.c:5520,15'
          Dst:             hfsc_class_cast__
        - Src:             'lib/netdev-linux.c:5522,27'
          Dst:             xmalloc
        - Src:             'lib/netdev-linux.c:5525,27'
          Dst:             time_msec
        - Src:             'lib/netdev-linux.c:5526,9'
          Dst:             hmap_insert_at
    - functionName:    hash_int
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 408
      functionLinenumberEnd: 409
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_2words
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:409,12'
          Dst:             hash_2words
    - functionName:    tc_find_queue__
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3276
      functionLinenumberEnd: 3286
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          78
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_first_in_bucket
        - hmap_next_in_bucket
        - netdev_linux_cast
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:3277,35'
          Dst:             netdev_linux_cast
        - Src:             'lib/netdev-linux.c:3280,5'
          Dst:             hmap_first_in_bucket
        - Src:             'lib/netdev-linux.c:3280,5'
          Dst:             hmap_next_in_bucket
    - functionName:    hmap_insert_at
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 306
      functionLinenumberEnd: 311
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_expand_at
        - hmap_insert_fast
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:307,5'
          Dst:             hmap_insert_fast
        - Src:             './include/openvswitch/hmap.h:309,9'
          Dst:             hmap_expand_at
    - functionName:    hmap_insert_fast
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 289
      functionLinenumberEnd: 295
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          38
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_first_in_bucket
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 367
      functionLinenumberEnd: 368
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_next_in_bucket
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 381
      functionLinenumberEnd: 382
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_2words
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 153
      functionLinenumberEnd: 154
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_add
        - hash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:154,33'
          Dst:             hash_add
        - Src:             'lib/hash.h:154,24'
          Dst:             hash_add
        - Src:             'lib/hash.h:154,12'
          Dst:             hash_finish
    - functionName:    hash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 108
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_add
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:109,12'
          Dst:             mhash_add
    - functionName:    hash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:119,12'
          Dst:             mhash_finish
    - functionName:    mhash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_rot
        - mhash_add__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:78,12'
          Dst:             mhash_add__
        - Src:             'lib/hash.h:79,12'
          Dst:             hash_rot
    - functionName:    mhash_add__
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hash_rot
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:71,12'
          Dst:             hash_rot
    - functionName:    hash_rot
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 32
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hfsc_parse_qdisc_details__
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5646
      functionLinenumberEnd: 5660
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          64
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - netdev_linux_cast
        - netdev_linux_get_speed_locked
        - smap_get_ullong
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:5647,25'
          Dst:             smap_get_ullong
        - Src:             'lib/netdev-linux.c:5652,39'
          Dst:             netdev_linux_cast
        - Src:             'lib/netdev-linux.c:5652,9'
          Dst:             netdev_linux_get_speed_locked
    - functionName:    netdev_linux_get_speed_locked
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2858
      functionLinenumberEnd: 2874
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          98
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - netdev_features_to_bps
        - netdev_linux_netnsid_is_remote
        - netdev_linux_read_features
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:2859,9'
          Dst:             netdev_linux_netnsid_is_remote
        - Src:             'lib/netdev-linux.c:2864,5'
          Dst:             netdev_linux_read_features
        - Src:             'lib/netdev-linux.c:2868,16'
          Dst:             netdev_features_to_bps
        - Src:             'lib/netdev-linux.c:2868,16'
          Dst:             netdev_features_to_bps
    - functionName:    netdev_linux_read_features
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2669
      functionLinenumberEnd: 2820
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         157
      ICount:          951
      EdgeCount:       211
      CyclomaticComplexity: 56
      functionsReached:
        - netdev_get_ethtool_add
        - netdev_linux_do_ethtool
        - rpl_ethtool_cmd_speed
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:2677,5'
          Dst:             netdev_get_ethtool_add
        - Src:             'lib/netdev-linux.c:2679,13'
          Dst:             netdev_linux_do_ethtool
        - Src:             'lib/netdev-linux.c:2784,29'
          Dst:             rpl_ethtool_cmd_speed
    - functionName:    rpl_ethtool_cmd_speed
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 162
      functionLinenumberEnd: 163
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hfsc_install__
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5496
      functionLinenumberEnd: 5504
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - netdev_linux_cast
        - tc_init
        - xmalloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:5497,35'
          Dst:             netdev_linux_cast
        - Src:             'lib/netdev-linux.c:5500,12'
          Dst:             xmalloc
        - Src:             'lib/netdev-linux.c:5501,5'
          Dst:             tc_init
    - functionName:    hfsc_setup_qdisc__
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5691
      functionLinenumberEnd: 5715
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - netdev_linux_tc_make_request
        - nl_msg_put_string
        - nl_msg_put_unspec
        - tc_del_qdisc
        - tc_make_handle
        - tc_transact
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:5696,5'
          Dst:             tc_del_qdisc
        - Src:             'lib/netdev-linux.c:5698,13'
          Dst:             netdev_linux_tc_make_request
        - Src:             'lib/netdev-linux.c:5705,25'
          Dst:             tc_make_handle
        - Src:             'lib/netdev-linux.c:5711,5'
          Dst:             nl_msg_put_string
        - Src:             'lib/netdev-linux.c:5712,5'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/netdev-linux.c:5714,12'
          Dst:             tc_transact
    - functionName:    htb_tc_install
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5253
      functionLinenumberEnd: 5267
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          54
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - htb_install__
        - htb_parse_qdisc_details__
        - htb_setup_class__
        - htb_setup_qdisc__
        - tc_make_handle
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:5256,13'
          Dst:             htb_setup_qdisc__
        - Src:             'lib/netdev-linux.c:5260,9'
          Dst:             htb_parse_qdisc_details__
        - Src:             'lib/netdev-linux.c:5261,43'
          Dst:             tc_make_handle
        - Src:             'lib/netdev-linux.c:5262,35'
          Dst:             tc_make_handle
        - Src:             'lib/netdev-linux.c:5261,17'
          Dst:             htb_setup_class__
        - Src:             'lib/netdev-linux.c:5264,13'
          Dst:             htb_install__
    - functionName:    htb_tc_load
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5304
      functionLinenumberEnd: 5328
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          65
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - finish_queue_dump
        - htb_install__
        - htb_parse_tcmsg__
        - htb_query_class__
        - htb_update_queue__
        - nl_dump_next
        - start_queue_dump
        - tc_make_handle
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:5311,31'
          Dst:             tc_make_handle
        - Src:             'lib/netdev-linux.c:5311,5'
          Dst:             htb_query_class__
        - Src:             'lib/netdev-linux.c:5312,5'
          Dst:             htb_install__
        - Src:             'lib/netdev-linux.c:5315,10'
          Dst:             start_queue_dump
        - Src:             'lib/netdev-linux.c:5318,12'
          Dst:             nl_dump_next
        - Src:             'lib/netdev-linux.c:5321,14'
          Dst:             htb_parse_tcmsg__
        - Src:             'lib/netdev-linux.c:5322,13'
          Dst:             htb_update_queue__
        - Src:             'lib/netdev-linux.c:5325,5'
          Dst:             finish_queue_dump
    - functionName:    htb_tc_destroy
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5332
      functionLinenumberEnd: 5341
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          58
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - hmap_pop_helper__
        - tc_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:5336,5'
          Dst:             hmap_pop_helper__
        - Src:             'lib/netdev-linux.c:5339,5'
          Dst:             tc_destroy
    - functionName:    htb_qdisc_get
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5345
      functionLinenumberEnd: 5348
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htb_get__
        - smap_add_format
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:5346,29'
          Dst:             htb_get__
        - Src:             'lib/netdev-linux.c:5347,5'
          Dst:             smap_add_format
    - functionName:    htb_qdisc_set
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5353
      functionLinenumberEnd: 5363
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htb_get__
        - htb_parse_qdisc_details__
        - htb_setup_class__
        - tc_make_handle
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:5357,5'
          Dst:             htb_parse_qdisc_details__
        - Src:             'lib/netdev-linux.c:5358,39'
          Dst:             tc_make_handle
        - Src:             'lib/netdev-linux.c:5359,31'
          Dst:             tc_make_handle
        - Src:             'lib/netdev-linux.c:5358,13'
          Dst:             htb_setup_class__
        - Src:             'lib/netdev-linux.c:5361,9'
          Dst:             htb_get__
    - functionName:    htb_class_get
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5369
      functionLinenumberEnd: 5380
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          76
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - htb_class_cast__
        - smap_add_format
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:5370,34'
          Dst:             htb_class_cast__
        - Src:             'lib/netdev-linux.c:5372,5'
          Dst:             smap_add_format
        - Src:             'lib/netdev-linux.c:5374,9'
          Dst:             smap_add_format
        - Src:             'lib/netdev-linux.c:5376,5'
          Dst:             smap_add_format
        - Src:             'lib/netdev-linux.c:5378,9'
          Dst:             smap_add_format
    - functionName:    htb_class_set
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5386
      functionLinenumberEnd: 5403
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          60
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - htb_parse_class_details__
        - htb_setup_class__
        - htb_update_queue__
        - tc_make_handle
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:5390,13'
          Dst:             htb_parse_class_details__
        - Src:             'lib/netdev-linux.c:5395,39'
          Dst:             tc_make_handle
        - Src:             'lib/netdev-linux.c:5396,31'
          Dst:             tc_make_handle
        - Src:             'lib/netdev-linux.c:5395,13'
          Dst:             htb_setup_class__
        - Src:             'lib/netdev-linux.c:5401,5'
          Dst:             htb_update_queue__
    - functionName:    htb_class_delete
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5407
      functionLinenumberEnd: 5417
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_remove
        - htb_class_cast__
        - htb_get__
        - tc_delete_class
        - tc_make_handle
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:5408,28'
          Dst:             htb_class_cast__
        - Src:             'lib/netdev-linux.c:5409,23'
          Dst:             htb_get__
        - Src:             'lib/netdev-linux.c:5412,37'
          Dst:             tc_make_handle
        - Src:             'lib/netdev-linux.c:5412,13'
          Dst:             tc_delete_class
        - Src:             'lib/netdev-linux.c:5414,9'
          Dst:             hmap_remove
    - functionName:    htb_class_get_stats
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5423
      functionLinenumberEnd: 5425
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htb_query_class__
        - tc_make_handle
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:5424,38'
          Dst:             tc_make_handle
        - Src:             'lib/netdev-linux.c:5425,30'
          Dst:             tc_make_handle
        - Src:             'lib/netdev-linux.c:5424,12'
          Dst:             htb_query_class__
    - functionName:    htb_class_dump_stats
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5432
      functionLinenumberEnd: 5448
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          82
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - tc_get_major
        - tc_get_minor
        - tc_parse_class
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:5437,13'
          Dst:             tc_parse_class
        - Src:             'lib/netdev-linux.c:5442,13'
          Dst:             tc_get_major
        - Src:             'lib/netdev-linux.c:5443,13'
          Dst:             tc_get_minor
    - functionName:    htb_query_class__
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5239
      functionLinenumberEnd: 5248
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          48
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htb_parse_tcmsg__
        - ofpbuf_delete
        - tc_query_class
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:5243,13'
          Dst:             tc_query_class
        - Src:             'lib/netdev-linux.c:5245,17'
          Dst:             htb_parse_tcmsg__
        - Src:             'lib/netdev-linux.c:5246,9'
          Dst:             ofpbuf_delete
    - functionName:    htb_parse_tcmsg__
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5150
      functionLinenumberEnd: 5168
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          108
      EdgeCount:       28
      CyclomaticComplexity: 9
      functionsReached:
        - htb_parse_tca_options__
        - tc_get_major
        - tc_get_minor
        - tc_parse_class
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:5155,13'
          Dst:             tc_parse_class
        - Src:             'lib/netdev-linux.c:5157,30'
          Dst:             tc_get_major
        - Src:             'lib/netdev-linux.c:5158,30'
          Dst:             tc_get_minor
        - Src:             'lib/netdev-linux.c:5166,17'
          Dst:             htb_parse_tca_options__
    - functionName:    htb_parse_tca_options__
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5111
      functionLinenumberEnd: 5144
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          121
      EdgeCount:       21
      CyclomaticComplexity: 6
      functionsReached:
        - nl_attr_get
        - nl_attr_get_u64
        - nl_parse_nested
        - tc_ticks_to_bytes
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:5124,10'
          Dst:             nl_parse_nested
        - Src:             'lib/netdev-linux.c:5126,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/netdev-linux.c:5130,11'
          Dst:             nl_attr_get
        - Src:             'lib/netdev-linux.c:5135,27'
          Dst:             nl_attr_get_u64
        - Src:             'lib/netdev-linux.c:5138,27'
          Dst:             nl_attr_get_u64
        - Src:             'lib/netdev-linux.c:5141,20'
          Dst:             tc_ticks_to_bytes
    - functionName:    tc_ticks_to_bytes
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6400
      functionLinenumberEnd: 6402
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - read_psched
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:6401,5'
          Dst:             read_psched
    - functionName:    htb_class_cast__
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5272
      functionLinenumberEnd: 5273
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    htb_get__
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4981
      functionLinenumberEnd: 4983
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - netdev_linux_cast
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:4982,35'
          Dst:             netdev_linux_cast
    - functionName:    htb_parse_class_details__
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5193
      functionLinenumberEnd: 5233
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          237
      EdgeCount:       37
      CyclomaticComplexity: 10
      functionsReached:
        - htb_get__
        - netdev_get_name
        - netdev_linux_cast
        - netdev_linux_get_mtu__
        - smap_get_ullong
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:5194,29'
          Dst:             htb_get__
        - Src:             'lib/netdev-linux.c:5198,36'
          Dst:             netdev_linux_cast
        - Src:             'lib/netdev-linux.c:5198,13'
          Dst:             netdev_linux_get_mtu__
        - Src:             'lib/netdev-linux.c:5200,9'
          Dst:             netdev_get_name
        - Src:             'lib/netdev-linux.c:5200,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/netdev-linux.c:5207,20'
          Dst:             smap_get_ullong
        - Src:             'lib/netdev-linux.c:5212,20'
          Dst:             smap_get_ullong
        - Src:             'lib/netdev-linux.c:5226,17'
          Dst:             smap_get_ullong
        - Src:             'lib/netdev-linux.c:5230,20'
          Dst:             smap_get_ullong
    - functionName:    htb_setup_class__
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5039
      functionLinenumberEnd: 5103
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          253
      EdgeCount:       38
      CyclomaticComplexity: 10
      functionsReached:
        - netdev_get_name
        - netdev_linux_cast
        - netdev_linux_get_mtu__
        - netdev_linux_tc_make_request
        - nl_msg_end_nested
        - nl_msg_put_string
        - nl_msg_put_u64
        - nl_msg_put_unspec
        - nl_msg_start_nested
        - ovs_strerror
        - tc_calc_buffer
        - tc_fill_rate
        - tc_get_major
        - tc_get_minor
        - tc_put_rtab
        - tc_transact
        - vlog_rate_limit
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:5047,36'
          Dst:             netdev_linux_cast
        - Src:             'lib/netdev-linux.c:5047,13'
          Dst:             netdev_linux_get_mtu__
        - Src:             'lib/netdev-linux.c:5049,9'
          Dst:             netdev_get_name
        - Src:             'lib/netdev-linux.c:5049,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/netdev-linux.c:5055,5'
          Dst:             tc_fill_rate
        - Src:             'lib/netdev-linux.c:5056,5'
          Dst:             tc_fill_rate
        - Src:             'lib/netdev-linux.c:5062,18'
          Dst:             tc_calc_buffer
        - Src:             'lib/netdev-linux.c:5063,19'
          Dst:             tc_calc_buffer
        - Src:             'lib/netdev-linux.c:5066,13'
          Dst:             netdev_linux_tc_make_request
        - Src:             'lib/netdev-linux.c:5074,5'
          Dst:             nl_msg_put_string
        - Src:             'lib/netdev-linux.c:5075,18'
          Dst:             nl_msg_start_nested
        - Src:             'lib/netdev-linux.c:5079,9'
          Dst:             nl_msg_put_u64
        - Src:             'lib/netdev-linux.c:5082,9'
          Dst:             nl_msg_put_u64
        - Src:             'lib/netdev-linux.c:5085,5'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/netdev-linux.c:5087,5'
          Dst:             tc_put_rtab
        - Src:             'lib/netdev-linux.c:5088,5'
          Dst:             tc_put_rtab
        - Src:             'lib/netdev-linux.c:5089,5'
          Dst:             nl_msg_end_nested
        - Src:             'lib/netdev-linux.c:5091,13'
          Dst:             tc_transact
        - Src:             'lib/netdev-linux.c:5093,9'
          Dst:             netdev_get_name
        - Src:             'lib/netdev-linux.c:5093,9'
          Dst:             tc_get_major
        - Src:             'lib/netdev-linux.c:5093,9'
          Dst:             tc_get_minor
        - Src:             'lib/netdev-linux.c:5093,9'
          Dst:             tc_get_major
        - Src:             'lib/netdev-linux.c:5093,9'
          Dst:             tc_get_minor
        - Src:             'lib/netdev-linux.c:5093,9'
          Dst:             ovs_strerror
        - Src:             'lib/netdev-linux.c:5093,9'
          Dst:             vlog_rate_limit
    - functionName:    htb_update_queue__
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5279
      functionLinenumberEnd: 5300
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          91
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hash_int
        - hmap_insert_at
        - htb_class_cast__
        - htb_get__
        - tc_find_queue__
        - time_msec
        - xmalloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:5280,23'
          Dst:             htb_get__
        - Src:             'lib/netdev-linux.c:5281,19'
          Dst:             hash_int
        - Src:             'lib/netdev-linux.c:5285,13'
          Dst:             tc_find_queue__
        - Src:             'lib/netdev-linux.c:5287,15'
          Dst:             htb_class_cast__
        - Src:             'lib/netdev-linux.c:5289,15'
          Dst:             xmalloc
        - Src:             'lib/netdev-linux.c:5292,26'
          Dst:             time_msec
        - Src:             'lib/netdev-linux.c:5293,9'
          Dst:             hmap_insert_at
    - functionName:    tc_calc_buffer
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6805
      functionLinenumberEnd: 6807
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - size_t
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - tc_buffer_per_jiffy
        - tc_bytes_to_ticks
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:6806,30'
          Dst:             tc_buffer_per_jiffy
        - Src:             'lib/netdev-linux.c:6807,12'
          Dst:             tc_bytes_to_ticks
    - functionName:    tc_put_rtab
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6785
      functionLinenumberEnd: 6797
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - short
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          98
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - nl_msg_put_unspec_uninit
        - tc_bytes_to_ticks
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:6789,12'
          Dst:             nl_msg_put_unspec_uninit
        - Src:             'lib/netdev-linux.c:6795,19'
          Dst:             tc_bytes_to_ticks
    - functionName:    tc_buffer_per_jiffy
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6418
      functionLinenumberEnd: 6420
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - read_psched
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:6419,5'
          Dst:             read_psched
    - functionName:    htb_parse_qdisc_details__
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5174
      functionLinenumberEnd: 5188
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          71
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - netdev_linux_cast
        - netdev_linux_get_speed_locked
        - smap_get_ullong
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:5175,20'
          Dst:             smap_get_ullong
        - Src:             'lib/netdev-linux.c:5180,39'
          Dst:             netdev_linux_cast
        - Src:             'lib/netdev-linux.c:5180,9'
          Dst:             netdev_linux_get_speed_locked
    - functionName:    hmap_pop_helper__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 226
      functionLinenumberEnd: 238
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          66
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - hmap_remove
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:232,13'
          Dst:             hmap_remove
    - functionName:    htb_install__
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4988
      functionLinenumberEnd: 4997
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - netdev_linux_cast
        - tc_init
        - xmalloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:4989,35'
          Dst:             netdev_linux_cast
        - Src:             'lib/netdev-linux.c:4992,11'
          Dst:             xmalloc
        - Src:             'lib/netdev-linux.c:4993,5'
          Dst:             tc_init
    - functionName:    htb_setup_qdisc__
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5004
      functionLinenumberEnd: 5032
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          58
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - netdev_linux_tc_make_request
        - nl_msg_end_nested
        - nl_msg_put_string
        - nl_msg_put_unspec
        - nl_msg_start_nested
        - tc_del_qdisc
        - tc_make_handle
        - tc_transact
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:5010,5'
          Dst:             tc_del_qdisc
        - Src:             'lib/netdev-linux.c:5012,13'
          Dst:             netdev_linux_tc_make_request
        - Src:             'lib/netdev-linux.c:5017,25'
          Dst:             tc_make_handle
        - Src:             'lib/netdev-linux.c:5020,5'
          Dst:             nl_msg_put_string
        - Src:             'lib/netdev-linux.c:5027,18'
          Dst:             nl_msg_start_nested
        - Src:             'lib/netdev-linux.c:5028,5'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/netdev-linux.c:5029,5'
          Dst:             nl_msg_end_nested
        - Src:             'lib/netdev-linux.c:5031,12'
          Dst:             tc_transact
    - functionName:    other_tc_load
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6038
      functionLinenumberEnd: 6045
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - netdev_linux_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:6039,35'
          Dst:             netdev_linux_cast
    - functionName:    tc_find_queue
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3290
      functionLinenumberEnd: 3291
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_int
        - tc_find_queue__
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:3291,46'
          Dst:             hash_int
        - Src:             'lib/netdev-linux.c:3291,12'
          Dst:             tc_find_queue__
    - functionName:    hmap_count
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 263
      functionLinenumberEnd: 264
      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:    tc_lookup_ovs_name
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3247
      functionLinenumberEnd: 3257
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          53
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - strcmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:3252,14'
          Dst:             strcmp
    - functionName:    netdev_set_policing_add
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 86
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_netdev_set_policing_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:86,1'
          Dst:             counter_netdev_set_policing_get
    - functionName:    tc_del_matchall_policer
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3105
      functionLinenumberEnd: 3124
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          59
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - get_ifindex
        - tc_del_filter
        - tc_make_tcf_id
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:3112,11'
          Dst:             get_ifindex
        - Src:             'lib/netdev-linux.c:3117,10'
          Dst:             tc_make_tcf_id
        - Src:             'lib/netdev-linux.c:3118,11'
          Dst:             tc_del_filter
    - functionName:    tc_add_matchall_policer
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3055
      functionLinenumberEnd: 3101
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          161
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - get_ifindex
        - htons
        - nl_msg_end_nested
        - nl_msg_put_act_police
        - nl_msg_put_string
        - nl_msg_start_nested
        - ofpbuf_const_initializer
        - ofpbuf_delete
        - ofpbuf_try_pull
        - tc_make_handle
        - tc_make_request
        - tc_transact
        - vlog_rate_limit
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:3056,46'
          Dst:             htons
        - Src:             'lib/netdev-linux.c:3065,11'
          Dst:             get_ifindex
        - Src:             'lib/netdev-linux.c:3070,13'
          Dst:             tc_make_request
        - Src:             'lib/netdev-linux.c:3073,23'
          Dst:             tc_make_handle
        - Src:             'lib/netdev-linux.c:3076,5'
          Dst:             nl_msg_put_string
        - Src:             'lib/netdev-linux.c:3077,20'
          Dst:             nl_msg_start_nested
        - Src:             'lib/netdev-linux.c:3078,21'
          Dst:             nl_msg_start_nested
        - Src:             'lib/netdev-linux.c:3079,5'
          Dst:             nl_msg_put_act_police
        - Src:             'lib/netdev-linux.c:3082,5'
          Dst:             nl_msg_end_nested
        - Src:             'lib/netdev-linux.c:3083,5'
          Dst:             nl_msg_end_nested
        - Src:             'lib/netdev-linux.c:3085,11'
          Dst:             tc_transact
        - Src:             'lib/netdev-linux.c:3087,27'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/netdev-linux.c:3088,34'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/netdev-linux.c:3089,28'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/netdev-linux.c:3092,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/netdev-linux.c:3094,13'
          Dst:             ofpbuf_delete
        - Src:             'lib/netdev-linux.c:3097,9'
          Dst:             ofpbuf_delete
    - functionName:    tc_add_policer
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6132
      functionLinenumberEnd: 6162
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          85
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - htons
        - netdev_linux_tc_make_request
        - nl_msg_end_nested
        - nl_msg_put_act_police
        - nl_msg_put_string
        - nl_msg_start_nested
        - tc_make_handle
        - tc_transact
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:6138,13'
          Dst:             netdev_linux_tc_make_request
        - Src:             'lib/netdev-linux.c:6143,25'
          Dst:             tc_make_handle
        - Src:             'lib/netdev-linux.c:6145,59'
          Dst:             htons
        - Src:             'lib/netdev-linux.c:6144,23'
          Dst:             tc_make_handle
        - Src:             'lib/netdev-linux.c:6146,5'
          Dst:             nl_msg_put_string
        - Src:             'lib/netdev-linux.c:6148,20'
          Dst:             nl_msg_start_nested
        - Src:             'lib/netdev-linux.c:6149,21'
          Dst:             nl_msg_start_nested
        - Src:             'lib/netdev-linux.c:6150,5'
          Dst:             nl_msg_put_act_police
        - Src:             'lib/netdev-linux.c:6153,5'
          Dst:             nl_msg_end_nested
        - Src:             'lib/netdev-linux.c:6154,5'
          Dst:             nl_msg_end_nested
        - Src:             'lib/netdev-linux.c:6156,13'
          Dst:             tc_transact
    - functionName:    nl_msg_put_act_police
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3016
      functionLinenumberEnd: 3049
      functionDepth:   0
      returnType:      void
      argCount:        8
      argTypes:
        - 'N/A'
        - int
        - size_t
        - size_t
        - size_t
        - size_t
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          122
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - nl_msg_act_police_end_nest
        - nl_msg_act_police_start_nest
        - nl_msg_put_u64
        - nl_msg_put_unspec
        - tc_bytes_to_ticks
        - tc_policer_init
        - tc_put_rtab
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:3026,5'
          Dst:             tc_policer_init
        - Src:             'lib/netdev-linux.c:3029,5'
          Dst:             nl_msg_act_police_start_nest
        - Src:             'lib/netdev-linux.c:3032,9'
          Dst:             tc_put_rtab
        - Src:             'lib/netdev-linux.c:3043,27'
          Dst:             tc_bytes_to_ticks
        - Src:             'lib/netdev-linux.c:3044,9'
          Dst:             nl_msg_put_u64
        - Src:             'lib/netdev-linux.c:3045,9'
          Dst:             nl_msg_put_u64
        - Src:             'lib/netdev-linux.c:3047,5'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/netdev-linux.c:3048,5'
          Dst:             nl_msg_act_police_end_nest
    - functionName:    tc_make_tcf_id
      functionSourceFile: '/src/openvswitch/lib/tc.h'
      linkageType:     InternalLinkage
      functionLinenumber: 343
      functionLinenumberEnd: 351
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - short
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          30
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_set_ethtool_add
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 92
      functionLinenumberEnd: 92
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_netdev_set_ethtool_get
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:92,1'
          Dst:             counter_netdev_set_ethtool_get
    - functionName:    atomic_count_inc
      functionSourceFile: '/src/openvswitch/lib/ovs-atomic.h'
      linkageType:     InternalLinkage
      functionLinenumber: 451
      functionLinenumberEnd: 456
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    atomic_count_dec
      functionSourceFile: '/src/openvswitch/lib/ovs-atomic.h'
      linkageType:     InternalLinkage
      functionLinenumber: 461
      functionLinenumberEnd: 466
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    timer_set_expired
      functionSourceFile: '/src/openvswitch/lib/timer.h'
      linkageType:     InternalLinkage
      functionLinenumber: 56
      functionLinenumberEnd: 58
      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:    get_etheraddr
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7134
      functionLinenumberEnd: 7161
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         23
      ICount:          127
      EdgeCount:       29
      CyclomaticComplexity: 8
      functionsReached:
        - af_inet_ioctl
        - netdev_get_hwaddr_add
        - ovs_strerror
        - ovs_strzcpy
        - vlog
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:7140,5'
          Dst:             ovs_strzcpy
        - Src:             'lib/netdev-linux.c:7141,5'
          Dst:             netdev_get_hwaddr_add
        - Src:             'lib/netdev-linux.c:7142,13'
          Dst:             af_inet_ioctl
        - Src:             'lib/netdev-linux.c:7147,9'
          Dst:             ovs_strerror
        - Src:             'lib/netdev-linux.c:7147,9'
          Dst:             vlog
        - Src:             'lib/netdev-linux.c:7155,9'
          Dst:             vlog
    - functionName:    netdev_get_hwaddr_add
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 89
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_netdev_get_hwaddr_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:89,1'
          Dst:             counter_netdev_get_hwaddr_get
    - functionName:    set_etheraddr
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7165
      functionLinenumberEnd: 7179
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          69
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - af_inet_ioctl
        - netdev_set_hwaddr_add
        - ovs_strerror
        - ovs_strzcpy
        - vlog
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:7170,5'
          Dst:             ovs_strzcpy
        - Src:             'lib/netdev-linux.c:7173,5'
          Dst:             netdev_set_hwaddr_add
        - Src:             'lib/netdev-linux.c:7174,13'
          Dst:             af_inet_ioctl
        - Src:             'lib/netdev-linux.c:7176,9'
          Dst:             ovs_strerror
        - Src:             'lib/netdev-linux.c:7176,9'
          Dst:             vlog
    - functionName:    netdev_set_hwaddr_add
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 90
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_netdev_set_hwaddr_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:90,1'
          Dst:             counter_netdev_set_hwaddr_get
    - functionName:    af_packet_sock
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7210
      functionLinenumberEnd: 7241
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         28
      ICount:          129
      EdgeCount:       35
      CyclomaticComplexity: 9
      functionsReached:
        - __errno_location
        - close
        - ovs_strerror
        - ovsthread_once_done
        - ovsthread_once_start
        - set_nonblocking
        - setsockopt
        - socket
        - userspace_tso_enabled
        - vlog
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:7214,9'
          Dst:             ovsthread_once_start
        - Src:             'lib/netdev-linux.c:7215,16'
          Dst:             socket
        - Src:             'lib/netdev-linux.c:7217,25'
          Dst:             set_nonblocking
        - Src:             'lib/netdev-linux.c:7219,17'
          Dst:             close
        - Src:             'lib/netdev-linux.c:7221,24'
          Dst:             userspace_tso_enabled
        - Src:             'lib/netdev-linux.c:7223,25'
          Dst:             setsockopt
        - Src:             'lib/netdev-linux.c:7226,29'
          Dst:             __errno_location
        - Src:             'lib/netdev-linux.c:7227,21'
          Dst:             __errno_location
        - Src:             'lib/netdev-linux.c:7227,21'
          Dst:             ovs_strerror
        - Src:             'lib/netdev-linux.c:7227,21'
          Dst:             vlog
        - Src:             'lib/netdev-linux.c:7229,21'
          Dst:             close
        - Src:             'lib/netdev-linux.c:7234,21'
          Dst:             __errno_location
        - Src:             'lib/netdev-linux.c:7235,13'
          Dst:             __errno_location
        - Src:             'lib/netdev-linux.c:7235,13'
          Dst:             ovs_strerror
        - Src:             'lib/netdev-linux.c:7235,13'
          Dst:             vlog
        - Src:             'lib/netdev-linux.c:7238,9'
          Dst:             ovsthread_once_done
    - functionName:    netdev_linux_sock_batch_send
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1721
      functionLinenumberEnd: 1771
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - int
        - bool
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         33
      ICount:          268
      EdgeCount:       42
      CyclomaticComplexity: 11
      functionsReached:
        - __errno_location
        - dp_packet_batch_size
        - dp_packet_data
        - dp_packet_size
        - netdev_get_name
        - netdev_linux_cast
        - netdev_linux_prepend_vnet_hdr
        - ovs_strerror
        - vlog_rate_limit
        - wrap_sendmmsg
        - xmalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:1722,35'
          Dst:             netdev_linux_cast
        - Src:             'lib/netdev-linux.c:1723,25'
          Dst:             dp_packet_batch_size
        - Src:             'lib/netdev-linux.c:1729,28'
          Dst:             xmalloc
        - Src:             'lib/netdev-linux.c:1730,25'
          Dst:             xmalloc
        - Src:             'lib/netdev-linux.c:1734,5'
          Dst:             dp_packet_batch_size
        - Src:             'lib/netdev-linux.c:1736,23'
          Dst:             netdev_linux_prepend_vnet_hdr
        - Src:             'lib/netdev-linux.c:1740,17'
          Dst:             netdev_get_name
        - Src:             'lib/netdev-linux.c:1740,17'
          Dst:             ovs_strerror
        - Src:             'lib/netdev-linux.c:1740,17'
          Dst:             vlog_rate_limit
        - Src:             'lib/netdev-linux.c:1747,29'
          Dst:             dp_packet_data
        - Src:             'lib/netdev-linux.c:1748,28'
          Dst:             dp_packet_size
        - Src:             'lib/netdev-linux.c:1760,22'
          Dst:             wrap_sendmmsg
        - Src:             'lib/netdev-linux.c:1761,34'
          Dst:             __errno_location
    - functionName:    netdev_linux_tap_batch_send
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1782
      functionLinenumberEnd: 1833
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         45
      ICount:          246
      EdgeCount:       58
      CyclomaticComplexity: 15
      functionsReached:
        - __errno_location
        - dp_packet_batch_size
        - dp_packet_data
        - dp_packet_size
        - netdev_get_name
        - netdev_linux_cast
        - netdev_linux_prepend_vnet_hdr
        - ovs_strerror
        - vlog_rate_limit
        - write
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:1783,35'
          Dst:             netdev_linux_cast
        - Src:             'lib/netdev-linux.c:1792,31'
          Dst:             dp_packet_batch_size
        - Src:             'lib/netdev-linux.c:1796,5'
          Dst:             dp_packet_batch_size
        - Src:             'lib/netdev-linux.c:1802,21'
          Dst:             netdev_linux_prepend_vnet_hdr
        - Src:             'lib/netdev-linux.c:1805,17'
          Dst:             netdev_get_name
        - Src:             'lib/netdev-linux.c:1805,17'
          Dst:             ovs_strerror
        - Src:             'lib/netdev-linux.c:1805,17'
          Dst:             vlog_rate_limit
        - Src:             'lib/netdev-linux.c:1812,16'
          Dst:             dp_packet_size
        - Src:             'lib/netdev-linux.c:1814,44'
          Dst:             dp_packet_data
        - Src:             'lib/netdev-linux.c:1814,22'
          Dst:             write
        - Src:             'lib/netdev-linux.c:1815,34'
          Dst:             __errno_location
        - Src:             'lib/netdev-linux.c:1826,13'
          Dst:             netdev_get_name
        - Src:             'lib/netdev-linux.c:1826,13'
          Dst:             vlog_rate_limit
    - functionName:    dp_packet_delete_batch
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1008
      functionLinenumberEnd: 1017
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          65
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - dp_packet_batch_reset
        - dp_packet_batch_size
        - dp_packet_delete
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:1012,9'
          Dst:             dp_packet_batch_size
        - Src:             'lib/dp-packet.h:1013,13'
          Dst:             dp_packet_delete
        - Src:             'lib/dp-packet.h:1015,9'
          Dst:             dp_packet_batch_reset
    - functionName:    dp_packet_batch_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 910
      functionLinenumberEnd: 911
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_linux_prepend_vnet_hdr
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7333
      functionLinenumberEnd: 7479
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         72
      ICount:          531
      EdgeCount:       93
      CyclomaticComplexity: 23
      functionsReached:
        - csum_finish
        - dp_packet_data
        - dp_packet_eth
        - dp_packet_get_tso_segsz
        - dp_packet_inner_l3
        - dp_packet_inner_l4
        - dp_packet_inner_l4_checksum_good
        - dp_packet_inner_l4_checksum_partial
        - dp_packet_inner_l4_proto_sctp
        - dp_packet_inner_l4_proto_tcp
        - dp_packet_inner_l4_proto_udp
        - dp_packet_l3
        - dp_packet_l4
        - dp_packet_l4_checksum_good
        - dp_packet_l4_checksum_partial
        - dp_packet_l4_proto_sctp
        - dp_packet_l4_proto_tcp
        - dp_packet_l4_proto_udp
        - dp_packet_push
        - dp_packet_tunnel
        - ntohs
        - packet_csum_pseudoheader
        - packet_csum_pseudoheader6
        - vlog_rate_limit
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:7337,9'
          Dst:             dp_packet_get_tso_segsz
        - Src:             'lib/netdev-linux.c:7338,30'
          Dst:             dp_packet_get_tso_segsz
        - Src:             'lib/netdev-linux.c:7341,13'
          Dst:             dp_packet_inner_l4
        - Src:             'lib/netdev-linux.c:7342,19'
          Dst:             dp_packet_inner_l4
        - Src:             'lib/netdev-linux.c:7343,18'
          Dst:             dp_packet_inner_l3
        - Src:             'lib/netdev-linux.c:7345,19'
          Dst:             dp_packet_l4
        - Src:             'lib/netdev-linux.c:7346,18'
          Dst:             dp_packet_l3
        - Src:             'lib/netdev-linux.c:7348,27'
          Dst:             ntohs
        - Src:             'lib/netdev-linux.c:7349,48'
          Dst:             dp_packet_eth
        - Src:             'lib/netdev-linux.c:7354,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/netdev-linux.c:7367,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/netdev-linux.c:7377,9'
          Dst:             dp_packet_l4_checksum_good
        - Src:             'lib/netdev-linux.c:7378,14'
          Dst:             dp_packet_tunnel
        - Src:             'lib/netdev-linux.c:7379,16'
          Dst:             dp_packet_inner_l4_checksum_good
        - Src:             'lib/netdev-linux.c:7383,16'
          Dst:             dp_packet_l4_checksum_partial
        - Src:             'lib/netdev-linux.c:7384,19'
          Dst:             dp_packet_inner_l4_checksum_partial
        - Src:             'lib/netdev-linux.c:7392,13'
          Dst:             dp_packet_inner_l4_checksum_partial
        - Src:             'lib/netdev-linux.c:7393,22'
          Dst:             dp_packet_inner_l3
        - Src:             'lib/netdev-linux.c:7394,22'
          Dst:             dp_packet_inner_l4
        - Src:             'lib/netdev-linux.c:7395,22'
          Dst:             dp_packet_inner_l4_proto_tcp
        - Src:             'lib/netdev-linux.c:7396,22'
          Dst:             dp_packet_inner_l4_proto_udp
        - Src:             'lib/netdev-linux.c:7397,23'
          Dst:             dp_packet_inner_l4_proto_sctp
        - Src:             'lib/netdev-linux.c:7399,22'
          Dst:             dp_packet_l3
        - Src:             'lib/netdev-linux.c:7400,22'
          Dst:             dp_packet_l4
        - Src:             'lib/netdev-linux.c:7401,22'
          Dst:             dp_packet_l4_proto_tcp
        - Src:             'lib/netdev-linux.c:7402,22'
          Dst:             dp_packet_l4_proto_udp
        - Src:             'lib/netdev-linux.c:7403,23'
          Dst:             dp_packet_l4_proto_sctp
        - Src:             'lib/netdev-linux.c:7427,37'
          Dst:             packet_csum_pseudoheader
        - Src:             'lib/netdev-linux.c:7427,25'
          Dst:             csum_finish
        - Src:             'lib/netdev-linux.c:7430,37'
          Dst:             packet_csum_pseudoheader6
        - Src:             'lib/netdev-linux.c:7430,25'
          Dst:             csum_finish
        - Src:             'lib/netdev-linux.c:7436,46'
          Dst:             dp_packet_data
        - Src:             'lib/netdev-linux.c:7444,37'
          Dst:             packet_csum_pseudoheader
        - Src:             'lib/netdev-linux.c:7444,25'
          Dst:             csum_finish
        - Src:             'lib/netdev-linux.c:7447,37'
          Dst:             packet_csum_pseudoheader6
        - Src:             'lib/netdev-linux.c:7447,25'
          Dst:             csum_finish
        - Src:             'lib/netdev-linux.c:7453,46'
          Dst:             dp_packet_data
        - Src:             'lib/netdev-linux.c:7466,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/netdev-linux.c:7477,5'
          Dst:             dp_packet_push
    - functionName:    dp_packet_get_tso_segsz
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 798
      functionLinenumberEnd: 799
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_inner_l4
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 529
      functionLinenumberEnd: 531
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_data
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:531,23'
          Dst:             dp_packet_data
    - functionName:    dp_packet_inner_l3
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 511
      functionLinenumberEnd: 513
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_data
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:513,23'
          Dst:             dp_packet_data
    - functionName:    dp_packet_l4
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 475
      functionLinenumberEnd: 477
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_data
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:477,23'
          Dst:             dp_packet_data
    - functionName:    dp_packet_l3
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 461
      functionLinenumberEnd: 463
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_data
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:463,23'
          Dst:             dp_packet_data
    - functionName:    dp_packet_eth
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 405
      functionLinenumberEnd: 407
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          39
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - dp_packet_data
        - dp_packet_is_eth
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:406,13'
          Dst:             dp_packet_is_eth
        - Src:             'lib/dp-packet.h:407,15'
          Dst:             dp_packet_data
    - functionName:    dp_packet_l4_checksum_good
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1302
      functionLinenumberEnd: 1304
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_tunnel
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1135
      functionLinenumberEnd: 1136
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_inner_l4_checksum_good
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1389
      functionLinenumberEnd: 1391
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_l4_checksum_partial
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1333
      functionLinenumberEnd: 1335
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_inner_l4_checksum_partial
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1406
      functionLinenumberEnd: 1408
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_inner_l4_proto_tcp
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1366
      functionLinenumberEnd: 1368
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_inner_l4_proto_udp
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1373
      functionLinenumberEnd: 1375
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_inner_l4_proto_sctp
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1380
      functionLinenumberEnd: 1382
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_is_eth
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 397
      functionLinenumberEnd: 398
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:398,30'
          Dst:             htonl
    - functionName:    netdev_linux_set_ol
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2603
      functionLinenumberEnd: 2665
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         23
      ICount:          173
      EdgeCount:       29
      CyclomaticComplexity: 8
      functionsReached:
        - netdev_get_ethtool_add
        - netdev_get_name
        - netdev_linux_cast
        - netdev_linux_do_ethtool
        - netdev_linux_read_definitions
        - strcmp
        - xzalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:2604,35'
          Dst:             netdev_linux_cast
        - Src:             'lib/netdev-linux.c:2609,5'
          Dst:             netdev_get_ethtool_add
        - Src:             'lib/netdev-linux.c:2611,13'
          Dst:             netdev_linux_read_definitions
        - Src:             'lib/netdev-linux.c:2616,16'
          Dst:             xzalloc
        - Src:             'lib/netdev-linux.c:2622,37'
          Dst:             netdev_get_name
        - Src:             'lib/netdev-linux.c:2622,13'
          Dst:             netdev_linux_do_ethtool
        - Src:             'lib/netdev-linux.c:2653,17'
          Dst:             strcmp
    - functionName:    netdev_internal_get_stats
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2513
      functionLinenumberEnd: 2522
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_stats_via_vport
        - netdev_linux_cast
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:2514,35'
          Dst:             netdev_linux_cast
        - Src:             'lib/netdev-linux.c:2517,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-linux.c:2518,5'
          Dst:             get_stats_via_vport
        - Src:             'lib/netdev-linux.c:2520,5'
          Dst:             ovs_mutex_unlock
    - functionName:    netdev_internal_get_status
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3903
      functionLinenumberEnd: 3905
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smap_add
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:3904,5'
          Dst:             smap_add
    - functionName:    netdev_linux_miimon_wait
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2304
      functionLinenumberEnd: 2322
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         13
      ICount:          86
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_first
        - hmap_next
        - netdev_close
        - netdev_get_devices
        - netdev_linux_cast
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - shash_destroy
        - shash_init
        - timer_wait_at
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:2308,5'
          Dst:             shash_init
        - Src:             'lib/netdev-linux.c:2309,5'
          Dst:             netdev_get_devices
        - Src:             'lib/netdev-linux.c:2310,5'
          Dst:             hmap_first
        - Src:             'lib/netdev-linux.c:2312,36'
          Dst:             netdev_linux_cast
        - Src:             'lib/netdev-linux.c:2314,9'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-linux.c:2316,13'
          Dst:             timer_wait_at
        - Src:             'lib/netdev-linux.c:2318,9'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/netdev-linux.c:2319,9'
          Dst:             netdev_close
        - Src:             'lib/netdev-linux.c:2310,5'
          Dst:             hmap_next
        - Src:             'lib/netdev-linux.c:2321,5'
          Dst:             shash_destroy
    - functionName:    netdev_linux_netnsid_is_eq
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 716
      functionLinenumberEnd: 718
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - netdev_linux_netnsid_update
        - netnsid_eq
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:717,5'
          Dst:             netdev_linux_netnsid_update
        - Src:             'lib/netdev-linux.c:718,12'
          Dst:             netnsid_eq
    - functionName:    netdev_linux_update__
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 976
      functionLinenumberEnd: 1019
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         23
      ICount:          171
      EdgeCount:       29
      CyclomaticComplexity: 8
      functionsReached:
        - abort
        - eth_addr_is_zero
        - netdev_linux_changed
        - netdev_linux_kind_is_lag
        - netnsid_unset
        - rtnetlink_report_link
        - rtnetlink_type_is_rtnlgrp_addr
        - rtnetlink_type_is_rtnlgrp_link
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:977,9'
          Dst:             rtnetlink_type_is_rtnlgrp_link
        - Src:             'lib/netdev-linux.c:980,13'
          Dst:             netdev_linux_changed
        - Src:             'lib/netdev-linux.c:990,18'
          Dst:             eth_addr_is_zero
        - Src:             'lib/netdev-linux.c:996,17'
          Dst:             rtnetlink_report_link
        - Src:             'lib/netdev-linux.c:999,36'
          Dst:             netdev_linux_kind_is_lag
        - Src:             'lib/netdev-linux.c:1009,13'
          Dst:             netdev_linux_changed
        - Src:             'lib/netdev-linux.c:1011,13'
          Dst:             netnsid_unset
        - Src:             'lib/netdev-linux.c:1013,16'
          Dst:             rtnetlink_type_is_rtnlgrp_addr
        - Src:             'lib/netdev-linux.c:1015,9'
          Dst:             netdev_linux_changed
        - Src:             'lib/netdev-linux.c:1017,9'
          Dst:             abort
    - functionName:    netnsid_eq
      functionSourceFile: '/src/openvswitch/lib/netnsid.h'
      linkageType:     InternalLinkage
      functionLinenumber: 137
      functionLinenumberEnd: 154
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          67
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - netnsid_is_local
        - netnsid_is_unset
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netnsid.h:138,9'
          Dst:             netnsid_is_unset
        - Src:             'lib/netnsid.h:138,36'
          Dst:             netnsid_is_unset
        - Src:             'lib/netnsid.h:145,9'
          Dst:             netnsid_is_local
        - Src:             'lib/netnsid.h:145,36'
          Dst:             netnsid_is_local
    - functionName:    netdev_linux_init_self_nsid
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 620
      functionLinenumberEnd: 669
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         25
      ICount:          129
      EdgeCount:       31
      CyclomaticComplexity: 8
      functionsReached:
        - getpid
        - netnsid_set_self
        - nl_attr_find
        - nl_attr_get_u32
        - nl_msg_put_nlmsghdr
        - nl_msg_put_u32
        - nl_transact
        - ofpbuf_delete
        - ofpbuf_init
        - ofpbuf_put_zeros
        - ofpbuf_uninit
        - ovs_strerror
        - vlog
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:625,20'
          Dst:             getpid
        - Src:             'lib/netdev-linux.c:631,5'
          Dst:             ofpbuf_init
        - Src:             'lib/netdev-linux.c:632,5'
          Dst:             nl_msg_put_nlmsghdr
        - Src:             'lib/netdev-linux.c:635,5'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/netdev-linux.c:636,5'
          Dst:             nl_msg_put_u32
        - Src:             'lib/netdev-linux.c:637,5'
          Dst:             nl_msg_put_u32
        - Src:             'lib/netdev-linux.c:638,5'
          Dst:             nl_transact
        - Src:             'lib/netdev-linux.c:639,5'
          Dst:             ofpbuf_uninit
        - Src:             'lib/netdev-linux.c:642,5'
          Dst:             ofpbuf_init
        - Src:             'lib/netdev-linux.c:643,5'
          Dst:             nl_msg_put_nlmsghdr
        - Src:             'lib/netdev-linux.c:645,5'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/netdev-linux.c:646,5'
          Dst:             nl_msg_put_u32
        - Src:             'lib/netdev-linux.c:648,13'
          Dst:             nl_transact
        - Src:             'lib/netdev-linux.c:652,13'
          Dst:             nl_attr_find
        - Src:             'lib/netdev-linux.c:654,24'
          Dst:             nl_attr_get_u32
        - Src:             'lib/netdev-linux.c:657,17'
          Dst:             netnsid_set_self
        - Src:             'lib/netdev-linux.c:658,17'
          Dst:             vlog
        - Src:             'lib/netdev-linux.c:662,9'
          Dst:             ovs_strerror
        - Src:             'lib/netdev-linux.c:662,9'
          Dst:             vlog
        - Src:             'lib/netdev-linux.c:666,5'
          Dst:             ofpbuf_uninit
        - Src:             'lib/netdev-linux.c:667,5'
          Dst:             ofpbuf_delete
    - functionName:    timer_expired
      functionSourceFile: '/src/openvswitch/lib/timer.h'
      linkageType:     InternalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 64
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - time_msec
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/timer.h:64,12'
          Dst:             time_msec
    - functionName:    netdev_linux_get_miimon
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2208
      functionLinenumberEnd: 2246
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         25
      ICount:          139
      EdgeCount:       31
      CyclomaticComplexity: 8
      functionsReached:
        - netdev_get_ethtool_add
        - netdev_linux_do_ethtool
        - netdev_linux_do_miimon
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:2215,13'
          Dst:             netdev_linux_do_miimon
        - Src:             'lib/netdev-linux.c:2219,17'
          Dst:             netdev_linux_do_miimon
        - Src:             'lib/netdev-linux.c:2229,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/netdev-linux.c:2232,9'
          Dst:             netdev_get_ethtool_add
        - Src:             'lib/netdev-linux.c:2234,17'
          Dst:             netdev_linux_do_ethtool
        - Src:             'lib/netdev-linux.c:2242,13'
          Dst:             vlog_rate_limit
    - functionName:    timer_set_duration
      functionSourceFile: '/src/openvswitch/lib/timer.h'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 40
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - time_msec
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/timer.h:39,16'
          Dst:             time_msec
    - functionName:    netdev_linux_do_miimon
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2194
      functionLinenumberEnd: 2203
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - af_inet_ifreq_ioctl
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:2200,13'
          Dst:             af_inet_ifreq_ioctl
    - functionName:    atomic_count_get
      functionSourceFile: '/src/openvswitch/lib/ovs-atomic.h'
      linkageType:     InternalLinkage
      functionLinenumber: 471
      functionLinenumberEnd: 476
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    free_dpdk_buf
      functionSourceFile: '/src/openvswitch/lib/netdev-dpdk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 76
      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:    free_afxdp_buf
      functionSourceFile: '/src/openvswitch/lib/netdev-afxdp.h'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 84
      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:    netdev_linux_ethtool_set_flag
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6817
      functionLinenumberEnd: 6862
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          148
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - netdev_get_ethtool_add
        - netdev_get_name
        - netdev_linux_do_ethtool
        - netdev_set_ethtool_add
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:6818,31'
          Dst:             netdev_get_name
        - Src:             'lib/netdev-linux.c:6823,5'
          Dst:             netdev_get_ethtool_add
        - Src:             'lib/netdev-linux.c:6825,13'
          Dst:             netdev_linux_do_ethtool
        - Src:             'lib/netdev-linux.c:6832,5'
          Dst:             netdev_set_ethtool_add
        - Src:             'lib/netdev-linux.c:6838,13'
          Dst:             netdev_linux_do_ethtool
        - Src:             'lib/netdev-linux.c:6845,5'
          Dst:             netdev_get_ethtool_add
        - Src:             'lib/netdev-linux.c:6847,13'
          Dst:             netdev_linux_do_ethtool
        - Src:             'lib/netdev-linux.c:6855,9'
          Dst:             vlog_rate_limit
    - functionName:    tc_del_policer_action
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6283
      functionLinenumberEnd: 6311
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          86
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - nl_msg_end_nested
        - nl_msg_put_string
        - nl_msg_put_u32
        - nl_msg_start_nested
        - tc_make_action_request
        - tc_transact
        - tc_update_policer_action_stats
        - vlog_rate_limit
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:6291,14'
          Dst:             tc_make_action_request
        - Src:             'lib/netdev-linux.c:6296,19'
          Dst:             nl_msg_start_nested
        - Src:             'lib/netdev-linux.c:6297,19'
          Dst:             nl_msg_start_nested
        - Src:             'lib/netdev-linux.c:6298,5'
          Dst:             nl_msg_put_string
        - Src:             'lib/netdev-linux.c:6299,5'
          Dst:             nl_msg_put_u32
        - Src:             'lib/netdev-linux.c:6300,5'
          Dst:             nl_msg_end_nested
        - Src:             'lib/netdev-linux.c:6301,5'
          Dst:             nl_msg_end_nested
        - Src:             'lib/netdev-linux.c:6303,13'
          Dst:             tc_transact
        - Src:             'lib/netdev-linux.c:6305,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/netdev-linux.c:6310,12'
          Dst:             tc_update_policer_action_stats
    - functionName:    tc_update_policer_action_stats
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6198
      functionLinenumberEnd: 6246
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         29
      ICount:          185
      EdgeCount:       37
      CyclomaticComplexity: 10
      functionsReached:
        - get_32aligned_u64
        - nl_attr_find
        - ofpbuf_const_initializer
        - ofpbuf_delete
        - ofpbuf_try_pull
        - tc_parse_action_stats
        - vlog_rate_limit
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:6199,23'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/netdev-linux.c:6200,30'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/netdev-linux.c:6201,26'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/netdev-linux.c:6214,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/netdev-linux.c:6219,11'
          Dst:             nl_attr_find
        - Src:             'lib/netdev-linux.c:6221,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/netdev-linux.c:6230,13'
          Dst:             tc_parse_action_stats
        - Src:             'lib/netdev-linux.c:6233,13'
          Dst:             get_32aligned_u64
        - Src:             'lib/netdev-linux.c:6234,33'
          Dst:             get_32aligned_u64
        - Src:             'lib/netdev-linux.c:6236,13'
          Dst:             get_32aligned_u64
        - Src:             'lib/netdev-linux.c:6237,33'
          Dst:             get_32aligned_u64
        - Src:             'lib/netdev-linux.c:6240,17'
          Dst:             get_32aligned_u64
        - Src:             'lib/netdev-linux.c:6245,5'
          Dst:             ofpbuf_delete
    - functionName:    tc_get_policer_action
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6251
      functionLinenumberEnd: 6279
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          86
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - nl_msg_end_nested
        - nl_msg_put_string
        - nl_msg_put_u32
        - nl_msg_start_nested
        - tc_make_action_request
        - tc_transact
        - tc_update_policer_action_stats
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:6259,14'
          Dst:             tc_make_action_request
        - Src:             'lib/netdev-linux.c:6264,19'
          Dst:             nl_msg_start_nested
        - Src:             'lib/netdev-linux.c:6265,19'
          Dst:             nl_msg_start_nested
        - Src:             'lib/netdev-linux.c:6266,5'
          Dst:             nl_msg_put_string
        - Src:             'lib/netdev-linux.c:6267,5'
          Dst:             nl_msg_put_u32
        - Src:             'lib/netdev-linux.c:6268,5'
          Dst:             nl_msg_end_nested
        - Src:             'lib/netdev-linux.c:6269,5'
          Dst:             nl_msg_end_nested
        - Src:             'lib/netdev-linux.c:6271,13'
          Dst:             tc_transact
        - Src:             'lib/netdev-linux.c:6273,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/netdev-linux.c:6278,12'
          Dst:             tc_update_policer_action_stats
    - functionName:    tc_add_policer_action
      functionSourceFile: '/src/openvswitch/lib/netdev-linux.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6168
      functionLinenumberEnd: 6193
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - int
        - size_t
        - int
        - int
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          102
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - nl_msg_end_nested
        - nl_msg_put_act_police
        - nl_msg_start_nested
        - tc_make_action_request
        - tc_transact
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-linux.c:6176,14'
          Dst:             tc_make_action_request
        - Src:             'lib/netdev-linux.c:6181,14'
          Dst:             nl_msg_start_nested
        - Src:             'lib/netdev-linux.c:6182,5'
          Dst:             nl_msg_put_act_police
        - Src:             'lib/netdev-linux.c:6184,5'
          Dst:             nl_msg_end_nested
        - Src:             'lib/netdev-linux.c:6186,13'
          Dst:             tc_transact
        - Src:             'lib/netdev-linux.c:6188,9'
          Dst:             vlog_rate_limit
    - functionName:    init_this_module_netlink_socket
      functionSourceFile: '/src/openvswitch/lib/netlink-socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42
      functionLinenumberEnd: 42
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-socket.c:42,1'
          Dst:             vlog_insert_module
    - functionName:    netlink_overflow_init_coverage
      functionSourceFile: '/src/openvswitch/lib/netlink-socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 44
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-socket.c:44,1'
          Dst:             coverage_counter_register
    - functionName:    netlink_received_init_coverage
      functionSourceFile: '/src/openvswitch/lib/netlink-socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-socket.c:45,1'
          Dst:             coverage_counter_register
    - functionName:    netlink_recv_jumbo_init_coverage
      functionSourceFile: '/src/openvswitch/lib/netlink-socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 46
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-socket.c:46,1'
          Dst:             coverage_counter_register
    - functionName:    netlink_sent_init_coverage
      functionSourceFile: '/src/openvswitch/lib/netlink-socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 47
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-socket.c:47,1'
          Dst:             coverage_counter_register
    - functionName:    netlink_sent_count
      functionSourceFile: '/src/openvswitch/lib/netlink-socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 47
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_netlink_sent_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-socket.c:47,1'
          Dst:             counter_netlink_sent_get
    - functionName:    counter_netlink_sent_get
      functionSourceFile: '/src/openvswitch/lib/netlink-socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 47
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_netlink_sent_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-socket.c:47,1'
          Dst:             counter_netlink_sent_get_unsafe
    - functionName:    counter_netlink_sent_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/netlink-socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 47
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netlink_recv_jumbo_count
      functionSourceFile: '/src/openvswitch/lib/netlink-socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 46
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_netlink_recv_jumbo_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-socket.c:46,1'
          Dst:             counter_netlink_recv_jumbo_get
    - functionName:    counter_netlink_recv_jumbo_get
      functionSourceFile: '/src/openvswitch/lib/netlink-socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 46
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_netlink_recv_jumbo_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-socket.c:46,1'
          Dst:             counter_netlink_recv_jumbo_get_unsafe
    - functionName:    counter_netlink_recv_jumbo_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/netlink-socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 46
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netlink_received_count
      functionSourceFile: '/src/openvswitch/lib/netlink-socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_netlink_received_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-socket.c:45,1'
          Dst:             counter_netlink_received_get
    - functionName:    counter_netlink_received_get
      functionSourceFile: '/src/openvswitch/lib/netlink-socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_netlink_received_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-socket.c:45,1'
          Dst:             counter_netlink_received_get_unsafe
    - functionName:    counter_netlink_received_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/netlink-socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netlink_overflow_count
      functionSourceFile: '/src/openvswitch/lib/netlink-socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 44
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_netlink_overflow_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-socket.c:44,1'
          Dst:             counter_netlink_overflow_get
    - functionName:    counter_netlink_overflow_get
      functionSourceFile: '/src/openvswitch/lib/netlink-socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 44
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_netlink_overflow_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-socket.c:44,1'
          Dst:             counter_netlink_overflow_get_unsafe
    - functionName:    counter_netlink_overflow_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/netlink-socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 44
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nl_sock_transact_multiple__
      functionSourceFile: '/src/openvswitch/lib/netlink-socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 508
      functionLinenumberEnd: 627
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         72
      ICount:          510
      EdgeCount:       93
      CyclomaticComplexity: 23
      functionsReached:
        - __errno_location
        - log_nlmsg
        - netlink_sent_add
        - nl_msg_nlmsgerr
        - nl_msg_nlmsghdr
        - nl_sock_allocate_seq
        - nl_sock_record_errors__
        - nl_sock_recv__
        - ofpbuf_clear
        - ofpbuf_uninit
        - ofpbuf_use_stub
        - ovs_strerror
        - sendmsg
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-socket.c:519,16'
          Dst:             nl_sock_allocate_seq
        - Src:             'lib/netlink-socket.c:523,34'
          Dst:             nl_msg_nlmsghdr
        - Src:             'lib/netlink-socket.c:537,17'
          Dst:             sendmsg
        - Src:             'lib/netlink-socket.c:537,50'
          Dst:             __errno_location
        - Src:             'lib/netlink-socket.c:543,9'
          Dst:             log_nlmsg
        - Src:             'lib/netlink-socket.c:547,9'
          Dst:             netlink_sent_add
        - Src:             'lib/netlink-socket.c:554,5'
          Dst:             ofpbuf_use_stub
        - Src:             'lib/netlink-socket.c:573,17'
          Dst:             nl_sock_recv__
        - Src:             'lib/netlink-socket.c:576,17'
          Dst:             nl_sock_record_errors__
        - Src:             'lib/netlink-socket.c:584,15'
          Dst:             nl_msg_nlmsghdr
        - Src:             'lib/netlink-socket.c:586,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/netlink-socket.c:594,13'
          Dst:             nl_msg_nlmsgerr
        - Src:             'lib/netlink-socket.c:596,17'
          Dst:             ovs_strerror
        - Src:             'lib/netlink-socket.c:596,17'
          Dst:             vlog_rate_limit
        - Src:             'lib/netlink-socket.c:601,17'
          Dst:             ofpbuf_clear
        - Src:             'lib/netlink-socket.c:616,9'
          Dst:             nl_sock_record_errors__
        - Src:             'lib/netlink-socket.c:624,5'
          Dst:             ofpbuf_uninit
    - functionName:    nl_sock_allocate_seq
      functionSourceFile: '/src/openvswitch/lib/netlink-socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1263
      functionLinenumberEnd: 1275
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          37
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    log_nlmsg
      functionSourceFile: '/src/openvswitch/lib/netlink-socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1379
      functionLinenumberEnd: 1388
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          65
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - nlmsg_to_string
        - ofpbuf_const_initializer
        - ovs_strerror
        - vlog_is_enabled
        - vlog_rate_limit
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-socket.c:1380,10'
          Dst:             vlog_is_enabled
        - Src:             'lib/netlink-socket.c:1384,28'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/netlink-socket.c:1385,19'
          Dst:             nlmsg_to_string
        - Src:             'lib/netlink-socket.c:1386,5'
          Dst:             ovs_strerror
        - Src:             'lib/netlink-socket.c:1386,5'
          Dst:             vlog_rate_limit
    - functionName:    netlink_sent_add
      functionSourceFile: '/src/openvswitch/lib/netlink-socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 47
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_netlink_sent_get
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-socket.c:47,1'
          Dst:             counter_netlink_sent_get
    - functionName:    nl_sock_recv__
      functionSourceFile: '/src/openvswitch/lib/netlink-socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 349
      functionLinenumberEnd: 462
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         75
      ICount:          461
      EdgeCount:       98
      CyclomaticComplexity: 25
      functionsReached:
        - __cmsg_nxthdr
        - __errno_location
        - close
        - log_nlmsg
        - netlink_overflow_add
        - netlink_received_add
        - netlink_recv_jumbo_add
        - netnsid_set
        - netnsid_set_local
        - ofpbuf_clear
        - ofpbuf_put
        - ovs_ignore
        - recvmsg
        - vlog_rate_limit
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-socket.c:365,5'
          Dst:             ovs_ignore
        - Src:             'lib/netlink-socket.c:366,5'
          Dst:             ofpbuf_clear
        - Src:             'lib/netlink-socket.c:389,18'
          Dst:             recvmsg
        - Src:             'lib/netlink-socket.c:390,31'
          Dst:             __errno_location
        - Src:             'lib/netlink-socket.c:399,13'
          Dst:             netlink_overflow_add
        - Src:             'lib/netlink-socket.c:405,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/netlink-socket.c:413,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/netlink-socket.c:420,9'
          Dst:             netlink_recv_jumbo_add
        - Src:             'lib/netlink-socket.c:421,9'
          Dst:             ofpbuf_put
        - Src:             'lib/netlink-socket.c:430,9'
          Dst:             netnsid_set_local
        - Src:             'lib/netlink-socket.c:437,17'
          Dst:             netnsid_set
        - Src:             'lib/netlink-socket.c:448,21'
          Dst:             vlog_rate_limit
        - Src:             'lib/netlink-socket.c:450,21'
          Dst:             close
        - Src:             'lib/netlink-socket.c:454,20'
          Dst:             __cmsg_nxthdr
        - Src:             'lib/netlink-socket.c:458,5'
          Dst:             log_nlmsg
        - Src:             'lib/netlink-socket.c:459,5'
          Dst:             netlink_received_add
    - functionName:    nl_sock_record_errors__
      functionSourceFile: '/src/openvswitch/lib/netlink-socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 491
      functionLinenumberEnd: 502
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          63
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ofpbuf_clear
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-socket.c:499,13'
          Dst:             ofpbuf_clear
    - functionName:    ofpbuf_clear
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 250
      functionLinenumberEnd: 253
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netlink_overflow_add
      functionSourceFile: '/src/openvswitch/lib/netlink-socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 44
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_netlink_overflow_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-socket.c:44,1'
          Dst:             counter_netlink_overflow_get
    - functionName:    netlink_recv_jumbo_add
      functionSourceFile: '/src/openvswitch/lib/netlink-socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 46
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_netlink_recv_jumbo_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-socket.c:46,1'
          Dst:             counter_netlink_recv_jumbo_get
    - functionName:    netnsid_set_local
      functionSourceFile: '/src/openvswitch/lib/netnsid.h'
      linkageType:     InternalLinkage
      functionLinenumber: 92
      functionLinenumberEnd: 94
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netnsid_set
      functionSourceFile: '/src/openvswitch/lib/netnsid.h'
      linkageType:     InternalLinkage
      functionLinenumber: 126
      functionLinenumberEnd: 133
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netnsid.h:129,9'
          Dst:             ovs_ignore
    - functionName:    netlink_received_add
      functionSourceFile: '/src/openvswitch/lib/netlink-socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_netlink_received_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-socket.c:45,1'
          Dst:             counter_netlink_received_get
    - functionName:    ofpbuf_const_initializer
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 97
      functionLinenumberEnd: 105
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          30
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nlmsg_to_string
      functionSourceFile: '/src/openvswitch/lib/netlink-socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1332
      functionLinenumberEnd: 1373
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         30
      ICount:          164
      EdgeCount:       39
      CyclomaticComplexity: 11
      functionsReached:
        - ds_put_cstr
        - ds_put_format
        - nl_msg_genlmsghdr
        - nlmsghdr_to_string
        - ofpbuf_at
        - ovs_strerror
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-socket.c:1334,32'
          Dst:             ofpbuf_at
        - Src:             'lib/netlink-socket.c:1336,9'
          Dst:             nlmsghdr_to_string
        - Src:             'lib/netlink-socket.c:1339,17'
          Dst:             ofpbuf_at
        - Src:             'lib/netlink-socket.c:1342,17'
          Dst:             ds_put_format
        - Src:             'lib/netlink-socket.c:1344,48'
          Dst:             ovs_strerror
        - Src:             'lib/netlink-socket.c:1344,21'
          Dst:             ds_put_format
        - Src:             'lib/netlink-socket.c:1346,17'
          Dst:             ds_put_cstr
        - Src:             'lib/netlink-socket.c:1347,17'
          Dst:             nlmsghdr_to_string
        - Src:             'lib/netlink-socket.c:1348,17'
          Dst:             ds_put_cstr
        - Src:             'lib/netlink-socket.c:1350,17'
          Dst:             ds_put_cstr
        - Src:             'lib/netlink-socket.c:1353,26'
          Dst:             ofpbuf_at
        - Src:             'lib/netlink-socket.c:1355,17'
          Dst:             ds_put_format
        - Src:             'lib/netlink-socket.c:1357,48'
          Dst:             ovs_strerror
        - Src:             'lib/netlink-socket.c:1357,21'
          Dst:             ds_put_format
        - Src:             'lib/netlink-socket.c:1359,17'
          Dst:             ds_put_cstr
        - Src:             'lib/netlink-socket.c:1361,17'
          Dst:             ds_put_cstr
        - Src:             'lib/netlink-socket.c:1364,39'
          Dst:             nl_msg_genlmsghdr
        - Src:             'lib/netlink-socket.c:1366,17'
          Dst:             ds_put_format
        - Src:             'lib/netlink-socket.c:1371,9'
          Dst:             ds_put_cstr
    - functionName:    ofpbuf_at
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 183
      functionLinenumberEnd: 189
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:185,9'
          Dst:             ovs_ignore
    - functionName:    nlmsghdr_to_string
      functionSourceFile: '/src/openvswitch/lib/netlink-socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1280
      functionLinenumberEnd: 1328
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         31
      ICount:          199
      EdgeCount:       40
      CyclomaticComplexity: 11
      functionsReached:
        - ds_put_cstr
        - ds_put_format
        - genl_family_to_name
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-socket.c:1298,5'
          Dst:             ds_put_format
        - Src:             'lib/netlink-socket.c:1301,9'
          Dst:             ds_put_cstr
        - Src:             'lib/netlink-socket.c:1303,9'
          Dst:             ds_put_cstr
        - Src:             'lib/netlink-socket.c:1305,9'
          Dst:             ds_put_cstr
        - Src:             'lib/netlink-socket.c:1307,9'
          Dst:             ds_put_cstr
        - Src:             'lib/netlink-socket.c:1309,9'
          Dst:             ds_put_cstr
        - Src:             'lib/netlink-socket.c:1311,35'
          Dst:             genl_family_to_name
        - Src:             'lib/netlink-socket.c:1311,9'
          Dst:             ds_put_format
        - Src:             'lib/netlink-socket.c:1313,9'
          Dst:             ds_put_cstr
        - Src:             'lib/netlink-socket.c:1315,5'
          Dst:             ds_put_format
        - Src:             'lib/netlink-socket.c:1319,13'
          Dst:             ds_put_format
        - Src:             'lib/netlink-socket.c:1324,9'
          Dst:             ds_put_format
        - Src:             'lib/netlink-socket.c:1326,5'
          Dst:             ds_put_format
    - functionName:    genl_family_to_name
      functionSourceFile: '/src/openvswitch/lib/netlink-socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 987
      functionLinenumberEnd: 994
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          46
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - find_genl_family_by_id
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-socket.c:991,38'
          Dst:             find_genl_family_by_id
    - functionName:    find_genl_family_by_id
      functionSourceFile: '/src/openvswitch/lib/netlink-socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 955
      functionLinenumberEnd: 965
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          71
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hash_int
        - hmap_first_in_bucket
        - hmap_next_in_bucket
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-socket.c:958,5'
          Dst:             hash_int
        - Src:             'lib/netlink-socket.c:958,5'
          Dst:             hmap_first_in_bucket
        - Src:             'lib/netlink-socket.c:958,5'
          Dst:             hmap_next_in_bucket
    - functionName:    hash_int
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 408
      functionLinenumberEnd: 409
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_2words
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:409,12'
          Dst:             hash_2words
    - functionName:    hmap_first_in_bucket
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 367
      functionLinenumberEnd: 368
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_next_in_bucket
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 381
      functionLinenumberEnd: 382
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_2words
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 153
      functionLinenumberEnd: 154
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_add
        - hash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:154,33'
          Dst:             hash_add
        - Src:             'lib/hash.h:154,24'
          Dst:             hash_add
        - Src:             'lib/hash.h:154,12'
          Dst:             hash_finish
    - functionName:    hash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 108
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_add
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:109,12'
          Dst:             mhash_add
    - functionName:    hash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:119,12'
          Dst:             mhash_finish
    - functionName:    mhash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_rot
        - mhash_add__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:78,12'
          Dst:             mhash_add__
        - Src:             'lib/hash.h:79,12'
          Dst:             hash_rot
    - functionName:    mhash_add__
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hash_rot
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:71,12'
          Dst:             hash_rot
    - functionName:    hash_rot
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 32
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_insert_fast
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 289
      functionLinenumberEnd: 295
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          38
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_insert_at
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 306
      functionLinenumberEnd: 311
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_expand_at
        - hmap_insert_fast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:307,5'
          Dst:             hmap_insert_fast
        - Src:             './include/openvswitch/hmap.h:309,9'
          Dst:             hmap_expand_at
    - functionName:    nl_sock_transact_multiple
      functionSourceFile: '/src/openvswitch/lib/netlink-socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 632
      functionLinenumberEnd: 687
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         43
      ICount:          237
      EdgeCount:       55
      CyclomaticComplexity: 14
      functionsReached:
        - nl_sock_record_errors__
        - nl_sock_transact_multiple__
        - ovs_strerror
        - vlog_rate_limit
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-socket.c:671,17'
          Dst:             nl_sock_transact_multiple__
        - Src:             'lib/netlink-socket.c:676,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/netlink-socket.c:678,13'
          Dst:             ovs_strerror
        - Src:             'lib/netlink-socket.c:678,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/netlink-socket.c:679,13'
          Dst:             nl_sock_record_errors__
    - functionName:    nl_transact_multiple
      functionSourceFile: '/src/openvswitch/lib/netlink-socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1247
      functionLinenumberEnd: 1258
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - nl_pool_alloc
        - nl_pool_release
        - nl_sock_record_errors__
        - nl_sock_transact_multiple
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-socket.c:1251,13'
          Dst:             nl_pool_alloc
        - Src:             'lib/netlink-socket.c:1253,9'
          Dst:             nl_sock_transact_multiple
        - Src:             'lib/netlink-socket.c:1254,9'
          Dst:             nl_pool_release
        - Src:             'lib/netlink-socket.c:1256,9'
          Dst:             nl_sock_record_errors__
    - functionName:    nl_pool_alloc
      functionSourceFile: '/src/openvswitch/lib/netlink-socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1124
      functionLinenumberEnd: 1143
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          88
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - nl_sock_create
        - ovs_ignore
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-socket.c:1128,5'
          Dst:             ovs_ignore
        - Src:             'lib/netlink-socket.c:1130,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netlink-socket.c:1135,5'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/netlink-socket.c:1141,16'
          Dst:             nl_sock_create
    - functionName:    nl_pool_release
      functionSourceFile: '/src/openvswitch/lib/netlink-socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1147
      functionLinenumberEnd: 1160
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          59
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - nl_sock_destroy
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-socket.c:1151,9'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netlink-socket.c:1156,9'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/netlink-socket.c:1158,9'
          Dst:             nl_sock_destroy
    - functionName:    nl_sock_destroy
      functionSourceFile: '/src/openvswitch/lib/netlink-socket.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:
        - close
      functionUses:    12
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-socket.c:217,9'
          Dst:             close
    - functionName:    nl_sock_create
      functionSourceFile: '/src/openvswitch/lib/netlink-socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 91
      functionLinenumberEnd: 201
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         95
      ICount:          500
      EdgeCount:       122
      CyclomaticComplexity: 29
      functionsReached:
        - __errno_location
        - close
        - connect
        - get_socket_rcvbuf
        - getsockname
        - ovs_strerror
        - ovsthread_once_done
        - ovsthread_once_start
        - setsockopt
        - socket
        - sysconf
        - vlog
        - vlog_rate_limit
        - xmalloc
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-socket.c:100,9'
          Dst:             ovsthread_once_start
        - Src:             'lib/netlink-socket.c:101,26'
          Dst:             __errno_location
        - Src:             'lib/netlink-socket.c:102,9'
          Dst:             __errno_location
        - Src:             'lib/netlink-socket.c:104,20'
          Dst:             sysconf
        - Src:             'lib/netlink-socket.c:106,35'
          Dst:             __errno_location
        - Src:             'lib/netlink-socket.c:107,17'
          Dst:             __errno_location
        - Src:             'lib/netlink-socket.c:107,17'
          Dst:             ovs_strerror
        - Src:             'lib/netlink-socket.c:107,17'
          Dst:             vlog
        - Src:             'lib/netlink-socket.c:114,9'
          Dst:             __errno_location
        - Src:             'lib/netlink-socket.c:115,9'
          Dst:             ovsthread_once_done
        - Src:             'lib/netlink-socket.c:119,12'
          Dst:             xmalloc
        - Src:             'lib/netlink-socket.c:121,16'
          Dst:             socket
        - Src:             'lib/netlink-socket.c:123,9'
          Dst:             __errno_location
        - Src:             'lib/netlink-socket.c:123,9'
          Dst:             ovs_strerror
        - Src:             'lib/netlink-socket.c:123,9'
          Dst:             vlog
        - Src:             'lib/netlink-socket.c:131,9'
          Dst:             setsockopt
        - Src:             'lib/netlink-socket.c:132,9'
          Dst:             __errno_location
        - Src:             'lib/netlink-socket.c:132,9'
          Dst:             ovs_strerror
        - Src:             'lib/netlink-socket.c:132,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/netlink-socket.c:136,9'
          Dst:             setsockopt
        - Src:             'lib/netlink-socket.c:140,13'
          Dst:             __errno_location
        - Src:             'lib/netlink-socket.c:141,13'
          Dst:             __errno_location
        - Src:             'lib/netlink-socket.c:141,13'
          Dst:             ovs_strerror
        - Src:             'lib/netlink-socket.c:141,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/netlink-socket.c:148,12'
          Dst:             setsockopt
        - Src:             'lib/netlink-socket.c:150,9'
          Dst:             __errno_location
        - Src:             'lib/netlink-socket.c:150,9'
          Dst:             __errno_location
        - Src:             'lib/netlink-socket.c:150,9'
          Dst:             ovs_strerror
        - Src:             'lib/netlink-socket.c:150,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/netlink-socket.c:155,14'
          Dst:             get_socket_rcvbuf
        - Src:             'lib/netlink-socket.c:167,9'
          Dst:             connect
        - Src:             'lib/netlink-socket.c:168,9'
          Dst:             __errno_location
        - Src:             'lib/netlink-socket.c:168,9'
          Dst:             ovs_strerror
        - Src:             'lib/netlink-socket.c:168,9'
          Dst:             vlog
        - Src:             'lib/netlink-socket.c:175,9'
          Dst:             getsockname
        - Src:             'lib/netlink-socket.c:176,9'
          Dst:             __errno_location
        - Src:             'lib/netlink-socket.c:176,9'
          Dst:             ovs_strerror
        - Src:             'lib/netlink-socket.c:176,9'
          Dst:             vlog
        - Src:             'lib/netlink-socket.c:180,9'
          Dst:             vlog
        - Src:             'lib/netlink-socket.c:191,18'
          Dst:             __errno_location
        - Src:             'lib/netlink-socket.c:197,9'
          Dst:             close
    - functionName:    ovsthread_once_start
      functionSourceFile: '/src/openvswitch/./include/openvswitch/thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsthread_once_start__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/thread.h:161,12'
          Dst:             ovsthread_once_start__
    - functionName:    nl_sock_transact
      functionSourceFile: '/src/openvswitch/lib/netlink-socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 692
      functionLinenumberEnd: 711
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          72
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - nl_sock_transact_multiple
        - ofpbuf_delete
        - ofpbuf_new
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-socket.c:697,34'
          Dst:             ofpbuf_new
        - Src:             'lib/netlink-socket.c:700,5'
          Dst:             nl_sock_transact_multiple
        - Src:             'lib/netlink-socket.c:704,13'
          Dst:             ofpbuf_delete
    - functionName:    ofpbuf_delete
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 172
      functionLinenumberEnd: 177
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          28
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofpbuf_uninit
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:174,9'
          Dst:             ofpbuf_uninit
    - functionName:    nl_transact
      functionSourceFile: '/src/openvswitch/lib/netlink-socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1206
      functionLinenumberEnd: 1222
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          57
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - nl_pool_alloc
        - nl_pool_release
        - nl_sock_transact
      functionUses:    22
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-socket.c:1210,13'
          Dst:             nl_pool_alloc
        - Src:             'lib/netlink-socket.c:1218,13'
          Dst:             nl_sock_transact
        - Src:             'lib/netlink-socket.c:1220,5'
          Dst:             nl_pool_release
    - functionName:    define_genl_family
      functionSourceFile: '/src/openvswitch/lib/netlink-socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 969
      functionLinenumberEnd: 983
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - short
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          65
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - find_genl_family_by_id
        - hash_int
        - hmap_insert_at
        - strcmp
        - xmalloc
        - xstrdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-socket.c:970,34'
          Dst:             find_genl_family_by_id
        - Src:             'lib/netlink-socket.c:973,14'
          Dst:             strcmp
        - Src:             'lib/netlink-socket.c:978,18'
          Dst:             xmalloc
        - Src:             'lib/netlink-socket.c:980,9'
          Dst:             hash_int
        - Src:             'lib/netlink-socket.c:980,9'
          Dst:             hmap_insert_at
        - Src:             'lib/netlink-socket.c:982,20'
          Dst:             xstrdup
    - functionName:    nl_lookup_genl_family
      functionSourceFile: '/src/openvswitch/lib/netlink-socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1094
      functionLinenumberEnd: 1111
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          83
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - define_genl_family
        - do_lookup_genl_family
        - nl_attr_get_u16
        - ofpbuf_delete
        - ovs_ignore
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-socket.c:1100,17'
          Dst:             do_lookup_genl_family
        - Src:             'lib/netlink-socket.c:1102,23'
          Dst:             nl_attr_get_u16
        - Src:             'lib/netlink-socket.c:1103,13'
          Dst:             define_genl_family
        - Src:             'lib/netlink-socket.c:1107,9'
          Dst:             ofpbuf_delete
        - Src:             'lib/netlink-socket.c:1109,9'
          Dst:             ovs_ignore
    - functionName:    do_lookup_genl_family
      functionSourceFile: '/src/openvswitch/lib/netlink-socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 999
      functionLinenumberEnd: 1032
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          93
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - nl_attr_get_u16
        - nl_msg_put_genlmsghdr
        - nl_msg_put_string
        - nl_policy_parse
        - nl_sock_create
        - nl_sock_destroy
        - nl_sock_transact
        - ofpbuf_delete
        - ofpbuf_init
        - ofpbuf_uninit
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-socket.c:1005,13'
          Dst:             nl_sock_create
        - Src:             'lib/netlink-socket.c:1010,5'
          Dst:             ofpbuf_init
        - Src:             'lib/netlink-socket.c:1011,5'
          Dst:             nl_msg_put_genlmsghdr
        - Src:             'lib/netlink-socket.c:1013,5'
          Dst:             nl_msg_put_string
        - Src:             'lib/netlink-socket.c:1014,13'
          Dst:             nl_sock_transact
        - Src:             'lib/netlink-socket.c:1015,5'
          Dst:             ofpbuf_uninit
        - Src:             'lib/netlink-socket.c:1017,9'
          Dst:             nl_sock_destroy
        - Src:             'lib/netlink-socket.c:1021,10'
          Dst:             nl_policy_parse
        - Src:             'lib/netlink-socket.c:1023,12'
          Dst:             nl_attr_get_u16
        - Src:             'lib/netlink-socket.c:1024,9'
          Dst:             nl_sock_destroy
        - Src:             'lib/netlink-socket.c:1025,9'
          Dst:             ofpbuf_delete
        - Src:             'lib/netlink-socket.c:1029,5'
          Dst:             nl_sock_destroy
    - functionName:    nl_attr_next
      functionSourceFile: '/src/openvswitch/lib/netlink.h'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 165
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nl_attr_len_pad
      functionSourceFile: '/src/openvswitch/lib/netlink.h'
      linkageType:     InternalLinkage
      functionLinenumber: 179
      functionLinenumberEnd: 182
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          37
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nl_attr_is_valid
      functionSourceFile: '/src/openvswitch/lib/netlink.h'
      linkageType:     InternalLinkage
      functionLinenumber: 171
      functionLinenumberEnd: 174
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nl_lookup_genl_mcgroup
      functionSourceFile: '/src/openvswitch/lib/netlink-socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1041
      functionLinenumberEnd: 1086
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          122
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - do_lookup_genl_family
        - nl_attr_get
        - nl_attr_get_size
        - nl_attr_get_string
        - nl_attr_get_u32
        - nl_attr_is_valid
        - nl_attr_len_pad
        - nl_attr_next
        - nl_parse_nested
        - ofpbuf_delete
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-socket.c:1049,13'
          Dst:             do_lookup_genl_family
        - Src:             'lib/netlink-socket.c:1059,5'
          Dst:             nl_attr_get
        - Src:             'lib/netlink-socket.c:1059,5'
          Dst:             nl_attr_get_size
        - Src:             'lib/netlink-socket.c:1059,5'
          Dst:             nl_attr_is_valid
        - Src:             'lib/netlink-socket.c:1068,14'
          Dst:             nl_parse_nested
        - Src:             'lib/netlink-socket.c:1073,19'
          Dst:             nl_attr_get_string
        - Src:             'lib/netlink-socket.c:1074,14'
          Dst:             strcmp
        - Src:             'lib/netlink-socket.c:1076,17'
          Dst:             nl_attr_get_u32
        - Src:             'lib/netlink-socket.c:1059,5'
          Dst:             nl_attr_len_pad
        - Src:             'lib/netlink-socket.c:1059,5'
          Dst:             nl_attr_next
        - Src:             'lib/netlink-socket.c:1084,5'
          Dst:             ofpbuf_delete
    - functionName:    nl_sock_pid
      functionSourceFile: '/src/openvswitch/lib/netlink-socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 934
      functionLinenumberEnd: 935
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nl_sock_fd
      functionSourceFile: '/src/openvswitch/lib/netlink-socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 927
      functionLinenumberEnd: 928
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nl_sock_wait
      functionSourceFile: '/src/openvswitch/lib/netlink-socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 914
      functionLinenumberEnd: 916
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - poll_fd_wait_at
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-socket.c:915,5'
          Dst:             poll_fd_wait_at
    - functionName:    nl_dump_done
      functionSourceFile: '/src/openvswitch/lib/netlink-socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 877
      functionLinenumberEnd: 907
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          85
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - nl_dump_next
        - nl_pool_release
        - ofpbuf_uninit
        - ofpbuf_use_stub
        - ovs_ignore
        - ovs_mutex_destroy
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    14
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-socket.c:880,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netlink-socket.c:882,5'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/netlink-socket.c:892,9'
          Dst:             ofpbuf_use_stub
        - Src:             'lib/netlink-socket.c:893,16'
          Dst:             nl_dump_next
        - Src:             'lib/netlink-socket.c:896,9'
          Dst:             ofpbuf_uninit
        - Src:             'lib/netlink-socket.c:898,9'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netlink-socket.c:900,9'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/netlink-socket.c:901,9'
          Dst:             ovs_ignore
        - Src:             'lib/netlink-socket.c:904,5'
          Dst:             nl_pool_release
        - Src:             'lib/netlink-socket.c:905,5'
          Dst:             ovs_mutex_destroy
    - functionName:    nl_dump_next
      functionSourceFile: '/src/openvswitch/lib/netlink-socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 828
      functionLinenumberEnd: 869
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          128
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - nl_dump_next__
        - nl_dump_refill
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    16
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-socket.c:837,9'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netlink-socket.c:845,28'
          Dst:             nl_dump_refill
        - Src:             'lib/netlink-socket.c:848,9'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/netlink-socket.c:853,18'
          Dst:             nl_dump_next__
        - Src:             'lib/netlink-socket.c:857,13'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netlink-socket.c:861,13'
          Dst:             ovs_mutex_unlock
    - functionName:    nl_dump_refill
      functionSourceFile: '/src/openvswitch/lib/netlink-socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 757
      functionLinenumberEnd: 790
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         30
      ICount:          147
      EdgeCount:       38
      CyclomaticComplexity: 10
      functionsReached:
        - nl_msg_nlmsgerr
        - nl_msg_nlmsghdr
        - nl_sock_recv__
        - ofpbuf_clear
        - ovs_strerror
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-socket.c:762,17'
          Dst:             nl_sock_recv__
        - Src:             'lib/netlink-socket.c:774,20'
          Dst:             nl_msg_nlmsghdr
        - Src:             'lib/netlink-socket.c:776,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/netlink-socket.c:778,13'
          Dst:             ofpbuf_clear
        - Src:             'lib/netlink-socket.c:782,9'
          Dst:             nl_msg_nlmsgerr
        - Src:             'lib/netlink-socket.c:783,9'
          Dst:             ovs_strerror
        - Src:             'lib/netlink-socket.c:783,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/netlink-socket.c:785,9'
          Dst:             ofpbuf_clear
    - functionName:    nl_dump_next__
      functionSourceFile: '/src/openvswitch/lib/netlink-socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 794
      functionLinenumberEnd: 804
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          66
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - nl_msg_next
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-socket.c:795,33'
          Dst:             nl_msg_next
        - Src:             'lib/netlink-socket.c:797,9'
          Dst:             vlog_rate_limit
    - functionName:    nl_dump_start
      functionSourceFile: '/src/openvswitch/lib/netlink-socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 739
      functionLinenumberEnd: 752
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          74
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - nl_msg_nlmsghdr
        - nl_pool_alloc
        - nl_sock_allocate_seq
        - nl_sock_send__
        - ovs_mutex_init
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    12
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-socket.c:740,5'
          Dst:             nl_msg_nlmsghdr
        - Src:             'lib/netlink-socket.c:742,5'
          Dst:             ovs_mutex_init
        - Src:             'lib/netlink-socket.c:743,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netlink-socket.c:744,20'
          Dst:             nl_pool_alloc
        - Src:             'lib/netlink-socket.c:747,39'
          Dst:             nl_sock_allocate_seq
        - Src:             'lib/netlink-socket.c:746,24'
          Dst:             nl_sock_send__
        - Src:             'lib/netlink-socket.c:750,20'
          Dst:             nl_msg_nlmsghdr
        - Src:             'lib/netlink-socket.c:751,5'
          Dst:             ovs_mutex_unlock
    - functionName:    nl_sock_send__
      functionSourceFile: '/src/openvswitch/lib/netlink-socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 295
      functionLinenumberEnd: 312
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          110
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - __errno_location
        - log_nlmsg
        - netlink_sent_add
        - nl_msg_nlmsghdr
        - send
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-socket.c:296,30'
          Dst:             nl_msg_nlmsghdr
        - Src:             'lib/netlink-socket.c:304,18'
          Dst:             send
        - Src:             'lib/netlink-socket.c:306,30'
          Dst:             __errno_location
        - Src:             'lib/netlink-socket.c:308,5'
          Dst:             log_nlmsg
        - Src:             'lib/netlink-socket.c:310,9'
          Dst:             netlink_sent_add
    - functionName:    nl_sock_drain
      functionSourceFile: '/src/openvswitch/lib/netlink-socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 717
      functionLinenumberEnd: 718
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - drain_rcvbuf
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-socket.c:718,12'
          Dst:             drain_rcvbuf
    - functionName:    nl_sock_recv
      functionSourceFile: '/src/openvswitch/lib/netlink-socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 484
      functionLinenumberEnd: 485
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_sock_recv__
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-socket.c:485,12'
          Dst:             nl_sock_recv__
    - functionName:    nl_sock_send_seq
      functionSourceFile: '/src/openvswitch/lib/netlink-socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 343
      functionLinenumberEnd: 344
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_sock_send__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-socket.c:344,12'
          Dst:             nl_sock_send__
    - functionName:    nl_sock_send
      functionSourceFile: '/src/openvswitch/lib/netlink-socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 325
      functionLinenumberEnd: 326
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_sock_allocate_seq
        - nl_sock_send_seq
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-socket.c:326,40'
          Dst:             nl_sock_allocate_seq
        - Src:             'lib/netlink-socket.c:326,12'
          Dst:             nl_sock_send_seq
    - functionName:    nl_sock_leave_mcgroup
      functionSourceFile: '/src/openvswitch/lib/netlink-socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 282
      functionLinenumberEnd: 290
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          59
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - __errno_location
        - ovs_strerror
        - setsockopt
        - vlog
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-socket.c:283,9'
          Dst:             setsockopt
        - Src:             'lib/netlink-socket.c:285,9'
          Dst:             __errno_location
        - Src:             'lib/netlink-socket.c:285,9'
          Dst:             ovs_strerror
        - Src:             'lib/netlink-socket.c:285,9'
          Dst:             vlog
        - Src:             'lib/netlink-socket.c:287,16'
          Dst:             __errno_location
    - functionName:    nl_sock_listen_all_nsid
      functionSourceFile: '/src/openvswitch/lib/netlink-socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 255
      functionLinenumberEnd: 268
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          72
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - __errno_location
        - ovs_strerror
        - setsockopt
        - vlog
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-socket.c:259,9'
          Dst:             setsockopt
        - Src:             'lib/netlink-socket.c:261,17'
          Dst:             __errno_location
        - Src:             'lib/netlink-socket.c:262,9'
          Dst:             ovs_strerror
        - Src:             'lib/netlink-socket.c:262,9'
          Dst:             vlog
        - Src:             'lib/netlink-socket.c:264,16'
          Dst:             __errno_location
    - functionName:    nl_sock_join_mcgroup
      functionSourceFile: '/src/openvswitch/lib/netlink-socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 235
      functionLinenumberEnd: 243
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          59
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - __errno_location
        - ovs_strerror
        - setsockopt
        - vlog
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-socket.c:236,9'
          Dst:             setsockopt
        - Src:             'lib/netlink-socket.c:238,9'
          Dst:             __errno_location
        - Src:             'lib/netlink-socket.c:238,9'
          Dst:             ovs_strerror
        - Src:             'lib/netlink-socket.c:238,9'
          Dst:             vlog
        - Src:             'lib/netlink-socket.c:240,16'
          Dst:             __errno_location
    - functionName:    nl_sock_clone
      functionSourceFile: '/src/openvswitch/lib/netlink-socket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 208
      functionLinenumberEnd: 209
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_sock_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-socket.c:209,12'
          Dst:             nl_sock_create
    - functionName:    rtnetlink_report_link
      functionSourceFile: '/src/openvswitch/lib/rtnetlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 250
      functionLinenumberEnd: 254
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         6
      ICount:          24
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - nln_report
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/rtnetlink.c:252,9'
          Dst:             nln_report
    - functionName:    rtnetlink_wait
      functionSourceFile: '/src/openvswitch/lib/rtnetlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 241
      functionLinenumberEnd: 245
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         6
      ICount:          24
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - nln_wait
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/rtnetlink.c:243,9'
          Dst:             nln_wait
    - functionName:    rtnetlink_run
      functionSourceFile: '/src/openvswitch/lib/rtnetlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 231
      functionLinenumberEnd: 235
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         6
      ICount:          24
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - nln_run
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/rtnetlink.c:233,9'
          Dst:             nln_run
    - functionName:    rtnetlink_notifier_destroy
      functionSourceFile: '/src/openvswitch/lib/rtnetlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 223
      functionLinenumberEnd: 225
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nln_notifier_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/rtnetlink.c:224,5'
          Dst:             nln_notifier_destroy
    - functionName:    rtnetlink_parse_cb
      functionSourceFile: '/src/openvswitch/lib/rtnetlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 194
      functionLinenumberEnd: 195
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - rtnetlink_parse
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/rtnetlink.c:195,12'
          Dst:             rtnetlink_parse
    - functionName:    rtnetlink_parse
      functionSourceFile: '/src/openvswitch/lib/rtnetlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 87
      functionLinenumberEnd: 188
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         38
      ICount:          256
      EdgeCount:       50
      CyclomaticComplexity: 14
      functionsReached:
        - nl_attr_get
        - nl_attr_get_size
        - nl_attr_get_string
        - nl_attr_get_u32
        - nl_policy_parse
        - ofpbuf_at_assert
        - rtnetlink_parse_link_info
        - rtnetlink_type_is_rtnlgrp_addr
        - rtnetlink_type_is_rtnlgrp_link
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/rtnetlink.c:93,9'
          Dst:             rtnetlink_type_is_rtnlgrp_link
        - Src:             'lib/rtnetlink.c:109,18'
          Dst:             nl_policy_parse
        - Src:             'lib/rtnetlink.c:115,22'
          Dst:             ofpbuf_at_assert
        - Src:             'lib/rtnetlink.c:136,38'
          Dst:             nl_attr_get_string
        - Src:             'lib/rtnetlink.c:139,41'
          Dst:             nl_attr_get_u32
        - Src:             'lib/rtnetlink.c:142,41'
          Dst:             nl_attr_get_u32
        - Src:             'lib/rtnetlink.c:146,17'
          Dst:             nl_attr_get_size
        - Src:             'lib/rtnetlink.c:147,38'
          Dst:             nl_attr_get
        - Src:             'lib/rtnetlink.c:154,26'
          Dst:             rtnetlink_parse_link_info
        - Src:             'lib/rtnetlink.c:161,16'
          Dst:             rtnetlink_type_is_rtnlgrp_addr
        - Src:             'lib/rtnetlink.c:172,18'
          Dst:             nl_policy_parse
        - Src:             'lib/rtnetlink.c:178,22'
          Dst:             ofpbuf_at_assert
        - Src:             'lib/rtnetlink.c:183,41'
          Dst:             nl_attr_get_string
    - functionName:    rtnetlink_type_is_rtnlgrp_link
      functionSourceFile: '/src/openvswitch/lib/rtnetlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40
      functionLinenumberEnd: 41
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          24
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofpbuf_at_assert
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 195
      functionLinenumberEnd: 198
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:196,5'
          Dst:             ovs_ignore
        - Src:             './include/openvswitch/ofpbuf.h:197,5'
          Dst:             ovs_ignore
    - functionName:    rtnetlink_parse_link_info
      functionSourceFile: '/src/openvswitch/lib/rtnetlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 79
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          71
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - nl_attr_get_string
        - nl_parse_nested
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/rtnetlink.c:67,14'
          Dst:             nl_parse_nested
        - Src:             'lib/rtnetlink.c:72,30'
          Dst:             nl_attr_get_string
        - Src:             'lib/rtnetlink.c:75,26'
          Dst:             nl_attr_get_string
    - functionName:    rtnetlink_type_is_rtnlgrp_addr
      functionSourceFile: '/src/openvswitch/lib/rtnetlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48
      functionLinenumberEnd: 49
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          24
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rtnetlink_notifier_create
      functionSourceFile: '/src/openvswitch/lib/rtnetlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 211
      functionLinenumberEnd: 216
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - nln_create
        - nln_notifier_create
        - rtnetlink_parse_cb
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/rtnetlink.c:213,15'
          Dst:             nln_create
        - Src:             'lib/rtnetlink.c:213,15'
          Dst:             rtnetlink_parse_cb
        - Src:             'lib/rtnetlink.c:216,12'
          Dst:             nln_notifier_create
    - functionName:    init_this_module_route_table
      functionSourceFile: '/src/openvswitch/lib/route-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 61
      functionLinenumberEnd: 61
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/route-table.c:61,1'
          Dst:             vlog_insert_module
    - functionName:    route_table_dump_init_coverage
      functionSourceFile: '/src/openvswitch/lib/route-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 63
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/route-table.c:63,1'
          Dst:             coverage_counter_register
    - functionName:    route_table_dump_count
      functionSourceFile: '/src/openvswitch/lib/route-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 63
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_route_table_dump_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/route-table.c:63,1'
          Dst:             counter_route_table_dump_get
    - functionName:    counter_route_table_dump_get
      functionSourceFile: '/src/openvswitch/lib/route-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 63
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_route_table_dump_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/route-table.c:63,1'
          Dst:             counter_route_table_dump_get_unsafe
    - functionName:    counter_route_table_dump_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/route-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 63
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    name_table_change
      functionSourceFile: '/src/openvswitch/lib/route-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 800
      functionLinenumberEnd: 814
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          71
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - tnl_port_map_delete_ipdev
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/route-table.c:811,13'
          Dst:             tnl_port_map_delete_ipdev
    - functionName:    ovs_list_splice
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 175
      functionLinenumberEnd: 190
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          62
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofpbuf_pull
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 258
      functionLinenumberEnd: 269
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          64
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:259,5'
          Dst:             ovs_ignore
    - functionName:    route_type_needs_nexthop
      functionSourceFile: '/src/openvswitch/lib/route-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 439
      functionLinenumberEnd: 450
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          36
      EdgeCount:       14
      CyclomaticComplexity: 8
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/route-table.c:440,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    ovs_list_push_back_all
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 341
      functionLinenumberEnd: 343
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_list_splice
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/list.h:342,5'
          Dst:             ovs_list_splice
    - functionName:    ofpbuf_try_pull
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 275
      functionLinenumberEnd: 276
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofpbuf_pull
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:276,30'
          Dst:             ofpbuf_pull
    - functionName:    ovs_list_insert
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 169
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_list_init
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_list_front
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 283
      functionLinenumberEnd: 288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovs_list_is_empty
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/list.h:286,17'
          Dst:             ovs_list_is_empty
        - Src:             './include/openvswitch/list.h:286,5'
          Dst:             ovs_ignore
    - functionName:    ovs_list_is_empty
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 320
      functionLinenumberEnd: 321
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    route_table_handle_msg
      functionSourceFile: '/src/openvswitch/lib/route-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 743
      functionLinenumberEnd: 760
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          136
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - htonl
        - ovs_list_front
        - ovs_list_is_empty
        - ovs_router_insert
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/route-table.c:745,17'
          Dst:             ovs_list_is_empty
        - Src:             'lib/route-table.c:752,16'
          Dst:             ovs_list_front
        - Src:             'lib/route-table.c:756,27'
          Dst:             htonl
        - Src:             'lib/route-table.c:755,9'
          Dst:             ovs_router_insert
    - functionName:    in6_addr_mapped_ipv4
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1215
      functionLinenumberEnd: 1220
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          20
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nl_attr_next
      functionSourceFile: '/src/openvswitch/lib/netlink.h'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 165
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nl_attr_len_pad
      functionSourceFile: '/src/openvswitch/lib/netlink.h'
      linkageType:     InternalLinkage
      functionLinenumber: 179
      functionLinenumberEnd: 182
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          37
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nl_attr_is_valid
      functionSourceFile: '/src/openvswitch/lib/netlink.h'
      linkageType:     InternalLinkage
      functionLinenumber: 171
      functionLinenumberEnd: 174
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    in6_addr_set_mapped_ipv4
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1225
      functionLinenumberEnd: 1227
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - in6_addr_mapped_ipv4
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:1226,12'
          Dst:             in6_addr_mapped_ipv4
    - functionName:    rule_handle_msg
      functionSourceFile: '/src/openvswitch/lib/route-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 285
      functionLinenumberEnd: 295
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          64
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_router_rule_add
        - route_table_dump_one_table
        - route_table_handle_msg
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/route-table.c:290,9'
          Dst:             route_table_dump_one_table
        - Src:             'lib/route-table.c:290,9'
          Dst:             route_table_handle_msg
        - Src:             'lib/route-table.c:292,9'
          Dst:             ovs_router_rule_add
    - functionName:    route_table_dump_one_table
      functionSourceFile: '/src/openvswitch/lib/route-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 196
      functionLinenumberEnd: 238
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - int
        - short
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          111
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - nl_dump_done
        - nl_dump_next
        - nl_dump_start
        - nl_msg_nlmsghdr
        - nl_msg_put_nlmsghdr
        - nl_msg_put_u32
        - ofpbuf_init
        - ofpbuf_put_zeros
        - ofpbuf_uninit
        - ofpbuf_use_stub
        - route_data_destroy
        - route_table_parse
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/route-table.c:203,5'
          Dst:             ofpbuf_init
        - Src:             'lib/route-table.c:205,5'
          Dst:             nl_msg_put_nlmsghdr
        - Src:             'lib/route-table.c:207,14'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/route-table.c:212,9'
          Dst:             nl_msg_put_u32
        - Src:             'lib/route-table.c:217,5'
          Dst:             nl_dump_start
        - Src:             'lib/route-table.c:218,5'
          Dst:             ofpbuf_uninit
        - Src:             'lib/route-table.c:220,5'
          Dst:             ofpbuf_use_stub
        - Src:             'lib/route-table.c:221,12'
          Dst:             nl_dump_next
        - Src:             'lib/route-table.c:224,13'
          Dst:             route_table_parse
        - Src:             'lib/route-table.c:225,41'
          Dst:             nl_msg_nlmsghdr
        - Src:             'lib/route-table.c:232,13'
          Dst:             route_data_destroy
        - Src:             'lib/route-table.c:235,5'
          Dst:             ofpbuf_uninit
        - Src:             'lib/route-table.c:236,5'
          Dst:             nl_dump_done
    - functionName:    route_table_parse
      functionSourceFile: '/src/openvswitch/lib/route-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 712
      functionLinenumberEnd: 725
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          51
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ofpbuf_at
        - route_table_parse__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/route-table.c:716,13'
          Dst:             ofpbuf_at
        - Src:             'lib/route-table.c:717,11'
          Dst:             ofpbuf_at
        - Src:             'lib/route-table.c:723,12'
          Dst:             route_table_parse__
    - functionName:    route_data_destroy
      functionSourceFile: '/src/openvswitch/lib/route-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 116
      functionLinenumberEnd: 118
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - route_data_destroy_nexthops__
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/route-table.c:117,5'
          Dst:             route_data_destroy_nexthops__
    - functionName:    route_data_destroy_nexthops__
      functionSourceFile: '/src/openvswitch/lib/route-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 104
      functionLinenumberEnd: 112
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          64
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - ovs_list_is_empty
        - ovs_list_pop_front
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/route-table.c:107,5'
          Dst:             ovs_list_is_empty
        - Src:             'lib/route-table.c:107,5'
          Dst:             ovs_list_pop_front
    - functionName:    ovs_list_pop_front
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 261
      functionLinenumberEnd: 265
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_list_remove
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/list.h:264,5'
          Dst:             ovs_list_remove
    - functionName:    ovs_list_remove
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 251
      functionLinenumberEnd: 254
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          25
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofpbuf_at
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 183
      functionLinenumberEnd: 189
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:185,9'
          Dst:             ovs_ignore
    - functionName:    route_table_parse__
      functionSourceFile: '/src/openvswitch/lib/route-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 458
      functionLinenumberEnd: 698
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         170
      ICount:          961
      EdgeCount:       219
      CyclomaticComplexity: 51
      functionsReached:
        - __errno_location
        - if_indextoname
        - in6_addr_set_mapped_ipv4
        - nl_attr_get
        - nl_attr_get_be32
        - nl_attr_get_in6_addr
        - nl_attr_get_size
        - nl_attr_get_u32
        - nl_attr_is_valid
        - nl_attr_len_pad
        - nl_attr_next
        - nl_policy_parse
        - ofpbuf_try_pull
        - ofpbuf_use_const
        - ovs_list_init
        - ovs_list_insert
        - ovs_list_push_back_all
        - ovs_strerror
        - route_data_destroy
        - route_data_destroy_nexthops__
        - route_table_parse__
        - route_type_needs_nexthop
        - vlog_rate_limit
        - xzalloc
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/route-table.c:600,13'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/route-table.c:488,18'
          Dst:             nl_policy_parse
        - Src:             'lib/route-table.c:492,18'
          Dst:             nl_policy_parse
        - Src:             'lib/route-table.c:495,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/route-table.c:505,9'
          Dst:             ovs_list_init
        - Src:             'lib/route-table.c:506,23'
          Dst:             xzalloc
        - Src:             'lib/route-table.c:507,9'
          Dst:             ovs_list_insert
        - Src:             'lib/route-table.c:523,39'
          Dst:             nl_attr_get_u32
        - Src:             'lib/route-table.c:531,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/route-table.c:537,30'
          Dst:             nl_attr_get_u32
        - Src:             'lib/route-table.c:539,18'
          Dst:             if_indextoname
        - Src:             'lib/route-table.c:540,29'
          Dst:             __errno_location
        - Src:             'lib/route-table.c:542,17'
          Dst:             ovs_strerror
        - Src:             'lib/route-table.c:542,17'
          Dst:             vlog_rate_limit
        - Src:             'lib/route-table.c:555,23'
          Dst:             nl_attr_get_be32
        - Src:             'lib/route-table.c:556,17'
          Dst:             in6_addr_set_mapped_ipv4
        - Src:             'lib/route-table.c:558,38'
          Dst:             nl_attr_get_in6_addr
        - Src:             'lib/route-table.c:561,13'
          Dst:             in6_addr_set_mapped_ipv4
        - Src:             'lib/route-table.c:566,27'
          Dst:             nl_attr_get_be32
        - Src:             'lib/route-table.c:567,17'
          Dst:             in6_addr_set_mapped_ipv4
        - Src:             'lib/route-table.c:570,21'
          Dst:             nl_attr_get_in6_addr
        - Src:             'lib/route-table.c:576,22'
          Dst:             nl_attr_get_be32
        - Src:             'lib/route-table.c:577,17'
          Dst:             in6_addr_set_mapped_ipv4
        - Src:             'lib/route-table.c:579,30'
          Dst:             nl_attr_get_in6_addr
        - Src:             'lib/route-table.c:583,35'
          Dst:             nl_attr_get_u32
        - Src:             'lib/route-table.c:586,39'
          Dst:             nl_attr_get_u32
        - Src:             'lib/route-table.c:589,41'
          Dst:             nl_attr_get
        - Src:             'lib/route-table.c:593,17'
          Dst:             vlog_rate_limit
        - Src:             'lib/route-table.c:602,21'
          Dst:             nl_attr_get_size
        - Src:             'lib/route-table.c:604,21'
          Dst:             vlog_rate_limit
        - Src:             'lib/route-table.c:609,17'
          Dst:             in6_addr_set_mapped_ipv4
        - Src:             'lib/route-table.c:613,21'
          Dst:             nl_attr_get_size
        - Src:             'lib/route-table.c:615,21'
          Dst:             vlog_rate_limit
        - Src:             'lib/route-table.c:623,17'
          Dst:             vlog_rate_limit
        - Src:             'lib/route-table.c:633,17'
          Dst:             vlog_rate_limit
        - Src:             'lib/route-table.c:649,13'
          Dst:             route_data_destroy_nexthops__
        - Src:             'lib/route-table.c:651,13'
          Dst:             nl_attr_get
        - Src:             'lib/route-table.c:651,13'
          Dst:             nl_attr_get_size
        - Src:             'lib/route-table.c:651,13'
          Dst:             nl_attr_is_valid
        - Src:             'lib/route-table.c:656,17'
          Dst:             ofpbuf_use_const
        - Src:             'lib/route-table.c:657,27'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/route-table.c:660,21'
          Dst:             vlog_rate_limit
        - Src:             'lib/route-table.c:665,22'
          Dst:             route_table_parse__
        - Src:             'lib/route-table.c:669,17'
          Dst:             ovs_list_push_back_all
        - Src:             'lib/route-table.c:651,13'
          Dst:             nl_attr_len_pad
        - Src:             'lib/route-table.c:651,13'
          Dst:             nl_attr_next
        - Src:             'lib/route-table.c:673,13'
          Dst:             route_type_needs_nexthop
        - Src:             'lib/route-table.c:676,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/route-table.c:684,14'
          Dst:             route_type_needs_nexthop
        - Src:             'lib/route-table.c:685,13'
          Dst:             route_data_destroy_nexthops__
        - Src:             'lib/route-table.c:688,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/route-table.c:696,5'
          Dst:             route_data_destroy
    - functionName:    rule_parse
      functionSourceFile: '/src/openvswitch/lib/route-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 318
      functionLinenumberEnd: 432
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         81
      ICount:          486
      EdgeCount:       107
      CyclomaticComplexity: 28
      functionsReached:
        - in6_addr_set_mapped_ipv4
        - nl_attr_get_be32
        - nl_attr_get_in6_addr
        - nl_attr_get_u32
        - nl_attr_is_valid
        - nl_attr_len_pad
        - nl_attr_next
        - nl_attr_type
        - nl_policy_parse
        - ofpbuf_at
        - vlog_rate_limit
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/route-table.c:338,11'
          Dst:             ofpbuf_at
        - Src:             'lib/route-table.c:345,18'
          Dst:             nl_policy_parse
        - Src:             'lib/route-table.c:350,18'
          Dst:             nl_policy_parse
        - Src:             'lib/route-table.c:354,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/route-table.c:377,32'
          Dst:             nl_attr_get_u32
        - Src:             'lib/route-table.c:382,32'
          Dst:             nl_attr_get_be32
        - Src:             'lib/route-table.c:383,17'
          Dst:             in6_addr_set_mapped_ipv4
        - Src:             'lib/route-table.c:385,41'
          Dst:             nl_attr_get_in6_addr
        - Src:             'lib/route-table.c:389,17'
          Dst:             in6_addr_set_mapped_ipv4
        - Src:             'lib/route-table.c:396,40'
          Dst:             nl_attr_get_u32
        - Src:             'lib/route-table.c:405,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/route-table.c:416,9'
          Dst:             ofpbuf_at
        - Src:             'lib/route-table.c:416,9'
          Dst:             nl_attr_is_valid
        - Src:             'lib/route-table.c:418,29'
          Dst:             nl_attr_type
        - Src:             'lib/route-table.c:416,9'
          Dst:             nl_attr_len_pad
        - Src:             'lib/route-table.c:416,9'
          Dst:             nl_attr_next
    - functionName:    rules_dump
      functionSourceFile: '/src/openvswitch/lib/route-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 243
      functionLinenumberEnd: 269
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         9
      ICount:          51
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - nl_dump_done
        - nl_dump_next
        - nl_dump_start
        - nl_msg_put_nlmsghdr
        - ofpbuf_init
        - ofpbuf_put_zeros
        - ofpbuf_uninit
        - ofpbuf_use_stub
        - rule_handle_msg
        - rule_parse
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/route-table.c:249,5'
          Dst:             ofpbuf_init
        - Src:             'lib/route-table.c:251,5'
          Dst:             nl_msg_put_nlmsghdr
        - Src:             'lib/route-table.c:253,14'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/route-table.c:256,5'
          Dst:             nl_dump_start
        - Src:             'lib/route-table.c:257,5'
          Dst:             ofpbuf_uninit
        - Src:             'lib/route-table.c:259,5'
          Dst:             ofpbuf_use_stub
        - Src:             'lib/route-table.c:260,12'
          Dst:             nl_dump_next
        - Src:             'lib/route-table.c:263,13'
          Dst:             rule_parse
        - Src:             'lib/route-table.c:264,13'
          Dst:             rule_handle_msg
        - Src:             'lib/route-table.c:267,5'
          Dst:             ofpbuf_uninit
        - Src:             'lib/route-table.c:268,5'
          Dst:             nl_dump_done
    - functionName:    route_table_dump_add
      functionSourceFile: '/src/openvswitch/lib/route-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 63
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_route_table_dump_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/route-table.c:63,1'
          Dst:             counter_route_table_dump_get
    - functionName:    route_map_clear
      functionSourceFile: '/src/openvswitch/lib/route-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 773
      functionLinenumberEnd: 776
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_router_flush
        - ovs_router_rules_flush
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/route-table.c:774,5'
          Dst:             ovs_router_rules_flush
        - Src:             'lib/route-table.c:775,5'
          Dst:             ovs_router_flush
    - functionName:    route_table_fallback_lookup
      functionSourceFile: '/src/openvswitch/lib/route-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 782
      functionLinenumberEnd: 784
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    route_table_wait
      functionSourceFile: '/src/openvswitch/lib/route-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 183
      functionLinenumberEnd: 190
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         6
      ICount:          27
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - nln_wait
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - rtnetlink_wait
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/route-table.c:184,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/route-table.c:186,9'
          Dst:             rtnetlink_wait
        - Src:             'lib/route-table.c:187,9'
          Dst:             nln_wait
        - Src:             'lib/route-table.c:189,5'
          Dst:             ovs_mutex_unlock
    - functionName:    route_table_run
      functionSourceFile: '/src/openvswitch/lib/route-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 166
      functionLinenumberEnd: 177
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         12
      ICount:          44
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - nln_run
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - route_table_reset
        - rtnetlink_run
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/route-table.c:167,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/route-table.c:169,9'
          Dst:             rtnetlink_run
        - Src:             'lib/route-table.c:170,9'
          Dst:             nln_run
        - Src:             'lib/route-table.c:173,13'
          Dst:             route_table_reset
        - Src:             'lib/route-table.c:176,5'
          Dst:             ovs_mutex_unlock
    - functionName:    route_table_reset
      functionSourceFile: '/src/openvswitch/lib/route-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 273
      functionLinenumberEnd: 281
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - netdev_get_addrs_list_flush
        - route_map_clear
        - route_table_dump_add
        - rules_dump
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/route-table.c:274,5'
          Dst:             route_map_clear
        - Src:             'lib/route-table.c:275,5'
          Dst:             netdev_get_addrs_list_flush
        - Src:             'lib/route-table.c:279,5'
          Dst:             route_table_dump_add
        - Src:             'lib/route-table.c:280,5'
          Dst:             rules_dump
    - functionName:    name_table_init
      functionSourceFile: '/src/openvswitch/lib/route-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 792
      functionLinenumberEnd: 794
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - name_table_change
        - rtnetlink_notifier_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/route-table.c:793,21'
          Dst:             rtnetlink_notifier_create
        - Src:             'lib/route-table.c:793,21'
          Dst:             name_table_change
    - functionName:    rules_change
      functionSourceFile: '/src/openvswitch/lib/route-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 765
      functionLinenumberEnd: 769
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          30
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    route_table_change
      functionSourceFile: '/src/openvswitch/lib/route-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 729
      functionLinenumberEnd: 738
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          61
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - ovs_router_is_referenced
        - route_data_destroy
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/route-table.c:732,16'
          Dst:             ovs_router_is_referenced
        - Src:             'lib/route-table.c:736,9'
          Dst:             route_data_destroy
    - functionName:    route_nln_parse
      functionSourceFile: '/src/openvswitch/lib/route-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 299
      functionLinenumberEnd: 312
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         20
      ICount:          101
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - route_table_parse
        - rule_parse
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/route-table.c:304,16'
          Dst:             route_table_parse
        - Src:             'lib/route-table.c:307,16'
          Dst:             rule_parse
        - Src:             'lib/route-table.c:310,5'
          Dst:             vlog_rate_limit
    - functionName:    route_table_init
      functionSourceFile: '/src/openvswitch/lib/route-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 131
      functionLinenumberEnd: 160
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          50
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - name_table_init
        - nln_create
        - nln_notifier_create
        - ovs_ignore
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovs_router_init
        - route_nln_parse
        - route_table_change
        - route_table_reset
        - rules_change
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/route-table.c:132,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/route-table.c:133,5'
          Dst:             ovs_ignore
        - Src:             'lib/route-table.c:134,5'
          Dst:             ovs_ignore
        - Src:             'lib/route-table.c:135,5'
          Dst:             ovs_ignore
        - Src:             'lib/route-table.c:136,5'
          Dst:             ovs_ignore
        - Src:             'lib/route-table.c:137,5'
          Dst:             ovs_ignore
        - Src:             'lib/route-table.c:139,5'
          Dst:             ovs_router_init
        - Src:             'lib/route-table.c:140,11'
          Dst:             nln_create
        - Src:             'lib/route-table.c:140,11'
          Dst:             route_nln_parse
        - Src:             'lib/route-table.c:143,9'
          Dst:             nln_notifier_create
        - Src:             'lib/route-table.c:143,9'
          Dst:             route_table_change
        - Src:             'lib/route-table.c:146,9'
          Dst:             nln_notifier_create
        - Src:             'lib/route-table.c:146,9'
          Dst:             route_table_change
        - Src:             'lib/route-table.c:150,9'
          Dst:             nln_notifier_create
        - Src:             'lib/route-table.c:150,9'
          Dst:             rules_change
        - Src:             'lib/route-table.c:153,9'
          Dst:             nln_notifier_create
        - Src:             'lib/route-table.c:153,9'
          Dst:             rules_change
        - Src:             'lib/route-table.c:156,5'
          Dst:             route_table_reset
        - Src:             'lib/route-table.c:157,5'
          Dst:             name_table_init
        - Src:             'lib/route-table.c:159,5'
          Dst:             ovs_mutex_unlock
    - functionName:    route_table_get_change_seq
      functionSourceFile: '/src/openvswitch/lib/route-table.c'
      linkageType:     InternalLinkage
      functionLinenumber: 122
      functionLinenumberEnd: 123
      functionDepth:   0
      returnType:      size_t
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    init_this_module_tc
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 70
      functionLinenumberEnd: 70
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:70,1'
          Dst:             vlog_insert_module
    - functionName:    tc_netlink_malformed_reply_init_coverage
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 72
      functionLinenumberEnd: 72
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:72,1'
          Dst:             coverage_counter_register
    - functionName:    tc_netlink_malformed_reply_count
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 72
      functionLinenumberEnd: 72
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_tc_netlink_malformed_reply_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:72,1'
          Dst:             counter_tc_netlink_malformed_reply_get
    - functionName:    counter_tc_netlink_malformed_reply_get
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 72
      functionLinenumberEnd: 72
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_tc_netlink_malformed_reply_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:72,1'
          Dst:             counter_tc_netlink_malformed_reply_get_unsafe
    - functionName:    counter_tc_netlink_malformed_reply_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 72
      functionLinenumberEnd: 72
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    log_tc_flower_match
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3859
      functionLinenumberEnd: 3919
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          262
      EdgeCount:       37
      CyclomaticComplexity: 9
      functionsReached:
        - ds_cstr
        - ds_destroy
        - ds_put_cstr
        - ds_put_format
        - ds_put_sparse_hex_dump
        - memcmp
        - vlog_rate_limit
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:3871,5'
          Dst:             ds_put_cstr
        - Src:             'lib/tc.c:3872,5'
          Dst:             ds_put_sparse_hex_dump
        - Src:             'lib/tc.c:3873,5'
          Dst:             ds_put_cstr
        - Src:             'lib/tc.c:3874,5'
          Dst:             ds_put_sparse_hex_dump
        - Src:             'lib/tc.c:3875,5'
          Dst:             ds_put_cstr
        - Src:             'lib/tc.c:3876,5'
          Dst:             ds_put_sparse_hex_dump
        - Src:             'lib/tc.c:3877,5'
          Dst:             ds_put_cstr
        - Src:             'lib/tc.c:3878,5'
          Dst:             ds_put_sparse_hex_dump
        - Src:             'lib/tc.c:3879,5'
          Dst:             ds_put_cstr
        - Src:             'lib/tc.c:3880,5'
          Dst:             ds_put_sparse_hex_dump
        - Src:             'lib/tc.c:3881,5'
          Dst:             ds_put_cstr
        - Src:             'lib/tc.c:3882,5'
          Dst:             ds_put_sparse_hex_dump
        - Src:             'lib/tc.c:3890,9'
          Dst:             ds_put_cstr
        - Src:             'lib/tc.c:3892,13'
          Dst:             ds_put_format
        - Src:             'lib/tc.c:3893,13'
          Dst:             ds_put_sparse_hex_dump
        - Src:             'lib/tc.c:3895,9'
          Dst:             ds_put_cstr
        - Src:             'lib/tc.c:3897,13'
          Dst:             ds_put_format
        - Src:             'lib/tc.c:3898,13'
          Dst:             ds_put_sparse_hex_dump
        - Src:             'lib/tc.c:3906,17'
          Dst:             memcmp
        - Src:             'lib/tc.c:3907,17'
          Dst:             ds_put_format
        - Src:             'lib/tc.c:3909,17'
          Dst:             ds_put_sparse_hex_dump
        - Src:             'lib/tc.c:3911,17'
          Dst:             ds_put_cstr
        - Src:             'lib/tc.c:3912,17'
          Dst:             ds_put_sparse_hex_dump
        - Src:             'lib/tc.c:3917,5'
          Dst:             ds_cstr
        - Src:             'lib/tc.c:3917,5'
          Dst:             vlog_rate_limit
        - Src:             'lib/tc.c:3918,5'
          Dst:             ds_destroy
    - functionName:    nl_msg_put_flower_vxlan_tun_opts
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3595
      functionLinenumberEnd: 3608
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - nl_msg_end_nested
        - nl_msg_put_u32
        - nl_msg_start_nested_with_flag
        - odp_encode_gbp_raw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:3603,15'
          Dst:             odp_encode_gbp_raw
        - Src:             'lib/tc.c:3604,14'
          Dst:             nl_msg_start_nested_with_flag
        - Src:             'lib/tc.c:3606,5'
          Dst:             nl_msg_put_u32
        - Src:             'lib/tc.c:3607,5'
          Dst:             nl_msg_end_nested
    - functionName:    odp_encode_gbp_raw
      functionSourceFile: '/src/openvswitch/lib/odp-util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 392
      functionLinenumberEnd: 393
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - char
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohs
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.h:393,28'
          Dst:             ntohs
    - functionName:    nl_msg_put_flower_geneve
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3568
      functionLinenumberEnd: 3590
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          97
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - nl_msg_end_nested
        - nl_msg_put_be16
        - nl_msg_put_u8
        - nl_msg_put_unspec
        - nl_msg_start_nested
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:3577,18'
          Dst:             nl_msg_start_nested
        - Src:             'lib/tc.c:3579,9'
          Dst:             nl_msg_put_be16
        - Src:             'lib/tc.c:3581,9'
          Dst:             nl_msg_put_u8
        - Src:             'lib/tc.c:3582,9'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/tc.c:3588,9'
          Dst:             nl_msg_end_nested
    - functionName:    nl_msg_put_flower_tunnel_opts
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3613
      functionLinenumberEnd: 3624
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - short
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          57
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - nl_msg_end_nested
        - nl_msg_put_flower_geneve
        - nl_msg_put_flower_vxlan_tun_opts
        - nl_msg_start_nested
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:3620,13'
          Dst:             nl_msg_start_nested
        - Src:             'lib/tc.c:3621,5'
          Dst:             nl_msg_put_flower_geneve
        - Src:             'lib/tc.c:3622,5'
          Dst:             nl_msg_put_flower_vxlan_tun_opts
        - Src:             'lib/tc.c:3623,5'
          Dst:             nl_msg_end_nested
    - functionName:    nl_msg_put_act_tunnel_geneve_option
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2663
      functionLinenumberEnd: 2692
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          109
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - nl_msg_end_nested
        - nl_msg_put_be16
        - nl_msg_put_u8
        - nl_msg_put_unspec
        - nl_msg_start_nested
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:2673,13'
          Dst:             nl_msg_start_nested
        - Src:             'lib/tc.c:2677,17'
          Dst:             nl_msg_start_nested
        - Src:             'lib/tc.c:2679,9'
          Dst:             nl_msg_put_be16
        - Src:             'lib/tc.c:2681,9'
          Dst:             nl_msg_put_u8
        - Src:             'lib/tc.c:2682,9'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/tc.c:2688,9'
          Dst:             nl_msg_end_nested
        - Src:             'lib/tc.c:2691,5'
          Dst:             nl_msg_end_nested
    - functionName:    nl_msg_put_act_tunnel_vxlan_opts
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2697
      functionLinenumberEnd: 2713
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          57
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - nl_msg_end_nested
        - nl_msg_put_u32
        - nl_msg_start_nested_with_flag
        - odp_encode_gbp_raw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:2705,15'
          Dst:             odp_encode_gbp_raw
        - Src:             'lib/tc.c:2707,13'
          Dst:             nl_msg_start_nested_with_flag
        - Src:             'lib/tc.c:2708,13'
          Dst:             nl_msg_start_nested_with_flag
        - Src:             'lib/tc.c:2710,5'
          Dst:             nl_msg_put_u32
        - Src:             'lib/tc.c:2711,5'
          Dst:             nl_msg_end_nested
        - Src:             'lib/tc.c:2712,5'
          Dst:             nl_msg_end_nested
    - functionName:    ipv6_addr_is_set
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1205
      functionLinenumberEnd: 1206
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ipv6_addr_equals
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:1206,13'
          Dst:             ipv6_addr_equals
    - functionName:    ipv6_addr_equals
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1184
      functionLinenumberEnd: 1186
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          80
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    be64_to_be32
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 133
      functionLinenumberEnd: 133
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nl_msg_put_act_tunnel_key_release
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2646
      functionLinenumberEnd: 2658
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_msg_end_nested
        - nl_msg_put_string
        - nl_msg_put_unspec
        - nl_msg_start_nested
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:2649,5'
          Dst:             nl_msg_put_string
        - Src:             'lib/tc.c:2650,14'
          Dst:             nl_msg_start_nested
        - Src:             'lib/tc.c:2655,9'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/tc.c:2657,5'
          Dst:             nl_msg_end_nested
    - functionName:    nl_msg_put_act_pedit
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2523
      functionLinenumberEnd: 2544
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          95
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - nl_msg_end_nested
        - nl_msg_put_string
        - nl_msg_put_u16
        - nl_msg_put_unspec
        - nl_msg_start_nested
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:2528,5'
          Dst:             nl_msg_put_string
        - Src:             'lib/tc.c:2529,14'
          Dst:             nl_msg_start_nested
        - Src:             'lib/tc.c:2533,9'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/tc.c:2534,26'
          Dst:             nl_msg_start_nested
        - Src:             'lib/tc.c:2536,26'
          Dst:             nl_msg_start_nested
        - Src:             'lib/tc.c:2537,13'
          Dst:             nl_msg_put_u16
        - Src:             'lib/tc.c:2538,13'
          Dst:             nl_msg_put_u16
        - Src:             'lib/tc.c:2539,13'
          Dst:             nl_msg_end_nested
        - Src:             'lib/tc.c:2541,9'
          Dst:             nl_msg_end_nested
        - Src:             'lib/tc.c:2543,5'
          Dst:             nl_msg_end_nested
    - functionName:    nl_msg_put_act_csum
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2506
      functionLinenumberEnd: 2518
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          43
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_msg_end_nested
        - nl_msg_put_string
        - nl_msg_put_unspec
        - nl_msg_start_nested
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:2509,5'
          Dst:             nl_msg_put_string
        - Src:             'lib/tc.c:2510,14'
          Dst:             nl_msg_start_nested
        - Src:             'lib/tc.c:2515,9'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/tc.c:2517,5'
          Dst:             nl_msg_end_nested
    - functionName:    calc_offsets
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2949
      functionLinenumberEnd: 2968
      functionDepth:   0
      returnType:      void
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          139
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:2964,23'
          Dst:             htonl
        - Src:             'lib/tc.c:2965,24'
          Dst:             htonl
    - functionName:    rewrite_pedits_need_csum_update
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3030
      functionLinenumberEnd: 3072
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         33
      ICount:          165
      EdgeCount:       38
      CyclomaticComplexity: 7
      functionsReached:
        - calc_offsets
        - get_unaligned_be32
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/tc.c:3058,13'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/tc.c:3042,9'
          Dst:             calc_offsets
        - Src:             'lib/tc.c:3046,34'
          Dst:             get_unaligned_be32
    - functionName:    get_unaligned_be32
      functionSourceFile: '/src/openvswitch/lib/unaligned.h'
      linkageType:     InternalLinkage
      functionLinenumber: 90
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - unaligned_be32
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/unaligned.h:90,1'
          Dst:             unaligned_be32
    - functionName:    unaligned_be32
      functionSourceFile: '/src/openvswitch/lib/unaligned.h'
      linkageType:     InternalLinkage
      functionLinenumber: 90
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nl_msg_put_act_police_mtu
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3263
      functionLinenumberEnd: 3302
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
        - short
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          118
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - get_action_index_for_tc_actions
        - nl_msg_end_nested
        - nl_msg_put_string
        - nl_msg_put_u32
        - nl_msg_put_unspec
        - nl_msg_start_nested
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:3271,22'
          Dst:             get_action_index_for_tc_actions
        - Src:             'lib/tc.c:3284,5'
          Dst:             nl_msg_put_string
        - Src:             'lib/tc.c:3285,14'
          Dst:             nl_msg_start_nested
        - Src:             'lib/tc.c:3290,9'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/tc.c:3298,9'
          Dst:             nl_msg_put_u32
        - Src:             'lib/tc.c:3300,5'
          Dst:             nl_msg_end_nested
    - functionName:    get_action_index_for_tc_actions
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3189
      functionLinenumberEnd: 3257
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - short
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         51
      ICount:          253
      EdgeCount:       62
      CyclomaticComplexity: 13
      functionsReached:
        - rewrite_pedits_need_csum_update
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/tc.c:3203,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/tc.c:3226,29'
          Dst:             rewrite_pedits_need_csum_update
    - functionName:    nl_msg_put_act_police_index
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2787
      functionLinenumberEnd: 2800
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          39
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_msg_end_nested
        - nl_msg_put_string
        - nl_msg_put_u32
        - nl_msg_put_unspec
        - nl_msg_start_nested
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:2795,5'
          Dst:             nl_msg_put_string
        - Src:             'lib/tc.c:2796,14'
          Dst:             nl_msg_start_nested
        - Src:             'lib/tc.c:2797,5'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/tc.c:2798,5'
          Dst:             nl_msg_put_u32
        - Src:             'lib/tc.c:2799,5'
          Dst:             nl_msg_end_nested
    - functionName:    nl_msg_put_act_ct
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2805
      functionLinenumberEnd: 2886
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         48
      ICount:          354
      EdgeCount:       63
      CyclomaticComplexity: 17
      functionsReached:
        - ipv6_addr_is_set
        - is_all_zeros
        - nl_msg_end_nested
        - nl_msg_put_be16
        - nl_msg_put_be32
        - nl_msg_put_in6_addr
        - nl_msg_put_string
        - nl_msg_put_u128
        - nl_msg_put_u16
        - nl_msg_put_u32
        - nl_msg_put_unspec
        - nl_msg_start_nested
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:2809,5'
          Dst:             nl_msg_put_string
        - Src:             'lib/tc.c:2810,14'
          Dst:             nl_msg_start_nested
        - Src:             'lib/tc.c:2818,17'
          Dst:             nl_msg_put_u16
        - Src:             'lib/tc.c:2821,18'
          Dst:             is_all_zeros
        - Src:             'lib/tc.c:2823,17'
          Dst:             nl_msg_put_u128
        - Src:             'lib/tc.c:2825,17'
          Dst:             nl_msg_put_u128
        - Src:             'lib/tc.c:2830,17'
          Dst:             nl_msg_put_u32
        - Src:             'lib/tc.c:2832,17'
          Dst:             nl_msg_put_u32
        - Src:             'lib/tc.c:2853,21'
          Dst:             nl_msg_put_be32
        - Src:             'lib/tc.c:2856,25'
          Dst:             nl_msg_put_be32
        - Src:             'lib/tc.c:2861,21'
          Dst:             nl_msg_put_in6_addr
        - Src:             'lib/tc.c:2863,25'
          Dst:             ipv6_addr_is_set
        - Src:             'lib/tc.c:2864,25'
          Dst:             nl_msg_put_in6_addr
        - Src:             'lib/tc.c:2870,21'
          Dst:             nl_msg_put_be16
        - Src:             'lib/tc.c:2873,25'
          Dst:             nl_msg_put_be16
        - Src:             'lib/tc.c:2882,9'
          Dst:             nl_msg_put_u16
        - Src:             'lib/tc.c:2883,9'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/tc.c:2885,5'
          Dst:             nl_msg_end_nested
    - functionName:    nl_msg_put_act_gact
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2767
      functionLinenumberEnd: 2782
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - nl_msg_end_nested
        - nl_msg_put_string
        - nl_msg_put_unspec
        - nl_msg_start_nested
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:2770,5'
          Dst:             nl_msg_put_string
        - Src:             'lib/tc.c:2771,14'
          Dst:             nl_msg_start_nested
        - Src:             'lib/tc.c:2779,9'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/tc.c:2781,5'
          Dst:             nl_msg_end_nested
    - functionName:    nl_msg_put_act_cookie
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2923
      functionLinenumberEnd: 2927
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - nl_msg_put_unspec
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:2925,9'
          Dst:             nl_msg_put_unspec
    - functionName:    nl_msg_put_act_mirred
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2907
      functionLinenumberEnd: 2920
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          48
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_msg_end_nested
        - nl_msg_put_string
        - nl_msg_put_unspec
        - nl_msg_start_nested
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:2910,5'
          Dst:             nl_msg_put_string
        - Src:             'lib/tc.c:2911,14'
          Dst:             nl_msg_start_nested
        - Src:             'lib/tc.c:2917,9'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/tc.c:2919,5'
          Dst:             nl_msg_end_nested
    - functionName:    nl_msg_put_act_skbedit_to_host
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2890
      functionLinenumberEnd: 2902
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_msg_end_nested
        - nl_msg_put_be16
        - nl_msg_put_string
        - nl_msg_put_unspec
        - nl_msg_start_nested
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:2893,5'
          Dst:             nl_msg_put_string
        - Src:             'lib/tc.c:2894,14'
          Dst:             nl_msg_start_nested
        - Src:             'lib/tc.c:2898,9'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/tc.c:2899,9'
          Dst:             nl_msg_put_be16
        - Src:             'lib/tc.c:2901,5'
          Dst:             nl_msg_end_nested
    - functionName:    nl_msg_put_act_set_mpls
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2626
      functionLinenumberEnd: 2642
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - char
        - char
        - char
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          60
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_msg_end_nested
        - nl_msg_put_string
        - nl_msg_put_u32
        - nl_msg_put_u8
        - nl_msg_put_unspec
        - nl_msg_start_nested
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:2629,5'
          Dst:             nl_msg_put_string
        - Src:             'lib/tc.c:2630,14'
          Dst:             nl_msg_start_nested
        - Src:             'lib/tc.c:2635,9'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/tc.c:2636,9'
          Dst:             nl_msg_put_u32
        - Src:             'lib/tc.c:2637,9'
          Dst:             nl_msg_put_u8
        - Src:             'lib/tc.c:2638,9'
          Dst:             nl_msg_put_u8
        - Src:             'lib/tc.c:2639,9'
          Dst:             nl_msg_put_u8
        - Src:             'lib/tc.c:2641,5'
          Dst:             nl_msg_end_nested
    - functionName:    nl_msg_put_act_push_mpls
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2604
      functionLinenumberEnd: 2621
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - short
        - int
        - char
        - char
        - char
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          65
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_msg_end_nested
        - nl_msg_put_be16
        - nl_msg_put_string
        - nl_msg_put_u32
        - nl_msg_put_u8
        - nl_msg_put_unspec
        - nl_msg_start_nested
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:2607,5'
          Dst:             nl_msg_put_string
        - Src:             'lib/tc.c:2608,14'
          Dst:             nl_msg_start_nested
        - Src:             'lib/tc.c:2613,9'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/tc.c:2614,9'
          Dst:             nl_msg_put_be16
        - Src:             'lib/tc.c:2615,9'
          Dst:             nl_msg_put_u32
        - Src:             'lib/tc.c:2616,9'
          Dst:             nl_msg_put_u8
        - Src:             'lib/tc.c:2617,9'
          Dst:             nl_msg_put_u8
        - Src:             'lib/tc.c:2618,9'
          Dst:             nl_msg_put_u8
        - Src:             'lib/tc.c:2620,5'
          Dst:             nl_msg_end_nested
    - functionName:    nl_msg_put_act_pop_mpls
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2585
      functionLinenumberEnd: 2598
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - short
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          45
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_msg_end_nested
        - nl_msg_put_be16
        - nl_msg_put_string
        - nl_msg_put_unspec
        - nl_msg_start_nested
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:2588,5'
          Dst:             nl_msg_put_string
        - Src:             'lib/tc.c:2589,14'
          Dst:             nl_msg_start_nested
        - Src:             'lib/tc.c:2594,9'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/tc.c:2595,9'
          Dst:             nl_msg_put_be16
        - Src:             'lib/tc.c:2597,5'
          Dst:             nl_msg_end_nested
    - functionName:    nl_msg_put_act_push_vlan
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2549
      functionLinenumberEnd: 2564
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - short
        - short
        - char
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          55
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_msg_end_nested
        - nl_msg_put_be16
        - nl_msg_put_string
        - nl_msg_put_u16
        - nl_msg_put_u8
        - nl_msg_put_unspec
        - nl_msg_start_nested
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:2552,5'
          Dst:             nl_msg_put_string
        - Src:             'lib/tc.c:2553,14'
          Dst:             nl_msg_start_nested
        - Src:             'lib/tc.c:2558,9'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/tc.c:2559,9'
          Dst:             nl_msg_put_be16
        - Src:             'lib/tc.c:2560,9'
          Dst:             nl_msg_put_u16
        - Src:             'lib/tc.c:2561,9'
          Dst:             nl_msg_put_u8
        - Src:             'lib/tc.c:2563,5'
          Dst:             nl_msg_end_nested
    - functionName:    nl_msg_put_act_pop_vlan
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2568
      functionLinenumberEnd: 2580
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          40
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_msg_end_nested
        - nl_msg_put_string
        - nl_msg_put_unspec
        - nl_msg_start_nested
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:2571,5'
          Dst:             nl_msg_put_string
        - Src:             'lib/tc.c:2572,14'
          Dst:             nl_msg_start_nested
        - Src:             'lib/tc.c:2577,9'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/tc.c:2579,5'
          Dst:             nl_msg_end_nested
    - functionName:    nl_msg_put_act_flags
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2930
      functionLinenumberEnd: 2935
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_msg_put_unspec
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:2934,5'
          Dst:             nl_msg_put_unspec
    - functionName:    nl_msg_put_act_tunnel_key_set
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2719
      functionLinenumberEnd: 2763
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          195
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - be64_to_be32
        - ipv6_addr_is_set
        - nl_msg_end_nested
        - nl_msg_put_act_tunnel_geneve_option
        - nl_msg_put_act_tunnel_vxlan_opts
        - nl_msg_put_be16
        - nl_msg_put_be32
        - nl_msg_put_flag
        - nl_msg_put_in6_addr
        - nl_msg_put_string
        - nl_msg_put_u8
        - nl_msg_put_unspec
        - nl_msg_start_nested
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:2722,5'
          Dst:             nl_msg_put_string
        - Src:             'lib/tc.c:2723,14'
          Dst:             nl_msg_start_nested
        - Src:             'lib/tc.c:2728,9'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/tc.c:2730,25'
          Dst:             be64_to_be32
        - Src:             'lib/tc.c:2732,13'
          Dst:             nl_msg_put_be32
        - Src:             'lib/tc.c:2735,13'
          Dst:             nl_msg_put_be32
        - Src:             'lib/tc.c:2737,13'
          Dst:             nl_msg_put_be32
        - Src:             'lib/tc.c:2739,20'
          Dst:             ipv6_addr_is_set
        - Src:             'lib/tc.c:2740,13'
          Dst:             nl_msg_put_in6_addr
        - Src:             'lib/tc.c:2742,13'
          Dst:             nl_msg_put_in6_addr
        - Src:             'lib/tc.c:2746,13'
          Dst:             nl_msg_put_u8
        - Src:             'lib/tc.c:2749,13'
          Dst:             nl_msg_put_u8
        - Src:             'lib/tc.c:2752,13'
          Dst:             nl_msg_put_be16
        - Src:             'lib/tc.c:2756,13'
          Dst:             nl_msg_put_flag
        - Src:             'lib/tc.c:2758,9'
          Dst:             nl_msg_put_act_tunnel_vxlan_opts
        - Src:             'lib/tc.c:2759,9'
          Dst:             nl_msg_put_act_tunnel_geneve_option
        - Src:             'lib/tc.c:2760,9'
          Dst:             nl_msg_put_u8
        - Src:             'lib/tc.c:2762,5'
          Dst:             nl_msg_end_nested
    - functionName:    nl_msg_put_flower_acts_release
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3153
      functionLinenumberEnd: 3160
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_msg_end_nested
        - nl_msg_put_act_flags
        - nl_msg_put_act_tunnel_key_release
        - nl_msg_start_nested
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:3156,18'
          Dst:             nl_msg_start_nested
        - Src:             'lib/tc.c:3157,5'
          Dst:             nl_msg_put_act_tunnel_key_release
        - Src:             'lib/tc.c:3158,5'
          Dst:             nl_msg_put_act_flags
        - Src:             'lib/tc.c:3159,5'
          Dst:             nl_msg_end_nested
    - functionName:    nl_msg_put_flower_rewrite_pedits
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3079
      functionLinenumberEnd: 3149
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         37
      ICount:          284
      EdgeCount:       48
      CyclomaticComplexity: 13
      functionsReached:
        - calc_offsets
        - csum_update_flag
        - get_unaligned_be32
        - htonl
        - nl_msg_put_act_pedit
        - ntohl
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:3102,9'
          Dst:             calc_offsets
        - Src:             'lib/tc.c:3106,34'
          Dst:             get_unaligned_be32
        - Src:             'lib/tc.c:3107,34'
          Dst:             get_unaligned_be32
        - Src:             'lib/tc.c:3119,17'
          Dst:             vlog_rate_limit
        - Src:             'lib/tc.c:3129,31'
          Dst:             ntohl
        - Src:             'lib/tc.c:3129,25'
          Dst:             htonl
        - Src:             'lib/tc.c:3130,31'
          Dst:             ntohl
        - Src:             'lib/tc.c:3130,25'
          Dst:             htonl
        - Src:             'lib/tc.c:3135,19'
          Dst:             csum_update_flag
        - Src:             'lib/tc.c:3145,5'
          Dst:             nl_msg_put_act_pedit
    - functionName:    csum_update_flag
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2972
      functionLinenumberEnd: 3026
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         46
      ICount:          241
      EdgeCount:       55
      CyclomaticComplexity: 11
      functionsReached:
        - vlog_rate_limit
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/tc.c:2984,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/tc.c:3010,13'
          Dst:             vlog_rate_limit
    - functionName:    nl_msg_put_csum_act
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3168
      functionLinenumberEnd: 3183
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          55
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - nl_msg_end_nested
        - nl_msg_put_act_csum
        - nl_msg_put_act_flags
        - nl_msg_start_nested
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:3176,18'
          Dst:             nl_msg_start_nested
        - Src:             'lib/tc.c:3177,5'
          Dst:             nl_msg_put_act_csum
        - Src:             'lib/tc.c:3178,5'
          Dst:             nl_msg_put_act_flags
        - Src:             'lib/tc.c:3179,5'
          Dst:             nl_msg_end_nested
    - functionName:    nl_msg_put_flower_tunnel
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3628
      functionLinenumberEnd: 3696
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         33
      ICount:          338
      EdgeCount:       43
      CyclomaticComplexity: 12
      functionsReached:
        - be64_to_be32
        - htonl
        - ipv6_addr_is_set
        - nl_msg_put_be16
        - nl_msg_put_be32
        - nl_msg_put_flower_tunnel_opts
        - nl_msg_put_in6_addr
        - nl_msg_put_u8
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:3637,19'
          Dst:             be64_to_be32
        - Src:             'lib/tc.c:3638,26'
          Dst:             htonl
        - Src:             'lib/tc.c:3646,31'
          Dst:             htonl
        - Src:             'lib/tc.c:3651,9'
          Dst:             nl_msg_put_be32
        - Src:             'lib/tc.c:3653,9'
          Dst:             nl_msg_put_be32
        - Src:             'lib/tc.c:3655,9'
          Dst:             nl_msg_put_be32
        - Src:             'lib/tc.c:3656,9'
          Dst:             nl_msg_put_be32
        - Src:             'lib/tc.c:3657,16'
          Dst:             ipv6_addr_is_set
        - Src:             'lib/tc.c:3658,16'
          Dst:             ipv6_addr_is_set
        - Src:             'lib/tc.c:3659,9'
          Dst:             nl_msg_put_in6_addr
        - Src:             'lib/tc.c:3661,9'
          Dst:             nl_msg_put_in6_addr
        - Src:             'lib/tc.c:3663,9'
          Dst:             nl_msg_put_in6_addr
        - Src:             'lib/tc.c:3664,9'
          Dst:             nl_msg_put_in6_addr
        - Src:             'lib/tc.c:3667,9'
          Dst:             nl_msg_put_u8
        - Src:             'lib/tc.c:3668,9'
          Dst:             nl_msg_put_u8
        - Src:             'lib/tc.c:3671,9'
          Dst:             nl_msg_put_u8
        - Src:             'lib/tc.c:3672,9'
          Dst:             nl_msg_put_u8
        - Src:             'lib/tc.c:3675,9'
          Dst:             nl_msg_put_be16
        - Src:             'lib/tc.c:3676,9'
          Dst:             nl_msg_put_be16
        - Src:             'lib/tc.c:3680,9'
          Dst:             nl_msg_put_be16
        - Src:             'lib/tc.c:3681,9'
          Dst:             nl_msg_put_be16
        - Src:             'lib/tc.c:3685,9'
          Dst:             nl_msg_put_be32
        - Src:             'lib/tc.c:3686,9'
          Dst:             nl_msg_put_be32
        - Src:             'lib/tc.c:3690,9'
          Dst:             nl_msg_put_be32
        - Src:             'lib/tc.c:3692,5'
          Dst:             nl_msg_put_flower_tunnel_opts
        - Src:             'lib/tc.c:3694,5'
          Dst:             nl_msg_put_flower_tunnel_opts
    - functionName:    tc_get_tc_cls_policy
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2494
      functionLinenumberEnd: 2502
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          32
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mpls_lse_to_label
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 568
      functionLinenumberEnd: 569
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohl
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:569,13'
          Dst:             ntohl
    - functionName:    mpls_lse_to_bos
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 624
      functionLinenumberEnd: 625
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:625,24'
          Dst:             htonl
    - functionName:    mpls_lse_to_tc
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 576
      functionLinenumberEnd: 577
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohl
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:577,13'
          Dst:             ntohl
    - functionName:    mpls_lse_to_ttl
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 584
      functionLinenumberEnd: 585
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohl
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:585,13'
          Dst:             ntohl
    - functionName:    nl_msg_put_masked_value
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3555
      functionLinenumberEnd: 3563
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - short
        - short
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - is_all_zeros
        - nl_msg_put_unspec
      functionUses:    28
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:3557,13'
          Dst:             is_all_zeros
        - Src:             'lib/tc.c:3560,9'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/tc.c:3562,5'
          Dst:             nl_msg_put_unspec
    - functionName:    nl_msg_put_flower_acts
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3306
      functionLinenumberEnd: 3549
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         88
      ICount:          746
      EdgeCount:       112
      CyclomaticComplexity: 26
      functionsReached:
        - get_action_index_for_tc_actions
        - nl_msg_end_nested
        - nl_msg_put_act_cookie
        - nl_msg_put_act_ct
        - nl_msg_put_act_flags
        - nl_msg_put_act_gact
        - nl_msg_put_act_mirred
        - nl_msg_put_act_police_index
        - nl_msg_put_act_police_mtu
        - nl_msg_put_act_pop_mpls
        - nl_msg_put_act_pop_vlan
        - nl_msg_put_act_push_mpls
        - nl_msg_put_act_push_vlan
        - nl_msg_put_act_set_mpls
        - nl_msg_put_act_skbedit_to_host
        - nl_msg_put_act_tunnel_key_set
        - nl_msg_put_csum_act
        - nl_msg_put_flower_acts_release
        - nl_msg_put_flower_rewrite_pedits
        - nl_msg_start_nested
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/tc.c:3369,13'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/tc.c:3314,14'
          Dst:             nl_msg_start_nested
        - Src:             'lib/tc.c:3352,30'
          Dst:             get_action_index_for_tc_actions
        - Src:             'lib/tc.c:3365,17'
          Dst:             nl_msg_put_csum_act
        - Src:             'lib/tc.c:3371,30'
          Dst:             nl_msg_start_nested
        - Src:             'lib/tc.c:3372,25'
          Dst:             nl_msg_put_flower_rewrite_pedits
        - Src:             'lib/tc.c:3377,17'
          Dst:             nl_msg_end_nested
        - Src:             'lib/tc.c:3381,21'
          Dst:             nl_msg_put_csum_act
        - Src:             'lib/tc.c:3388,21'
          Dst:             nl_msg_put_flower_acts_release
        - Src:             'lib/tc.c:3392,30'
          Dst:             nl_msg_start_nested
        - Src:             'lib/tc.c:3393,17'
          Dst:             nl_msg_put_act_tunnel_key_set
        - Src:             'lib/tc.c:3395,17'
          Dst:             nl_msg_put_act_flags
        - Src:             'lib/tc.c:3396,17'
          Dst:             nl_msg_end_nested
        - Src:             'lib/tc.c:3400,30'
          Dst:             nl_msg_start_nested
        - Src:             'lib/tc.c:3401,17'
          Dst:             nl_msg_put_act_pop_vlan
        - Src:             'lib/tc.c:3402,17'
          Dst:             nl_msg_put_act_flags
        - Src:             'lib/tc.c:3403,17'
          Dst:             nl_msg_end_nested
        - Src:             'lib/tc.c:3407,30'
          Dst:             nl_msg_start_nested
        - Src:             'lib/tc.c:3408,17'
          Dst:             nl_msg_put_act_push_vlan
        - Src:             'lib/tc.c:3413,17'
          Dst:             nl_msg_put_act_flags
        - Src:             'lib/tc.c:3414,17'
          Dst:             nl_msg_end_nested
        - Src:             'lib/tc.c:3418,30'
          Dst:             nl_msg_start_nested
        - Src:             'lib/tc.c:3419,17'
          Dst:             nl_msg_put_act_pop_mpls
        - Src:             'lib/tc.c:3421,17'
          Dst:             nl_msg_end_nested
        - Src:             'lib/tc.c:3425,30'
          Dst:             nl_msg_start_nested
        - Src:             'lib/tc.c:3426,17'
          Dst:             nl_msg_put_act_push_mpls
        - Src:             'lib/tc.c:3430,17'
          Dst:             nl_msg_end_nested
        - Src:             'lib/tc.c:3434,30'
          Dst:             nl_msg_start_nested
        - Src:             'lib/tc.c:3435,17'
          Dst:             nl_msg_put_act_set_mpls
        - Src:             'lib/tc.c:3438,17'
          Dst:             nl_msg_end_nested
        - Src:             'lib/tc.c:3443,21'
          Dst:             nl_msg_put_flower_acts_release
        - Src:             'lib/tc.c:3450,21'
          Dst:             vlog_rate_limit
        - Src:             'lib/tc.c:3458,34'
          Dst:             nl_msg_start_nested
        - Src:             'lib/tc.c:3459,21'
          Dst:             nl_msg_put_act_skbedit_to_host
        - Src:             'lib/tc.c:3460,21'
          Dst:             nl_msg_end_nested
        - Src:             'lib/tc.c:3463,30'
          Dst:             nl_msg_start_nested
        - Src:             'lib/tc.c:3466,25'
          Dst:             nl_msg_put_act_mirred
        - Src:             'lib/tc.c:3469,25'
          Dst:             nl_msg_put_act_mirred
        - Src:             'lib/tc.c:3475,25'
          Dst:             nl_msg_put_act_mirred
        - Src:             'lib/tc.c:3478,25'
          Dst:             nl_msg_put_act_mirred
        - Src:             'lib/tc.c:3482,17'
          Dst:             nl_msg_put_act_cookie
        - Src:             'lib/tc.c:3483,17'
          Dst:             nl_msg_put_act_flags
        - Src:             'lib/tc.c:3484,17'
          Dst:             nl_msg_end_nested
        - Src:             'lib/tc.c:3498,30'
          Dst:             nl_msg_start_nested
        - Src:             'lib/tc.c:3499,17'
          Dst:             nl_msg_put_act_gact
        - Src:             'lib/tc.c:3500,17'
          Dst:             nl_msg_put_act_cookie
        - Src:             'lib/tc.c:3501,17'
          Dst:             nl_msg_end_nested
        - Src:             'lib/tc.c:3505,30'
          Dst:             nl_msg_start_nested
        - Src:             'lib/tc.c:3506,17'
          Dst:             nl_msg_put_act_ct
        - Src:             'lib/tc.c:3507,17'
          Dst:             nl_msg_put_act_cookie
        - Src:             'lib/tc.c:3508,17'
          Dst:             nl_msg_end_nested
        - Src:             'lib/tc.c:3512,30'
          Dst:             nl_msg_start_nested
        - Src:             'lib/tc.c:3513,17'
          Dst:             nl_msg_put_act_police_index
        - Src:             'lib/tc.c:3515,17'
          Dst:             nl_msg_end_nested
        - Src:             'lib/tc.c:3519,30'
          Dst:             nl_msg_start_nested
        - Src:             'lib/tc.c:3520,21'
          Dst:             nl_msg_put_act_police_mtu
        - Src:             'lib/tc.c:3525,17'
          Dst:             nl_msg_put_act_cookie
        - Src:             'lib/tc.c:3526,17'
          Dst:             nl_msg_put_act_flags
        - Src:             'lib/tc.c:3527,17'
          Dst:             nl_msg_end_nested
        - Src:             'lib/tc.c:3537,22'
          Dst:             nl_msg_start_nested
        - Src:             'lib/tc.c:3538,9'
          Dst:             nl_msg_put_act_gact
        - Src:             'lib/tc.c:3539,9'
          Dst:             nl_msg_put_act_cookie
        - Src:             'lib/tc.c:3540,9'
          Dst:             nl_msg_put_act_flags
        - Src:             'lib/tc.c:3541,9'
          Dst:             nl_msg_end_nested
        - Src:             'lib/tc.c:3543,5'
          Dst:             nl_msg_end_nested
    - functionName:    tc_is_meter_index
      functionSourceFile: '/src/openvswitch/lib/tc.h'
      linkageType:     InternalLinkage
      functionLinenumber: 75
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          31
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    put_unaligned_be32
      functionSourceFile: '/src/openvswitch/lib/unaligned.h'
      linkageType:     InternalLinkage
      functionLinenumber: 90
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - unaligned_be32
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/unaligned.h:90,1'
          Dst:             unaligned_be32
    - functionName:    nl_parse_act_vxlan_opts
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1306
      functionLinenumberEnd: 1330
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          89
      EdgeCount:       10
      CyclomaticComplexity: 2
      functionsReached:
        - nl_attr_get_nested
        - nl_attr_get_u32
        - nl_attr_is_valid
        - nl_attr_len_pad
        - nl_attr_next
        - nl_attr_type
        - odp_decode_gbp_raw
        - ofpbuf_at
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/tc.c:1319,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/tc.c:1312,5'
          Dst:             nl_attr_get_nested
        - Src:             'lib/tc.c:1315,5'
          Dst:             ofpbuf_at
        - Src:             'lib/tc.c:1315,5'
          Dst:             nl_attr_is_valid
        - Src:             'lib/tc.c:1316,25'
          Dst:             nl_attr_type
        - Src:             'lib/tc.c:1321,23'
          Dst:             nl_attr_get_u32
        - Src:             'lib/tc.c:1322,13'
          Dst:             odp_decode_gbp_raw
        - Src:             'lib/tc.c:1315,5'
          Dst:             nl_attr_len_pad
        - Src:             'lib/tc.c:1315,5'
          Dst:             nl_attr_next
    - functionName:    ofpbuf_at
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 183
      functionLinenumberEnd: 189
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:185,9'
          Dst:             ovs_ignore
    - functionName:    nl_attr_is_valid
      functionSourceFile: '/src/openvswitch/lib/netlink.h'
      linkageType:     InternalLinkage
      functionLinenumber: 171
      functionLinenumberEnd: 174
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    odp_decode_gbp_raw
      functionSourceFile: '/src/openvswitch/lib/odp-util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 386
      functionLinenumberEnd: 389
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htons
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.h:387,11'
          Dst:             htons
    - functionName:    nl_attr_len_pad
      functionSourceFile: '/src/openvswitch/lib/netlink.h'
      linkageType:     InternalLinkage
      functionLinenumber: 179
      functionLinenumberEnd: 182
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          37
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nl_attr_next
      functionSourceFile: '/src/openvswitch/lib/netlink.h'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 165
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nl_parse_act_geneve_opts
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1238
      functionLinenumberEnd: 1302
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         44
      ICount:          294
      EdgeCount:       53
      CyclomaticComplexity: 11
      functionsReached:
        - nl_attr_get_be16
        - nl_attr_get_nested
        - nl_attr_get_size
        - nl_attr_get_u8
        - nl_attr_get_unspec
        - nl_attr_is_valid
        - nl_attr_len_pad
        - nl_attr_next
        - nl_attr_type
        - ofpbuf_at
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/tc.c:1255,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/tc.c:1247,5'
          Dst:             nl_attr_get_nested
        - Src:             'lib/tc.c:1252,5'
          Dst:             ofpbuf_at
        - Src:             'lib/tc.c:1252,5'
          Dst:             nl_attr_is_valid
        - Src:             'lib/tc.c:1253,25'
          Dst:             nl_attr_type
        - Src:             'lib/tc.c:1258,17'
          Dst:             vlog_rate_limit
        - Src:             'lib/tc.c:1264,30'
          Dst:             nl_attr_get_be16
        - Src:             'lib/tc.c:1271,17'
          Dst:             vlog_rate_limit
        - Src:             'lib/tc.c:1276,25'
          Dst:             nl_attr_get_u8
        - Src:             'lib/tc.c:1281,17'
          Dst:             vlog_rate_limit
        - Src:             'lib/tc.c:1286,27'
          Dst:             nl_attr_get_size
        - Src:             'lib/tc.c:1287,29'
          Dst:             nl_attr_get_unspec
        - Src:             'lib/tc.c:1252,5'
          Dst:             nl_attr_len_pad
        - Src:             'lib/tc.c:1252,5'
          Dst:             nl_attr_next
        - Src:             'lib/tc.c:1296,9'
          Dst:             vlog_rate_limit
    - functionName:    nl_parse_act_tunnel_opts
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1335
      functionLinenumberEnd: 1368
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          115
      EdgeCount:       21
      CyclomaticComplexity: 5
      functionsReached:
        - nl_attr_get_nested
        - nl_attr_is_valid
        - nl_attr_len_pad
        - nl_attr_next
        - nl_attr_type
        - nl_parse_act_geneve_opts
        - nl_parse_act_vxlan_opts
        - ofpbuf_at
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/tc.c:1351,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/tc.c:1346,5'
          Dst:             nl_attr_get_nested
        - Src:             'lib/tc.c:1349,5'
          Dst:             ofpbuf_at
        - Src:             'lib/tc.c:1349,5'
          Dst:             nl_attr_is_valid
        - Src:             'lib/tc.c:1350,25'
          Dst:             nl_attr_type
        - Src:             'lib/tc.c:1353,19'
          Dst:             nl_parse_act_geneve_opts
        - Src:             'lib/tc.c:1359,19'
          Dst:             nl_parse_act_vxlan_opts
        - Src:             'lib/tc.c:1349,5'
          Dst:             nl_attr_len_pad
        - Src:             'lib/tc.c:1349,5'
          Dst:             nl_attr_next
    - functionName:    get_user_hz
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1444
      functionLinenumberEnd: 1453
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         6
      ICount:          26
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsthread_once_done
        - ovsthread_once_start
        - sysconf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:1448,9'
          Dst:             ovsthread_once_start
        - Src:             'lib/tc.c:1449,19'
          Dst:             sysconf
        - Src:             'lib/tc.c:1450,9'
          Dst:             ovsthread_once_done
    - functionName:    ovsthread_once_start
      functionSourceFile: '/src/openvswitch/./include/openvswitch/thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsthread_once_start__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/thread.h:161,12'
          Dst:             ovsthread_once_start__
    - functionName:    nl_parse_tcf
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1458
      functionLinenumberEnd: 1476
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          63
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - get_user_hz
        - time_msec
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:1470,20'
          Dst:             time_msec
        - Src:             'lib/tc.c:1470,56'
          Dst:             get_user_hz
    - functionName:    nl_parse_action_pc
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1092
      functionLinenumberEnd: 1100
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          41
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nl_parse_act_police
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1536
      functionLinenumberEnd: 1577
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         23
      ICount:          161
      EdgeCount:       29
      CyclomaticComplexity: 8
      functionsReached:
        - nl_attr_get_u32
        - nl_attr_get_unspec
        - nl_parse_action_pc
        - nl_parse_nested
        - nl_parse_tcf
        - tc_is_meter_index
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:1544,10'
          Dst:             nl_parse_nested
        - Src:             'lib/tc.c:1546,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/tc.c:1550,14'
          Dst:             nl_attr_get_unspec
        - Src:             'lib/tc.c:1554,27'
          Dst:             tc_is_meter_index
        - Src:             'lib/tc.c:1558,30'
          Dst:             nl_attr_get_u32
        - Src:             'lib/tc.c:1571,21'
          Dst:             nl_attr_get_unspec
        - Src:             'lib/tc.c:1572,9'
          Dst:             nl_parse_tcf
        - Src:             'lib/tc.c:1575,5'
          Dst:             nl_parse_action_pc
    - functionName:    nl_parse_act_ct
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1669
      functionLinenumberEnd: 1768
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         71
      ICount:          541
      EdgeCount:       93
      CyclomaticComplexity: 24
      functionsReached:
        - ipv6_addr_equals
        - nl_attr_get_be16
        - nl_attr_get_be32
        - nl_attr_get_in6_addr
        - nl_attr_get_u128
        - nl_attr_get_u16
        - nl_attr_get_u32
        - nl_attr_get_unspec
        - nl_parse_action_pc
        - nl_parse_nested
        - nl_parse_tcf
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:1677,10'
          Dst:             nl_parse_nested
        - Src:             'lib/tc.c:1679,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/tc.c:1684,10'
          Dst:             nl_attr_get_unspec
        - Src:             'lib/tc.c:1687,21'
          Dst:             nl_attr_get_u16
        - Src:             'lib/tc.c:1702,34'
          Dst:             nl_attr_get_u16
        - Src:             'lib/tc.c:1703,34'
          Dst:             nl_attr_get_u32
        - Src:             'lib/tc.c:1704,44'
          Dst:             nl_attr_get_u32
        - Src:             'lib/tc.c:1705,35'
          Dst:             nl_attr_get_u128
        - Src:             'lib/tc.c:1707,33'
          Dst:             nl_attr_get_u128
        - Src:             'lib/tc.c:1726,45'
          Dst:             nl_attr_get_be32
        - Src:             'lib/tc.c:1728,37'
          Dst:             nl_attr_get_be32
        - Src:             'lib/tc.c:1737,23'
          Dst:             nl_attr_get_in6_addr
        - Src:             'lib/tc.c:1739,44'
          Dst:             nl_attr_get_in6_addr
        - Src:             'lib/tc.c:1741,26'
          Dst:             ipv6_addr_equals
        - Src:             'lib/tc.c:1748,45'
          Dst:             nl_attr_get_be16
        - Src:             'lib/tc.c:1750,49'
          Dst:             nl_attr_get_be16
        - Src:             'lib/tc.c:1762,21'
          Dst:             nl_attr_get_unspec
        - Src:             'lib/tc.c:1764,9'
          Dst:             nl_parse_tcf
        - Src:             'lib/tc.c:1766,5'
          Dst:             nl_parse_action_pc
    - functionName:    nl_parse_act_csum
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1919
      functionLinenumberEnd: 1955
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         31
      ICount:          171
      EdgeCount:       39
      CyclomaticComplexity: 10
      functionsReached:
        - nl_attr_get_unspec
        - nl_parse_action_pc
        - nl_parse_nested
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:1924,10'
          Dst:             nl_parse_nested
        - Src:             'lib/tc.c:1926,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/tc.c:1931,9'
          Dst:             nl_attr_get_unspec
        - Src:             'lib/tc.c:1935,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/tc.c:1944,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/tc.c:1952,9'
          Dst:             nl_parse_action_pc
    - functionName:    nl_parse_act_pedit
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1112
      functionLinenumberEnd: 1212
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         52
      ICount:          452
      EdgeCount:       68
      CyclomaticComplexity: 18
      functionsReached:
        - csum_update_flag
        - get_unaligned_be32
        - htonl
        - nl_attr_find_nested
        - nl_attr_get
        - nl_attr_get_size
        - nl_attr_get_u16
        - nl_attr_get_unspec
        - nl_attr_is_valid
        - nl_attr_len_pad
        - nl_attr_next
        - nl_attr_type
        - nl_parse_action_pc
        - nl_parse_nested
        - ntohl
        - put_unaligned_be32
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:1124,10'
          Dst:             nl_parse_nested
        - Src:             'lib/tc.c:1126,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/tc.c:1130,10'
          Dst:             nl_attr_get_unspec
        - Src:             'lib/tc.c:1133,15'
          Dst:             nl_attr_get
        - Src:             'lib/tc.c:1134,20'
          Dst:             nl_attr_get_size
        - Src:             'lib/tc.c:1136,5'
          Dst:             nl_attr_is_valid
        - Src:             'lib/tc.c:1141,13'
          Dst:             nl_attr_type
        - Src:             'lib/tc.c:1142,13'
          Dst:             nl_attr_type
        - Src:             'lib/tc.c:1142,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/tc.c:1147,19'
          Dst:             nl_attr_find_nested
        - Src:             'lib/tc.c:1152,16'
          Dst:             nl_attr_get_u16
        - Src:             'lib/tc.c:1154,15'
          Dst:             csum_update_flag
        - Src:             'lib/tc.c:1182,35'
          Dst:             ntohl
        - Src:             'lib/tc.c:1182,29'
          Dst:             htonl
        - Src:             'lib/tc.c:1183,35'
          Dst:             ntohl
        - Src:             'lib/tc.c:1183,29'
          Dst:             htonl
        - Src:             'lib/tc.c:1188,29'
          Dst:             htonl
        - Src:             'lib/tc.c:1191,29'
          Dst:             htonl
        - Src:             'lib/tc.c:1194,23'
          Dst:             get_unaligned_be32
        - Src:             'lib/tc.c:1196,17'
          Dst:             put_unaligned_be32
        - Src:             'lib/tc.c:1198,23'
          Dst:             get_unaligned_be32
        - Src:             'lib/tc.c:1200,17'
          Dst:             put_unaligned_be32
        - Src:             'lib/tc.c:1136,5'
          Dst:             nl_attr_len_pad
        - Src:             'lib/tc.c:1136,5'
          Dst:             nl_attr_next
        - Src:             'lib/tc.c:1210,5'
          Dst:             nl_parse_action_pc
    - functionName:    nl_parse_act_tunnel_key
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1372
      functionLinenumberEnd: 1431
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         51
      ICount:          401
      EdgeCount:       66
      CyclomaticComplexity: 17
      functionsReached:
        - be32_to_be64
        - nl_attr_get_be16
        - nl_attr_get_be32
        - nl_attr_get_in6_addr
        - nl_attr_get_u8
        - nl_attr_get_unspec
        - nl_parse_act_tunnel_opts
        - nl_parse_action_pc
        - nl_parse_nested
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:1379,10'
          Dst:             nl_parse_nested
        - Src:             'lib/tc.c:1381,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/tc.c:1386,11'
          Dst:             nl_attr_get_unspec
        - Src:             'lib/tc.c:1402,50'
          Dst:             nl_attr_get_be32
        - Src:             'lib/tc.c:1403,50'
          Dst:             nl_attr_get_be32
        - Src:             'lib/tc.c:1405,43'
          Dst:             nl_attr_get_in6_addr
        - Src:             'lib/tc.c:1408,43'
          Dst:             nl_attr_get_in6_addr
        - Src:             'lib/tc.c:1410,46'
          Dst:             nl_attr_get_be32
        - Src:             'lib/tc.c:1410,33'
          Dst:             be32_to_be64
        - Src:             'lib/tc.c:1412,43'
          Dst:             nl_attr_get_be16
        - Src:             'lib/tc.c:1413,35'
          Dst:             nl_attr_get_u8
        - Src:             'lib/tc.c:1414,35'
          Dst:             nl_attr_get_u8
        - Src:             'lib/tc.c:1415,43'
          Dst:             nl_attr_get_u8
        - Src:             'lib/tc.c:1418,15'
          Dst:             nl_parse_act_tunnel_opts
        - Src:             'lib/tc.c:1422,9'
          Dst:             nl_parse_action_pc
        - Src:             'lib/tc.c:1426,9'
          Dst:             vlog_rate_limit
    - functionName:    be32_to_be64
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 132
      functionLinenumberEnd: 132
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nl_parse_act_mpls
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1830
      functionLinenumberEnd: 1909
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         51
      ICount:          325
      EdgeCount:       63
      CyclomaticComplexity: 14
      functionsReached:
        - nl_attr_get_be16
        - nl_attr_get_u32
        - nl_attr_get_u8
        - nl_attr_get_unspec
        - nl_parse_action_pc
        - nl_parse_nested
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/tc.c:1851,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/tc.c:1841,10'
          Dst:             nl_parse_nested
        - Src:             'lib/tc.c:1843,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/tc.c:1849,9'
          Dst:             nl_attr_get_unspec
        - Src:             'lib/tc.c:1855,34'
          Dst:             nl_attr_get_be16
        - Src:             'lib/tc.c:1862,34'
          Dst:             nl_attr_get_be16
        - Src:             'lib/tc.c:1866,34'
          Dst:             nl_attr_get_u32
        - Src:             'lib/tc.c:1870,31'
          Dst:             nl_attr_get_u8
        - Src:             'lib/tc.c:1874,32'
          Dst:             nl_attr_get_u8
        - Src:             'lib/tc.c:1878,32'
          Dst:             nl_attr_get_u8
        - Src:             'lib/tc.c:1885,34'
          Dst:             nl_attr_get_u32
        - Src:             'lib/tc.c:1889,31'
          Dst:             nl_attr_get_u8
        - Src:             'lib/tc.c:1893,32'
          Dst:             nl_attr_get_u8
        - Src:             'lib/tc.c:1897,32'
          Dst:             nl_attr_get_u8
        - Src:             'lib/tc.c:1902,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/tc.c:1907,5'
          Dst:             nl_parse_action_pc
    - functionName:    nl_parse_act_vlan
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1781
      functionLinenumberEnd: 1815
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         25
      ICount:          170
      EdgeCount:       31
      CyclomaticComplexity: 8
      functionsReached:
        - nl_attr_get_be16
        - nl_attr_get_u16
        - nl_attr_get_u8
        - nl_attr_get_unspec
        - nl_parse_action_pc
        - nl_parse_nested
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:1787,10'
          Dst:             nl_parse_nested
        - Src:             'lib/tc.c:1789,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/tc.c:1795,9'
          Dst:             nl_attr_get_unspec
        - Src:             'lib/tc.c:1801,39'
          Dst:             nl_attr_get_be16
        - Src:             'lib/tc.c:1802,37'
          Dst:             nl_attr_get_u16
        - Src:             'lib/tc.c:1803,51'
          Dst:             nl_attr_get_u8
        - Src:             'lib/tc.c:1808,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/tc.c:1813,5'
          Dst:             nl_parse_action_pc
    - functionName:    nl_parse_act_mirred
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1590
      functionLinenumberEnd: 1630
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         31
      ICount:          198
      EdgeCount:       40
      CyclomaticComplexity: 11
      functionsReached:
        - nl_attr_get_unspec
        - nl_parse_action_pc
        - nl_parse_nested
        - nl_parse_tcf
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:1599,10'
          Dst:             nl_parse_nested
        - Src:             'lib/tc.c:1601,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/tc.c:1606,9'
          Dst:             nl_attr_get_unspec
        - Src:             'lib/tc.c:1610,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/tc.c:1625,17'
          Dst:             nl_attr_get_unspec
        - Src:             'lib/tc.c:1627,5'
          Dst:             nl_parse_tcf
        - Src:             'lib/tc.c:1628,5'
          Dst:             nl_parse_action_pc
    - functionName:    nl_parse_act_gact
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1480
      functionLinenumberEnd: 1511
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          137
      EdgeCount:       26
      CyclomaticComplexity: 7
      functionsReached:
        - nl_attr_get_unspec
        - nl_parse_action_pc
        - nl_parse_nested
        - nl_parse_tcf
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:1487,10'
          Dst:             nl_parse_nested
        - Src:             'lib/tc.c:1489,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/tc.c:1494,9'
          Dst:             nl_attr_get_unspec
        - Src:             'lib/tc.c:1500,9'
          Dst:             nl_parse_action_pc
        - Src:             'lib/tc.c:1502,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/tc.c:1506,17'
          Dst:             nl_attr_get_unspec
        - Src:             'lib/tc.c:1508,5'
          Dst:             nl_parse_tcf
    - functionName:    tc_make_handle
      functionSourceFile: '/src/openvswitch/lib/tc.h'
      linkageType:     InternalLinkage
      functionLinenumber: 85
      functionLinenumberEnd: 86
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nl_get_flower_offloaded_state
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1070
      functionLinenumberEnd: 1082
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          58
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - nl_attr_get_u32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:1074,24'
          Dst:             nl_attr_get_u32
    - functionName:    nl_parse_vxlan_key
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 709
      functionLinenumberEnd: 736
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          107
      EdgeCount:       17
      CyclomaticComplexity: 3
      functionsReached:
        - nl_attr_get_nested
        - nl_attr_get_u32
        - nl_attr_is_valid
        - nl_attr_len_pad
        - nl_attr_next
        - nl_attr_type
        - odp_decode_gbp_raw
        - ofpbuf_at
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/tc.c:722,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/tc.c:716,5'
          Dst:             nl_attr_get_nested
        - Src:             'lib/tc.c:719,5'
          Dst:             ofpbuf_at
        - Src:             'lib/tc.c:719,5'
          Dst:             nl_attr_is_valid
        - Src:             'lib/tc.c:720,25'
          Dst:             nl_attr_type
        - Src:             'lib/tc.c:724,23'
          Dst:             nl_attr_get_u32
        - Src:             'lib/tc.c:725,13'
          Dst:             odp_decode_gbp_raw
        - Src:             'lib/tc.c:730,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/tc.c:719,5'
          Dst:             nl_attr_len_pad
        - Src:             'lib/tc.c:719,5'
          Dst:             nl_attr_next
    - functionName:    nl_parse_geneve_key
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 644
      functionLinenumberEnd: 704
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         44
      ICount:          288
      EdgeCount:       53
      CyclomaticComplexity: 11
      functionsReached:
        - nl_attr_get_be16
        - nl_attr_get_nested
        - nl_attr_get_size
        - nl_attr_get_u8
        - nl_attr_get_unspec
        - nl_attr_is_valid
        - nl_attr_len_pad
        - nl_attr_next
        - nl_attr_type
        - ofpbuf_at
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/tc.c:661,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/tc.c:653,5'
          Dst:             nl_attr_get_nested
        - Src:             'lib/tc.c:658,5'
          Dst:             ofpbuf_at
        - Src:             'lib/tc.c:658,5'
          Dst:             nl_attr_is_valid
        - Src:             'lib/tc.c:659,25'
          Dst:             nl_attr_type
        - Src:             'lib/tc.c:664,17'
          Dst:             vlog_rate_limit
        - Src:             'lib/tc.c:669,30'
          Dst:             nl_attr_get_be16
        - Src:             'lib/tc.c:676,17'
          Dst:             vlog_rate_limit
        - Src:             'lib/tc.c:680,25'
          Dst:             nl_attr_get_u8
        - Src:             'lib/tc.c:685,17'
          Dst:             vlog_rate_limit
        - Src:             'lib/tc.c:689,27'
          Dst:             nl_attr_get_size
        - Src:             'lib/tc.c:690,29'
          Dst:             nl_attr_get_unspec
        - Src:             'lib/tc.c:658,5'
          Dst:             nl_attr_len_pad
        - Src:             'lib/tc.c:658,5'
          Dst:             nl_attr_next
        - Src:             'lib/tc.c:699,9'
          Dst:             vlog_rate_limit
    - functionName:    flower_tun_geneve_opt_check_len
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 777
      functionLinenumberEnd: 804
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          132
      EdgeCount:       21
      CyclomaticComplexity: 6
      functionsReached:
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:801,5'
          Dst:             vlog_rate_limit
    - functionName:    nl_parse_flower_tunnel_opts
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 741
      functionLinenumberEnd: 772
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          108
      EdgeCount:       18
      CyclomaticComplexity: 4
      functionsReached:
        - nl_attr_get_nested
        - nl_attr_is_valid
        - nl_attr_len_pad
        - nl_attr_next
        - nl_attr_type
        - nl_parse_geneve_key
        - nl_parse_vxlan_key
        - ofpbuf_at
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/tc.c:753,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/tc.c:748,5'
          Dst:             nl_attr_get_nested
        - Src:             'lib/tc.c:751,5'
          Dst:             ofpbuf_at
        - Src:             'lib/tc.c:751,5'
          Dst:             nl_attr_is_valid
        - Src:             'lib/tc.c:752,25'
          Dst:             nl_attr_type
        - Src:             'lib/tc.c:755,19'
          Dst:             nl_parse_geneve_key
        - Src:             'lib/tc.c:762,19'
          Dst:             nl_parse_vxlan_key
        - Src:             'lib/tc.c:751,5'
          Dst:             nl_attr_len_pad
        - Src:             'lib/tc.c:751,5'
          Dst:             nl_attr_next
    - functionName:    nl_parse_flower_ct_match
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 910
      functionLinenumberEnd: 942
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          163
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - nl_attr_get_u128
        - nl_attr_get_u16
        - nl_attr_get_u32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:918,25'
          Dst:             nl_attr_get_u16
        - Src:             'lib/tc.c:919,26'
          Dst:             nl_attr_get_u16
        - Src:             'lib/tc.c:925,24'
          Dst:             nl_attr_get_u16
        - Src:             'lib/tc.c:926,25'
          Dst:             nl_attr_get_u16
        - Src:             'lib/tc.c:932,24'
          Dst:             nl_attr_get_u32
        - Src:             'lib/tc.c:933,25'
          Dst:             nl_attr_get_u32
        - Src:             'lib/tc.c:939,25'
          Dst:             nl_attr_get_u128
        - Src:             'lib/tc.c:940,26'
          Dst:             nl_attr_get_u128
    - functionName:    eth_type_vlan
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 429
      functionLinenumberEnd: 431
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htons
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:430,24'
          Dst:             htons
        - Src:             'lib/packets.h:431,21'
          Dst:             htons
    - functionName:    eth_type_mpls
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 423
      functionLinenumberEnd: 425
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htons
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:424,24'
          Dst:             htons
        - Src:             'lib/packets.h:425,21'
          Dst:             htons
    - functionName:    nl_parse_flower_actions
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2134
      functionLinenumberEnd: 2243
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         87
      ICount:          497
      EdgeCount:       116
      CyclomaticComplexity: 31
      functionsReached:
        - nl_parse_nested
        - nl_parse_single_action
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:2150,10'
          Dst:             nl_parse_nested
        - Src:             'lib/tc.c:2152,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/tc.c:2161,17'
          Dst:             vlog_rate_limit
        - Src:             'lib/tc.c:2164,19'
          Dst:             nl_parse_single_action
        - Src:             'lib/tc.c:2236,9'
          Dst:             vlog_rate_limit
    - functionName:    nl_parse_single_action
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2052
      functionLinenumberEnd: 2110
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         60
      ICount:          300
      EdgeCount:       78
      CyclomaticComplexity: 20
      functionsReached:
        - nl_attr_get
        - nl_attr_get_size
        - nl_attr_get_string
        - nl_parse_act_csum
        - nl_parse_act_ct
        - nl_parse_act_gact
        - nl_parse_act_mirred
        - nl_parse_act_mpls
        - nl_parse_act_pedit
        - nl_parse_act_police
        - nl_parse_act_tunnel_key
        - nl_parse_act_vlan
        - nl_parse_action_stats
        - nl_parse_nested
        - strcmp
        - vlog_rate_limit
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:2059,10'
          Dst:             nl_parse_nested
        - Src:             'lib/tc.c:2062,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/tc.c:2067,16'
          Dst:             nl_attr_get_string
        - Src:             'lib/tc.c:2073,17'
          Dst:             strcmp
        - Src:             'lib/tc.c:2074,15'
          Dst:             nl_parse_act_gact
        - Src:             'lib/tc.c:2075,17'
          Dst:             strcmp
        - Src:             'lib/tc.c:2076,15'
          Dst:             nl_parse_act_mirred
        - Src:             'lib/tc.c:2077,17'
          Dst:             strcmp
        - Src:             'lib/tc.c:2078,15'
          Dst:             nl_parse_act_vlan
        - Src:             'lib/tc.c:2079,17'
          Dst:             strcmp
        - Src:             'lib/tc.c:2080,15'
          Dst:             nl_parse_act_mpls
        - Src:             'lib/tc.c:2081,17'
          Dst:             strcmp
        - Src:             'lib/tc.c:2082,15'
          Dst:             nl_parse_act_tunnel_key
        - Src:             'lib/tc.c:2083,17'
          Dst:             strcmp
        - Src:             'lib/tc.c:2084,15'
          Dst:             nl_parse_act_pedit
        - Src:             'lib/tc.c:2085,17'
          Dst:             strcmp
        - Src:             'lib/tc.c:2086,9'
          Dst:             nl_parse_act_csum
        - Src:             'lib/tc.c:2088,17'
          Dst:             strcmp
        - Src:             'lib/tc.c:2090,17'
          Dst:             strcmp
        - Src:             'lib/tc.c:2091,9'
          Dst:             nl_parse_act_ct
        - Src:             'lib/tc.c:2092,17'
          Dst:             strcmp
        - Src:             'lib/tc.c:2093,9'
          Dst:             nl_parse_act_police
        - Src:             'lib/tc.c:2095,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/tc.c:2104,35'
          Dst:             nl_attr_get
        - Src:             'lib/tc.c:2105,34'
          Dst:             nl_attr_get_size
        - Src:             'lib/tc.c:2108,12'
          Dst:             nl_parse_action_stats
    - functionName:    nl_parse_action_stats
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1969
      functionLinenumberEnd: 2047
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         42
      ICount:          288
      EdgeCount:       51
      CyclomaticComplexity: 11
      functionsReached:
        - get_32aligned_u64
        - nl_attr_get
        - nl_attr_get_size
        - nl_attr_get_u64
        - nl_attr_get_unspec
        - nl_attr_is_valid
        - nl_attr_len_pad
        - nl_attr_next
        - nl_attr_type
        - put_32aligned_u64
        - vlog_rate_limit
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/tc.c:1984,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/tc.c:1978,5'
          Dst:             nl_attr_get
        - Src:             'lib/tc.c:1978,5'
          Dst:             nl_attr_get_size
        - Src:             'lib/tc.c:1978,5'
          Dst:             nl_attr_is_valid
        - Src:             'lib/tc.c:1980,25'
          Dst:             nl_attr_type
        - Src:             'lib/tc.c:1986,34'
          Dst:             nl_attr_get_unspec
        - Src:             'lib/tc.c:1993,34'
          Dst:             nl_attr_get_unspec
        - Src:             'lib/tc.c:2000,18'
          Dst:             nl_attr_get_unspec
        - Src:             'lib/tc.c:2005,34'
          Dst:             nl_attr_get_u64
        - Src:             'lib/tc.c:2007,34'
          Dst:             nl_attr_get_u64
        - Src:             'lib/tc.c:1978,5'
          Dst:             nl_attr_len_pad
        - Src:             'lib/tc.c:1978,5'
          Dst:             nl_attr_next
        - Src:             'lib/tc.c:2027,30'
          Dst:             get_32aligned_u64
        - Src:             'lib/tc.c:2028,13'
          Dst:             put_32aligned_u64
        - Src:             'lib/tc.c:2029,13'
          Dst:             put_32aligned_u64
        - Src:             'lib/tc.c:2033,26'
          Dst:             get_32aligned_u64
        - Src:             'lib/tc.c:2034,9'
          Dst:             put_32aligned_u64
        - Src:             'lib/tc.c:2035,9'
          Dst:             put_32aligned_u64
        - Src:             'lib/tc.c:2039,9'
          Dst:             put_32aligned_u64
        - Src:             'lib/tc.c:2045,5'
          Dst:             vlog_rate_limit
    - functionName:    get_32aligned_u64
      functionSourceFile: '/src/openvswitch/lib/unaligned.h'
      linkageType:     InternalLinkage
      functionLinenumber: 208
      functionLinenumberEnd: 209
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    put_32aligned_u64
      functionSourceFile: '/src/openvswitch/lib/unaligned.h'
      linkageType:     InternalLinkage
      functionLinenumber: 215
      functionLinenumberEnd: 218
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          19
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nl_parse_flower_flags
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1086
      functionLinenumberEnd: 1088
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_get_flower_offloaded_state
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:1087,31'
          Dst:             nl_get_flower_offloaded_state
    - functionName:    nl_parse_flower_tunnel
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 808
      functionLinenumberEnd: 907
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         67
      ICount:          543
      EdgeCount:       88
      CyclomaticComplexity: 23
      functionsReached:
        - be32_to_be64
        - flower_tun_geneve_opt_check_len
        - is_all_zeros
        - nl_attr_get_be16
        - nl_attr_get_be32
        - nl_attr_get_in6_addr
        - nl_attr_get_u8
        - nl_parse_flower_tunnel_opts
        - ntohl
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:812,23'
          Dst:             nl_attr_get_be32
        - Src:             'lib/tc.c:814,33'
          Dst:             be32_to_be64
        - Src:             'lib/tc.c:819,13'
          Dst:             nl_attr_get_be32
        - Src:             'lib/tc.c:821,13'
          Dst:             nl_attr_get_be32
        - Src:             'lib/tc.c:825,13'
          Dst:             nl_attr_get_be32
        - Src:             'lib/tc.c:827,13'
          Dst:             nl_attr_get_be32
        - Src:             'lib/tc.c:831,13'
          Dst:             nl_attr_get_in6_addr
        - Src:             'lib/tc.c:833,13'
          Dst:             nl_attr_get_in6_addr
        - Src:             'lib/tc.c:837,13'
          Dst:             nl_attr_get_in6_addr
        - Src:             'lib/tc.c:839,13'
          Dst:             nl_attr_get_in6_addr
        - Src:             'lib/tc.c:843,13'
          Dst:             nl_attr_get_be16
        - Src:             'lib/tc.c:845,13'
          Dst:             nl_attr_get_be16
        - Src:             'lib/tc.c:849,13'
          Dst:             nl_attr_get_be16
        - Src:             'lib/tc.c:851,13'
          Dst:             nl_attr_get_be16
        - Src:             'lib/tc.c:855,13'
          Dst:             nl_attr_get_u8
        - Src:             'lib/tc.c:857,13'
          Dst:             nl_attr_get_u8
        - Src:             'lib/tc.c:861,13'
          Dst:             nl_attr_get_u8
        - Src:             'lib/tc.c:863,13'
          Dst:             nl_attr_get_u8
        - Src:             'lib/tc.c:866,10'
          Dst:             is_all_zeros
        - Src:             'lib/tc.c:867,10'
          Dst:             is_all_zeros
        - Src:             'lib/tc.c:873,13'
          Dst:             nl_attr_get_be32
        - Src:             'lib/tc.c:872,43'
          Dst:             ntohl
        - Src:             'lib/tc.c:875,13'
          Dst:             nl_attr_get_be32
        - Src:             'lib/tc.c:874,44'
          Dst:             ntohl
        - Src:             'lib/tc.c:880,16'
          Dst:             nl_parse_flower_tunnel_opts
        - Src:             'lib/tc.c:886,16'
          Dst:             nl_parse_flower_tunnel_opts
        - Src:             'lib/tc.c:892,16'
          Dst:             flower_tun_geneve_opt_check_len
        - Src:             'lib/tc.c:898,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/tc.c:902,9'
          Dst:             vlog_rate_limit
    - functionName:    nl_parse_flower_ip
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 945
      functionLinenumberEnd: 1066
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         75
      ICount:          637
      EdgeCount:       99
      CyclomaticComplexity: 26
      functionsReached:
        - nl_attr_get_be16
        - nl_attr_get_be32
        - nl_attr_get_in6_addr
        - nl_attr_get_u8
        - nl_parse_flower_ct_match
        - ntohl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:951,20'
          Dst:             nl_attr_get_u8
        - Src:             'lib/tc.c:957,28'
          Dst:             nl_attr_get_be32
        - Src:             'lib/tc.c:957,22'
          Dst:             ntohl
        - Src:             'lib/tc.c:959,23'
          Dst:             nl_attr_get_be32
        - Src:             'lib/tc.c:959,17'
          Dst:             ntohl
        - Src:             'lib/tc.c:964,13'
          Dst:             nl_attr_get_be32
        - Src:             'lib/tc.c:966,13'
          Dst:             nl_attr_get_be32
        - Src:             'lib/tc.c:970,13'
          Dst:             nl_attr_get_be32
        - Src:             'lib/tc.c:972,13'
          Dst:             nl_attr_get_be32
        - Src:             'lib/tc.c:978,30'
          Dst:             nl_attr_get_in6_addr
        - Src:             'lib/tc.c:979,31'
          Dst:             nl_attr_get_in6_addr
        - Src:             'lib/tc.c:985,30'
          Dst:             nl_attr_get_in6_addr
        - Src:             'lib/tc.c:986,31'
          Dst:             nl_attr_get_in6_addr
        - Src:             'lib/tc.c:992,17'
          Dst:             nl_attr_get_be16
        - Src:             'lib/tc.c:994,17'
          Dst:             nl_attr_get_be16
        - Src:             'lib/tc.c:998,17'
          Dst:             nl_attr_get_be16
        - Src:             'lib/tc.c:1000,17'
          Dst:             nl_attr_get_be16
        - Src:             'lib/tc.c:1004,17'
          Dst:             nl_attr_get_be16
        - Src:             'lib/tc.c:1006,17'
          Dst:             nl_attr_get_be16
        - Src:             'lib/tc.c:1010,28'
          Dst:             nl_attr_get_be16
        - Src:             'lib/tc.c:1012,17'
          Dst:             nl_attr_get_be16
        - Src:             'lib/tc.c:1015,28'
          Dst:             nl_attr_get_be16
        - Src:             'lib/tc.c:1017,17'
          Dst:             nl_attr_get_be16
        - Src:             'lib/tc.c:1021,29'
          Dst:             nl_attr_get_be16
        - Src:             'lib/tc.c:1023,17'
          Dst:             nl_attr_get_be16
        - Src:             'lib/tc.c:1026,29'
          Dst:             nl_attr_get_be16
        - Src:             'lib/tc.c:1028,17'
          Dst:             nl_attr_get_be16
        - Src:             'lib/tc.c:1033,16'
          Dst:             nl_attr_get_u8
        - Src:             'lib/tc.c:1035,17'
          Dst:             nl_attr_get_u8
        - Src:             'lib/tc.c:1038,30'
          Dst:             nl_attr_get_u8
        - Src:             'lib/tc.c:1040,17'
          Dst:             nl_attr_get_u8
        - Src:             'lib/tc.c:1044,30'
          Dst:             nl_attr_get_u8
        - Src:             'lib/tc.c:1046,18'
          Dst:             nl_attr_get_u8
        - Src:             'lib/tc.c:1049,30'
          Dst:             nl_attr_get_u8
        - Src:             'lib/tc.c:1051,17'
          Dst:             nl_attr_get_u8
        - Src:             'lib/tc.c:1056,23'
          Dst:             nl_attr_get_u8
        - Src:             'lib/tc.c:1057,24'
          Dst:             nl_attr_get_u8
        - Src:             'lib/tc.c:1061,23'
          Dst:             nl_attr_get_u8
        - Src:             'lib/tc.c:1062,24'
          Dst:             nl_attr_get_u8
        - Src:             'lib/tc.c:1065,5'
          Dst:             nl_parse_flower_ct_match
    - functionName:    nl_parse_flower_vlan
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 594
      functionLinenumberEnd: 639
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          190
      EdgeCount:       28
      CyclomaticComplexity: 9
      functionsReached:
        - eth_type_vlan
        - nl_attr_get_be16
        - nl_attr_get_u16
        - nl_attr_get_u8
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:597,10'
          Dst:             eth_type_vlan
        - Src:             'lib/tc.c:602,9'
          Dst:             nl_attr_get_be16
        - Src:             'lib/tc.c:607,13'
          Dst:             nl_attr_get_u16
        - Src:             'lib/tc.c:612,13'
          Dst:             nl_attr_get_u8
        - Src:             'lib/tc.c:620,21'
          Dst:             nl_attr_get_be16
        - Src:             'lib/tc.c:621,10'
          Dst:             eth_type_vlan
        - Src:             'lib/tc.c:631,13'
          Dst:             nl_attr_get_u16
        - Src:             'lib/tc.c:636,13'
          Dst:             nl_attr_get_u8
    - functionName:    nl_parse_flower_mpls
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 554
      functionLinenumberEnd: 590
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          155
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - eth_type_mpls
        - htonl
        - nl_attr_get_be16
        - nl_attr_get_u32
        - nl_attr_get_u8
        - set_mpls_lse_bos
        - set_mpls_lse_label
        - set_mpls_lse_tc
        - set_mpls_lse_ttl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:558,10'
          Dst:             eth_type_mpls
        - Src:             'lib/tc.c:563,9'
          Dst:             nl_attr_get_be16
        - Src:             'lib/tc.c:568,15'
          Dst:             nl_attr_get_u8
        - Src:             'lib/tc.c:569,9'
          Dst:             set_mpls_lse_ttl
        - Src:             'lib/tc.c:570,9'
          Dst:             set_mpls_lse_ttl
        - Src:             'lib/tc.c:574,15'
          Dst:             nl_attr_get_u8
        - Src:             'lib/tc.c:575,9'
          Dst:             set_mpls_lse_bos
        - Src:             'lib/tc.c:576,9'
          Dst:             set_mpls_lse_bos
        - Src:             'lib/tc.c:580,14'
          Dst:             nl_attr_get_u8
        - Src:             'lib/tc.c:581,9'
          Dst:             set_mpls_lse_tc
        - Src:             'lib/tc.c:582,9'
          Dst:             set_mpls_lse_tc
        - Src:             'lib/tc.c:586,17'
          Dst:             nl_attr_get_u32
        - Src:             'lib/tc.c:587,51'
          Dst:             htonl
        - Src:             'lib/tc.c:587,9'
          Dst:             set_mpls_lse_label
        - Src:             'lib/tc.c:588,9'
          Dst:             set_mpls_lse_label
    - functionName:    nl_parse_flower_arp
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 494
      functionLinenumberEnd: 529
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          179
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - nl_attr_get_be32
        - nl_attr_get_u8
        - nl_attr_get_unspec
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:499,13'
          Dst:             nl_attr_get_be32
        - Src:             'lib/tc.c:501,13'
          Dst:             nl_attr_get_be32
        - Src:             'lib/tc.c:505,13'
          Dst:             nl_attr_get_be32
        - Src:             'lib/tc.c:507,13'
          Dst:             nl_attr_get_be32
        - Src:             'lib/tc.c:510,15'
          Dst:             nl_attr_get_unspec
        - Src:             'lib/tc.c:513,15'
          Dst:             nl_attr_get_unspec
        - Src:             'lib/tc.c:517,15'
          Dst:             nl_attr_get_unspec
        - Src:             'lib/tc.c:520,15'
          Dst:             nl_attr_get_unspec
        - Src:             'lib/tc.c:525,13'
          Dst:             nl_attr_get_u8
        - Src:             'lib/tc.c:527,13'
          Dst:             nl_attr_get_u8
    - functionName:    nl_parse_flower_eth
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 533
      functionLinenumberEnd: 550
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          82
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - nl_attr_get_unspec
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:537,15'
          Dst:             nl_attr_get_unspec
        - Src:             'lib/tc.c:540,15'
          Dst:             nl_attr_get_unspec
        - Src:             'lib/tc.c:544,15'
          Dst:             nl_attr_get_unspec
        - Src:             'lib/tc.c:547,15'
          Dst:             nl_attr_get_unspec
    - functionName:    ofpbuf_pull
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 258
      functionLinenumberEnd: 269
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          64
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:259,5'
          Dst:             ovs_ignore
    - functionName:    nl_msg_put_act_tc_policy_flag
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4054
      functionLinenumberEnd: 4071
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          66
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - nl_msg_put_unspec
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:4069,9'
          Dst:             nl_msg_put_unspec
    - functionName:    tc_set_policy
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4033
      functionLinenumberEnd: 4050
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         24
      ICount:          96
      EdgeCount:       30
      CyclomaticComplexity: 8
      functionsReached:
        - strcmp
        - vlog
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:4038,10'
          Dst:             strcmp
        - Src:             'lib/tc.c:4040,17'
          Dst:             strcmp
        - Src:             'lib/tc.c:4042,17'
          Dst:             strcmp
        - Src:             'lib/tc.c:4045,9'
          Dst:             vlog
        - Src:             'lib/tc.c:4049,5'
          Dst:             vlog
    - functionName:    cmp_tc_flower_match_action
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3924
      functionLinenumberEnd: 3964
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         20
      ICount:          168
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - log_tc_flower_match
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:3925,9'
          Dst:             memcmp
        - Src:             'lib/tc.c:3926,9'
          Dst:             log_tc_flower_match
        - Src:             'lib/tc.c:3939,13'
          Dst:             log_tc_flower_match
        - Src:             'lib/tc.c:3950,9'
          Dst:             log_tc_flower_match
        - Src:             'lib/tc.c:3956,13'
          Dst:             memcmp
        - Src:             'lib/tc.c:3957,13'
          Dst:             log_tc_flower_match
    - functionName:    nl_msg_put_flower_options
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3704
      functionLinenumberEnd: 3853
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         101
      ICount:          862
      EdgeCount:       134
      CyclomaticComplexity: 35
      functionsReached:
        - eth_type_mpls
        - eth_type_vlan
        - htonl
        - mpls_lse_to_bos
        - mpls_lse_to_label
        - mpls_lse_to_tc
        - mpls_lse_to_ttl
        - nl_msg_put_be16
        - nl_msg_put_be32
        - nl_msg_put_flower_acts
        - nl_msg_put_flower_tunnel
        - nl_msg_put_masked_value
        - nl_msg_put_u16
        - nl_msg_put_u32
        - nl_msg_put_u8
        - ntohs
        - tc_get_tc_cls_policy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:3706,30'
          Dst:             ntohs
        - Src:             'lib/tc.c:3707,20'
          Dst:             eth_type_vlan
        - Src:             'lib/tc.c:3708,31'
          Dst:             eth_type_vlan
        - Src:             'lib/tc.c:3709,20'
          Dst:             eth_type_mpls
        - Src:             'lib/tc.c:3715,12'
          Dst:             nl_msg_put_flower_acts
        - Src:             'lib/tc.c:3722,29'
          Dst:             ntohs
        - Src:             'lib/tc.c:3724,29'
          Dst:             ntohs
        - Src:             'lib/tc.c:3729,25'
          Dst:             ntohs
        - Src:             'lib/tc.c:3732,5'
          Dst:             nl_msg_put_masked_value
        - Src:             'lib/tc.c:3733,5'
          Dst:             nl_msg_put_masked_value
        - Src:             'lib/tc.c:3736,9'
          Dst:             nl_msg_put_masked_value
        - Src:             'lib/tc.c:3737,9'
          Dst:             nl_msg_put_masked_value
        - Src:             'lib/tc.c:3738,9'
          Dst:             nl_msg_put_masked_value
        - Src:             'lib/tc.c:3739,9'
          Dst:             nl_msg_put_masked_value
        - Src:             'lib/tc.c:3740,9'
          Dst:             nl_msg_put_masked_value
        - Src:             'lib/tc.c:3744,9'
          Dst:             nl_msg_put_masked_value
        - Src:             'lib/tc.c:3745,9'
          Dst:             nl_msg_put_masked_value
        - Src:             'lib/tc.c:3748,13'
          Dst:             nl_msg_put_u8
        - Src:             'lib/tc.c:3754,28'
          Dst:             htonl
        - Src:             'lib/tc.c:3753,13'
          Dst:             nl_msg_put_be32
        - Src:             'lib/tc.c:3756,28'
          Dst:             htonl
        - Src:             'lib/tc.c:3755,13'
          Dst:             nl_msg_put_be32
        - Src:             'lib/tc.c:3760,13'
          Dst:             nl_msg_put_masked_value
        - Src:             'lib/tc.c:3761,13'
          Dst:             nl_msg_put_masked_value
        - Src:             'lib/tc.c:3763,13'
          Dst:             nl_msg_put_masked_value
        - Src:             'lib/tc.c:3764,13'
          Dst:             nl_msg_put_masked_value
        - Src:             'lib/tc.c:3765,13'
          Dst:             nl_msg_put_masked_value
        - Src:             'lib/tc.c:3767,13'
          Dst:             nl_msg_put_masked_value
        - Src:             'lib/tc.c:3768,13'
          Dst:             nl_msg_put_masked_value
        - Src:             'lib/tc.c:3770,13'
          Dst:             nl_msg_put_masked_value
        - Src:             'lib/tc.c:3771,13'
          Dst:             nl_msg_put_masked_value
        - Src:             'lib/tc.c:3773,13'
          Dst:             nl_msg_put_masked_value
        - Src:             'lib/tc.c:3774,13'
          Dst:             nl_msg_put_masked_value
        - Src:             'lib/tc.c:3778,5'
          Dst:             nl_msg_put_masked_value
        - Src:             'lib/tc.c:3779,5'
          Dst:             nl_msg_put_masked_value
        - Src:             'lib/tc.c:3780,5'
          Dst:             nl_msg_put_masked_value
        - Src:             'lib/tc.c:3781,5'
          Dst:             nl_msg_put_masked_value
        - Src:             'lib/tc.c:3784,13'
          Dst:             nl_msg_put_masked_value
        - Src:             'lib/tc.c:3785,13'
          Dst:             nl_msg_put_masked_value
        - Src:             'lib/tc.c:3787,13'
          Dst:             nl_msg_put_masked_value
        - Src:             'lib/tc.c:3788,13'
          Dst:             nl_msg_put_masked_value
        - Src:             'lib/tc.c:3791,5'
          Dst:             nl_msg_put_be16
        - Src:             'lib/tc.c:3794,13'
          Dst:             mpls_lse_to_ttl
        - Src:             'lib/tc.c:3796,27'
          Dst:             mpls_lse_to_ttl
        - Src:             'lib/tc.c:3795,13'
          Dst:             nl_msg_put_u8
        - Src:             'lib/tc.c:3798,13'
          Dst:             mpls_lse_to_tc
        - Src:             'lib/tc.c:3800,27'
          Dst:             mpls_lse_to_tc
        - Src:             'lib/tc.c:3799,13'
          Dst:             nl_msg_put_u8
        - Src:             'lib/tc.c:3802,13'
          Dst:             mpls_lse_to_bos
        - Src:             'lib/tc.c:3804,27'
          Dst:             mpls_lse_to_bos
        - Src:             'lib/tc.c:3803,13'
          Dst:             nl_msg_put_u8
        - Src:             'lib/tc.c:3806,13'
          Dst:             mpls_lse_to_label
        - Src:             'lib/tc.c:3808,28'
          Dst:             mpls_lse_to_label
        - Src:             'lib/tc.c:3807,13'
          Dst:             nl_msg_put_u32
        - Src:             'lib/tc.c:3814,13'
          Dst:             nl_msg_put_u16
        - Src:             'lib/tc.c:3818,13'
          Dst:             nl_msg_put_u8
        - Src:             'lib/tc.c:3822,13'
          Dst:             nl_msg_put_be16
        - Src:             'lib/tc.c:3828,17'
          Dst:             nl_msg_put_u16
        - Src:             'lib/tc.c:3832,17'
          Dst:             nl_msg_put_u8
        - Src:             'lib/tc.c:3836,17'
          Dst:             nl_msg_put_be16
        - Src:             'lib/tc.c:3846,47'
          Dst:             tc_get_tc_cls_policy
        - Src:             'lib/tc.c:3846,5'
          Dst:             nl_msg_put_u32
        - Src:             'lib/tc.c:3849,9'
          Dst:             nl_msg_put_flower_tunnel
    - functionName:    tc_replace_flower
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3968
      functionLinenumberEnd: 4029
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         31
      ICount:          191
      EdgeCount:       40
      CyclomaticComplexity: 11
      functionsReached:
        - cmp_tc_flower_match_action
        - nl_msg_end_nested
        - nl_msg_put_flower_options
        - nl_msg_put_string
        - nl_msg_start_nested
        - ofpbuf_const_initializer
        - ofpbuf_delete
        - ofpbuf_try_pull
        - ofpbuf_uninit
        - parse_netlink_to_tc_flower
        - request_from_tcf_id
        - tc_get_major
        - tc_netlink_malformed_reply_add
        - tc_transact
        - vlog_rate_limit
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:3975,5'
          Dst:             request_from_tcf_id
        - Src:             'lib/tc.c:3978,5'
          Dst:             nl_msg_put_string
        - Src:             'lib/tc.c:3979,20'
          Dst:             nl_msg_start_nested
        - Src:             'lib/tc.c:3981,17'
          Dst:             nl_msg_put_flower_options
        - Src:             'lib/tc.c:3984,13'
          Dst:             ofpbuf_uninit
        - Src:             'lib/tc.c:3988,5'
          Dst:             nl_msg_end_nested
        - Src:             'lib/tc.c:3990,13'
          Dst:             tc_transact
        - Src:             'lib/tc.c:3992,27'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/tc.c:3993,34'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/tc.c:3994,28'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/tc.c:3998,13'
          Dst:             tc_netlink_malformed_reply_add
        - Src:             'lib/tc.c:3999,13'
          Dst:             ofpbuf_delete
        - Src:             'lib/tc.c:4003,20'
          Dst:             tc_get_major
        - Src:             'lib/tc.c:4011,19'
          Dst:             parse_netlink_to_tc_flower
        - Src:             'lib/tc.c:4014,25'
          Dst:             cmp_tc_flower_match_action
        - Src:             'lib/tc.c:4018,21'
          Dst:             vlog_rate_limit
        - Src:             'lib/tc.c:4025,9'
          Dst:             ofpbuf_delete
    - functionName:    request_from_tcf_id
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 228
      functionLinenumberEnd: 242
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - short
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          119
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - nl_msg_put_u32
        - tc_make_handle
        - tc_make_request
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:233,13'
          Dst:             tc_make_request
        - Src:             'lib/tc.c:236,23'
          Dst:             tc_make_handle
        - Src:             'lib/tc.c:240,9'
          Dst:             nl_msg_put_u32
    - functionName:    tc_transact
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 246
      functionLinenumberEnd: 249
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_transact
        - ofpbuf_uninit
      functionUses:    21
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:247,17'
          Dst:             nl_transact
        - Src:             'lib/tc.c:248,5'
          Dst:             ofpbuf_uninit
    - functionName:    ofpbuf_const_initializer
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 97
      functionLinenumberEnd: 105
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          30
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofpbuf_try_pull
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 275
      functionLinenumberEnd: 276
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofpbuf_pull
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:276,30'
          Dst:             ofpbuf_pull
    - functionName:    tc_netlink_malformed_reply_add
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 72
      functionLinenumberEnd: 72
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_tc_netlink_malformed_reply_get
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:72,1'
          Dst:             counter_tc_netlink_malformed_reply_get
    - functionName:    ofpbuf_delete
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 172
      functionLinenumberEnd: 177
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          28
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofpbuf_uninit
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:174,9'
          Dst:             ofpbuf_uninit
    - functionName:    tc_get_major
      functionSourceFile: '/src/openvswitch/lib/tc.h'
      linkageType:     InternalLinkage
      functionLinenumber: 92
      functionLinenumberEnd: 93
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    parse_netlink_to_tc_flower
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2285
      functionLinenumberEnd: 2328
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          192
      EdgeCount:       39
      CyclomaticComplexity: 11
      functionsReached:
        - nl_attr_get_string
        - nl_attr_get_u32
        - nl_parse_flower_options
        - nl_policy_parse
        - ofpbuf_const_initializer
        - ofpbuf_try_pull
        - ovsthread_once_done
        - ovsthread_once_start
        - strcmp
        - tc_get_major
        - tc_get_minor
        - tc_netlink_malformed_reply_add
        - vlog
        - vlog_rate_limit
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:2286,23'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/tc.c:2287,30'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/tc.c:2288,24'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/tc.c:2293,9'
          Dst:             tc_netlink_malformed_reply_add
        - Src:             'lib/tc.c:2299,49'
          Dst:             tc_get_minor
        - Src:             'lib/tc.c:2301,16'
          Dst:             tc_get_major
        - Src:             'lib/tc.c:2312,10'
          Dst:             nl_policy_parse
        - Src:             'lib/tc.c:2313,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/tc.c:2318,21'
          Dst:             nl_attr_get_u32
        - Src:             'lib/tc.c:2321,12'
          Dst:             nl_attr_get_string
        - Src:             'lib/tc.c:2322,9'
          Dst:             strcmp
        - Src:             'lib/tc.c:2323,9'
          Dst:             ovsthread_once_start
        - Src:             'lib/tc.c:2323,9'
          Dst:             vlog
        - Src:             'lib/tc.c:2323,9'
          Dst:             ovsthread_once_done
        - Src:             'lib/tc.c:2327,12'
          Dst:             nl_parse_flower_options
    - functionName:    tc_get_minor
      functionSourceFile: '/src/openvswitch/lib/tc.h'
      linkageType:     InternalLinkage
      functionLinenumber: 99
      functionLinenumberEnd: 100
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nl_parse_flower_options
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2248
      functionLinenumberEnd: 2280
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          128
      EdgeCount:       29
      CyclomaticComplexity: 8
      functionsReached:
        - nl_parse_flower_actions
        - nl_parse_flower_arp
        - nl_parse_flower_eth
        - nl_parse_flower_flags
        - nl_parse_flower_ip
        - nl_parse_flower_mpls
        - nl_parse_flower_tunnel
        - nl_parse_flower_vlan
        - nl_parse_nested
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:2253,14'
          Dst:             nl_parse_nested
        - Src:             'lib/tc.c:2255,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/tc.c:2261,10'
          Dst:             nl_parse_nested
        - Src:             'lib/tc.c:2263,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/tc.c:2267,5'
          Dst:             nl_parse_flower_eth
        - Src:             'lib/tc.c:2268,5'
          Dst:             nl_parse_flower_arp
        - Src:             'lib/tc.c:2269,5'
          Dst:             nl_parse_flower_mpls
        - Src:             'lib/tc.c:2270,5'
          Dst:             nl_parse_flower_vlan
        - Src:             'lib/tc.c:2271,5'
          Dst:             nl_parse_flower_ip
        - Src:             'lib/tc.c:2272,11'
          Dst:             nl_parse_flower_tunnel
        - Src:             'lib/tc.c:2278,5'
          Dst:             nl_parse_flower_flags
        - Src:             'lib/tc.c:2279,12'
          Dst:             nl_parse_flower_actions
    - functionName:    tc_make_request
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 197
      functionLinenumberEnd: 208
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - int
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          38
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_msg_put_nlmsghdr
        - ofpbuf_init
        - ofpbuf_put_zeros
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:200,5'
          Dst:             ofpbuf_init
        - Src:             'lib/tc.c:201,5'
          Dst:             nl_msg_put_nlmsghdr
        - Src:             'lib/tc.c:202,13'
          Dst:             ofpbuf_put_zeros
    - functionName:    tc_get_flower
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2475
      functionLinenumberEnd: 2490
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          48
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - nl_msg_put_string
        - ofpbuf_delete
        - parse_netlink_to_tc_flower
        - request_from_tcf_id
        - tc_transact
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:2480,5'
          Dst:             request_from_tcf_id
        - Src:             'lib/tc.c:2481,5'
          Dst:             nl_msg_put_string
        - Src:             'lib/tc.c:2482,13'
          Dst:             tc_transact
        - Src:             'lib/tc.c:2487,13'
          Dst:             parse_netlink_to_tc_flower
        - Src:             'lib/tc.c:2488,5'
          Dst:             ofpbuf_delete
    - functionName:    tc_del_flower_filter
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2469
      functionLinenumberEnd: 2470
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - tc_del_filter
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:2470,12'
          Dst:             tc_del_filter
    - functionName:    tc_del_filter
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2457
      functionLinenumberEnd: 2464
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - nl_msg_put_string
        - request_from_tcf_id
        - tc_transact
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:2460,5'
          Dst:             request_from_tcf_id
        - Src:             'lib/tc.c:2462,9'
          Dst:             nl_msg_put_string
        - Src:             'lib/tc.c:2464,12'
          Dst:             tc_transact
    - functionName:    parse_netlink_to_tc_policer
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2405
      functionLinenumberEnd: 2453
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         38
      ICount:          205
      EdgeCount:       49
      CyclomaticComplexity: 13
      functionsReached:
        - nl_attr_find
        - nl_parse_nested
        - nl_parse_single_action
        - ofpbuf_const_initializer
        - ofpbuf_try_pull
        - tc_netlink_malformed_reply_add
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:2408,23'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/tc.c:2410,30'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/tc.c:2412,26'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/tc.c:2419,9'
          Dst:             tc_netlink_malformed_reply_add
        - Src:             'lib/tc.c:2428,15'
          Dst:             nl_attr_find
        - Src:             'lib/tc.c:2429,22'
          Dst:             nl_parse_nested
        - Src:             'lib/tc.c:2431,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/tc.c:2441,19'
          Dst:             nl_parse_single_action
    - functionName:    tc_dump_tc_action_start
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2386
      functionLinenumberEnd: 2400
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          32
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_dump_start
        - nl_msg_end_nested
        - nl_msg_put_string
        - nl_msg_start_nested
        - ofpbuf_uninit
        - tc_make_action_request
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:2390,5'
          Dst:             tc_make_action_request
        - Src:             'lib/tc.c:2391,19'
          Dst:             nl_msg_start_nested
        - Src:             'lib/tc.c:2392,14'
          Dst:             nl_msg_start_nested
        - Src:             'lib/tc.c:2393,5'
          Dst:             nl_msg_put_string
        - Src:             'lib/tc.c:2394,5'
          Dst:             nl_msg_end_nested
        - Src:             'lib/tc.c:2395,5'
          Dst:             nl_msg_end_nested
        - Src:             'lib/tc.c:2397,5'
          Dst:             nl_dump_start
        - Src:             'lib/tc.c:2398,5'
          Dst:             ofpbuf_uninit
    - functionName:    tc_make_action_request
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 214
      functionLinenumberEnd: 222
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          32
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_msg_put_nlmsghdr
        - ofpbuf_init
        - ofpbuf_put_zeros
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:217,5'
          Dst:             ofpbuf_init
        - Src:             'lib/tc.c:218,5'
          Dst:             nl_msg_put_nlmsghdr
        - Src:             'lib/tc.c:219,14'
          Dst:             ofpbuf_put_zeros
    - functionName:    tc_dump_tc_chain_start
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2374
      functionLinenumberEnd: 2381
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_dump_start
        - ofpbuf_uninit
        - request_from_tcf_id
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:2377,5'
          Dst:             request_from_tcf_id
        - Src:             'lib/tc.c:2378,5'
          Dst:             nl_dump_start
        - Src:             'lib/tc.c:2379,5'
          Dst:             ofpbuf_uninit
    - functionName:    tc_dump_flower_start
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2355
      functionLinenumberEnd: 2369
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - nl_dump_start
        - nl_msg_put_unspec
        - ofpbuf_uninit
        - request_from_tcf_id
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:2358,5'
          Dst:             request_from_tcf_id
        - Src:             'lib/tc.c:2363,9'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/tc.c:2366,5'
          Dst:             nl_dump_start
        - Src:             'lib/tc.c:2367,5'
          Dst:             ofpbuf_uninit
    - functionName:    parse_netlink_to_tc_chain
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2332
      functionLinenumberEnd: 2351
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          86
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - nl_attr_get_u32
        - nl_policy_parse
        - ofpbuf_const_initializer
        - ofpbuf_try_pull
        - tc_netlink_malformed_reply_add
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:2333,23'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/tc.c:2334,30'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/tc.c:2335,24'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/tc.c:2339,9'
          Dst:             tc_netlink_malformed_reply_add
        - Src:             'lib/tc.c:2343,10'
          Dst:             nl_policy_parse
        - Src:             'lib/tc.c:2344,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/tc.c:2348,13'
          Dst:             nl_attr_get_u32
    - functionName:    tc_parse_action_stats
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2116
      functionLinenumberEnd: 2127
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          61
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - nl_parse_action_stats
        - nl_parse_nested
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:2119,10'
          Dst:             nl_parse_nested
        - Src:             'lib/tc.c:2121,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/tc.c:2125,12'
          Dst:             nl_parse_action_stats
    - functionName:    tc_add_del_qdisc
      functionSourceFile: '/src/openvswitch/lib/tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 281
      functionLinenumberEnd: 316
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - int
        - bool
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          134
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - nl_msg_put_string
        - nl_msg_put_u32
        - nl_msg_put_unspec
        - tc_make_request
        - tc_transact
      functionUses:    17
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.c:288,13'
          Dst:             tc_make_request
        - Src:             'lib/tc.c:293,9'
          Dst:             nl_msg_put_string
        - Src:             'lib/tc.c:297,9'
          Dst:             nl_msg_put_string
        - Src:             'lib/tc.c:300,5'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/tc.c:302,9'
          Dst:             nl_msg_put_u32
        - Src:             'lib/tc.c:305,13'
          Dst:             tc_transact
    - functionName:    async_append_is_empty
      functionSourceFile: '/src/openvswitch/lib/async-append-aio.c'
      linkageType:     InternalLinkage
      functionLinenumber: 88
      functionLinenumberEnd: 89
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - byteq_is_empty
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/async-append-aio.c:89,12'
          Dst:             byteq_is_empty
    - functionName:    async_append_wait
      functionSourceFile: '/src/openvswitch/lib/async-append-aio.c'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          84
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - aio_error
        - aio_return
        - aio_suspend
        - async_append_is_empty
        - byteq_advance_tail
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/async-append-aio.c:97,13'
          Dst:             async_append_is_empty
        - Src:             'lib/async-append-aio.c:99,21'
          Dst:             aio_error
        - Src:             'lib/async-append-aio.c:106,13'
          Dst:             aio_suspend
        - Src:             'lib/async-append-aio.c:108,24'
          Dst:             aio_return
        - Src:             'lib/async-append-aio.c:108,13'
          Dst:             ovs_ignore
        - Src:             'lib/async-append-aio.c:110,13'
          Dst:             byteq_advance_tail
    - functionName:    aio_error
      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:    aio_suspend
      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:    aio_return
      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:    async_append_is_full
      functionSourceFile: '/src/openvswitch/lib/async-append-aio.c'
      linkageType:     InternalLinkage
      functionLinenumber: 81
      functionLinenumberEnd: 83
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - byteq_is_full
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/async-append-aio.c:83,16'
          Dst:             byteq_is_full
    - functionName:    async_append_write
      functionSourceFile: '/src/openvswitch/lib/async-append-aio.c'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 155
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          144
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - aio_write
        - async_append_flush
        - async_append_is_full
        - async_append_wait
        - byteq_advance_head
        - byteq_head
        - byteq_headroom
        - ovs_ignore
        - write
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/async-append-aio.c:126,16'
          Dst:             async_append_is_full
        - Src:             'lib/async-append-aio.c:127,13'
          Dst:             async_append_wait
        - Src:             'lib/async-append-aio.c:130,17'
          Dst:             byteq_head
        - Src:             'lib/async-append-aio.c:131,22'
          Dst:             byteq_headroom
        - Src:             'lib/async-append-aio.c:144,13'
          Dst:             aio_write
        - Src:             'lib/async-append-aio.c:145,13'
          Dst:             async_append_flush
        - Src:             'lib/async-append-aio.c:146,24'
          Dst:             write
        - Src:             'lib/async-append-aio.c:146,13'
          Dst:             ovs_ignore
        - Src:             'lib/async-append-aio.c:152,9'
          Dst:             byteq_advance_head
    - functionName:    aio_write
      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:    async_append_flush
      functionSourceFile: '/src/openvswitch/lib/async-append-aio.c'
      linkageType:     InternalLinkage
      functionLinenumber: 159
      functionLinenumberEnd: 163
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          27
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - async_append_is_empty
        - async_append_wait
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/async-append-aio.c:160,13'
          Dst:             async_append_is_empty
        - Src:             'lib/async-append-aio.c:161,9'
          Dst:             async_append_wait
    - functionName:    async_append_destroy
      functionSourceFile: '/src/openvswitch/lib/async-append-aio.c'
      linkageType:     InternalLinkage
      functionLinenumber: 70
      functionLinenumberEnd: 77
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - async_append_flush
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/async-append-aio.c:72,9'
          Dst:             async_append_flush
    - functionName:    async_append_create
      functionSourceFile: '/src/openvswitch/lib/async-append-aio.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 65
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          41
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - byteq_init
        - xmalloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/async-append-aio.c:58,10'
          Dst:             xmalloc
        - Src:             'lib/async-append-aio.c:60,18'
          Dst:             xmalloc
        - Src:             'lib/async-append-aio.c:62,18'
          Dst:             xmalloc
        - Src:             'lib/async-append-aio.c:63,5'
          Dst:             byteq_init
    - functionName:    dns_resolve_destroy
      functionSourceFile: '/src/openvswitch/lib/dns-resolve-stub.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          4
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dns_resolve
      functionSourceFile: '/src/openvswitch/lib/dns-resolve-stub.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28
      functionLinenumberEnd: 30
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dns_resolve_init
      functionSourceFile: '/src/openvswitch/lib/dns-resolve-stub.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23
      functionLinenumberEnd: 24
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - bool
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_bindir
      functionSourceFile: '/src/openvswitch/./lib/dirs.c.in'
      linkageType:     InternalLinkage
      functionLinenumber: 106
      functionLinenumberEnd: 111
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_dir
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             './lib/dirs.c.in:111,12'
          Dst:             get_dir
    - functionName:    get_dir
      functionSourceFile: '/src/openvswitch/./lib/dirs.c.in'
      linkageType:     InternalLinkage
      functionLinenumber: 33
      functionLinenumberEnd: 41
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          67
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - getenv
        - ovsthread_once_done
        - ovsthread_once_start
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             './lib/dirs.c.in:34,9'
          Dst:             ovsthread_once_start
        - Src:             './lib/dirs.c.in:35,20'
          Dst:             getenv
        - Src:             './lib/dirs.c.in:39,9'
          Dst:             ovsthread_once_done
    - functionName:    ovsthread_once_start
      functionSourceFile: '/src/openvswitch/./include/openvswitch/thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsthread_once_start__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/thread.h:161,12'
          Dst:             ovsthread_once_start__
    - functionName:    ovs_dbdir
      functionSourceFile: '/src/openvswitch/./lib/dirs.c.in'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         15
      ICount:          62
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - getenv
        - ovsthread_once_done
        - ovsthread_once_start
        - xasprintf
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             './lib/dirs.c.in:90,9'
          Dst:             ovsthread_once_start
        - Src:             './lib/dirs.c.in:91,17'
          Dst:             getenv
        - Src:             './lib/dirs.c.in:93,32'
          Dst:             getenv
        - Src:             './lib/dirs.c.in:96,24'
          Dst:             xasprintf
        - Src:             './lib/dirs.c.in:99,9'
          Dst:             ovsthread_once_done
    - functionName:    ovs_logdir
      functionSourceFile: '/src/openvswitch/./lib/dirs.c.in'
      linkageType:     InternalLinkage
      functionLinenumber: 76
      functionLinenumberEnd: 81
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_dir
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './lib/dirs.c.in:81,12'
          Dst:             get_dir
    - functionName:    ovs_rundir
      functionSourceFile: '/src/openvswitch/./lib/dirs.c.in'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 71
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_dir
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             './lib/dirs.c.in:71,12'
          Dst:             get_dir
    - functionName:    ovs_pkgdatadir
      functionSourceFile: '/src/openvswitch/./lib/dirs.c.in'
      linkageType:     InternalLinkage
      functionLinenumber: 56
      functionLinenumberEnd: 61
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_dir
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             './lib/dirs.c.in:61,12'
          Dst:             get_dir
    - functionName:    ovs_sysconfdir
      functionSourceFile: '/src/openvswitch/./lib/dirs.c.in'
      linkageType:     InternalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 51
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_dir
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             './lib/dirs.c.in:51,12'
          Dst:             get_dir
    - functionName:    put_u32
      functionSourceFile: '/src/openvswitch/lib/aes128.c'
      linkageType:     InternalLinkage
      functionLinenumber: 384
      functionLinenumberEnd: 389
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          31
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aes128_encrypt
      functionSourceFile: '/src/openvswitch/lib/aes128.c'
      linkageType:     InternalLinkage
      functionLinenumber: 419
      functionLinenumberEnd: 509
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          477
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - get_u32
        - put_u32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/aes128.c:428,10'
          Dst:             get_u32
        - Src:             'lib/aes128.c:429,10'
          Dst:             get_u32
        - Src:             'lib/aes128.c:430,10'
          Dst:             get_u32
        - Src:             'lib/aes128.c:431,10'
          Dst:             get_u32
        - Src:             'lib/aes128.c:490,5'
          Dst:             put_u32
        - Src:             'lib/aes128.c:496,5'
          Dst:             put_u32
        - Src:             'lib/aes128.c:502,5'
          Dst:             put_u32
        - Src:             'lib/aes128.c:508,5'
          Dst:             put_u32
    - functionName:    get_u32
      functionSourceFile: '/src/openvswitch/lib/aes128.c'
      linkageType:     InternalLinkage
      functionLinenumber: 374
      functionLinenumberEnd: 379
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          40
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    aes128_schedule
      functionSourceFile: '/src/openvswitch/lib/aes128.c'
      linkageType:     InternalLinkage
      functionLinenumber: 394
      functionLinenumberEnd: 415
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          146
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - get_u32
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/aes128.c:398,13'
          Dst:             get_u32
        - Src:             'lib/aes128.c:399,13'
          Dst:             get_u32
        - Src:             'lib/aes128.c:400,13'
          Dst:             get_u32
        - Src:             'lib/aes128.c:401,13'
          Dst:             get_u32
        - Src:             'lib/aes128.c:414,5'
          Dst:             ovs_ignore
    - functionName:    init_this_module_backtrace
      functionSourceFile: '/src/openvswitch/lib/backtrace.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28
      functionLinenumberEnd: 28
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/backtrace.c:28,1'
          Dst:             vlog_insert_module
    - functionName:    read_received_backtrace
      functionSourceFile: '/src/openvswitch/lib/backtrace.c'
      linkageType:     InternalLinkage
      functionLinenumber: 96
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          121
      EdgeCount:       29
      CyclomaticComplexity: 7
      functionsReached:
        - __errno_location
        - fcntl
        - ovs_strerror
        - read
        - vlog
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/backtrace.c:97,5'
          Dst:             vlog
        - Src:             'lib/backtrace.c:98,9'
          Dst:             fcntl
        - Src:             'lib/backtrace.c:99,9'
          Dst:             __errno_location
        - Src:             'lib/backtrace.c:99,9'
          Dst:             ovs_strerror
        - Src:             'lib/backtrace.c:99,9'
          Dst:             vlog
        - Src:             'lib/backtrace.c:104,21'
          Dst:             read
        - Src:             'lib/backtrace.c:106,9'
          Dst:             __errno_location
        - Src:             'lib/backtrace.c:106,9'
          Dst:             ovs_strerror
        - Src:             'lib/backtrace.c:106,9'
          Dst:             vlog
    - functionName:    log_received_backtrace
      functionSourceFile: '/src/openvswitch/lib/backtrace.c'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 163
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         20
      ICount:          93
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - backtrace_format
        - ds_cstr_ro
        - ds_destroy
        - ds_put_cstr
        - read_received_backtrace
        - vlog
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/backtrace.c:152,9'
          Dst:             read_received_backtrace
        - Src:             'lib/backtrace.c:157,9'
          Dst:             ds_put_cstr
        - Src:             'lib/backtrace.c:158,9'
          Dst:             backtrace_format
        - Src:             'lib/backtrace.c:159,9'
          Dst:             ds_cstr_ro
        - Src:             'lib/backtrace.c:159,9'
          Dst:             vlog
        - Src:             'lib/backtrace.c:161,9'
          Dst:             ds_destroy
    - functionName:    backtrace_format
      functionSourceFile: '/src/openvswitch/lib/backtrace.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41
      functionLinenumberEnd: 57
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          86
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - backtrace_symbols
        - ds_put_format
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/backtrace.c:43,26'
          Dst:             backtrace_symbols
        - Src:             'lib/backtrace.c:50,13'
          Dst:             ds_put_format
        - Src:             'lib/backtrace.c:53,9'
          Dst:             ds_put_format
    - functionName:    backtrace_symbols
      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:    log_backtrace_at
      functionSourceFile: '/src/openvswitch/lib/backtrace.c'
      linkageType:     InternalLinkage
      functionLinenumber: 76
      functionLinenumberEnd: 91
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          60
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - backtrace_capture
        - backtrace_format
        - ds_cstr_ro
        - ds_destroy
        - ds_put_cstr
        - ds_put_format
        - vlog
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/backtrace.c:80,5'
          Dst:             backtrace_capture
        - Src:             'lib/backtrace.c:82,9'
          Dst:             ds_put_format
        - Src:             'lib/backtrace.c:85,5'
          Dst:             ds_put_cstr
        - Src:             'lib/backtrace.c:86,5'
          Dst:             ds_put_cstr
        - Src:             'lib/backtrace.c:87,5'
          Dst:             backtrace_format
        - Src:             'lib/backtrace.c:88,5'
          Dst:             ds_cstr_ro
        - Src:             'lib/backtrace.c:88,5'
          Dst:             vlog
        - Src:             'lib/backtrace.c:90,5'
          Dst:             ds_destroy
    - functionName:    backtrace_capture
      functionSourceFile: '/src/openvswitch/lib/backtrace.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - backtrace
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/backtrace.c:35,19'
          Dst:             backtrace
    - functionName:    backtrace
      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:    byteq_fast_forward
      functionSourceFile: '/src/openvswitch/lib/byteq.c'
      linkageType:     InternalLinkage
      functionLinenumber: 209
      functionLinenumberEnd: 218
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - byteq_is_empty
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byteq.c:210,16'
          Dst:             byteq_is_empty
        - Src:             'lib/byteq.c:210,5'
          Dst:             ovs_ignore
    - functionName:    byteq_is_empty
      functionSourceFile: '/src/openvswitch/lib/byteq.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - byteq_used
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byteq.c:56,13'
          Dst:             byteq_used
    - functionName:    byteq_used
      functionSourceFile: '/src/openvswitch/lib/byteq.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40
      functionLinenumberEnd: 41
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    byteq_read
      functionSourceFile: '/src/openvswitch/lib/byteq.c'
      linkageType:     InternalLinkage
      functionLinenumber: 136
      functionLinenumberEnd: 146
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          66
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - __errno_location
        - byteq_advance_head
        - byteq_head
        - byteq_headroom
        - byteq_is_full
        - read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byteq.c:137,13'
          Dst:             byteq_is_full
        - Src:             'lib/byteq.c:138,30'
          Dst:             byteq_head
        - Src:             'lib/byteq.c:138,45'
          Dst:             byteq_headroom
        - Src:             'lib/byteq.c:138,21'
          Dst:             read
        - Src:             'lib/byteq.c:140,13'
          Dst:             byteq_advance_head
        - Src:             'lib/byteq.c:142,31'
          Dst:             __errno_location
    - functionName:    byteq_is_full
      functionSourceFile: '/src/openvswitch/lib/byteq.c'
      linkageType:     InternalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 64
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - byteq_avail
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byteq.c:64,13'
          Dst:             byteq_avail
    - functionName:    byteq_head
      functionSourceFile: '/src/openvswitch/lib/byteq.c'
      linkageType:     InternalLinkage
      functionLinenumber: 179
      functionLinenumberEnd: 180
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          19
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    byteq_headroom
      functionSourceFile: '/src/openvswitch/lib/byteq.c'
      linkageType:     InternalLinkage
      functionLinenumber: 187
      functionLinenumberEnd: 190
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - byteq_avail
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byteq.c:188,17'
          Dst:             byteq_avail
    - functionName:    byteq_advance_head
      functionSourceFile: '/src/openvswitch/lib/byteq.c'
      linkageType:     InternalLinkage
      functionLinenumber: 197
      functionLinenumberEnd: 200
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - byteq_headroom
        - ovs_ignore
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byteq.c:198,16'
          Dst:             byteq_headroom
        - Src:             'lib/byteq.c:198,5'
          Dst:             ovs_ignore
    - functionName:    byteq_avail
      functionSourceFile: '/src/openvswitch/lib/byteq.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 48
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - byteq_used
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byteq.c:48,22'
          Dst:             byteq_used
    - functionName:    byteq_advance_tail
      functionSourceFile: '/src/openvswitch/lib/byteq.c'
      linkageType:     InternalLinkage
      functionLinenumber: 170
      functionLinenumberEnd: 173
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - byteq_tailroom
        - ovs_ignore
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byteq.c:171,16'
          Dst:             byteq_tailroom
        - Src:             'lib/byteq.c:171,5'
          Dst:             ovs_ignore
    - functionName:    byteq_tailroom
      functionSourceFile: '/src/openvswitch/lib/byteq.c'
      linkageType:     InternalLinkage
      functionLinenumber: 152
      functionLinenumberEnd: 155
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - byteq_used
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byteq.c:153,16'
          Dst:             byteq_used
    - functionName:    byteq_write
      functionSourceFile: '/src/openvswitch/lib/byteq.c'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 128
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          60
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - __errno_location
        - byteq_advance_tail
        - byteq_is_empty
        - byteq_tail
        - byteq_tailroom
        - ovs_ignore
        - write
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byteq.c:118,13'
          Dst:             byteq_is_empty
        - Src:             'lib/byteq.c:119,31'
          Dst:             byteq_tail
        - Src:             'lib/byteq.c:119,46'
          Dst:             byteq_tailroom
        - Src:             'lib/byteq.c:119,21'
          Dst:             write
        - Src:             'lib/byteq.c:121,13'
          Dst:             byteq_advance_tail
        - Src:             'lib/byteq.c:123,13'
          Dst:             ovs_ignore
        - Src:             'lib/byteq.c:124,20'
          Dst:             __errno_location
    - functionName:    byteq_tail
      functionSourceFile: '/src/openvswitch/lib/byteq.c'
      linkageType:     InternalLinkage
      functionLinenumber: 162
      functionLinenumberEnd: 163
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          19
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    byteq_get
      functionSourceFile: '/src/openvswitch/lib/byteq.c'
      linkageType:     InternalLinkage
      functionLinenumber: 104
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - byteq_is_empty
        - byteq_tail
        - ovs_ignore
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byteq.c:106,17'
          Dst:             byteq_is_empty
        - Src:             'lib/byteq.c:106,5'
          Dst:             ovs_ignore
        - Src:             'lib/byteq.c:107,10'
          Dst:             byteq_tail
    - functionName:    byteq_put_string
      functionSourceFile: '/src/openvswitch/lib/byteq.c'
      linkageType:     InternalLinkage
      functionLinenumber: 96
      functionLinenumberEnd: 98
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - byteq_putn
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byteq.c:97,22'
          Dst:             strlen
        - Src:             'lib/byteq.c:97,5'
          Dst:             byteq_putn
    - functionName:    byteq_putn
      functionSourceFile: '/src/openvswitch/lib/byteq.c'
      linkageType:     InternalLinkage
      functionLinenumber: 80
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          75
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - byteq_advance_head
        - byteq_avail
        - byteq_head
        - byteq_headroom
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byteq.c:82,16'
          Dst:             byteq_avail
        - Src:             'lib/byteq.c:82,5'
          Dst:             ovs_ignore
        - Src:             'lib/byteq.c:84,24'
          Dst:             byteq_headroom
        - Src:             'lib/byteq.c:84,24'
          Dst:             byteq_headroom
        - Src:             'lib/byteq.c:85,16'
          Dst:             byteq_head
        - Src:             'lib/byteq.c:86,9'
          Dst:             byteq_advance_head
    - functionName:    byteq_put
      functionSourceFile: '/src/openvswitch/lib/byteq.c'
      linkageType:     InternalLinkage
      functionLinenumber: 70
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - byteq_head
        - byteq_is_full
        - ovs_ignore
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byteq.c:71,17'
          Dst:             byteq_is_full
        - Src:             'lib/byteq.c:71,5'
          Dst:             ovs_ignore
        - Src:             'lib/byteq.c:72,6'
          Dst:             byteq_head
    - functionName:    is_pow2
      functionSourceFile: '/src/openvswitch/./include/openvswitch/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 399
      functionLinenumberEnd: 400
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          26
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    byteq_init
      functionSourceFile: '/src/openvswitch/lib/byteq.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 35
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - is_pow2
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byteq.c:31,16'
          Dst:             is_pow2
        - Src:             'lib/byteq.c:31,5'
          Dst:             ovs_ignore
    - functionName:    trie_get_prefix
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1854
      functionLinenumberEnd: 1863
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          51
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - raw_get_prefix
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier.c:1862,12'
          Dst:             raw_get_prefix
    - functionName:    raw_get_prefix
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1829
      functionLinenumberEnd: 1845
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          73
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ntohl
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier.c:1835,14'
          Dst:             ntohl
        - Src:             'lib/classifier.c:1841,19'
          Dst:             ntohl
    - functionName:    trie_next_edge
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2016
      functionLinenumberEnd: 2017
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - be_get_bit_at
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier.c:2017,26'
          Dst:             be_get_bit_at
    - functionName:    be_get_bit_at
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1890
      functionLinenumberEnd: 1891
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          20
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    trie_node_rcu_realloc
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1939
      functionLinenumberEnd: 1945
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - trie_node_destroy
        - xmalloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier.c:1940,34'
          Dst:             xmalloc
        - Src:             'lib/classifier.c:1943,5'
          Dst:             trie_node_destroy
    - functionName:    trie_node_destroy
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1932
      functionLinenumberEnd: 1934
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrcu_postpone__
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier.c:1933,5'
          Dst:             ovsrcu_postpone__
    - functionName:    trie_branch_create
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1906
      functionLinenumberEnd: 1927
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          231
      EdgeCount:       41
      CyclomaticComplexity: 21
      functionsReached:
        - get_bit_at
        - trie_branch_create
        - trie_get_prefix
        - xmalloc
      functionUses:    4
      BranchProfiles:
        - Branch String:   'lib/classifier.c:1913,9'
          Branch Sides:    []
        - Branch String:   'lib/classifier.c:1914,9'
          Branch Sides:    []
        - Branch String:   'lib/classifier.c:1923,9'
          Branch Sides:    []
        - Branch String:   'lib/classifier.c:1924,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/classifier.c:1907,30'
          Dst:             xmalloc
        - Src:             'lib/classifier.c:1909,20'
          Dst:             trie_get_prefix
        - Src:             'lib/classifier.c:1917,37'
          Dst:             trie_branch_create
        - Src:             'lib/classifier.c:1921,19'
          Dst:             get_bit_at
    - functionName:    get_bit_at
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1898
      functionLinenumberEnd: 1899
      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:    trie_prefix_equal_bits
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1881
      functionLinenumberEnd: 1883
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - prefix_equal_bits
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier.c:1882,12'
          Dst:             prefix_equal_bits
    - functionName:    prefix_equal_bits
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1870
      functionLinenumberEnd: 1873
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - int
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - raw_clz64
        - raw_get_prefix
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier.c:1871,30'
          Dst:             raw_get_prefix
        - Src:             'lib/classifier.c:1873,12'
          Dst:             raw_clz64
    - functionName:    raw_clz64
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 272
      functionLinenumberEnd: 273
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    minimatch_get_prefix
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2133
      functionLinenumberEnd: 2137
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - miniflow_get__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier.c:2136,40'
          Dst:             miniflow_get__
    - functionName:    miniflow_get__
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 678
      functionLinenumberEnd: 686
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - count_1bits
        - miniflow_get_values
        - miniflow_values_get__
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:679,30'
          Dst:             miniflow_get_values
        - Src:             'lib/flow.h:684,19'
          Dst:             count_1bits
        - Src:             'lib/flow.h:686,12'
          Dst:             miniflow_values_get__
    - functionName:    miniflow_get_values
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 535
      functionLinenumberEnd: 536
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    11
      BranchProfiles:  []
      Callsites:       []
    - functionName:    count_1bits
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 332
      functionLinenumberEnd: 347
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          37
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    miniflow_values_get__
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 670
      functionLinenumberEnd: 671
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - count_1bits
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:671,21'
          Dst:             count_1bits
    - functionName:    trie_destroy__
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1950
      functionLinenumberEnd: 1959
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          85
      EdgeCount:       10
      CyclomaticComplexity: 2
      functionsReached:
        - trie_destroy__
        - trie_node_destroy
      functionUses:    3
      BranchProfiles:
        - Branch String:   'lib/classifier.c:1954,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/classifier.c:1955,9'
          Dst:             trie_destroy__
        - Src:             'lib/classifier.c:1956,9'
          Dst:             trie_destroy__
        - Src:             'lib/classifier.c:1957,9'
          Dst:             trie_node_destroy
    - functionName:    subtable_destroy_cb
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1519
      functionLinenumberEnd: 1533
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          72
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - ccmap_destroy
        - cmap_destroy
        - cmap_is_empty
        - ovs_ignore
        - ovsrcu_postpone__
        - rculist_is_empty
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier.c:1522,5'
          Dst:             ovs_ignore
        - Src:             'lib/classifier.c:1524,16'
          Dst:             cmap_is_empty
        - Src:             'lib/classifier.c:1524,5'
          Dst:             ovs_ignore
        - Src:             'lib/classifier.c:1525,16'
          Dst:             rculist_is_empty
        - Src:             'lib/classifier.c:1525,5'
          Dst:             ovs_ignore
        - Src:             'lib/classifier.c:1528,9'
          Dst:             ccmap_destroy
        - Src:             'lib/classifier.c:1530,5'
          Dst:             cmap_destroy
        - Src:             'lib/classifier.c:1532,5'
          Dst:             ovsrcu_postpone__
    - functionName:    rculist_is_empty
      functionSourceFile: '/src/openvswitch/lib/rculist.h'
      linkageType:     InternalLinkage
      functionLinenumber: 346
      functionLinenumberEnd: 347
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - rculist_next
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/rculist.h:347,12'
          Dst:             rculist_next
    - functionName:    rculist_next
      functionSourceFile: '/src/openvswitch/lib/rculist.h'
      linkageType:     InternalLinkage
      functionLinenumber: 113
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          22
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    flowmap_clear
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 405
      functionLinenumberEnd: 419
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          71
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    miniflow_get_map_in_range
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1492
      functionLinenumberEnd: 1514
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - char
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          91
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - flowmap_clear
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier.c:1505,9'
          Dst:             flowmap_clear
        - Src:             'lib/classifier.c:1511,9'
          Dst:             ovs_ignore
        - Src:             'lib/classifier.c:1512,9'
          Dst:             flowmap_clear
    - functionName:    minimask_hash
      functionSourceFile: '/src/openvswitch/lib/classifier-private.h'
      linkageType:     InternalLinkage
      functionLinenumber: 319
      functionLinenumberEnd: 333
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          96
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - hash_add64
        - hash_finish
        - miniflow_get_values
        - miniflow_n_values
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier-private.h:320,25'
          Dst:             miniflow_get_values
        - Src:             'lib/classifier-private.h:321,23'
          Dst:             miniflow_n_values
        - Src:             'lib/classifier-private.h:325,16'
          Dst:             hash_add64
        - Src:             'lib/classifier-private.h:330,16'
          Dst:             hash_add64
        - Src:             'lib/classifier-private.h:333,12'
          Dst:             hash_finish
    - functionName:    miniflow_n_values
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 568
      functionLinenumberEnd: 569
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - flowmap_n_1bits
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:569,12'
          Dst:             flowmap_n_1bits
    - functionName:    hash_add64
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 113
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_add
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:114,21'
          Dst:             hash_add
        - Src:             'lib/hash.h:114,12'
          Dst:             hash_add
    - functionName:    hash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_finish
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:119,12'
          Dst:             mhash_finish
    - functionName:    mhash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 108
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_add
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:109,12'
          Dst:             mhash_add
    - functionName:    mhash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_rot
        - mhash_add__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:78,12'
          Dst:             mhash_add__
        - Src:             'lib/hash.h:79,12'
          Dst:             hash_rot
    - functionName:    mhash_add__
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hash_rot
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:71,12'
          Dst:             hash_rot
    - functionName:    hash_rot
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 32
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    flowmap_n_1bits
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 462
      functionLinenumberEnd: 469
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          45
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - count_1bits
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:467,20'
          Dst:             count_1bits
    - functionName:    rule_matches
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1375
      functionLinenumberEnd: 1380
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - cls_rule_visible_in_version
        - miniflow_equal_in_minimask
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier.c:1377,12'
          Dst:             cls_rule_visible_in_version
        - Src:             'lib/classifier.c:1378,24'
          Dst:             miniflow_equal_in_minimask
    - functionName:    cls_rule_visible_in_version
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 316
      functionLinenumberEnd: 319
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - cls_match_visible_in_version
        - get_cls_match
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier.c:317,35'
          Dst:             get_cls_match
        - Src:             'lib/classifier.c:319,25'
          Dst:             cls_match_visible_in_version
    - functionName:    get_cls_match
      functionSourceFile: '/src/openvswitch/lib/classifier-private.h'
      linkageType:     InternalLinkage
      functionLinenumber: 92
      functionLinenumberEnd: 93
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          22
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    cls_match_visible_in_version
      functionSourceFile: '/src/openvswitch/lib/classifier-private.h'
      linkageType:     InternalLinkage
      functionLinenumber: 108
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - versions_visible_in_version
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier-private.h:109,12'
          Dst:             versions_visible_in_version
    - functionName:    versions_visible_in_version
      functionSourceFile: '/src/openvswitch/lib/versions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 58
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          36
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pvector_cursor_lookahead
      functionSourceFile: '/src/openvswitch/lib/pvector.h'
      linkageType:     InternalLinkage
      functionLinenumber: 223
      functionLinenumberEnd: 227
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_prefetch_range
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/pvector.h:225,9'
          Dst:             ovs_prefetch_range
    - functionName:    ovs_prefetch_range
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 81
      functionLinenumberEnd: 88
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         5
      ICount:          34
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rightmost_1bit
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 382
      functionLinenumberEnd: 383
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mf_get_next_in_map
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 621
      functionLinenumberEnd: 659
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          148
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - count_1bits
        - rightmost_1bit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:629,24'
          Dst:             count_1bits
        - Src:             'lib/flow.h:635,14'
          Dst:             rightmost_1bit
        - Src:             'lib/flow.h:651,28'
          Dst:             count_1bits
    - functionName:    hmap_next__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 401
      functionLinenumberEnd: 410
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          51
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_next
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 429
      functionLinenumberEnd: 432
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_next__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:432,15'
          Dst:             hmap_next__
    - functionName:    hmap_first
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 416
      functionLinenumberEnd: 417
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:417,12'
          Dst:             hmap_next__
    - functionName:    hmap_insert_fast
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 289
      functionLinenumberEnd: 295
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          38
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_next_in_bucket
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 381
      functionLinenumberEnd: 382
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_first_in_bucket
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 367
      functionLinenumberEnd: 368
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_2words
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 153
      functionLinenumberEnd: 154
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_add
        - hash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:154,33'
          Dst:             hash_add
        - Src:             'lib/hash.h:154,24'
          Dst:             hash_add
        - Src:             'lib/hash.h:154,12'
          Dst:             hash_finish
    - functionName:    hmap_insert_at
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 306
      functionLinenumberEnd: 311
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_expand_at
        - hmap_insert_fast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:307,5'
          Dst:             hmap_insert_fast
        - Src:             './include/openvswitch/hmap.h:309,9'
          Dst:             hmap_expand_at
    - functionName:    hmap_count
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 263
      functionLinenumberEnd: 264
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    find_conjunctive_match__
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 892
      functionLinenumberEnd: 901
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          73
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_first_in_bucket
        - hmap_next_in_bucket
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier.c:895,5'
          Dst:             hmap_first_in_bucket
        - Src:             'lib/classifier.c:895,5'
          Dst:             hmap_next_in_bucket
    - functionName:    hash_int
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 408
      functionLinenumberEnd: 409
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_2words
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:409,12'
          Dst:             hash_2words
    - functionName:    flow_union_with_miniflow_subset
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 919
      functionLinenumberEnd: 932
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          105
      EdgeCount:       21
      CyclomaticComplexity: 6
      functionsReached:
        - miniflow_get_values
        - raw_ctz
        - zero_rightmost_1bit
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:921,25'
          Dst:             miniflow_get_values
        - Src:             'lib/flow.h:927,9'
          Dst:             raw_ctz
        - Src:             'lib/flow.h:927,9'
          Dst:             zero_rightmost_1bit
    - functionName:    raw_ctz
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 261
      functionLinenumberEnd: 267
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          36
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    zero_rightmost_1bit
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 390
      functionLinenumberEnd: 391
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    flow_union_with_miniflow
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 938
      functionLinenumberEnd: 940
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - flow_union_with_miniflow_subset
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:939,5'
          Dst:             flow_union_with_miniflow_subset
    - functionName:    trie_is_leaf
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1974
      functionLinenumberEnd: 1977
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          53
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    trie_next_node
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2023
      functionLinenumberEnd: 2024
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          38
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - be_get_bit_at
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier.c:2024,12'
          Dst:             be_get_bit_at
    - functionName:    be_set_bit_at
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2032
      functionLinenumberEnd: 2034
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          22
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mask_prefix_bits_set
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1998
      functionLinenumberEnd: 2010
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - char
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          84
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - htonl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier.c:2007,30'
          Dst:             htonl
    - functionName:    mask_set_prefix_bits
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1983
      functionLinenumberEnd: 1993
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - char
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          71
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - htonl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier.c:1991,20'
          Dst:             htonl
    - functionName:    trie_lookup
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2079
      functionLinenumberEnd: 2092
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - mf_are_prereqs_ok
        - trie_lookup_value
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier.c:2085,9'
          Dst:             mf_are_prereqs_ok
        - Src:             'lib/classifier.c:2086,16'
          Dst:             trie_lookup_value
    - functionName:    trie_lookup_value
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2046
      functionLinenumberEnd: 2074
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          143
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - be_set_bit_at
        - prefix_equal_bits
        - trie_is_leaf
        - trie_next_node
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier.c:2054,18'
          Dst:             prefix_equal_bits
        - Src:             'lib/classifier.c:2063,13'
          Dst:             be_set_bit_at
        - Src:             'lib/classifier.c:2051,38'
          Dst:             trie_next_node
        - Src:             'lib/classifier.c:2073,21'
          Dst:             trie_is_leaf
    - functionName:    cmap_node_next
      functionSourceFile: '/src/openvswitch/lib/cmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 67
      functionLinenumberEnd: 68
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          22
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    miniflow_and_mask_matches_flow
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1678
      functionLinenumberEnd: 1695
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          126
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - miniflow_get_values
        - raw_ctz
        - zero_rightmost_1bit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier.c:1679,29'
          Dst:             miniflow_get_values
        - Src:             'lib/classifier.c:1680,29'
          Dst:             miniflow_get_values
        - Src:             'lib/classifier.c:1687,9'
          Dst:             raw_ctz
        - Src:             'lib/classifier.c:1687,9'
          Dst:             zero_rightmost_1bit
    - functionName:    flow_wildcards_fold_minimask_in_map
      functionSourceFile: '/src/openvswitch/lib/classifier-private.h'
      linkageType:     InternalLinkage
      functionLinenumber: 312
      functionLinenumberEnd: 314
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - flow_union_with_miniflow_subset
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier-private.h:313,5'
          Dst:             flow_union_with_miniflow_subset
    - functionName:    flow_wildcards_fold_minimask
      functionSourceFile: '/src/openvswitch/lib/classifier-private.h'
      linkageType:     InternalLinkage
      functionLinenumber: 302
      functionLinenumberEnd: 304
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - flow_union_with_miniflow
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier-private.h:303,5'
          Dst:             flow_union_with_miniflow
    - functionName:    be32_prefix_mask
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 414
      functionLinenumberEnd: 415
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.h:415,12'
          Dst:             htonl
    - functionName:    flow_hash_in_minimask_range
      functionSourceFile: '/src/openvswitch/lib/classifier-private.h'
      linkageType:     InternalLinkage
      functionLinenumber: 277
      functionLinenumberEnd: 295
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          140
      EdgeCount:       21
      CyclomaticComplexity: 6
      functionsReached:
        - hash_add64
        - hash_finish
        - miniflow_get_values
        - raw_ctz
        - zero_rightmost_1bit
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier-private.h:278,35'
          Dst:             miniflow_get_values
        - Src:             'lib/classifier-private.h:287,9'
          Dst:             raw_ctz
        - Src:             'lib/classifier-private.h:288,20'
          Dst:             hash_add64
        - Src:             'lib/classifier-private.h:287,9'
          Dst:             zero_rightmost_1bit
        - Src:             'lib/classifier-private.h:295,12'
          Dst:             hash_finish
    - functionName:    flowmap_or
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 424
      functionLinenumberEnd: 431
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         5
      ICount:          48
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    check_tries
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1618
      functionLinenumberEnd: 1664
      functionDepth:   0
      returnType:      bool
      argCount:        7
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          167
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - be_get_bit_at
        - flowmap_is_set
        - mask_prefix_bits_set
        - mask_set_prefix_bits
        - trie_lookup
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier.c:1629,30'
          Dst:             flowmap_is_set
        - Src:             'lib/classifier.c:1633,33'
          Dst:             trie_lookup
        - Src:             'lib/classifier.c:1638,18'
          Dst:             be_get_bit_at
        - Src:             'lib/classifier.c:1650,21'
          Dst:             mask_set_prefix_bits
        - Src:             'lib/classifier.c:1657,21'
          Dst:             mask_prefix_bits_set
    - functionName:    flowmap_is_set
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 355
      functionLinenumberEnd: 356
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          20
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    flow_hash_in_minimask
      functionSourceFile: '/src/openvswitch/lib/classifier-private.h'
      linkageType:     InternalLinkage
      functionLinenumber: 218
      functionLinenumberEnd: 234
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          124
      EdgeCount:       21
      CyclomaticComplexity: 6
      functionsReached:
        - hash_add64
        - hash_finish
        - miniflow_get_values
        - raw_ctz
        - zero_rightmost_1bit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier-private.h:219,35'
          Dst:             miniflow_get_values
        - Src:             'lib/classifier-private.h:228,9'
          Dst:             raw_ctz
        - Src:             'lib/classifier-private.h:229,20'
          Dst:             hash_add64
        - Src:             'lib/classifier-private.h:228,9'
          Dst:             zero_rightmost_1bit
        - Src:             'lib/classifier-private.h:234,12'
          Dst:             hash_finish
    - functionName:    find_match
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1700
      functionLinenumberEnd: 1717
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          113
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - cls_match_next
        - cls_match_visible_in_version
        - cmap_find
        - cmap_node_next
        - miniflow_and_mask_matches_flow
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier.c:1703,5'
          Dst:             cmap_find
        - Src:             'lib/classifier.c:1704,13'
          Dst:             miniflow_and_mask_matches_flow
        - Src:             'lib/classifier.c:1709,21'
          Dst:             cls_match_visible_in_version
        - Src:             'lib/classifier.c:1708,13'
          Dst:             cls_match_next
        - Src:             'lib/classifier.c:1703,5'
          Dst:             cmap_node_next
    - functionName:    cls_match_next
      functionSourceFile: '/src/openvswitch/lib/classifier-private.h'
      linkageType:     InternalLinkage
      functionLinenumber: 123
      functionLinenumberEnd: 124
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          22
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    next_visible_rule_in_list
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 129
      functionLinenumberEnd: 134
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          45
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - cls_match_next
        - cls_match_visible_in_version
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier.c:131,16'
          Dst:             cls_match_next
        - Src:             'lib/classifier.c:132,23'
          Dst:             cls_match_visible_in_version
    - functionName:    free_conjunctive_matches
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 945
      functionLinenumberEnd: 956
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          96
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - hmap_count
        - hmap_destroy
        - hmap_first
        - hmap_next
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier.c:946,9'
          Dst:             hmap_count
        - Src:             'lib/classifier.c:949,9'
          Dst:             hmap_first
        - Src:             'lib/classifier.c:949,9'
          Dst:             hmap_next
        - Src:             'lib/classifier.c:955,5'
          Dst:             hmap_destroy
    - functionName:    insert_conj_flows
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 861
      functionLinenumberEnd: 882
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          106
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - hmapx_add
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier.c:877,17'
          Dst:             hmapx_add
    - functionName:    find_conjunctive_match
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 908
      functionLinenumberEnd: 940
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          173
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - find_conjunctive_match__
        - hash_int
        - hmap_count
        - hmap_insert_at
        - xmalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier.c:923,16'
          Dst:             hash_int
        - Src:             'lib/classifier.c:924,14'
          Dst:             find_conjunctive_match__
        - Src:             'lib/classifier.c:926,24'
          Dst:             hmap_count
        - Src:             'lib/classifier.c:928,50'
          Dst:             xmalloc
        - Src:             'lib/classifier.c:929,13'
          Dst:             hmap_insert_at
    - functionName:    find_match_wc
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1723
      functionLinenumberEnd: 1805
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          302
      EdgeCount:       33
      CyclomaticComplexity: 10
      functionsReached:
        - be32_prefix_mask
        - ccmap_find
        - check_tries
        - find_match
        - flow_hash_in_minimask
        - flow_hash_in_minimask_range
        - flow_wildcards_fold_minimask
        - flow_wildcards_fold_minimask_in_map
        - flowmap_or
        - miniflow_get_ports
        - trie_lookup_value
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier.c:1726,27'
          Dst:             flow_hash_in_minimask
        - Src:             'lib/classifier.c:1725,16'
          Dst:             find_match
        - Src:             'lib/classifier.c:1739,13'
          Dst:             check_tries
        - Src:             'lib/classifier.c:1747,22'
          Dst:             flowmap_or
        - Src:             'lib/classifier.c:1749,16'
          Dst:             flow_hash_in_minimask_range
        - Src:             'lib/classifier.c:1753,14'
          Dst:             ccmap_find
        - Src:             'lib/classifier.c:1758,9'
          Dst:             check_tries
        - Src:             'lib/classifier.c:1763,18'
          Dst:             flowmap_or
        - Src:             'lib/classifier.c:1765,12'
          Dst:             flow_hash_in_minimask_range
        - Src:             'lib/classifier.c:1768,12'
          Dst:             find_match
        - Src:             'lib/classifier.c:1776,22'
          Dst:             miniflow_get_ports
        - Src:             'lib/classifier.c:1778,17'
          Dst:             trie_lookup_value
        - Src:             'lib/classifier.c:1780,23'
          Dst:             be32_prefix_mask
        - Src:             'lib/classifier.c:1789,5'
          Dst:             flow_wildcards_fold_minimask
        - Src:             'lib/classifier.c:1795,5'
          Dst:             flow_wildcards_fold_minimask_in_map
    - functionName:    miniflow_get_ports
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 897
      functionLinenumberEnd: 898
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - flowmap_is_set
        - miniflow_get__
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:898,12'
          Dst:             flowmap_is_set
        - Src:             'lib/flow.h:898,12'
          Dst:             miniflow_get__
    - functionName:    trie_ctx_init
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 852
      functionLinenumberEnd: 856
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          24
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rculist_insert
      functionSourceFile: '/src/openvswitch/lib/rculist.h'
      linkageType:     InternalLinkage
      functionLinenumber: 160
      functionLinenumberEnd: 165
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          98
      EdgeCount:       15
      CyclomaticComplexity: 8
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/rculist.h:162,5'
          Branch Sides:    []
        - Branch String:   'lib/rculist.h:163,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    rculist_next_protected
      functionSourceFile: '/src/openvswitch/lib/rculist.h'
      linkageType:     InternalLinkage
      functionLinenumber: 120
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          22
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    versions_is_eventually_invisible
      functionSourceFile: '/src/openvswitch/lib/versions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 71
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    miniflow_get
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 800
      functionLinenumberEnd: 801
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - flowmap_is_set
        - miniflow_get__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:801,12'
          Dst:             flowmap_is_set
        - Src:             'lib/flow.h:801,46'
          Dst:             miniflow_get__
    - functionName:    miniflow_get_u32
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 806
      functionLinenumberEnd: 812
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - miniflow_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:807,22'
          Dst:             miniflow_get
    - functionName:    minimask_get_u32
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 840
      functionLinenumberEnd: 841
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - miniflow_get_u32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:841,12'
          Dst:             miniflow_get_u32
    - functionName:    ctz32
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 284
      functionLinenumberEnd: 285
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - raw_ctz
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.h:285,16'
          Dst:             raw_ctz
    - functionName:    minimask_get_be32
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 846
      functionLinenumberEnd: 847
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - minimask_get_u32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:847,32'
          Dst:             minimask_get_u32
    - functionName:    minimask_get_prefix_len
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2100
      functionLinenumberEnd: 2123
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          109
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - ctz32
        - minimask_get_be32
        - ntohl
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier.c:2106,31'
          Dst:             minimask_get_be32
        - Src:             'lib/classifier.c:2106,25'
          Dst:             ntohl
        - Src:             'lib/classifier.c:2117,23'
          Dst:             ctz32
    - functionName:    bitmap_bit__
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 32
      functionLinenumberEnd: 33
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    bitmap_unit__
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 26
      functionLinenumberEnd: 27
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    versions_set_remove_version
      functionSourceFile: '/src/openvswitch/lib/versions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    flowmap_is_empty
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 449
      functionLinenumberEnd: 458
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          56
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    cls_conjunction_set_size
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 59
      functionLinenumberEnd: 61
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rculist_poison
      functionSourceFile: '/src/openvswitch/lib/rculist.h'
      linkageType:     InternalLinkage
      functionLinenumber: 139
      functionLinenumberEnd: 141
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rculist_init
      functionSourceFile: '/src/openvswitch/lib/rculist.h'
      linkageType:     InternalLinkage
      functionLinenumber: 127
      functionLinenumberEnd: 130
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    cls_cursor_next
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1441
      functionLinenumberEnd: 1462
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         18
      ICount:          108
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - pvector_cursor_next
        - rculist_next
        - rule_matches
        - search_subtable
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier.c:1447,5'
          Dst:             rculist_next
        - Src:             'lib/classifier.c:1448,13'
          Dst:             rule_matches
        - Src:             'lib/classifier.c:1447,5'
          Dst:             rculist_next
        - Src:             'lib/classifier.c:1453,5'
          Dst:             pvector_cursor_next
        - Src:             'lib/classifier.c:1454,16'
          Dst:             search_subtable
    - functionName:    pvector_cursor_next
      functionSourceFile: '/src/openvswitch/lib/pvector.h'
      linkageType:     InternalLinkage
      functionLinenumber: 210
      functionLinenumberEnd: 219
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          83
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - pvector_cursor_lookahead
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/pvector.h:214,13'
          Dst:             pvector_cursor_lookahead
    - functionName:    search_subtable
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1386
      functionLinenumberEnd: 1398
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          102
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - minimask_has_extra
        - rculist_next
        - rule_matches
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier.c:1388,13'
          Dst:             minimask_has_extra
        - Src:             'lib/classifier.c:1391,9'
          Dst:             rculist_next
        - Src:             'lib/classifier.c:1392,17'
          Dst:             rule_matches
        - Src:             'lib/classifier.c:1391,9'
          Dst:             rculist_next
    - functionName:    cls_cursor_advance
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1468
      functionLinenumberEnd: 1470
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - cls_cursor_next
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier.c:1469,20'
          Dst:             cls_cursor_next
    - functionName:    cls_cursor_start
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1414
      functionLinenumberEnd: 1436
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          88
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - cls_rule_is_catchall
        - pvector_cursor_init
        - pvector_cursor_next
        - search_subtable
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier.c:1420,32'
          Dst:             cls_rule_is_catchall
        - Src:             'lib/classifier.c:1425,5'
          Dst:             pvector_cursor_init
        - Src:             'lib/classifier.c:1425,5'
          Dst:             pvector_cursor_next
        - Src:             'lib/classifier.c:1427,39'
          Dst:             search_subtable
    - functionName:    cls_rule_is_catchall
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 280
      functionLinenumberEnd: 281
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - minimask_is_catchall
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier.c:281,12'
          Dst:             minimask_is_catchall
    - functionName:    pvector_cursor_init
      functionSourceFile: '/src/openvswitch/lib/pvector.h'
      linkageType:     InternalLinkage
      functionLinenumber: 183
      functionLinenumberEnd: 204
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          82
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_prefetch_range
        - pvector_cursor_lookahead
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/pvector.h:194,5'
          Dst:             ovs_prefetch_range
        - Src:             'lib/pvector.h:202,9'
          Dst:             pvector_cursor_lookahead
    - functionName:    minimask_is_catchall
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 789
      functionLinenumberEnd: 793
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - flowmap_is_empty
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:793,12'
          Dst:             flowmap_is_empty
    - functionName:    cls_rule_is_loose_match
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1364
      functionLinenumberEnd: 1367
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - miniflow_equal_in_minimask
        - minimask_has_extra
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier.c:1365,14'
          Dst:             minimask_has_extra
        - Src:             'lib/classifier.c:1366,16'
          Dst:             miniflow_equal_in_minimask
    - functionName:    classifier_rule_overlaps
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1301
      functionLinenumberEnd: 1326
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          131
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - cls_rule_visible_in_version
        - miniflow_equal_in_minimask
        - minimask_combine
        - pvector_cursor_init
        - pvector_cursor_next
        - rculist_next
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier.c:1305,5'
          Dst:             pvector_cursor_init
        - Src:             'lib/classifier.c:1305,5'
          Dst:             pvector_cursor_next
        - Src:             'lib/classifier.c:1313,9'
          Dst:             minimask_combine
        - Src:             'lib/classifier.c:1316,9'
          Dst:             rculist_next
        - Src:             'lib/classifier.c:1318,20'
          Dst:             miniflow_equal_in_minimask
        - Src:             'lib/classifier.c:1320,20'
          Dst:             cls_rule_visible_in_version
        - Src:             'lib/classifier.c:1316,9'
          Dst:             rculist_next
    - functionName:    classifier_find_minimatch_exactly
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1279
      functionLinenumberEnd: 1287
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - classifier_find_rule_exactly
        - cls_rule_destroy
        - cls_rule_init_from_minimatch
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier.c:1283,5'
          Dst:             cls_rule_init_from_minimatch
        - Src:             'lib/classifier.c:1284,14'
          Dst:             classifier_find_rule_exactly
        - Src:             'lib/classifier.c:1285,5'
          Dst:             cls_rule_destroy
    - functionName:    cls_rule_init_from_minimatch
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 193
      functionLinenumberEnd: 196
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - cls_rule_init__
        - minimatch_clone
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier.c:194,5'
          Dst:             cls_rule_init__
        - Src:             'lib/classifier.c:195,5'
          Dst:             minimatch_clone
    - functionName:    classifier_find_rule_exactly
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1225
      functionLinenumberEnd: 1250
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          127
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - cls_match_next
        - cls_match_visible_in_version
        - find_equal
        - find_subtable
        - miniflow_hash_in_minimask
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier.c:1229,16'
          Dst:             find_subtable
        - Src:             'lib/classifier.c:1235,23'
          Dst:             miniflow_hash_in_minimask
        - Src:             'lib/classifier.c:1234,12'
          Dst:             find_equal
        - Src:             'lib/classifier.c:1245,16'
          Dst:             cls_match_visible_in_version
        - Src:             'lib/classifier.c:1240,5'
          Dst:             cls_match_next
    - functionName:    cls_rule_destroy
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 228
      functionLinenumberEnd: 238
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - get_cls_match_protected
        - minimatch_destroy
        - ovs_ignore
        - rculist_is_empty
        - rculist_poison__
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier.c:230,17'
          Dst:             get_cls_match_protected
        - Src:             'lib/classifier.c:230,5'
          Dst:             ovs_ignore
        - Src:             'lib/classifier.c:234,19'
          Dst:             rculist_is_empty
        - Src:             'lib/classifier.c:233,5'
          Dst:             ovs_ignore
        - Src:             'lib/classifier.c:235,5'
          Dst:             rculist_poison__
        - Src:             'lib/classifier.c:237,5'
          Dst:             minimatch_destroy
    - functionName:    get_cls_match_protected
      functionSourceFile: '/src/openvswitch/lib/classifier-private.h'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          22
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rculist_poison__
      functionSourceFile: '/src/openvswitch/lib/rculist.h'
      linkageType:     InternalLinkage
      functionLinenumber: 151
      functionLinenumberEnd: 154
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          53
      EdgeCount:       13
      CyclomaticComplexity: 8
      functionsReached:
        - rculist_poison
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/rculist.h:153,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/rculist.h:152,5'
          Dst:             rculist_poison
    - functionName:    find_subtable
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1474
      functionLinenumberEnd: 1484
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          69
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - cmap_find
        - cmap_node_next
        - minimask_equal
        - minimask_hash
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier.c:1477,5'
          Dst:             minimask_hash
        - Src:             'lib/classifier.c:1477,5'
          Dst:             cmap_find
        - Src:             'lib/classifier.c:1479,13'
          Dst:             minimask_equal
        - Src:             'lib/classifier.c:1477,5'
          Dst:             cmap_node_next
    - functionName:    miniflow_hash_in_minimask
      functionSourceFile: '/src/openvswitch/lib/classifier-private.h'
      linkageType:     InternalLinkage
      functionLinenumber: 245
      functionLinenumberEnd: 255
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          74
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hash_add64
        - hash_finish
        - mf_get_next_in_map
        - miniflow_get_values
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier-private.h:246,35'
          Dst:             miniflow_get_values
        - Src:             'lib/classifier-private.h:251,5'
          Dst:             miniflow_get_values
        - Src:             'lib/classifier-private.h:251,5'
          Dst:             mf_get_next_in_map
        - Src:             'lib/classifier-private.h:252,16'
          Dst:             hash_add64
        - Src:             'lib/classifier-private.h:255,12'
          Dst:             hash_finish
    - functionName:    find_equal
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1810
      functionLinenumberEnd: 1819
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          70
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - cmap_find
        - cmap_node_next
        - miniflow_equal
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier.c:1813,5'
          Dst:             cmap_find
        - Src:             'lib/classifier.c:1814,13'
          Dst:             miniflow_equal
        - Src:             'lib/classifier.c:1813,5'
          Dst:             cmap_node_next
    - functionName:    cls_rule_init__
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 168
      functionLinenumberEnd: 172
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - rculist_init
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier.c:169,5'
          Dst:             rculist_init
    - functionName:    classifier_find_match_exactly
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1260
      functionLinenumberEnd: 1268
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - classifier_find_rule_exactly
        - cls_rule_destroy
        - cls_rule_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier.c:1264,5'
          Dst:             cls_rule_init
        - Src:             'lib/classifier.c:1265,14'
          Dst:             classifier_find_rule_exactly
        - Src:             'lib/classifier.c:1266,5'
          Dst:             cls_rule_destroy
    - functionName:    cls_rule_init
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 184
      functionLinenumberEnd: 187
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - cls_rule_init__
        - minimatch_init
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier.c:185,5'
          Dst:             cls_rule_init__
        - Src:             'lib/classifier.c:186,5'
          Dst:             minimatch_init
    - functionName:    classifier_lookup__
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 973
      functionLinenumberEnd: 1192
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         100
      ICount:          649
      EdgeCount:       132
      CyclomaticComplexity: 34
      functionsReached:
        - classifier_lookup__
        - find_conjunctive_match
        - find_match_wc
        - free_conjunctive_matches
        - hmap_init
        - insert_conj_flows
        - next_visible_rule_in_list
        - ovs_ignore
        - pvector_cursor_init
        - pvector_cursor_next
        - trie_ctx_init
        - xmalloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier.c:1001,9'
          Dst:             trie_ctx_init
        - Src:             'lib/classifier.c:1006,5'
          Dst:             pvector_cursor_init
        - Src:             'lib/classifier.c:1006,5'
          Dst:             pvector_cursor_next
        - Src:             'lib/classifier.c:1012,17'
          Dst:             find_match_wc
        - Src:             'lib/classifier.c:1033,24'
          Dst:             xmalloc
        - Src:             'lib/classifier.c:1113,9'
          Dst:             ovs_ignore
        - Src:             'lib/classifier.c:1124,9'
          Dst:             hmap_init
        - Src:             'lib/classifier.c:1129,20'
          Dst:             find_conjunctive_match
        - Src:             'lib/classifier.c:1136,24'
          Dst:             classifier_lookup__
        - Src:             'lib/classifier.c:1142,25'
          Dst:             insert_conj_flows
        - Src:             'lib/classifier.c:1145,21'
          Dst:             free_conjunctive_matches
        - Src:             'lib/classifier.c:1154,9'
          Dst:             free_conjunctive_matches
        - Src:             'lib/classifier.c:1169,21'
          Dst:             next_visible_rule_in_list
    - functionName:    classifier_lookup
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1213
      functionLinenumberEnd: 1214
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - classifier_lookup__
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier.c:1214,12'
          Dst:             classifier_lookup__
    - functionName:    classifier_remove_assert
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 831
      functionLinenumberEnd: 833
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - classifier_remove
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier.c:832,16'
          Dst:             classifier_remove
        - Src:             'lib/classifier.c:832,5'
          Dst:             ovs_ignore
    - functionName:    classifier_remove
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 707
      functionLinenumberEnd: 826
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         66
      ICount:          503
      EdgeCount:       84
      CyclomaticComplexity: 20
      functionsReached:
        - ccmap_dec
        - cls_match_free_cb
        - cls_match_next_protected
        - cls_match_remove
        - cmap_cursor_advance
        - cmap_cursor_start
        - cmap_remove
        - cmap_replace
        - destroy_subtable
        - find_equal
        - find_subtable
        - get_cls_match_protected
        - minimatch_get_ports
        - minimatch_hash_range
        - ovs_ignore
        - ovsrcu_postpone__
        - pvector_change_priority
        - pvector_publish
        - rculist_remove
        - trie_remove
        - trie_remove_prefix
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/classifier.c:722,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/classifier.c:717,12'
          Dst:             get_cls_match_protected
        - Src:             'lib/classifier.c:725,5'
          Dst:             rculist_remove
        - Src:             'lib/classifier.c:727,16'
          Dst:             find_subtable
        - Src:             'lib/classifier.c:728,5'
          Dst:             ovs_ignore
        - Src:             'lib/classifier.c:733,20'
          Dst:             minimatch_hash_range
        - Src:             'lib/classifier.c:737,12'
          Dst:             minimatch_hash_range
        - Src:             'lib/classifier.c:740,12'
          Dst:             find_equal
        - Src:             'lib/classifier.c:748,9'
          Dst:             cls_match_next_protected
        - Src:             'lib/classifier.c:753,9'
          Dst:             ovs_ignore
        - Src:             'lib/classifier.c:755,9'
          Dst:             cls_match_remove
        - Src:             'lib/classifier.c:762,12'
          Dst:             cls_match_next_protected
        - Src:             'lib/classifier.c:764,9'
          Dst:             cmap_replace
        - Src:             'lib/classifier.c:773,33'
          Dst:             minimatch_get_ports
        - Src:             'lib/classifier.c:775,9'
          Dst:             trie_remove_prefix
        - Src:             'lib/classifier.c:781,13'
          Dst:             trie_remove
        - Src:             'lib/classifier.c:787,9'
          Dst:             ccmap_dec
        - Src:             'lib/classifier.c:789,15'
          Dst:             cmap_remove
        - Src:             'lib/classifier.c:792,9'
          Dst:             destroy_subtable
        - Src:             'lib/classifier.c:799,13'
          Dst:             cmap_cursor_start
        - Src:             'lib/classifier.c:799,13'
          Dst:             cmap_cursor_advance
        - Src:             'lib/classifier.c:808,13'
          Dst:             pvector_change_priority
        - Src:             'lib/classifier.c:813,9'
          Dst:             pvector_publish
        - Src:             'lib/classifier.c:820,9'
          Dst:             ovsrcu_postpone__
        - Src:             'lib/classifier.c:822,5'
          Dst:             ovsrcu_postpone__
        - Src:             'lib/classifier.c:822,5'
          Dst:             cls_match_free_cb
    - functionName:    rculist_remove
      functionSourceFile: '/src/openvswitch/lib/rculist.h'
      linkageType:     InternalLinkage
      functionLinenumber: 267
      functionLinenumberEnd: 273
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          67
      EdgeCount:       13
      CyclomaticComplexity: 8
      functionsReached:
        - rculist_next_protected
        - rculist_poison
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/rculist.h:271,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/rculist.h:268,33'
          Dst:             rculist_next_protected
        - Src:             'lib/rculist.h:272,5'
          Dst:             rculist_poison
    - functionName:    minimatch_hash_range
      functionSourceFile: '/src/openvswitch/lib/classifier-private.h'
      linkageType:     InternalLinkage
      functionLinenumber: 353
      functionLinenumberEnd: 364
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          102
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - flowmap_n_1bits
        - hash_add64
        - hash_finish
        - miniflow_get_values
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier-private.h:354,25'
          Dst:             miniflow_get_values
        - Src:             'lib/classifier-private.h:355,25'
          Dst:             miniflow_get_values
        - Src:             'lib/classifier-private.h:356,22'
          Dst:             flowmap_n_1bits
        - Src:             'lib/classifier-private.h:360,16'
          Dst:             hash_add64
        - Src:             'lib/classifier-private.h:364,12'
          Dst:             hash_finish
    - functionName:    cls_match_next_protected
      functionSourceFile: '/src/openvswitch/lib/classifier-private.h'
      linkageType:     InternalLinkage
      functionLinenumber: 129
      functionLinenumberEnd: 130
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          22
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    cls_match_remove
      functionSourceFile: '/src/openvswitch/lib/classifier-private.h'
      linkageType:     InternalLinkage
      functionLinenumber: 175
      functionLinenumberEnd: 179
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          63
      EdgeCount:       10
      CyclomaticComplexity: 2
      functionsReached:
        - cls_match_next_protected
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/classifier-private.h:177,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/classifier-private.h:177,9'
          Dst:             cls_match_next_protected
    - functionName:    minimatch_get_ports
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 492
      functionLinenumberEnd: 495
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - miniflow_get_ports
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier.c:494,13'
          Dst:             miniflow_get_ports
        - Src:             'lib/classifier.c:495,15'
          Dst:             miniflow_get_ports
    - functionName:    trie_remove_prefix
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2209
      functionLinenumberEnd: 2276
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         40
      ICount:          334
      EdgeCount:       51
      CyclomaticComplexity: 13
      functionsReached:
        - trie_next_edge
        - trie_node_destroy
        - trie_node_rcu_realloc
        - trie_prefix_equal_bits
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/classifier.c:2261,17'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/classifier.c:2218,31'
          Dst:             trie_prefix_equal_bits
        - Src:             'lib/classifier.c:2254,28'
          Dst:             trie_node_rcu_realloc
        - Src:             'lib/classifier.c:2262,17'
          Dst:             trie_node_destroy
        - Src:             'lib/classifier.c:2217,27'
          Dst:             trie_next_edge
    - functionName:    trie_remove
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2200
      functionLinenumberEnd: 2203
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - minimatch_get_prefix
        - trie_remove_prefix
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier.c:2202,24'
          Dst:             minimatch_get_prefix
        - Src:             'lib/classifier.c:2201,5'
          Dst:             trie_remove_prefix
    - functionName:    cmap_remove
      functionSourceFile: '/src/openvswitch/lib/cmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 293
      functionLinenumberEnd: 294
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - cmap_replace
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/cmap.h:294,12'
          Dst:             cmap_replace
    - functionName:    destroy_subtable
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1601
      functionLinenumberEnd: 1607
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - cmap_remove
        - minimask_hash
        - ovsrcu_postpone__
        - pvector_remove
        - subtable_destroy_cb
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier.c:1602,5'
          Dst:             pvector_remove
        - Src:             'lib/classifier.c:1604,17'
          Dst:             minimask_hash
        - Src:             'lib/classifier.c:1603,5'
          Dst:             cmap_remove
        - Src:             'lib/classifier.c:1606,5'
          Dst:             ovsrcu_postpone__
        - Src:             'lib/classifier.c:1606,5'
          Dst:             subtable_destroy_cb
    - functionName:    pvector_publish
      functionSourceFile: '/src/openvswitch/lib/pvector.h'
      linkageType:     InternalLinkage
      functionLinenumber: 243
      functionLinenumberEnd: 247
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          28
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - pvector_publish__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/pvector.h:245,9'
          Dst:             pvector_publish__
    - functionName:    cls_match_free_cb
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2283
      functionLinenumberEnd: 2286
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          53
      EdgeCount:       13
      CyclomaticComplexity: 8
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/classifier.c:2284,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    classifier_insert
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 690
      functionLinenumberEnd: 694
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - classifier_replace
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier.c:692,11'
          Dst:             classifier_replace
        - Src:             'lib/classifier.c:693,5'
          Dst:             ovs_ignore
    - functionName:    classifier_replace
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 517
      functionLinenumberEnd: 678
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         75
      ICount:          603
      EdgeCount:       93
      CyclomaticComplexity: 20
      functionsReached:
        - ccmap_inc
        - cls_match_alloc
        - cls_match_free_cb
        - cls_match_insert
        - cls_match_is_eventually_invisible
        - cls_match_next_protected
        - cls_match_replace
        - cls_match_set_remove_version
        - cmap_insert
        - cmap_replace
        - find_equal
        - find_subtable
        - insert_subtable
        - minimatch_get_ports
        - minimatch_hash_range
        - ovsrcu_postpone__
        - pvector_change_priority
        - pvector_insert
        - pvector_publish
        - rculist_push_back
        - rculist_replace
        - trie_insert
        - trie_insert_prefix
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/classifier.c:531,5'
          Branch Sides:    []
        - Branch String:   'lib/classifier.c:622,17'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/classifier.c:530,11'
          Dst:             cls_match_alloc
        - Src:             'lib/classifier.c:533,16'
          Dst:             find_subtable
        - Src:             'lib/classifier.c:535,20'
          Dst:             insert_subtable
        - Src:             'lib/classifier.c:543,20'
          Dst:             minimatch_hash_range
        - Src:             'lib/classifier.c:546,12'
          Dst:             minimatch_hash_range
        - Src:             'lib/classifier.c:549,12'
          Dst:             find_equal
        - Src:             'lib/classifier.c:558,17'
          Dst:             trie_insert
        - Src:             'lib/classifier.c:568,37'
          Dst:             minimatch_get_ports
        - Src:             'lib/classifier.c:570,13'
          Dst:             trie_insert_prefix
        - Src:             'lib/classifier.c:576,13'
          Dst:             ccmap_inc
        - Src:             'lib/classifier.c:578,19'
          Dst:             cmap_insert
        - Src:             'lib/classifier.c:588,25'
          Dst:             cls_match_is_eventually_invisible
        - Src:             'lib/classifier.c:585,9'
          Dst:             cls_match_next_protected
        - Src:             'lib/classifier.c:599,17'
          Dst:             cls_match_replace
        - Src:             'lib/classifier.c:602,17'
          Dst:             cls_match_insert
        - Src:             'lib/classifier.c:609,17'
          Dst:             cmap_replace
        - Src:             'lib/classifier.c:619,21'
          Dst:             ovsrcu_postpone__
        - Src:             'lib/classifier.c:624,17'
          Dst:             ovsrcu_postpone__
        - Src:             'lib/classifier.c:624,17'
          Dst:             cls_match_free_cb
        - Src:             'lib/classifier.c:629,17'
          Dst:             cls_match_set_remove_version
        - Src:             'lib/classifier.c:632,17'
          Dst:             rculist_replace
        - Src:             'lib/classifier.c:641,13'
          Dst:             cls_match_insert
        - Src:             'lib/classifier.c:646,5'
          Dst:             cls_match_set_remove_version
        - Src:             'lib/classifier.c:649,5'
          Dst:             rculist_push_back
        - Src:             'lib/classifier.c:661,9'
          Dst:             pvector_insert
        - Src:             'lib/classifier.c:667,9'
          Dst:             pvector_change_priority
        - Src:             'lib/classifier.c:674,9'
          Dst:             pvector_publish
    - functionName:    cls_match_alloc
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 105
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          109
      EdgeCount:       13
      CyclomaticComplexity: 8
      functionsReached:
        - cls_conjunction_set_alloc
        - miniflow_clone
        - miniflow_n_values
        - xmalloc
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/classifier.c:102,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/classifier.c:90,20'
          Dst:             miniflow_n_values
        - Src:             'lib/classifier.c:93,11'
          Dst:             xmalloc
        - Src:             'lib/classifier.c:100,5'
          Dst:             miniflow_clone
        - Src:             'lib/classifier.c:102,5'
          Dst:             cls_conjunction_set_alloc
    - functionName:    insert_subtable
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1538
      functionLinenumberEnd: 1595
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         24
      ICount:          274
      EdgeCount:       28
      CyclomaticComplexity: 6
      functionsReached:
        - ccmap_destroy
        - ccmap_init
        - cmap_init
        - cmap_insert
        - ctz32
        - flowmap_is_empty
        - miniflow_clone
        - miniflow_get_map_in_range
        - miniflow_get_ports
        - miniflow_n_values
        - minimask_get_prefix_len
        - minimask_hash
        - ntohl
        - rculist_init
        - xzalloc
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/classifier.c:1586,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/classifier.c:1539,21'
          Dst:             minimask_hash
        - Src:             'lib/classifier.c:1544,20'
          Dst:             miniflow_n_values
        - Src:             'lib/classifier.c:1546,16'
          Dst:             xzalloc
        - Src:             'lib/classifier.c:1547,5'
          Dst:             cmap_init
        - Src:             'lib/classifier.c:1548,5'
          Dst:             miniflow_clone
        - Src:             'lib/classifier.c:1554,21'
          Dst:             miniflow_get_map_in_range
        - Src:             'lib/classifier.c:1557,14'
          Dst:             flowmap_is_empty
        - Src:             'lib/classifier.c:1558,13'
          Dst:             ccmap_init
        - Src:             'lib/classifier.c:1567,11'
          Dst:             miniflow_get_map_in_range
        - Src:             'lib/classifier.c:1570,13'
          Dst:             flowmap_is_empty
        - Src:             'lib/classifier.c:1574,13'
          Dst:             ccmap_destroy
        - Src:             'lib/classifier.c:1581,34'
          Dst:             minimask_get_prefix_len
        - Src:             'lib/classifier.c:1588,28'
          Dst:             miniflow_get_ports
        - Src:             'lib/classifier.c:1588,22'
          Dst:             ntohl
        - Src:             'lib/classifier.c:1588,16'
          Dst:             ctz32
        - Src:             'lib/classifier.c:1591,5'
          Dst:             rculist_init
        - Src:             'lib/classifier.c:1593,5'
          Dst:             cmap_insert
    - functionName:    trie_insert
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2145
      functionLinenumberEnd: 2148
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - minimatch_get_prefix
        - trie_insert_prefix
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier.c:2147,24'
          Dst:             minimatch_get_prefix
        - Src:             'lib/classifier.c:2146,5'
          Dst:             trie_insert_prefix
    - functionName:    trie_insert_prefix
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2152
      functionLinenumberEnd: 2194
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         31
      ICount:          306
      EdgeCount:       31
      CyclomaticComplexity: 2
      functionsReached:
        - get_bit_at
        - trie_branch_create
        - trie_next_edge
        - trie_node_rcu_realloc
        - trie_prefix_equal_bits
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/classifier.c:2173,13'
          Branch Sides:    []
        - Branch String:   'lib/classifier.c:2177,17'
          Branch Sides:    []
        - Branch String:   'lib/classifier.c:2181,13'
          Branch Sides:    []
        - Branch String:   'lib/classifier.c:2193,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/classifier.c:2159,31'
          Dst:             trie_prefix_equal_bits
        - Src:             'lib/classifier.c:2163,30'
          Dst:             get_bit_at
        - Src:             'lib/classifier.c:2166,26'
          Dst:             trie_branch_create
        - Src:             'lib/classifier.c:2169,20'
          Dst:             trie_node_rcu_realloc
        - Src:             'lib/classifier.c:2177,17'
          Dst:             trie_branch_create
        - Src:             'lib/classifier.c:2158,17'
          Dst:             trie_next_edge
        - Src:             'lib/classifier.c:2193,5'
          Dst:             trie_branch_create
    - functionName:    cls_match_is_eventually_invisible
      functionSourceFile: '/src/openvswitch/lib/classifier-private.h'
      linkageType:     InternalLinkage
      functionLinenumber: 114
      functionLinenumberEnd: 115
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - versions_is_eventually_invisible
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier-private.h:115,12'
          Dst:             versions_is_eventually_invisible
    - functionName:    cls_match_replace
      functionSourceFile: '/src/openvswitch/lib/classifier-private.h'
      linkageType:     InternalLinkage
      functionLinenumber: 159
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - cls_match_insert
        - cls_match_next_protected
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier-private.h:160,28'
          Dst:             cls_match_next_protected
        - Src:             'lib/classifier-private.h:160,5'
          Dst:             cls_match_insert
    - functionName:    cls_match_insert
      functionSourceFile: '/src/openvswitch/lib/classifier-private.h'
      linkageType:     InternalLinkage
      functionLinenumber: 141
      functionLinenumberEnd: 147
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          96
      EdgeCount:       22
      CyclomaticComplexity: 12
      functionsReached: []
      functionUses:    3
      BranchProfiles:
        - Branch String:   'lib/classifier-private.h:142,5'
          Branch Sides:    []
        - Branch String:   'lib/classifier-private.h:145,9'
          Branch Sides:    []
      Callsites:       []
    - functionName:    cls_match_set_remove_version
      functionSourceFile: '/src/openvswitch/lib/classifier-private.h'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 103
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - versions_set_remove_version
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier-private.h:102,5'
          Dst:             versions_set_remove_version
    - functionName:    rculist_replace
      functionSourceFile: '/src/openvswitch/lib/rculist.h'
      linkageType:     InternalLinkage
      functionLinenumber: 220
      functionLinenumberEnd: 228
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          111
      EdgeCount:       20
      CyclomaticComplexity: 11
      functionsReached:
        - rculist_next_protected
        - rculist_poison
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/rculist.h:223,5'
          Branch Sides:    []
        - Branch String:   'lib/rculist.h:226,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/rculist.h:221,37'
          Dst:             rculist_next_protected
        - Src:             'lib/rculist.h:227,5'
          Dst:             rculist_poison
    - functionName:    rculist_push_back
      functionSourceFile: '/src/openvswitch/lib/rculist.h'
      linkageType:     InternalLinkage
      functionLinenumber: 206
      functionLinenumberEnd: 208
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - rculist_insert
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/rculist.h:207,5'
          Dst:             rculist_insert
    - functionName:    cls_conjunction_set_alloc
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 67
      functionLinenumberEnd: 84
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          116
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - cls_conjunction_set_size
        - xmalloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier.c:74,51'
          Dst:             cls_conjunction_set_size
        - Src:             'lib/classifier.c:74,43'
          Dst:             xmalloc
    - functionName:    classifier_count
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 485
      functionLinenumberEnd: 488
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    classifier_is_empty
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 478
      functionLinenumberEnd: 479
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - cmap_is_empty
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier.c:479,12'
          Dst:             cmap_is_empty
    - functionName:    trie_init
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 447
      functionLinenumberEnd: 472
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          171
      EdgeCount:       26
      CyclomaticComplexity: 6
      functionsReached:
        - cmap_cursor_advance
        - cmap_cursor_start
        - minimask_get_prefix_len
        - ovs_ignore
        - trie_insert
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/classifier.c:455,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/classifier.c:451,5'
          Dst:             ovs_ignore
        - Src:             'lib/classifier.c:452,5'
          Dst:             ovs_ignore
        - Src:             'lib/classifier.c:458,5'
          Dst:             cmap_cursor_start
        - Src:             'lib/classifier.c:458,5'
          Dst:             cmap_cursor_advance
        - Src:             'lib/classifier.c:461,16'
          Dst:             minimask_get_prefix_len
        - Src:             'lib/classifier.c:465,13'
          Dst:             cmap_cursor_start
        - Src:             'lib/classifier.c:465,13'
          Dst:             cmap_cursor_advance
        - Src:             'lib/classifier.c:466,17'
          Dst:             trie_insert
    - functionName:    bitmap_set1
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 96
      functionLinenumberEnd: 98
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - bitmap_bit__
        - bitmap_unit__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/bitmap.h:97,39'
          Dst:             bitmap_bit__
        - Src:             'lib/bitmap.h:97,6'
          Dst:             bitmap_unit__
    - functionName:    bitmap_is_set
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 90
      functionLinenumberEnd: 91
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - bitmap_bit__
        - bitmap_unit__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/bitmap.h:91,14'
          Dst:             bitmap_unit__
        - Src:             'lib/bitmap.h:91,46'
          Dst:             bitmap_bit__
    - functionName:    mf_from_id
      functionSourceFile: '/src/openvswitch/./include/openvswitch/meta-flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2363
      functionLinenumberEnd: 2366
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/meta-flow.h:2365,5'
          Dst:             ovs_ignore
    - functionName:    classifier_set_prefix_fields
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 371
      functionLinenumberEnd: 443
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         46
      ICount:          286
      EdgeCount:       60
      CyclomaticComplexity: 16
      functionsReached:
        - bitmap_is_set
        - bitmap_set1
        - mf_from_id
        - ovsrcu_synchronize
        - trie_destroy
        - trie_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier.c:381,40'
          Dst:             mf_from_id
        - Src:             'lib/classifier.c:390,13'
          Dst:             bitmap_is_set
        - Src:             'lib/classifier.c:395,9'
          Dst:             bitmap_set1
        - Src:             'lib/classifier.c:422,9'
          Dst:             ovsrcu_synchronize
        - Src:             'lib/classifier.c:427,17'
          Dst:             trie_destroy
        - Src:             'lib/classifier.c:428,17'
          Dst:             trie_init
        - Src:             'lib/classifier.c:433,13'
          Dst:             trie_destroy
    - functionName:    trie_destroy
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1963
      functionLinenumberEnd: 1970
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - trie_destroy__
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier.c:1968,5'
          Dst:             trie_destroy__
    - functionName:    classifier_destroy
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 347
      functionLinenumberEnd: 364
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         16
      ICount:          95
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - cmap_cursor_advance
        - cmap_cursor_start
        - cmap_destroy
        - destroy_subtable
        - pvector_destroy
        - trie_destroy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier.c:354,13'
          Dst:             trie_destroy
        - Src:             'lib/classifier.c:357,9'
          Dst:             cmap_cursor_start
        - Src:             'lib/classifier.c:357,9'
          Dst:             cmap_cursor_advance
        - Src:             'lib/classifier.c:358,13'
          Dst:             destroy_subtable
        - Src:             'lib/classifier.c:360,9'
          Dst:             cmap_destroy
        - Src:             'lib/classifier.c:362,9'
          Dst:             pvector_destroy
    - functionName:    classifier_init
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 326
      functionLinenumberEnd: 340
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          92
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - cmap_init
        - pvector_init
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier.c:328,5'
          Dst:             cmap_init
        - Src:             'lib/classifier.c:329,5'
          Dst:             pvector_init
    - functionName:    cls_rule_restore_visibility
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 306
      functionLinenumberEnd: 309
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - cls_match_set_remove_version
        - get_cls_match_protected
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier.c:307,34'
          Dst:             get_cls_match_protected
        - Src:             'lib/classifier.c:307,5'
          Dst:             cls_match_set_remove_version
    - functionName:    cls_rule_make_invisible_in_version
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 292
      functionLinenumberEnd: 298
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - cls_match_set_remove_version
        - get_cls_match_protected
        - ovs_ignore
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier.c:293,35'
          Dst:             get_cls_match_protected
        - Src:             'lib/classifier.c:295,5'
          Dst:             ovs_ignore
        - Src:             'lib/classifier.c:297,5'
          Dst:             cls_match_set_remove_version
    - functionName:    cls_rule_format
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 273
      functionLinenumberEnd: 275
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - minimatch_format
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier.c:274,5'
          Dst:             minimatch_format
    - functionName:    cls_rule_equal
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 265
      functionLinenumberEnd: 266
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - minimatch_equal
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier.c:266,42'
          Dst:             minimatch_equal
    - functionName:    cls_rule_set_conjunctions
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 244
      functionLinenumberEnd: 258
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          163
      EdgeCount:       29
      CyclomaticComplexity: 7
      functionsReached:
        - cls_conjunction_set_alloc
        - get_cls_match_protected
        - memcmp
        - ovsrcu_postpone__
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib/classifier.c:255,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/classifier.c:245,31'
          Dst:             get_cls_match_protected
        - Src:             'lib/classifier.c:251,29'
          Dst:             memcmp
        - Src:             'lib/classifier.c:253,13'
          Dst:             ovsrcu_postpone__
        - Src:             'lib/classifier.c:255,9'
          Dst:             cls_conjunction_set_alloc
    - functionName:    cls_rule_move
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 215
      functionLinenumberEnd: 219
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - cls_rule_init__
        - minimatch_move
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier.c:216,5'
          Dst:             cls_rule_init__
        - Src:             'lib/classifier.c:217,5'
          Dst:             minimatch_move
    - functionName:    cls_rule_clone
      functionSourceFile: '/src/openvswitch/lib/classifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 203
      functionLinenumberEnd: 206
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - cls_rule_init__
        - minimatch_clone
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/classifier.c:204,5'
          Dst:             cls_rule_init__
        - Src:             'lib/classifier.c:205,5'
          Dst:             minimatch_clone
    - functionName:    ccmap_expand_init_coverage
      functionSourceFile: '/src/openvswitch/lib/ccmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26
      functionLinenumberEnd: 26
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ccmap.c:26,1'
          Dst:             coverage_counter_register
    - functionName:    ccmap_shrink_init_coverage
      functionSourceFile: '/src/openvswitch/lib/ccmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27
      functionLinenumberEnd: 27
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ccmap.c:27,1'
          Dst:             coverage_counter_register
    - functionName:    ccmap_shrink_count
      functionSourceFile: '/src/openvswitch/lib/ccmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27
      functionLinenumberEnd: 27
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_ccmap_shrink_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ccmap.c:27,1'
          Dst:             counter_ccmap_shrink_get
    - functionName:    counter_ccmap_shrink_get
      functionSourceFile: '/src/openvswitch/lib/ccmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27
      functionLinenumberEnd: 27
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_ccmap_shrink_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ccmap.c:27,1'
          Dst:             counter_ccmap_shrink_get_unsafe
    - functionName:    counter_ccmap_shrink_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/ccmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27
      functionLinenumberEnd: 27
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ccmap_expand_count
      functionSourceFile: '/src/openvswitch/lib/ccmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26
      functionLinenumberEnd: 26
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_ccmap_expand_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ccmap.c:26,1'
          Dst:             counter_ccmap_expand_get
    - functionName:    counter_ccmap_expand_get
      functionSourceFile: '/src/openvswitch/lib/ccmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26
      functionLinenumberEnd: 26
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_ccmap_expand_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ccmap.c:26,1'
          Dst:             counter_ccmap_expand_get_unsafe
    - functionName:    counter_ccmap_expand_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/ccmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26
      functionLinenumberEnd: 26
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ccmap_try_rehash
      functionSourceFile: '/src/openvswitch/lib/ccmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 545
      functionLinenumberEnd: 559
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          100
      EdgeCount:       21
      CyclomaticComplexity: 6
      functionsReached:
        - ccmap_node_count
        - ccmap_node_get_protected
        - ccmap_node_hash
        - ccmap_try_inc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ccmap.c:550,29'
          Dst:             ccmap_node_get_protected
        - Src:             'lib/ccmap.c:551,30'
          Dst:             ccmap_node_count
        - Src:             'lib/ccmap.c:553,46'
          Dst:             ccmap_node_hash
        - Src:             'lib/ccmap.c:553,27'
          Dst:             ccmap_try_inc
    - functionName:    ccmap_node_get_protected
      functionSourceFile: '/src/openvswitch/lib/ccmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ccmap_node_count
      functionSourceFile: '/src/openvswitch/lib/ccmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ccmap_node_hash
      functionSourceFile: '/src/openvswitch/lib/ccmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 71
      functionLinenumberEnd: 72
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ccmap_try_inc
      functionSourceFile: '/src/openvswitch/lib/ccmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 456
      functionLinenumberEnd: 467
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          144
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - ccmap_inc_bfs
        - ccmap_inc_bucket_existing
        - ccmap_inc_bucket_new
        - other_hash
        - rehash
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ccmap.c:457,19'
          Dst:             rehash
        - Src:             'lib/ccmap.c:458,19'
          Dst:             other_hash
        - Src:             'lib/ccmap.c:463,12'
          Dst:             ccmap_inc_bucket_existing
        - Src:             'lib/ccmap.c:464,19'
          Dst:             ccmap_inc_bucket_existing
        - Src:             'lib/ccmap.c:465,19'
          Dst:             ccmap_inc_bucket_new
        - Src:             'lib/ccmap.c:466,19'
          Dst:             ccmap_inc_bucket_new
        - Src:             'lib/ccmap.c:467,19'
          Dst:             ccmap_inc_bfs
    - functionName:    rehash
      functionSourceFile: '/src/openvswitch/lib/ccmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 133
      functionLinenumberEnd: 134
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_finish
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ccmap.c:134,12'
          Dst:             hash_finish
    - functionName:    other_hash
      functionSourceFile: '/src/openvswitch/lib/ccmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 125
      functionLinenumberEnd: 126
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ccmap_inc_bucket_existing
      functionSourceFile: '/src/openvswitch/lib/ccmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 278
      functionLinenumberEnd: 288
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ccmap_find_slot_protected
        - ccmap_set_bucket
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ccmap.c:281,13'
          Dst:             ccmap_find_slot_protected
        - Src:             'lib/ccmap.c:286,5'
          Dst:             ccmap_set_bucket
    - functionName:    ccmap_inc_bucket_new
      functionSourceFile: '/src/openvswitch/lib/ccmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 294
      functionLinenumberEnd: 301
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ccmap_find_empty_slot_protected
        - ccmap_set_bucket
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ccmap.c:295,13'
          Dst:             ccmap_find_empty_slot_protected
        - Src:             'lib/ccmap.c:299,5'
          Dst:             ccmap_set_bucket
    - functionName:    ccmap_inc_bfs
      functionSourceFile: '/src/openvswitch/lib/ccmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 338
      functionLinenumberEnd: 451
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         35
      ICount:          332
      EdgeCount:       45
      CyclomaticComplexity: 12
      functionsReached:
        - ccmap_find_empty_slot_protected
        - ccmap_node_get_protected
        - ccmap_node_set_protected
        - ccmap_set_bucket
        - other_bucket_protected
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ccmap.c:390,41'
          Dst:             other_bucket_protected
        - Src:             'lib/ccmap.c:397,17'
          Dst:             ccmap_find_empty_slot_protected
        - Src:             'lib/ccmap.c:417,38'
          Dst:             other_bucket_protected
        - Src:             'lib/ccmap.c:428,37'
          Dst:             ccmap_node_get_protected
        - Src:             'lib/ccmap.c:430,21'
          Dst:             ccmap_node_set_protected
        - Src:             'lib/ccmap.c:435,17'
          Dst:             ccmap_set_bucket
    - functionName:    other_bucket_protected
      functionSourceFile: '/src/openvswitch/lib/ccmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 307
      functionLinenumberEnd: 315
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          79
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ccmap_node_get_protected
        - ccmap_node_hash
        - other_hash
        - rehash
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ccmap.c:308,21'
          Dst:             ccmap_node_get_protected
        - Src:             'lib/ccmap.c:310,32'
          Dst:             ccmap_node_hash
        - Src:             'lib/ccmap.c:310,19'
          Dst:             rehash
        - Src:             'lib/ccmap.c:311,19'
          Dst:             other_hash
    - functionName:    ccmap_find_empty_slot_protected
      functionSourceFile: '/src/openvswitch/lib/ccmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 256
      functionLinenumberEnd: 265
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          55
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ccmap_node_count
        - ccmap_node_get_protected
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ccmap.c:258,25'
          Dst:             ccmap_node_get_protected
        - Src:             'lib/ccmap.c:260,14'
          Dst:             ccmap_node_count
    - functionName:    ccmap_node_set_protected
      functionSourceFile: '/src/openvswitch/lib/ccmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 59
      functionLinenumberEnd: 61
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ccmap_set_bucket
      functionSourceFile: '/src/openvswitch/lib/ccmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 269
      functionLinenumberEnd: 271
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ccmap_node
        - ccmap_node_set_protected
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ccmap.c:270,44'
          Dst:             ccmap_node
        - Src:             'lib/ccmap.c:270,5'
          Dst:             ccmap_node_set_protected
    - functionName:    ccmap_node
      functionSourceFile: '/src/openvswitch/lib/ccmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 65
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ccmap_find_slot_protected
      functionSourceFile: '/src/openvswitch/lib/ccmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 242
      functionLinenumberEnd: 252
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          77
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - ccmap_node_count
        - ccmap_node_get_protected
        - ccmap_node_hash
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ccmap.c:244,25'
          Dst:             ccmap_node_get_protected
        - Src:             'lib/ccmap.c:246,18'
          Dst:             ccmap_node_count
        - Src:             'lib/ccmap.c:247,13'
          Dst:             ccmap_node_hash
    - functionName:    hash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:119,12'
          Dst:             mhash_finish
    - functionName:    mhash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ccmap_node_get
      functionSourceFile: '/src/openvswitch/lib/ccmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41
      functionLinenumberEnd: 47
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    calc_min_n
      functionSourceFile: '/src/openvswitch/lib/ccmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 151
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    calc_max_n
      functionSourceFile: '/src/openvswitch/lib/ccmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 145
      functionLinenumberEnd: 146
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    is_pow2
      functionSourceFile: '/src/openvswitch/./include/openvswitch/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 399
      functionLinenumberEnd: 400
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          26
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ccmap_shrink_add
      functionSourceFile: '/src/openvswitch/lib/ccmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27
      functionLinenumberEnd: 27
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_ccmap_shrink_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ccmap.c:27,1'
          Dst:             counter_ccmap_shrink_get
    - functionName:    ccmap_dec__
      functionSourceFile: '/src/openvswitch/lib/ccmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 499
      functionLinenumberEnd: 510
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          58
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ccmap_find_slot_protected
        - ccmap_set_bucket
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ccmap.c:503,16'
          Dst:             ccmap_find_slot_protected
        - Src:             'lib/ccmap.c:508,5'
          Dst:             ccmap_set_bucket
    - functionName:    ccmap_dec
      functionSourceFile: '/src/openvswitch/lib/ccmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 519
      functionLinenumberEnd: 540
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          114
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - ccmap_dec__
        - ccmap_get_impl
        - ccmap_rehash
        - ccmap_shrink_add
        - other_hash
        - ovs_ignore
        - rehash
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ccmap.c:520,31'
          Dst:             ccmap_get_impl
        - Src:             'lib/ccmap.c:521,19'
          Dst:             rehash
        - Src:             'lib/ccmap.c:522,19'
          Dst:             other_hash
        - Src:             'lib/ccmap.c:524,26'
          Dst:             ccmap_dec__
        - Src:             'lib/ccmap.c:526,21'
          Dst:             ccmap_dec__
        - Src:             'lib/ccmap.c:528,5'
          Dst:             ovs_ignore
        - Src:             'lib/ccmap.c:535,13'
          Dst:             ccmap_shrink_add
        - Src:             'lib/ccmap.c:536,20'
          Dst:             ccmap_rehash
    - functionName:    ccmap_get_impl
      functionSourceFile: '/src/openvswitch/lib/ccmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 139
      functionLinenumberEnd: 140
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          22
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ccmap_rehash
      functionSourceFile: '/src/openvswitch/lib/ccmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 563
      functionLinenumberEnd: 579
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          115
      EdgeCount:       10
      CyclomaticComplexity: 2
      functionsReached:
        - ccmap_get_impl
        - ccmap_impl_create
        - ccmap_try_rehash
        - free_cacheline
        - ovs_ignore
        - ovsrcu_postpone__
        - random_uint32
      functionUses:    3
      BranchProfiles:
        - Branch String:   'lib/ccmap.c:576,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ccmap.c:564,30'
          Dst:             ccmap_get_impl
        - Src:             'lib/ccmap.c:565,30'
          Dst:             ccmap_impl_create
        - Src:             'lib/ccmap.c:567,5'
          Dst:             ovs_ignore
        - Src:             'lib/ccmap.c:569,13'
          Dst:             ccmap_try_rehash
        - Src:             'lib/ccmap.c:571,22'
          Dst:             random_uint32
        - Src:             'lib/ccmap.c:577,5'
          Dst:             ovsrcu_postpone__
        - Src:             'lib/ccmap.c:577,5'
          Dst:             free_cacheline
    - functionName:    ccmap_impl_create
      functionSourceFile: '/src/openvswitch/lib/ccmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 157
      functionLinenumberEnd: 171
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          57
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - calc_max_n
        - calc_min_n
        - is_pow2
        - ovs_ignore
        - random_uint32
        - xzalloc_cacheline
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ccmap.c:160,16'
          Dst:             is_pow2
        - Src:             'lib/ccmap.c:160,5'
          Dst:             ovs_ignore
        - Src:             'lib/ccmap.c:162,12'
          Dst:             xzalloc_cacheline
        - Src:             'lib/ccmap.c:166,19'
          Dst:             calc_max_n
        - Src:             'lib/ccmap.c:167,19'
          Dst:             calc_min_n
        - Src:             'lib/ccmap.c:169,19'
          Dst:             random_uint32
    - functionName:    ccmap_expand_add
      functionSourceFile: '/src/openvswitch/lib/ccmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26
      functionLinenumberEnd: 26
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_ccmap_expand_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ccmap.c:26,1'
          Dst:             counter_ccmap_expand_get
    - functionName:    ccmap_inc
      functionSourceFile: '/src/openvswitch/lib/ccmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 476
      functionLinenumberEnd: 492
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          105
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - ccmap_expand_add
        - ccmap_get_impl
        - ccmap_rehash
        - ccmap_try_inc
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ccmap.c:477,31'
          Dst:             ccmap_get_impl
        - Src:             'lib/ccmap.c:481,9'
          Dst:             ccmap_expand_add
        - Src:             'lib/ccmap.c:482,16'
          Dst:             ccmap_rehash
        - Src:             'lib/ccmap.c:485,12'
          Dst:             ccmap_try_inc
        - Src:             'lib/ccmap.c:486,16'
          Dst:             ccmap_rehash
    - functionName:    ccmap_find_in_bucket
      functionSourceFile: '/src/openvswitch/lib/ccmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 210
      functionLinenumberEnd: 219
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          59
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ccmap_node_count
        - ccmap_node_get
        - ccmap_node_hash
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ccmap.c:212,25'
          Dst:             ccmap_node_get
        - Src:             'lib/ccmap.c:214,13'
          Dst:             ccmap_node_hash
        - Src:             'lib/ccmap.c:215,20'
          Dst:             ccmap_node_count
    - functionName:    ccmap_find
      functionSourceFile: '/src/openvswitch/lib/ccmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 226
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          67
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ccmap_find_in_bucket
        - ccmap_get_impl
        - other_hash
        - rehash
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ccmap.c:227,37'
          Dst:             ccmap_get_impl
        - Src:             'lib/ccmap.c:228,18'
          Dst:             rehash
        - Src:             'lib/ccmap.c:231,13'
          Dst:             ccmap_find_in_bucket
        - Src:             'lib/ccmap.c:233,13'
          Dst:             other_hash
        - Src:             'lib/ccmap.c:234,17'
          Dst:             ccmap_find_in_bucket
    - functionName:    ccmap_is_empty
      functionSourceFile: '/src/openvswitch/lib/ccmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 203
      functionLinenumberEnd: 204
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ccmap_count
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ccmap.c:204,12'
          Dst:             ccmap_count
    - functionName:    ccmap_count
      functionSourceFile: '/src/openvswitch/lib/ccmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 196
      functionLinenumberEnd: 197
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ccmap_get_impl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ccmap.c:197,12'
          Dst:             ccmap_get_impl
    - functionName:    ccmap_destroy
      functionSourceFile: '/src/openvswitch/lib/ccmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 187
      functionLinenumberEnd: 191
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          27
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ccmap_get_impl
        - free_cacheline
        - ovsrcu_postpone__
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ccmap.c:189,9'
          Dst:             ccmap_get_impl
        - Src:             'lib/ccmap.c:189,9'
          Dst:             ovsrcu_postpone__
        - Src:             'lib/ccmap.c:189,9'
          Dst:             free_cacheline
    - functionName:    ccmap_init
      functionSourceFile: '/src/openvswitch/lib/ccmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 177
      functionLinenumberEnd: 179
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          52
      EdgeCount:       13
      CyclomaticComplexity: 8
      functionsReached:
        - ccmap_impl_create
      functionUses:    4
      BranchProfiles:
        - Branch String:   'lib/ccmap.c:178,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ccmap.c:178,5'
          Dst:             ccmap_impl_create
    - functionName:    cmap_expand_init_coverage
      functionSourceFile: '/src/openvswitch/lib/cmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26
      functionLinenumberEnd: 26
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/cmap.c:26,1'
          Dst:             coverage_counter_register
    - functionName:    cmap_shrink_init_coverage
      functionSourceFile: '/src/openvswitch/lib/cmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27
      functionLinenumberEnd: 27
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/cmap.c:27,1'
          Dst:             coverage_counter_register
    - functionName:    cmap_shrink_count
      functionSourceFile: '/src/openvswitch/lib/cmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27
      functionLinenumberEnd: 27
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_cmap_shrink_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/cmap.c:27,1'
          Dst:             counter_cmap_shrink_get
    - functionName:    counter_cmap_shrink_get
      functionSourceFile: '/src/openvswitch/lib/cmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27
      functionLinenumberEnd: 27
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_cmap_shrink_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/cmap.c:27,1'
          Dst:             counter_cmap_shrink_get_unsafe
    - functionName:    counter_cmap_shrink_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/cmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27
      functionLinenumberEnd: 27
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    cmap_expand_count
      functionSourceFile: '/src/openvswitch/lib/cmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26
      functionLinenumberEnd: 26
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_cmap_expand_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/cmap.c:26,1'
          Dst:             counter_cmap_expand_get
    - functionName:    counter_cmap_expand_get
      functionSourceFile: '/src/openvswitch/lib/cmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26
      functionLinenumberEnd: 26
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_cmap_expand_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/cmap.c:26,1'
          Dst:             counter_cmap_expand_get_unsafe
    - functionName:    counter_cmap_expand_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/cmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26
      functionLinenumberEnd: 26
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    calc_min_n
      functionSourceFile: '/src/openvswitch/lib/cmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 218
      functionLinenumberEnd: 219
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    calc_max_n
      functionSourceFile: '/src/openvswitch/lib/cmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 212
      functionLinenumberEnd: 213
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    is_pow2
      functionSourceFile: '/src/openvswitch/./include/openvswitch/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 399
      functionLinenumberEnd: 400
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          26
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    cmap_try_rehash
      functionSourceFile: '/src/openvswitch/lib/cmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 938
      functionLinenumberEnd: 955
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          100
      EdgeCount:       21
      CyclomaticComplexity: 6
      functionsReached:
        - cmap_node_next_protected
        - cmap_try_insert
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/cmap.c:947,38'
          Dst:             cmap_node_next_protected
        - Src:             'lib/cmap.c:949,26'
          Dst:             cmap_try_insert
    - functionName:    cmap_node_next_protected
      functionSourceFile: '/src/openvswitch/lib/cmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 73
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          22
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    11
      BranchProfiles:  []
      Callsites:       []
    - functionName:    cmap_try_insert
      functionSourceFile: '/src/openvswitch/lib/cmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 835
      functionLinenumberEnd: 845
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          121
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - cmap_insert_bfs
        - cmap_insert_bucket
        - cmap_insert_dup
        - other_hash
        - rehash
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/cmap.c:836,19'
          Dst:             rehash
        - Src:             'lib/cmap.c:837,19'
          Dst:             other_hash
        - Src:             'lib/cmap.c:841,13'
          Dst:             cmap_insert_dup
        - Src:             'lib/cmap.c:841,13'
          Dst:             cmap_insert_dup
        - Src:             'lib/cmap.c:843,13'
          Dst:             cmap_insert_bucket
        - Src:             'lib/cmap.c:843,13'
          Dst:             cmap_insert_bucket
        - Src:             'lib/cmap.c:845,13'
          Dst:             cmap_insert_bfs
    - functionName:    rehash
      functionSourceFile: '/src/openvswitch/lib/cmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 199
      functionLinenumberEnd: 200
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_finish
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/cmap.c:200,12'
          Dst:             hash_finish
    - functionName:    other_hash
      functionSourceFile: '/src/openvswitch/lib/cmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 191
      functionLinenumberEnd: 192
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    cmap_insert_dup
      functionSourceFile: '/src/openvswitch/lib/cmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 615
      functionLinenumberEnd: 662
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          170
      EdgeCount:       27
      CyclomaticComplexity: 4
      functionsReached:
        - cmap_node_next_protected
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/cmap.c:644,17'
          Branch Sides:    []
        - Branch String:   'lib/cmap.c:656,13'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/cmap.c:620,38'
          Dst:             cmap_node_next_protected
        - Src:             'lib/cmap.c:637,46'
          Dst:             cmap_node_next_protected
    - functionName:    cmap_insert_bucket
      functionSourceFile: '/src/openvswitch/lib/cmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 669
      functionLinenumberEnd: 679
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          58
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - cmap_node_next_protected
        - cmap_set_bucket
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/cmap.c:673,14'
          Dst:             cmap_node_next_protected
        - Src:             'lib/cmap.c:674,13'
          Dst:             cmap_set_bucket
    - functionName:    cmap_insert_bfs
      functionSourceFile: '/src/openvswitch/lib/cmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 711
      functionLinenumberEnd: 827
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         35
      ICount:          339
      EdgeCount:       45
      CyclomaticComplexity: 12
      functionsReached:
        - cmap_find_empty_slot_protected
        - cmap_node_next_protected
        - cmap_set_bucket
        - other_bucket_protected
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/cmap.c:763,40'
          Dst:             other_bucket_protected
        - Src:             'lib/cmap.c:770,17'
          Dst:             cmap_find_empty_slot_protected
        - Src:             'lib/cmap.c:790,38'
          Dst:             other_bucket_protected
        - Src:             'lib/cmap.c:805,25'
          Dst:             cmap_node_next_protected
        - Src:             'lib/cmap.c:803,21'
          Dst:             cmap_set_bucket
        - Src:             'lib/cmap.c:811,17'
          Dst:             cmap_set_bucket
    - functionName:    other_bucket_protected
      functionSourceFile: '/src/openvswitch/lib/cmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 685
      functionLinenumberEnd: 691
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          78
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - other_hash
        - rehash
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/cmap.c:686,19'
          Dst:             rehash
        - Src:             'lib/cmap.c:687,19'
          Dst:             other_hash
    - functionName:    cmap_find_empty_slot_protected
      functionSourceFile: '/src/openvswitch/lib/cmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 583
      functionLinenumberEnd: 592
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          50
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - cmap_node_next_protected
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/cmap.c:587,14'
          Dst:             cmap_node_next_protected
    - functionName:    cmap_set_bucket
      functionSourceFile: '/src/openvswitch/lib/cmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 597
      functionLinenumberEnd: 607
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         5
      ICount:          92
      EdgeCount:       8
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    3
      BranchProfiles:
        - Branch String:   'lib/cmap.c:604,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    hash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:119,12'
          Dst:             mhash_finish
    - functionName:    mhash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    cmap_impl_create
      functionSourceFile: '/src/openvswitch/lib/cmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 224
      functionLinenumberEnd: 238
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          52
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - calc_max_n
        - calc_min_n
        - is_pow2
        - ovs_ignore
        - random_uint32
        - xzalloc_cacheline
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/cmap.c:227,16'
          Dst:             is_pow2
        - Src:             'lib/cmap.c:227,5'
          Dst:             ovs_ignore
        - Src:             'lib/cmap.c:231,12'
          Dst:             xzalloc_cacheline
        - Src:             'lib/cmap.c:233,19'
          Dst:             calc_max_n
        - Src:             'lib/cmap.c:234,19'
          Dst:             calc_min_n
        - Src:             'lib/cmap.c:236,19'
          Dst:             random_uint32
    - functionName:    cmap_find_slot_protected
      functionSourceFile: '/src/openvswitch/lib/cmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 538
      functionLinenumberEnd: 547
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          71
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - cmap_node_next_protected
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/cmap.c:542,37'
          Dst:             cmap_node_next_protected
    - functionName:    read_counter
      functionSourceFile: '/src/openvswitch/lib/cmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 279
      functionLinenumberEnd: 285
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          19
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    cmap_next_position
      functionSourceFile: '/src/openvswitch/lib/cmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1032
      functionLinenumberEnd: 1070
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          153
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - cmap_get_impl
        - cmap_node_next
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/cmap.c:1033,30'
          Dst:             cmap_get_impl
        - Src:             'lib/cmap.c:1042,44'
          Dst:             cmap_node_next
        - Src:             'lib/cmap.c:1047,25'
          Dst:             cmap_node_next
        - Src:             'lib/cmap.c:1045,43'
          Dst:             cmap_node_next
    - functionName:    cmap_get_impl
      functionSourceFile: '/src/openvswitch/lib/cmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 206
      functionLinenumberEnd: 207
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          22
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    12
      BranchProfiles:  []
      Callsites:       []
    - functionName:    cmap_node_next
      functionSourceFile: '/src/openvswitch/lib/cmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 67
      functionLinenumberEnd: 68
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          22
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    cmap_cursor_advance
      functionSourceFile: '/src/openvswitch/lib/cmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 996
      functionLinenumberEnd: 1019
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         17
      ICount:          117
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - cmap_node_next
      functionUses:    70
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/cmap.c:1000,24'
          Dst:             cmap_node_next
        - Src:             'lib/cmap.c:1010,28'
          Dst:             cmap_node_next
    - functionName:    cmap_cursor_start
      functionSourceFile: '/src/openvswitch/lib/cmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 982
      functionLinenumberEnd: 991
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - cmap_cursor_advance
        - cmap_get_impl
      functionUses:    70
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/cmap.c:985,19'
          Dst:             cmap_get_impl
        - Src:             'lib/cmap.c:989,5'
          Dst:             cmap_cursor_advance
    - functionName:    cmap_shrink_add
      functionSourceFile: '/src/openvswitch/lib/cmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27
      functionLinenumberEnd: 27
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_cmap_shrink_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/cmap.c:27,1'
          Dst:             counter_cmap_shrink_get
    - functionName:    cmap_replace__
      functionSourceFile: '/src/openvswitch/lib/cmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 875
      functionLinenumberEnd: 903
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          165
      EdgeCount:       21
      CyclomaticComplexity: 3
      functionsReached:
        - cmap_find_slot_protected
        - cmap_node_next_protected
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/cmap.c:890,9'
          Branch Sides:    []
        - Branch String:   'lib/cmap.c:898,13'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/cmap.c:879,12'
          Dst:             cmap_find_slot_protected
        - Src:             'lib/cmap.c:887,23'
          Dst:             cmap_node_next_protected
        - Src:             'lib/cmap.c:890,9'
          Dst:             cmap_node_next_protected
        - Src:             'lib/cmap.c:895,34'
          Dst:             cmap_node_next_protected
    - functionName:    cmap_replace
      functionSourceFile: '/src/openvswitch/lib/cmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 918
      functionLinenumberEnd: 933
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          108
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - cmap_get_impl
        - cmap_rehash
        - cmap_replace__
        - cmap_shrink_add
        - other_hash
        - ovs_ignore
        - rehash
      functionUses:    13
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/cmap.c:919,30'
          Dst:             cmap_get_impl
        - Src:             'lib/cmap.c:920,19'
          Dst:             rehash
        - Src:             'lib/cmap.c:921,19'
          Dst:             other_hash
        - Src:             'lib/cmap.c:923,16'
          Dst:             cmap_replace__
        - Src:             'lib/cmap.c:924,16'
          Dst:             cmap_replace__
        - Src:             'lib/cmap.c:923,5'
          Dst:             ovs_ignore
        - Src:             'lib/cmap.c:929,13'
          Dst:             cmap_shrink_add
        - Src:             'lib/cmap.c:930,20'
          Dst:             cmap_rehash
    - functionName:    cmap_rehash
      functionSourceFile: '/src/openvswitch/lib/cmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 959
      functionLinenumberEnd: 977
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          119
      EdgeCount:       14
      CyclomaticComplexity: 3
      functionsReached:
        - cmap_get_impl
        - cmap_impl_create
        - cmap_try_rehash
        - free_cacheline
        - ovs_ignore
        - ovsrcu_postpone__
        - random_uint32
      functionUses:    3
      BranchProfiles:
        - Branch String:   'lib/cmap.c:972,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/cmap.c:960,29'
          Dst:             cmap_get_impl
        - Src:             'lib/cmap.c:963,11'
          Dst:             cmap_impl_create
        - Src:             'lib/cmap.c:964,5'
          Dst:             ovs_ignore
        - Src:             'lib/cmap.c:966,13'
          Dst:             cmap_try_rehash
        - Src:             'lib/cmap.c:968,22'
          Dst:             random_uint32
        - Src:             'lib/cmap.c:974,9'
          Dst:             ovsrcu_postpone__
        - Src:             'lib/cmap.c:974,9'
          Dst:             free_cacheline
    - functionName:    cmap_expand_add
      functionSourceFile: '/src/openvswitch/lib/cmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26
      functionLinenumberEnd: 26
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_cmap_expand_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/cmap.c:26,1'
          Dst:             counter_cmap_expand_get
    - functionName:    cmap_insert
      functionSourceFile: '/src/openvswitch/lib/cmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 856
      functionLinenumberEnd: 869
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          127
      EdgeCount:       14
      CyclomaticComplexity: 3
      functionsReached:
        - cmap_expand_add
        - cmap_get_impl
        - cmap_rehash
        - cmap_try_insert
      functionUses:    23
      BranchProfiles:
        - Branch String:   'lib/cmap.c:859,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/cmap.c:857,30'
          Dst:             cmap_get_impl
        - Src:             'lib/cmap.c:862,9'
          Dst:             cmap_expand_add
        - Src:             'lib/cmap.c:863,16'
          Dst:             cmap_rehash
        - Src:             'lib/cmap.c:866,12'
          Dst:             cmap_try_insert
        - Src:             'lib/cmap.c:867,16'
          Dst:             cmap_rehash
    - functionName:    cmap_find_bucket_protected
      functionSourceFile: '/src/openvswitch/lib/cmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 551
      functionLinenumberEnd: 561
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          75
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - cmap_node_next_protected
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/cmap.c:557,20'
          Dst:             cmap_node_next_protected
    - functionName:    cmap_find_protected
      functionSourceFile: '/src/openvswitch/lib/cmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 568
      functionLinenumberEnd: 579
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - cmap_find_bucket_protected
        - cmap_get_impl
        - other_hash
        - rehash
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/cmap.c:569,30'
          Dst:             cmap_get_impl
        - Src:             'lib/cmap.c:570,19'
          Dst:             rehash
        - Src:             'lib/cmap.c:571,19'
          Dst:             other_hash
        - Src:             'lib/cmap.c:574,12'
          Dst:             cmap_find_bucket_protected
        - Src:             'lib/cmap.c:578,12'
          Dst:             cmap_find_bucket_protected
    - functionName:    cmap_find_in_bucket
      functionSourceFile: '/src/openvswitch/lib/cmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 319
      functionLinenumberEnd: 326
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          60
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - cmap_node_next
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/cmap.c:322,20'
          Dst:             cmap_node_next
    - functionName:    zero_rightmost_1bit
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 390
      functionLinenumberEnd: 391
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    raw_ctz
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 261
      functionLinenumberEnd: 267
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          36
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    cmap_find_batch
      functionSourceFile: '/src/openvswitch/lib/cmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 461
      functionLinenumberEnd: 533
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         42
      ICount:          341
      EdgeCount:       54
      CyclomaticComplexity: 14
      functionsReached:
        - cmap_find__
        - cmap_find_in_bucket
        - cmap_get_impl
        - counter_changed
        - other_hash
        - raw_ctz
        - read_even_counter
        - rehash
        - zero_rightmost_1bit
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/cmap.c:462,36'
          Dst:             cmap_get_impl
        - Src:             'lib/cmap.c:471,5'
          Dst:             raw_ctz
        - Src:             'lib/cmap.c:472,18'
          Dst:             rehash
        - Src:             'lib/cmap.c:471,5'
          Dst:             zero_rightmost_1bit
        - Src:             'lib/cmap.c:477,5'
          Dst:             raw_ctz
        - Src:             'lib/cmap.c:483,18'
          Dst:             read_even_counter
        - Src:             'lib/cmap.c:484,20'
          Dst:             cmap_find_in_bucket
        - Src:             'lib/cmap.c:485,18'
          Dst:             counter_changed
        - Src:             'lib/cmap.c:489,37'
          Dst:             other_hash
        - Src:             'lib/cmap.c:477,5'
          Dst:             zero_rightmost_1bit
        - Src:             'lib/cmap.c:500,5'
          Dst:             raw_ctz
        - Src:             'lib/cmap.c:506,18'
          Dst:             read_even_counter
        - Src:             'lib/cmap.c:507,20'
          Dst:             cmap_find_in_bucket
        - Src:             'lib/cmap.c:508,18'
          Dst:             counter_changed
        - Src:             'lib/cmap.c:519,17'
          Dst:             counter_changed
        - Src:             'lib/cmap.c:520,24'
          Dst:             cmap_find__
        - Src:             'lib/cmap.c:500,5'
          Dst:             zero_rightmost_1bit
    - functionName:    read_even_counter
      functionSourceFile: '/src/openvswitch/lib/cmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 290
      functionLinenumberEnd: 297
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          37
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - read_counter
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/cmap.c:294,19'
          Dst:             read_counter
    - functionName:    counter_changed
      functionSourceFile: '/src/openvswitch/lib/cmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 302
      functionLinenumberEnd: 314
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          31
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    cmap_find__
      functionSourceFile: '/src/openvswitch/lib/cmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 331
      functionLinenumberEnd: 352
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          98
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - cmap_find_in_bucket
        - counter_changed
        - read_even_counter
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/cmap.c:337,18'
          Dst:             read_even_counter
        - Src:             'lib/cmap.c:338,20'
          Dst:             cmap_find_in_bucket
        - Src:             'lib/cmap.c:339,18'
          Dst:             counter_changed
        - Src:             'lib/cmap.c:344,18'
          Dst:             read_even_counter
        - Src:             'lib/cmap.c:345,20'
          Dst:             cmap_find_in_bucket
        - Src:             'lib/cmap.c:346,18'
          Dst:             counter_changed
        - Src:             'lib/cmap.c:350,14'
          Dst:             counter_changed
    - functionName:    cmap_find_index
      functionSourceFile: '/src/openvswitch/lib/cmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 407
      functionLinenumberEnd: 447
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         34
      ICount:          214
      EdgeCount:       43
      CyclomaticComplexity: 11
      functionsReached:
        - cmap_get_impl
        - counter_changed
        - other_hash
        - read_even_counter
        - rehash
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/cmap.c:408,36'
          Dst:             cmap_get_impl
        - Src:             'lib/cmap.c:409,19'
          Dst:             rehash
        - Src:             'lib/cmap.c:410,19'
          Dst:             other_hash
        - Src:             'lib/cmap.c:423,18'
          Dst:             read_even_counter
        - Src:             'lib/cmap.c:429,18'
          Dst:             counter_changed
        - Src:             'lib/cmap.c:434,18'
          Dst:             read_even_counter
        - Src:             'lib/cmap.c:440,18'
          Dst:             counter_changed
        - Src:             'lib/cmap.c:445,14'
          Dst:             counter_changed
    - functionName:    cmap_find_by_index
      functionSourceFile: '/src/openvswitch/lib/cmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 385
      functionLinenumberEnd: 398
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          62
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - cmap_get_impl
        - cmap_node_next
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/cmap.c:386,36'
          Dst:             cmap_get_impl
        - Src:             'lib/cmap.c:397,12'
          Dst:             cmap_node_next
    - functionName:    cmap_find
      functionSourceFile: '/src/openvswitch/lib/cmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 366
      functionLinenumberEnd: 373
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          52
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - cmap_find__
        - cmap_get_impl
        - other_hash
        - rehash
      functionUses:    20
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/cmap.c:367,36'
          Dst:             cmap_get_impl
        - Src:             'lib/cmap.c:368,19'
          Dst:             rehash
        - Src:             'lib/cmap.c:369,19'
          Dst:             other_hash
        - Src:             'lib/cmap.c:371,12'
          Dst:             cmap_find__
    - functionName:    cmap_is_empty
      functionSourceFile: '/src/openvswitch/lib/cmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 273
      functionLinenumberEnd: 274
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - cmap_count
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/cmap.c:274,12'
          Dst:             cmap_count
    - functionName:    cmap_count
      functionSourceFile: '/src/openvswitch/lib/cmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 266
      functionLinenumberEnd: 267
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - cmap_get_impl
      functionUses:    15
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/cmap.c:267,12'
          Dst:             cmap_get_impl
    - functionName:    cmap_destroy
      functionSourceFile: '/src/openvswitch/lib/cmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 254
      functionLinenumberEnd: 261
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          38
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - cmap_get_impl
        - free_cacheline
        - ovsrcu_postpone__
      functionUses:    18
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/cmap.c:256,34'
          Dst:             cmap_get_impl
        - Src:             'lib/cmap.c:258,13'
          Dst:             ovsrcu_postpone__
        - Src:             'lib/cmap.c:258,13'
          Dst:             free_cacheline
    - functionName:    cmap_init
      functionSourceFile: '/src/openvswitch/lib/cmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 244
      functionLinenumberEnd: 246
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         5
      ICount:          44
      EdgeCount:       8
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    18
      BranchProfiles:
        - Branch String:   'lib/cmap.c:245,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    get_color
      functionSourceFile: '/src/openvswitch/lib/colors.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          55
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/colors.c:47,14'
          Dst:             strcmp
    - functionName:    colors_parse_from_env
      functionSourceFile: '/src/openvswitch/lib/colors.c'
      linkageType:     InternalLinkage
      functionLinenumber: 107
      functionLinenumberEnd: 139
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         35
      ICount:          162
      EdgeCount:       45
      CyclomaticComplexity: 12
      functionsReached:
        - get_color
        - getenv
        - strsep
        - xasprintf
        - xstrdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/colors.c:108,29'
          Dst:             getenv
        - Src:             'lib/colors.c:114,15'
          Dst:             xstrdup
        - Src:             'lib/colors.c:116,24'
          Dst:             strsep
        - Src:             'lib/colors.c:119,22'
          Dst:             strsep
        - Src:             'lib/colors.c:131,36'
          Dst:             get_color
        - Src:             'lib/colors.c:134,34'
          Dst:             xasprintf
        - Src:             'lib/colors.c:118,18'
          Dst:             strsep
    - functionName:    colors_init
      functionSourceFile: '/src/openvswitch/lib/colors.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - bool
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - colors_parse_from_env
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/colors.c:89,5'
          Dst:             colors_parse_from_env
    - functionName:    init_this_module_command_line
      functionSourceFile: '/src/openvswitch/lib/command-line.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28
      functionLinenumberEnd: 28
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/command-line.c:28,1'
          Dst:             vlog_insert_module
    - functionName:    ovs_cmdl_proctitle_restore
      functionSourceFile: '/src/openvswitch/lib/command-line.c'
      linkageType:     InternalLinkage
      functionLinenumber: 387
      functionLinenumberEnd: 395
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/command-line.c:388,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/command-line.c:394,5'
          Dst:             ovs_mutex_unlock
    - functionName:    ovs_cmdl_proctitle_set
      functionSourceFile: '/src/openvswitch/lib/command-line.c'
      linkageType:     InternalLinkage
      functionLinenumber: 352
      functionLinenumberEnd: 382
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         18
      ICount:          114
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - snprintf
        - strcpy
        - vsnprintf
        - xmemdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/command-line.c:356,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/command-line.c:362,27'
          Dst:             xmemdup
        - Src:             'lib/command-line.c:366,9'
          Dst:             snprintf
        - Src:             'lib/command-line.c:368,14'
          Dst:             vsnprintf
        - Src:             'lib/command-line.c:372,9'
          Dst:             strcpy
        - Src:             'lib/command-line.c:381,5'
          Dst:             ovs_mutex_unlock
    - functionName:    ovs_cmdl_proctitle_init
      functionSourceFile: '/src/openvswitch/lib/command-line.c'
      linkageType:     InternalLinkage
      functionLinenumber: 312
      functionLinenumberEnd: 346
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          139
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - assert_single_threaded_at
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - strlen
        - xstrdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/command-line.c:315,5'
          Dst:             assert_single_threaded_at
        - Src:             'lib/command-line.c:321,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/command-line.c:324,17'
          Dst:             strlen
        - Src:             'lib/command-line.c:325,15'
          Dst:             xstrdup
        - Src:             'lib/command-line.c:328,23'
          Dst:             strlen
        - Src:             'lib/command-line.c:343,19'
          Dst:             xstrdup
        - Src:             'lib/command-line.c:345,5'
          Dst:             ovs_mutex_unlock
    - functionName:    ovs_cmdl_run_command_read_only
      functionSourceFile: '/src/openvswitch/lib/command-line.c'
      linkageType:     InternalLinkage
      functionLinenumber: 284
      functionLinenumberEnd: 286
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_cmdl_run_command__
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/command-line.c:285,5'
          Dst:             ovs_cmdl_run_command__
    - functionName:    ovs_cmdl_run_command__
      functionSourceFile: '/src/openvswitch/lib/command-line.c'
      linkageType:     InternalLinkage
      functionLinenumber: 226
      functionLinenumberEnd: 259
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          165
      EdgeCount:       26
      CyclomaticComplexity: 4
      functionsReached:
        - ferror
        - ovs_fatal
        - strcmp
        - vlog_fatal
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/command-line.c:230,9'
          Dst:             ovs_fatal
        - Src:             'lib/command-line.c:234,14'
          Dst:             strcmp
        - Src:             'lib/command-line.c:237,17'
          Dst:             vlog_fatal
        - Src:             'lib/command-line.c:240,17'
          Dst:             vlog_fatal
        - Src:             'lib/command-line.c:244,21'
          Dst:             vlog_fatal
        - Src:             'lib/command-line.c:248,21'
          Dst:             ferror
        - Src:             'lib/command-line.c:249,21'
          Dst:             vlog_fatal
        - Src:             'lib/command-line.c:251,21'
          Dst:             ferror
        - Src:             'lib/command-line.c:252,21'
          Dst:             vlog_fatal
        - Src:             'lib/command-line.c:259,5'
          Dst:             vlog_fatal
    - 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:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_cmdl_run_command
      functionSourceFile: '/src/openvswitch/lib/command-line.c'
      linkageType:     InternalLinkage
      functionLinenumber: 277
      functionLinenumberEnd: 279
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_cmdl_run_command__
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/command-line.c:278,5'
          Dst:             ovs_cmdl_run_command__
    - functionName:    ovs_cmdl_print_options
      functionSourceFile: '/src/openvswitch/lib/command-line.c'
      linkageType:     InternalLinkage
      functionLinenumber: 205
      functionLinenumberEnd: 220
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         20
      ICount:          125
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - ds_destroy
        - ds_put_format
        - printf
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/command-line.c:212,9'
          Dst:             ds_put_format
        - Src:             'lib/command-line.c:215,13'
          Dst:             ds_put_format
        - Src:             'lib/command-line.c:218,5'
          Dst:             printf
        - Src:             'lib/command-line.c:219,5'
          Dst:             ds_destroy
    - functionName:    ovs_cmdl_print_commands
      functionSourceFile: '/src/openvswitch/lib/command-line.c'
      linkageType:     InternalLinkage
      functionLinenumber: 190
      functionLinenumberEnd: 200
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          61
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ds_destroy
        - ds_put_cstr
        - ds_put_format
        - printf
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/command-line.c:193,5'
          Dst:             ds_put_cstr
        - Src:             'lib/command-line.c:196,9'
          Dst:             ds_put_format
        - Src:             'lib/command-line.c:198,5'
          Dst:             printf
        - Src:             'lib/command-line.c:199,5'
          Dst:             ds_destroy
    - functionName:    find_option_by_value
      functionSourceFile: '/src/openvswitch/lib/command-line.c'
      linkageType:     InternalLinkage
      functionLinenumber: 70
      functionLinenumberEnd: 79
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          45
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    build_short_options
      functionSourceFile: '/src/openvswitch/lib/command-line.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58
      functionLinenumberEnd: 65
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_cmdl_long_options_to_short_options
        - xasprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/command-line.c:61,11'
          Dst:             ovs_cmdl_long_options_to_short_options
        - Src:             'lib/command-line.c:62,21'
          Dst:             xasprintf
    - functionName:    ovs_cmdl_long_options_to_short_options
      functionSourceFile: '/src/openvswitch/lib/command-line.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 53
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         20
      ICount:          116
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - xstrdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/command-line.c:53,12'
          Dst:             xstrdup
    - functionName:    ovs_cmdl_parse_all
      functionSourceFile: '/src/openvswitch/lib/command-line.c'
      linkageType:     InternalLinkage
      functionLinenumber: 112
      functionLinenumberEnd: 185
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         33
      ICount:          237
      EdgeCount:       38
      CyclomaticComplexity: 7
      functionsReached:
        - abort
        - build_short_options
        - find_option_by_value
        - getopt_long
        - ovs_ignore
        - x2nrealloc
        - xasprintf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/command-line.c:132,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/command-line.c:119,27'
          Dst:             build_short_options
        - Src:             'lib/command-line.c:131,17'
          Dst:             getopt_long
        - Src:             'lib/command-line.c:143,13'
          Dst:             abort
        - Src:             'lib/command-line.c:146,27'
          Dst:             find_option_by_value
        - Src:             'lib/command-line.c:147,25'
          Dst:             xasprintf
        - Src:             'lib/command-line.c:150,25'
          Dst:             xasprintf
        - Src:             'lib/command-line.c:152,25'
          Dst:             xasprintf
        - Src:             'lib/command-line.c:158,21'
          Dst:             xasprintf
        - Src:             'lib/command-line.c:164,22'
          Dst:             x2nrealloc
        - Src:             'lib/command-line.c:167,30'
          Dst:             find_option_by_value
        - Src:             'lib/command-line.c:169,17'
          Dst:             ovs_ignore
    - functionName:    getopt_long
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_cmdl_env_parse_all
      functionSourceFile: '/src/openvswitch/lib/command-line.c'
      linkageType:     InternalLinkage
      functionLinenumber: 87
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          75
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovs_ignore
        - svec_add
        - svec_parse_words
        - svec_terminate
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/command-line.c:88,5'
          Dst:             ovs_ignore
        - Src:             'lib/command-line.c:91,5'
          Dst:             svec_add
        - Src:             'lib/command-line.c:93,9'
          Dst:             svec_parse_words
        - Src:             'lib/command-line.c:96,9'
          Dst:             svec_add
        - Src:             'lib/command-line.c:98,5'
          Dst:             svec_terminate
    - functionName:    ovsthread_once_start
      functionSourceFile: '/src/openvswitch/./include/openvswitch/thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsthread_once_start__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/thread.h:161,12'
          Dst:             ovsthread_once_start__
    - functionName:    connectivity_seq_get
      functionSourceFile: '/src/openvswitch/lib/connectivity.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 42
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         6
      ICount:          25
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsthread_once_done
        - ovsthread_once_start
        - seq_create
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/connectivity.c:37,9'
          Dst:             ovsthread_once_start
        - Src:             'lib/connectivity.c:38,28'
          Dst:             seq_create
        - Src:             'lib/connectivity.c:39,9'
          Dst:             ovsthread_once_done
    - functionName:    init_this_module_coverage
      functionSourceFile: '/src/openvswitch/lib/coverage.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 29
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/coverage.c:29,1'
          Dst:             vlog_insert_module
    - functionName:    coverage_clear_time_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/coverage.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 38
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    coverage_clear_time_get
      functionSourceFile: '/src/openvswitch/lib/coverage.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 38
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_clear_time_get_unsafe
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/coverage.c:38,1'
          Dst:             coverage_clear_time_get_unsafe
    - functionName:    coverage_array_sum
      functionSourceFile: '/src/openvswitch/lib/coverage.c'
      linkageType:     InternalLinkage
      functionLinenumber: 388
      functionLinenumberEnd: 397
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          47
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/coverage.c:392,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/coverage.c:396,5'
          Dst:             ovs_mutex_unlock
    - functionName:    hash_rot
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 32
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhash_add__
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hash_rot
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:71,12'
          Dst:             hash_rot
    - functionName:    mhash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_rot
        - mhash_add__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:78,12'
          Dst:             mhash_add__
        - Src:             'lib/hash.h:79,12'
          Dst:             hash_rot
    - functionName:    mhash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 108
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_add
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:109,12'
          Dst:             mhash_add
    - functionName:    hash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:119,12'
          Dst:             mhash_finish
    - functionName:    hash_2words
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 153
      functionLinenumberEnd: 154
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_add
        - hash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:154,33'
          Dst:             hash_add
        - Src:             'lib/hash.h:154,24'
          Dst:             hash_add
        - Src:             'lib/hash.h:154,12'
          Dst:             hash_finish
    - functionName:    hash_string
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 403
      functionLinenumberEnd: 404
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_bytes
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:404,26'
          Dst:             strlen
        - Src:             'lib/hash.h:404,12'
          Dst:             hash_bytes
    - functionName:    hash_int
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 408
      functionLinenumberEnd: 409
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_2words
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:409,12'
          Dst:             hash_2words
    - functionName:    compare_coverage_counters
      functionSourceFile: '/src/openvswitch/lib/coverage.c'
      linkageType:     InternalLinkage
      functionLinenumber: 109
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          67
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/coverage.c:117,16'
          Dst:             strcmp
    - functionName:    coverage_read_counter
      functionSourceFile: '/src/openvswitch/lib/coverage.c'
      linkageType:     InternalLinkage
      functionLinenumber: 402
      functionLinenumberEnd: 417
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          76
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/coverage.c:406,14'
          Dst:             strcmp
        - Src:             'lib/coverage.c:407,13'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/coverage.c:410,13'
          Dst:             ovs_mutex_unlock
    - functionName:    coverage_run
      functionSourceFile: '/src/openvswitch/lib/coverage.c'
      linkageType:     InternalLinkage
      functionLinenumber: 330
      functionLinenumberEnd: 384
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         23
      ICount:          224
      EdgeCount:       29
      CyclomaticComplexity: 8
      functionsReached:
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - time_msec
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/coverage.c:334,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/coverage.c:335,11'
          Dst:             time_msec
        - Src:             'lib/coverage.c:383,5'
          Dst:             ovs_mutex_unlock
    - functionName:    coverage_try_clear
      functionSourceFile: '/src/openvswitch/lib/coverage.c'
      linkageType:     InternalLinkage
      functionLinenumber: 320
      functionLinenumberEnd: 322
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_clear__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/coverage.c:321,5'
          Dst:             coverage_clear__
    - functionName:    coverage_clear__
      functionSourceFile: '/src/openvswitch/lib/coverage.c'
      linkageType:     InternalLinkage
      functionLinenumber: 280
      functionLinenumberEnd: 310
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - bool
      constantsTouched: []
      argNames:
        - ''
      BBCount:         18
      ICount:          110
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - coverage_clear_time_get
        - ovs_mutex_lock_at
        - ovs_mutex_trylock_at
        - ovs_mutex_unlock
        - time_msec
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/coverage.c:283,11'
          Dst:             time_msec
        - Src:             'lib/coverage.c:284,19'
          Dst:             coverage_clear_time_get
        - Src:             'lib/coverage.c:296,17'
          Dst:             ovs_mutex_trylock_at
        - Src:             'lib/coverage.c:300,13'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/coverage.c:307,9'
          Dst:             ovs_mutex_unlock
    - functionName:    coverage_clear
      functionSourceFile: '/src/openvswitch/lib/coverage.c'
      linkageType:     InternalLinkage
      functionLinenumber: 314
      functionLinenumberEnd: 316
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_clear__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/coverage.c:315,5'
          Dst:             coverage_clear__
    - functionName:    coverage_read
      functionSourceFile: '/src/openvswitch/lib/coverage.c'
      linkageType:     InternalLinkage
      functionLinenumber: 223
      functionLinenumberEnd: 268
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          148
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - coverage_array_sum
        - coverage_hash
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - svec_add_nocopy
        - xasprintf
        - xmalloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/coverage.c:231,12'
          Dst:             coverage_hash
        - Src:             'lib/coverage.c:235,21'
          Dst:             xasprintf
        - Src:             'lib/coverage.c:234,5'
          Dst:             svec_add_nocopy
        - Src:             'lib/coverage.c:240,14'
          Dst:             xmalloc
        - Src:             'lib/coverage.c:241,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/coverage.c:246,5'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/coverage.c:258,27'
          Dst:             coverage_array_sum
        - Src:             'lib/coverage.c:259,27'
          Dst:             coverage_array_sum
        - Src:             'lib/coverage.c:254,17'
          Dst:             xasprintf
        - Src:             'lib/coverage.c:253,13'
          Dst:             svec_add_nocopy
        - Src:             'lib/coverage.c:266,28'
          Dst:             xasprintf
        - Src:             'lib/coverage.c:266,5'
          Dst:             svec_add_nocopy
    - functionName:    coverage_hash
      functionSourceFile: '/src/openvswitch/lib/coverage.c'
      linkageType:     InternalLinkage
      functionLinenumber: 123
      functionLinenumberEnd: 158
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         20
      ICount:          146
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - compare_coverage_counters
        - hash_int
        - hash_string
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - qsort
        - xmalloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/coverage.c:129,9'
          Dst:             xmalloc
        - Src:             'lib/coverage.c:130,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/coverage.c:134,5'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/coverage.c:135,5'
          Dst:             qsort
        - Src:             'lib/coverage.c:135,5'
          Dst:             compare_coverage_counters
        - Src:             'lib/coverage.c:146,16'
          Dst:             hash_int
        - Src:             'lib/coverage.c:151,20'
          Dst:             hash_string
        - Src:             'lib/coverage.c:158,12'
          Dst:             hash_int
    - functionName:    coverage_hit
      functionSourceFile: '/src/openvswitch/lib/coverage.c'
      linkageType:     InternalLinkage
      functionLinenumber: 163
      functionLinenumberEnd: 186
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          71
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - time_msec
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/coverage.c:175,9'
          Dst:             time_msec
        - Src:             'lib/coverage.c:177,22'
          Dst:             time_msec
    - functionName:    coverage_log
      functionSourceFile: '/src/openvswitch/lib/coverage.c'
      linkageType:     InternalLinkage
      functionLinenumber: 197
      functionLinenumberEnd: 218
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         26
      ICount:          112
      EdgeCount:       32
      CyclomaticComplexity: 8
      functionsReached:
        - coverage_hash
        - coverage_hit
        - coverage_read
        - svec_destroy
        - svec_init
        - vlog
        - vlog_should_drop
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/coverage.c:200,10'
          Dst:             vlog_should_drop
        - Src:             'lib/coverage.c:201,25'
          Dst:             coverage_hash
        - Src:             'lib/coverage.c:202,13'
          Dst:             coverage_hit
        - Src:             'lib/coverage.c:203,13'
          Dst:             vlog
        - Src:             'lib/coverage.c:210,13'
          Dst:             svec_init
        - Src:             'lib/coverage.c:211,13'
          Dst:             coverage_read
        - Src:             'lib/coverage.c:213,17'
          Dst:             vlog
        - Src:             'lib/coverage.c:215,13'
          Dst:             svec_destroy
    - functionName:    coverage_unixctl_read_counter
      functionSourceFile: '/src/openvswitch/lib/coverage.c'
      linkageType:     InternalLinkage
      functionLinenumber: 80
      functionLinenumberEnd: 94
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - coverage_read_counter
        - unixctl_command_reply
        - unixctl_command_reply_error
        - xasprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/coverage.c:85,10'
          Dst:             coverage_read_counter
        - Src:             'lib/coverage.c:87,9'
          Dst:             unixctl_command_reply_error
        - Src:             'lib/coverage.c:91,13'
          Dst:             xasprintf
        - Src:             'lib/coverage.c:92,5'
          Dst:             unixctl_command_reply
    - functionName:    coverage_unixctl_show
      functionSourceFile: '/src/openvswitch/lib/coverage.c'
      linkageType:     InternalLinkage
      functionLinenumber: 65
      functionLinenumberEnd: 75
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_read
        - svec_destroy
        - svec_init
        - svec_join
        - unixctl_command_reply
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/coverage.c:69,5'
          Dst:             svec_init
        - Src:             'lib/coverage.c:70,5'
          Dst:             coverage_read
        - Src:             'lib/coverage.c:71,13'
          Dst:             svec_join
        - Src:             'lib/coverage.c:72,5'
          Dst:             unixctl_command_reply
        - Src:             'lib/coverage.c:74,5'
          Dst:             svec_destroy
    - functionName:    coverage_init
      functionSourceFile: '/src/openvswitch/lib/coverage.c'
      linkageType:     InternalLinkage
      functionLinenumber: 98
      functionLinenumberEnd: 103
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_unixctl_read_counter
        - coverage_unixctl_show
        - unixctl_command_register
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/coverage.c:99,5'
          Dst:             unixctl_command_register
        - Src:             'lib/coverage.c:99,5'
          Dst:             coverage_unixctl_show
        - Src:             'lib/coverage.c:101,5'
          Dst:             unixctl_command_register
        - Src:             'lib/coverage.c:101,5'
          Dst:             coverage_unixctl_read_counter
    - functionName:    coverage_counter_register
      functionSourceFile: '/src/openvswitch/lib/coverage.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 60
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - x2nrealloc
      functionUses:    132
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/coverage.c:55,29'
          Dst:             x2nrealloc
    - functionName:    crc32c
      functionSourceFile: '/src/openvswitch/lib/crc32c.c'
      linkageType:     InternalLinkage
      functionLinenumber: 142
      functionLinenumberEnd: 158
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          40
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    unaligned_be16
      functionSourceFile: '/src/openvswitch/lib/unaligned.h'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 89
      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:    get_16aligned_be32
      functionSourceFile: '/src/openvswitch/lib/unaligned.h'
      linkageType:     InternalLinkage
      functionLinenumber: 246
      functionLinenumberEnd: 250
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    recalc_csum128
      functionSourceFile: '/src/openvswitch/lib/csum.c'
      linkageType:     InternalLinkage
      functionLinenumber: 123
      functionLinenumberEnd: 137
      functionDepth:   0
      returnType:      short
      argCount:        3
      argTypes:
        - short
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          57
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - get_16aligned_be32
        - recalc_csum32
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/csum.c:135,34'
          Dst:             get_16aligned_be32
        - Src:             'lib/csum.c:134,20'
          Dst:             recalc_csum32
    - functionName:    recalc_csum32
      functionSourceFile: '/src/openvswitch/lib/csum.c'
      linkageType:     InternalLinkage
      functionLinenumber: 96
      functionLinenumberEnd: 98
      functionDepth:   0
      returnType:      short
      argCount:        3
      argTypes:
        - short
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - recalc_csum16
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/csum.c:97,26'
          Dst:             recalc_csum16
        - Src:             'lib/csum.c:97,12'
          Dst:             recalc_csum16
    - functionName:    recalc_csum16
      functionSourceFile: '/src/openvswitch/lib/csum.c'
      linkageType:     InternalLinkage
      functionLinenumber: 79
      functionLinenumberEnd: 88
      functionDepth:   0
      returnType:      short
      argCount:        3
      argTypes:
        - short
        - short
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          44
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - csum_finish
      functionUses:    18
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/csum.c:88,12'
          Dst:             csum_finish
    - functionName:    csum_finish
      functionSourceFile: '/src/openvswitch/lib/csum.c'
      linkageType:     InternalLinkage
      functionLinenumber: 67
      functionLinenumberEnd: 71
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          27
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    22
      BranchProfiles:  []
      Callsites:       []
    - functionName:    recalc_csum48
      functionSourceFile: '/src/openvswitch/lib/csum.c'
      linkageType:     InternalLinkage
      functionLinenumber: 107
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      short
      argCount:        3
      argTypes:
        - short
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          56
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - recalc_csum16
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/csum.c:111,20'
          Dst:             recalc_csum16
    - functionName:    get_unaligned_be16
      functionSourceFile: '/src/openvswitch/lib/unaligned.h'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 89
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - unaligned_be16
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/unaligned.h:89,1'
          Dst:             unaligned_be16
    - functionName:    csum_add16
      functionSourceFile: '/src/openvswitch/lib/csum.h'
      linkageType:     InternalLinkage
      functionLinenumber: 42
      functionLinenumberEnd: 43
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    csum_continue
      functionSourceFile: '/src/openvswitch/lib/csum.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          60
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - csum_add16
        - get_unaligned_be16
      functionUses:    25
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/csum.c:46,39'
          Dst:             get_unaligned_be16
        - Src:             'lib/csum.c:46,19'
          Dst:             csum_add16
    - functionName:    csum
      functionSourceFile: '/src/openvswitch/lib/csum.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32
      functionLinenumberEnd: 33
      functionDepth:   0
      returnType:      short
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - csum_continue
        - csum_finish
      functionUses:    15
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/csum.c:33,24'
          Dst:             csum_continue
        - Src:             'lib/csum.c:33,12'
          Dst:             csum_finish
    - functionName:    init_this_module_dp_packet_gso
      functionSourceFile: '/src/openvswitch/lib/dp-packet-gso.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27
      functionLinenumberEnd: 27
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet-gso.c:27,1'
          Dst:             vlog_insert_module
    - functionName:    dp_packet_gso_init_coverage
      functionSourceFile: '/src/openvswitch/lib/dp-packet-gso.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 29
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet-gso.c:29,1'
          Dst:             coverage_counter_register
    - functionName:    dp_packet_partial_gso_init_coverage
      functionSourceFile: '/src/openvswitch/lib/dp-packet-gso.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 30
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet-gso.c:30,1'
          Dst:             coverage_counter_register
    - functionName:    dp_packet_partial_gso_count
      functionSourceFile: '/src/openvswitch/lib/dp-packet-gso.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 30
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_dp_packet_partial_gso_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet-gso.c:30,1'
          Dst:             counter_dp_packet_partial_gso_get
    - functionName:    counter_dp_packet_partial_gso_get
      functionSourceFile: '/src/openvswitch/lib/dp-packet-gso.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 30
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_dp_packet_partial_gso_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet-gso.c:30,1'
          Dst:             counter_dp_packet_partial_gso_get_unsafe
    - functionName:    counter_dp_packet_partial_gso_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/dp-packet-gso.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 30
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_gso_count
      functionSourceFile: '/src/openvswitch/lib/dp-packet-gso.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 29
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_dp_packet_gso_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet-gso.c:29,1'
          Dst:             counter_dp_packet_gso_get
    - functionName:    counter_dp_packet_gso_get
      functionSourceFile: '/src/openvswitch/lib/dp-packet-gso.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 29
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_dp_packet_gso_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet-gso.c:29,1'
          Dst:             counter_dp_packet_gso_get_unsafe
    - functionName:    counter_dp_packet_gso_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/dp-packet-gso.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 29
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    put_16aligned_be32
      functionSourceFile: '/src/openvswitch/lib/unaligned.h'
      linkageType:     InternalLinkage
      functionLinenumber: 257
      functionLinenumberEnd: 265
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          19
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_16aligned_be32
      functionSourceFile: '/src/openvswitch/lib/unaligned.h'
      linkageType:     InternalLinkage
      functionLinenumber: 246
      functionLinenumberEnd: 250
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_l4_checksum_set_partial
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1342
      functionLinenumberEnd: 1344
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_inner_l4_checksum_set_partial
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1414
      functionLinenumberEnd: 1416
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_ip_checksum_set_partial
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1173
      functionLinenumberEnd: 1175
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_l3_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 491
      functionLinenumberEnd: 494
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_l2_pad_size
        - dp_packet_l3
        - dp_packet_tail
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:493,25'
          Dst:             dp_packet_tail
        - Src:             'lib/dp-packet.h:493,59'
          Dst:             dp_packet_l3
        - Src:             'lib/dp-packet.h:494,11'
          Dst:             dp_packet_l2_pad_size
    - functionName:    dp_packet_tail
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 326
      functionLinenumberEnd: 327
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_data
        - dp_packet_size
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:327,21'
          Dst:             dp_packet_data
        - Src:             'lib/dp-packet.h:327,41'
          Dst:             dp_packet_size
    - functionName:    dp_packet_l3
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 461
      functionLinenumberEnd: 463
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_data
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:463,23'
          Dst:             dp_packet_data
    - functionName:    dp_packet_l2_pad_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 432
      functionLinenumberEnd: 433
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_data
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 845
      functionLinenumberEnd: 847
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __packet_data
        - dp_packet_base
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:846,12'
          Dst:             __packet_data
        - Src:             'lib/dp-packet.h:847,23'
          Dst:             dp_packet_base
        - Src:             'lib/dp-packet.h:847,43'
          Dst:             __packet_data
    - functionName:    __packet_data
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 774
      functionLinenumberEnd: 775
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_base
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 750
      functionLinenumberEnd: 751
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 762
      functionLinenumberEnd: 763
      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:    dp_packet_inner_ip_checksum_set_partial
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1215
      functionLinenumberEnd: 1217
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_inner_l3_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 519
      functionLinenumberEnd: 523
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_inner_l3
        - dp_packet_l2_pad_size
        - dp_packet_tail
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:521,29'
          Dst:             dp_packet_tail
        - Src:             'lib/dp-packet.h:522,29'
          Dst:             dp_packet_inner_l3
        - Src:             'lib/dp-packet.h:523,14'
          Dst:             dp_packet_l2_pad_size
    - functionName:    dp_packet_inner_l3
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 511
      functionLinenumberEnd: 513
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_data
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:513,23'
          Dst:             dp_packet_data
    - functionName:    dp_packet_flow_mark_ptr
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 651
      functionLinenumberEnd: 652
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_rss_ptr
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 645
      functionLinenumberEnd: 646
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_headroom
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 344
      functionLinenumberEnd: 345
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_base
        - dp_packet_data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:345,21'
          Dst:             dp_packet_data
        - Src:             'lib/dp-packet.h:345,50'
          Dst:             dp_packet_base
    - functionName:    dp_packet_is_eth
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 397
      functionLinenumberEnd: 398
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:398,30'
          Dst:             htonl
    - functionName:    dp_packet_set_tso_segsz
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 804
      functionLinenumberEnd: 806
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_set_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 768
      functionLinenumberEnd: 770
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_gso_update_segment
      functionSourceFile: '/src/openvswitch/lib/dp-packet-gso.c'
      linkageType:     InternalLinkage
      functionLinenumber: 105
      functionLinenumberEnd: 180
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - int
        - short
        - bool
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         35
      ICount:          322
      EdgeCount:       46
      CyclomaticComplexity: 13
      functionsReached:
        - csum
        - dp_packet_get_tso_segsz
        - dp_packet_inner_ip_checksum_set_partial
        - dp_packet_inner_l3
        - dp_packet_inner_l3_size
        - dp_packet_inner_l4
        - dp_packet_inner_l4_checksum_set_partial
        - dp_packet_ip_checksum_set_partial
        - dp_packet_l3
        - dp_packet_l3_size
        - dp_packet_l4
        - dp_packet_l4_checksum_set_partial
        - dp_packet_l4_size
        - get_16aligned_be32
        - htonl
        - htons
        - ntohl
        - ntohs
        - put_16aligned_be32
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet-gso.c:114,19'
          Dst:             dp_packet_l4
        - Src:             'lib/dp-packet-gso.c:115,34'
          Dst:             dp_packet_l4_size
        - Src:             'lib/dp-packet-gso.c:115,28'
          Dst:             htons
        - Src:             'lib/dp-packet-gso.c:120,18'
          Dst:             dp_packet_inner_l3
        - Src:             'lib/dp-packet-gso.c:122,40'
          Dst:             dp_packet_inner_l3_size
        - Src:             'lib/dp-packet-gso.c:122,34'
          Dst:             htons
        - Src:             'lib/dp-packet-gso.c:123,35'
          Dst:             ntohs
        - Src:             'lib/dp-packet-gso.c:123,29'
          Dst:             htons
        - Src:             'lib/dp-packet-gso.c:125,13'
          Dst:             dp_packet_inner_ip_checksum_set_partial
        - Src:             'lib/dp-packet-gso.c:129,23'
          Dst:             dp_packet_inner_l3
        - Src:             'lib/dp-packet-gso.c:131,25'
          Dst:             dp_packet_inner_l3_size
        - Src:             'lib/dp-packet-gso.c:131,19'
          Dst:             htons
        - Src:             'lib/dp-packet-gso.c:136,14'
          Dst:             dp_packet_l3
        - Src:             'lib/dp-packet-gso.c:138,36'
          Dst:             dp_packet_l3_size
        - Src:             'lib/dp-packet-gso.c:138,30'
          Dst:             htons
        - Src:             'lib/dp-packet-gso.c:139,31'
          Dst:             ntohs
        - Src:             'lib/dp-packet-gso.c:139,25'
          Dst:             htons
        - Src:             'lib/dp-packet-gso.c:141,9'
          Dst:             dp_packet_ip_checksum_set_partial
        - Src:             'lib/dp-packet-gso.c:143,49'
          Dst:             dp_packet_l3
        - Src:             'lib/dp-packet-gso.c:146,21'
          Dst:             dp_packet_l3_size
        - Src:             'lib/dp-packet-gso.c:146,15'
          Dst:             htons
        - Src:             'lib/dp-packet-gso.c:151,19'
          Dst:             dp_packet_inner_l4
        - Src:             'lib/dp-packet-gso.c:152,9'
          Dst:             dp_packet_inner_l4_checksum_set_partial
        - Src:             'lib/dp-packet-gso.c:154,19'
          Dst:             dp_packet_l4
        - Src:             'lib/dp-packet-gso.c:155,9'
          Dst:             dp_packet_l4_checksum_set_partial
        - Src:             'lib/dp-packet-gso.c:157,21'
          Dst:             get_16aligned_be32
        - Src:             'lib/dp-packet-gso.c:157,15'
          Dst:             ntohl
        - Src:             'lib/dp-packet-gso.c:159,43'
          Dst:             htonl
        - Src:             'lib/dp-packet-gso.c:159,5'
          Dst:             put_16aligned_be32
        - Src:             'lib/dp-packet-gso.c:161,35'
          Dst:             dp_packet_get_tso_segsz
        - Src:             'lib/dp-packet-gso.c:162,31'
          Dst:             ntohs
        - Src:             'lib/dp-packet-gso.c:164,30'
          Dst:             ntohs
        - Src:             'lib/dp-packet-gso.c:166,28'
          Dst:             htons
        - Src:             'lib/dp-packet-gso.c:172,16'
          Dst:             dp_packet_l4
        - Src:             'lib/dp-packet-gso.c:174,27'
          Dst:             htons
        - Src:             'lib/dp-packet-gso.c:177,36'
          Dst:             dp_packet_l4_size
        - Src:             'lib/dp-packet-gso.c:177,25'
          Dst:             csum
    - functionName:    dp_packet_l4
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 475
      functionLinenumberEnd: 477
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_data
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:477,23'
          Dst:             dp_packet_data
    - functionName:    dp_packet_l4_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 502
      functionLinenumberEnd: 505
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_l2_pad_size
        - dp_packet_l4
        - dp_packet_tail
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:504,25'
          Dst:             dp_packet_tail
        - Src:             'lib/dp-packet.h:504,59'
          Dst:             dp_packet_l4
        - Src:             'lib/dp-packet.h:505,11'
          Dst:             dp_packet_l2_pad_size
    - functionName:    dp_packet_inner_l4
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 529
      functionLinenumberEnd: 531
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_data
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:531,23'
          Dst:             dp_packet_data
    - functionName:    dp_packet_get_tso_segsz
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 798
      functionLinenumberEnd: 799
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_gso_seg_new
      functionSourceFile: '/src/openvswitch/lib/dp-packet-gso.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42
      functionLinenumberEnd: 65
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          104
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_data
        - dp_packet_flow_mark_ptr
        - dp_packet_headroom
        - dp_packet_new_with_headroom
        - dp_packet_put
        - dp_packet_rss_ptr
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet-gso.c:44,57'
          Dst:             dp_packet_headroom
        - Src:             'lib/dp-packet-gso.c:43,29'
          Dst:             dp_packet_new_with_headroom
        - Src:             'lib/dp-packet-gso.c:47,24'
          Dst:             dp_packet_data
        - Src:             'lib/dp-packet-gso.c:47,5'
          Dst:             dp_packet_put
        - Src:             'lib/dp-packet-gso.c:48,33'
          Dst:             dp_packet_data
        - Src:             'lib/dp-packet-gso.c:48,5'
          Dst:             dp_packet_put
        - Src:             'lib/dp-packet-gso.c:59,32'
          Dst:             dp_packet_rss_ptr
        - Src:             'lib/dp-packet-gso.c:59,6'
          Dst:             dp_packet_rss_ptr
        - Src:             'lib/dp-packet-gso.c:61,38'
          Dst:             dp_packet_flow_mark_ptr
        - Src:             'lib/dp-packet-gso.c:61,6'
          Dst:             dp_packet_flow_mark_ptr
    - functionName:    dp_packet_eth
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 405
      functionLinenumberEnd: 407
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          39
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - dp_packet_data
        - dp_packet_is_eth
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:406,13'
          Dst:             dp_packet_is_eth
        - Src:             'lib/dp-packet.h:407,15'
          Dst:             dp_packet_data
    - functionName:    dp_packet_tunnel_gre
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1122
      functionLinenumberEnd: 1124
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_batch_reset
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 872
      functionLinenumberEnd: 875
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_batch_destroy
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 999
      functionLinenumberEnd: 1004
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_batch_swap
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 984
      functionLinenumberEnd: 995
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          60
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_batch_add
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 889
      functionLinenumberEnd: 894
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_batch_grow
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:891,9'
          Dst:             dp_packet_batch_grow
    - functionName:    dp_packet_gso_add
      functionSourceFile: '/src/openvswitch/lib/dp-packet-gso.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 29
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_dp_packet_gso_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet-gso.c:29,1'
          Dst:             counter_dp_packet_gso_get
    - functionName:    dp_packet_partial_gso_add
      functionSourceFile: '/src/openvswitch/lib/dp-packet-gso.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 30
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_dp_packet_partial_gso_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet-gso.c:30,1'
          Dst:             counter_dp_packet_partial_gso_get
    - functionName:    dp_packet_gso__
      functionSourceFile: '/src/openvswitch/lib/dp-packet-gso.c'
      linkageType:     InternalLinkage
      functionLinenumber: 185
      functionLinenumberEnd: 256
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         31
      ICount:          258
      EdgeCount:       40
      CyclomaticComplexity: 11
      functionsReached:
        - dp_packet_batch_add
        - dp_packet_eth
        - dp_packet_get_inner_tcp_payload
        - dp_packet_get_inner_tcp_payload_length
        - dp_packet_get_tcp_payload
        - dp_packet_get_tcp_payload_length
        - dp_packet_get_tso_segsz
        - dp_packet_gso_nr_segs
        - dp_packet_gso_partial_nr_segs
        - dp_packet_gso_seg_new
        - dp_packet_gso_update_segment
        - dp_packet_set_size
        - dp_packet_set_tso_segsz
        - dp_packet_tunnel
        - dp_packet_tunnel_geneve
        - dp_packet_tunnel_gre
        - dp_packet_tunnel_vxlan
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet-gso.c:194,17'
          Dst:             dp_packet_get_tso_segsz
        - Src:             'lib/dp-packet-gso.c:195,5'
          Dst:             ovs_ignore
        - Src:             'lib/dp-packet-gso.c:196,14'
          Dst:             dp_packet_gso_nr_segs
        - Src:             'lib/dp-packet-gso.c:197,15'
          Dst:             dp_packet_tunnel_vxlan
        - Src:             'lib/dp-packet-gso.c:197,44'
          Dst:             dp_packet_tunnel_geneve
        - Src:             'lib/dp-packet-gso.c:198,15'
          Dst:             dp_packet_tunnel_gre
        - Src:             'lib/dp-packet-gso.c:202,5'
          Dst:             dp_packet_batch_add
        - Src:             'lib/dp-packet-gso.c:208,9'
          Dst:             dp_packet_tunnel
        - Src:             'lib/dp-packet-gso.c:209,28'
          Dst:             dp_packet_get_inner_tcp_payload
        - Src:             'lib/dp-packet-gso.c:210,30'
          Dst:             dp_packet_eth
        - Src:             'lib/dp-packet-gso.c:211,20'
          Dst:             dp_packet_get_inner_tcp_payload_length
        - Src:             'lib/dp-packet-gso.c:213,28'
          Dst:             dp_packet_get_tcp_payload
        - Src:             'lib/dp-packet-gso.c:214,30'
          Dst:             dp_packet_eth
        - Src:             'lib/dp-packet-gso.c:215,20'
          Dst:             dp_packet_get_tcp_payload_length
        - Src:             'lib/dp-packet-gso.c:219,13'
          Dst:             dp_packet_gso_partial_nr_segs
        - Src:             'lib/dp-packet-gso.c:226,15'
          Dst:             dp_packet_gso_seg_new
        - Src:             'lib/dp-packet-gso.c:228,9'
          Dst:             dp_packet_gso_update_segment
        - Src:             'lib/dp-packet-gso.c:230,9'
          Dst:             dp_packet_batch_add
        - Src:             'lib/dp-packet-gso.c:235,11'
          Dst:             dp_packet_gso_seg_new
        - Src:             'lib/dp-packet-gso.c:237,5'
          Dst:             dp_packet_gso_update_segment
        - Src:             'lib/dp-packet-gso.c:239,5'
          Dst:             dp_packet_batch_add
        - Src:             'lib/dp-packet-gso.c:243,13'
          Dst:             dp_packet_gso_partial_nr_segs
        - Src:             'lib/dp-packet-gso.c:244,13'
          Dst:             dp_packet_set_size
        - Src:             'lib/dp-packet-gso.c:247,17'
          Dst:             dp_packet_set_tso_segsz
        - Src:             'lib/dp-packet-gso.c:252,9'
          Dst:             dp_packet_set_size
        - Src:             'lib/dp-packet-gso.c:253,9'
          Dst:             dp_packet_set_tso_segsz
        - Src:             'lib/dp-packet-gso.c:255,5'
          Dst:             dp_packet_gso_update_segment
    - functionName:    dp_packet_gso_nr_segs
      functionSourceFile: '/src/openvswitch/lib/dp-packet-gso.c'
      linkageType:     InternalLinkage
      functionLinenumber: 71
      functionLinenumberEnd: 81
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_get_inner_tcp_payload_length
        - dp_packet_get_tcp_payload_length
        - dp_packet_get_tso_segsz
        - dp_packet_tunnel
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet-gso.c:72,22'
          Dst:             dp_packet_get_tso_segsz
        - Src:             'lib/dp-packet-gso.c:75,9'
          Dst:             dp_packet_tunnel
        - Src:             'lib/dp-packet-gso.c:76,23'
          Dst:             dp_packet_get_inner_tcp_payload_length
        - Src:             'lib/dp-packet-gso.c:78,23'
          Dst:             dp_packet_get_tcp_payload_length
    - functionName:    dp_packet_tunnel_vxlan
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1108
      functionLinenumberEnd: 1110
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_tunnel_geneve
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1094
      functionLinenumberEnd: 1096
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_tunnel
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1135
      functionLinenumberEnd: 1136
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_get_inner_tcp_payload
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 563
      functionLinenumberEnd: 575
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          86
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - dp_packet_inner_l4
        - dp_packet_inner_l4_size
        - ntohs
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:564,22'
          Dst:             dp_packet_inner_l4_size
        - Src:             'lib/dp-packet.h:567,34'
          Dst:             dp_packet_inner_l4
        - Src:             'lib/dp-packet.h:568,23'
          Dst:             ntohs
    - functionName:    dp_packet_get_inner_tcp_payload_length
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 591
      functionLinenumberEnd: 599
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_get_inner_tcp_payload
        - dp_packet_l2_pad_size
        - dp_packet_tail
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:592,31'
          Dst:             dp_packet_get_inner_tcp_payload
        - Src:             'lib/dp-packet.h:594,26'
          Dst:             dp_packet_tail
        - Src:             'lib/dp-packet.h:594,48'
          Dst:             dp_packet_l2_pad_size
    - functionName:    dp_packet_get_tcp_payload
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 547
      functionLinenumberEnd: 559
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          86
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - dp_packet_l4
        - dp_packet_l4_size
        - ntohs
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:548,22'
          Dst:             dp_packet_l4_size
        - Src:             'lib/dp-packet.h:551,34'
          Dst:             dp_packet_l4
        - Src:             'lib/dp-packet.h:552,23'
          Dst:             ntohs
    - functionName:    dp_packet_get_tcp_payload_length
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 579
      functionLinenumberEnd: 587
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_get_tcp_payload
        - dp_packet_l2_pad_size
        - dp_packet_tail
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:580,31'
          Dst:             dp_packet_get_tcp_payload
        - Src:             'lib/dp-packet.h:582,26'
          Dst:             dp_packet_tail
        - Src:             'lib/dp-packet.h:582,48'
          Dst:             dp_packet_l2_pad_size
    - functionName:    dp_packet_gso_partial_nr_segs
      functionSourceFile: '/src/openvswitch/lib/dp-packet-gso.c'
      linkageType:     InternalLinkage
      functionLinenumber: 90
      functionLinenumberEnd: 99
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          62
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - dp_packet_get_inner_tcp_payload_length
        - dp_packet_get_tso_segsz
        - dp_packet_gso_nr_segs
        - dp_packet_l4_checksum_partial
        - dp_packet_tunnel_geneve
        - dp_packet_tunnel_vxlan
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet-gso.c:91,10'
          Dst:             dp_packet_tunnel_geneve
        - Src:             'lib/dp-packet-gso.c:91,40'
          Dst:             dp_packet_tunnel_vxlan
        - Src:             'lib/dp-packet-gso.c:92,12'
          Dst:             dp_packet_l4_checksum_partial
        - Src:             'lib/dp-packet-gso.c:93,12'
          Dst:             dp_packet_get_inner_tcp_payload_length
        - Src:             'lib/dp-packet-gso.c:94,15'
          Dst:             dp_packet_gso_nr_segs
        - Src:             'lib/dp-packet-gso.c:94,42'
          Dst:             dp_packet_get_tso_segsz
    - functionName:    dp_packet_l4_checksum_partial
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1333
      functionLinenumberEnd: 1335
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_inner_l4_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 537
      functionLinenumberEnd: 541
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_inner_l4
        - dp_packet_l2_pad_size
        - dp_packet_tail
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:539,29'
          Dst:             dp_packet_tail
        - Src:             'lib/dp-packet.h:540,29'
          Dst:             dp_packet_inner_l4
        - Src:             'lib/dp-packet.h:541,14'
          Dst:             dp_packet_l2_pad_size
    - functionName:    dp_packet_batch_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 910
      functionLinenumberEnd: 911
      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:    dp_packet_batch_init
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 879
      functionLinenumberEnd: 883
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_batch_reset
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:880,5'
          Dst:             dp_packet_batch_reset
    - functionName:    dp_packet_gso_batch_partial
      functionSourceFile: '/src/openvswitch/lib/dp-packet-gso.c'
      linkageType:     InternalLinkage
      functionLinenumber: 299
      functionLinenumberEnd: 301
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_gso_batch__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet-gso.c:300,5'
          Dst:             dp_packet_gso_batch__
    - functionName:    dp_packet_gso_batch__
      functionSourceFile: '/src/openvswitch/lib/dp-packet-gso.c'
      linkageType:     InternalLinkage
      functionLinenumber: 260
      functionLinenumberEnd: 282
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          91
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - dp_packet_batch_add
        - dp_packet_batch_destroy
        - dp_packet_batch_init
        - dp_packet_batch_size
        - dp_packet_batch_swap
        - dp_packet_get_tso_segsz
        - dp_packet_gso__
        - dp_packet_gso_add
        - dp_packet_partial_gso_add
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet-gso.c:264,5'
          Dst:             dp_packet_batch_init
        - Src:             'lib/dp-packet-gso.c:267,5'
          Dst:             dp_packet_batch_size
        - Src:             'lib/dp-packet-gso.c:268,13'
          Dst:             dp_packet_get_tso_segsz
        - Src:             'lib/dp-packet-gso.c:269,13'
          Dst:             dp_packet_gso__
        - Src:             'lib/dp-packet-gso.c:271,17'
          Dst:             dp_packet_partial_gso_add
        - Src:             'lib/dp-packet-gso.c:273,17'
          Dst:             dp_packet_gso_add
        - Src:             'lib/dp-packet-gso.c:276,13'
          Dst:             dp_packet_batch_add
        - Src:             'lib/dp-packet-gso.c:280,5'
          Dst:             dp_packet_batch_swap
        - Src:             'lib/dp-packet-gso.c:281,5'
          Dst:             dp_packet_batch_destroy
    - functionName:    dp_packet_gso_batch
      functionSourceFile: '/src/openvswitch/lib/dp-packet-gso.c'
      linkageType:     InternalLinkage
      functionLinenumber: 287
      functionLinenumberEnd: 289
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_gso_batch__
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet-gso.c:288,5'
          Dst:             dp_packet_gso_batch__
    - functionName:    init_this_module_dpif_offload
      functionSourceFile: '/src/openvswitch/lib/dpif-offload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32
      functionLinenumberEnd: 32
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload.c:32,1'
          Dst:             vlog_insert_module
    - functionName:    hash_rot
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 32
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhash_add__
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hash_rot
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:71,12'
          Dst:             hash_rot
    - functionName:    mhash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_rot
        - mhash_add__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:78,12'
          Dst:             mhash_add__
        - Src:             'lib/hash.h:79,12'
          Dst:             hash_rot
    - functionName:    mhash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 108
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_add
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:109,12'
          Dst:             mhash_add
    - functionName:    hash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:119,12'
          Dst:             mhash_finish
    - functionName:    hash_2words
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 153
      functionLinenumberEnd: 154
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_add
        - hash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:154,33'
          Dst:             hash_add
        - Src:             'lib/hash.h:154,24'
          Dst:             hash_add
        - Src:             'lib/hash.h:154,12'
          Dst:             hash_finish
    - functionName:    hmap_next__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 401
      functionLinenumberEnd: 410
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          51
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_refcount_try_ref_rcu
      functionSourceFile: '/src/openvswitch/lib/ovs-atomic.h'
      linkageType:     InternalLinkage
      functionLinenumber: 613
      functionLinenumberEnd: 626
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          64
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    provider_collection_free_rcu
      functionSourceFile: '/src/openvswitch/lib/dpif-offload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 354
      functionLinenumberEnd: 368
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          79
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovs_list_remove
        - ovs_mutex_destroy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload.c:360,9'
          Dst:             ovs_list_remove
        - Src:             'lib/dpif-offload.c:365,5'
          Dst:             ovs_mutex_destroy
    - functionName:    ovs_list_remove
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 251
      functionLinenumberEnd: 254
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          25
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_refcount_unref_relaxed
      functionSourceFile: '/src/openvswitch/lib/ovs-atomic.h'
      linkageType:     InternalLinkage
      functionLinenumber: 659
      functionLinenumberEnd: 665
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-atomic.h:664,5'
          Dst:             ovs_ignore
    - functionName:    provider_collection_add
      functionSourceFile: '/src/openvswitch/lib/dpif-offload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 223
      functionLinenumberEnd: 238
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          93
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - ovs_ignore
        - ovs_list_push_back
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload.c:227,5'
          Dst:             ovs_ignore
        - Src:             'lib/dpif-offload.c:230,42'
          Dst:             strcmp
        - Src:             'lib/dpif-offload.c:236,5'
          Dst:             ovs_list_push_back
    - functionName:    ovs_list_push_back
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 204
      functionLinenumberEnd: 206
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_list_insert
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/list.h:205,5'
          Dst:             ovs_list_insert
    - functionName:    ovs_list_insert
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 169
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    move_provider_to_collection
      functionSourceFile: '/src/openvswitch/lib/dpif-offload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 245
      functionLinenumberEnd: 257
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          70
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - dpif_offload_type
        - ovs_list_remove
        - ovs_strerror
        - provider_collection_add
        - vlog
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload.c:248,5'
          Dst:             ovs_list_remove
        - Src:             'lib/dpif-offload.c:249,13'
          Dst:             provider_collection_add
        - Src:             'lib/dpif-offload.c:251,9'
          Dst:             dpif_offload_type
        - Src:             'lib/dpif-offload.c:251,9'
          Dst:             ovs_strerror
        - Src:             'lib/dpif-offload.c:251,9'
          Dst:             vlog
    - functionName:    dpif_offload_type
      functionSourceFile: '/src/openvswitch/lib/dpif-offload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 451
      functionLinenumberEnd: 452
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_list_init
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_refcount_init
      functionSourceFile: '/src/openvswitch/lib/ovs-atomic.h'
      linkageType:     InternalLinkage
      functionLinenumber: 529
      functionLinenumberEnd: 531
      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:    ovs_refcount_ref
      functionSourceFile: '/src/openvswitch/lib/ovs-atomic.h'
      linkageType:     InternalLinkage
      functionLinenumber: 539
      functionLinenumberEnd: 545
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-atomic.h:544,5'
          Dst:             ovs_ignore
    - functionName:    dpif_offload_register_provider__
      functionSourceFile: '/src/openvswitch/lib/dpif-offload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 67
      functionLinenumberEnd: 91
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         28
      ICount:          146
      EdgeCount:       35
      CyclomaticComplexity: 9
      functionsReached:
        - ovs_strerror
        - shash_add
        - shash_find
        - vlog
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload.c:70,9'
          Dst:             shash_find
        - Src:             'lib/dpif-offload.c:71,9'
          Dst:             vlog
        - Src:             'lib/dpif-offload.c:77,9'
          Dst:             vlog
        - Src:             'lib/dpif-offload.c:84,9'
          Dst:             ovs_strerror
        - Src:             'lib/dpif-offload.c:84,9'
          Dst:             vlog
        - Src:             'lib/dpif-offload.c:89,5'
          Dst:             shash_add
    - functionName:    dpif_offload_port_mgr_port_count
      functionSourceFile: '/src/openvswitch/lib/dpif-offload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1691
      functionLinenumberEnd: 1694
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - cmap_count
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload.c:1692,5'
          Dst:             ovs_ignore
        - Src:             'lib/dpif-offload.c:1694,12'
          Dst:             cmap_count
    - functionName:    dpif_offload_port_mgr_add
      functionSourceFile: '/src/openvswitch/lib/dpif-offload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1649
      functionLinenumberEnd: 1687
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          154
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - cmap_insert
        - dpif_offload_port_mgr_find_by_ifindex
        - dpif_offload_port_mgr_find_by_netdev
        - dpif_offload_port_mgr_find_by_odp_port
        - hash_int
        - hash_pointer
        - netdev_get_ifindex
        - netdev_ref
        - odp_to_u32
        - ovs_ignore
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload.c:1655,5'
          Dst:             ovs_ignore
        - Src:             'lib/dpif-offload.c:1660,36'
          Dst:             netdev_get_ifindex
        - Src:             'lib/dpif-offload.c:1662,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-offload.c:1664,9'
          Dst:             dpif_offload_port_mgr_find_by_odp_port
        - Src:             'lib/dpif-offload.c:1665,12'
          Dst:             dpif_offload_port_mgr_find_by_ifindex
        - Src:             'lib/dpif-offload.c:1666,12'
          Dst:             dpif_offload_port_mgr_find_by_netdev
        - Src:             'lib/dpif-offload.c:1668,9'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/dpif-offload.c:1672,20'
          Dst:             netdev_ref
        - Src:             'lib/dpif-offload.c:1675,26'
          Dst:             odp_to_u32
        - Src:             'lib/dpif-offload.c:1675,17'
          Dst:             hash_int
        - Src:             'lib/dpif-offload.c:1674,5'
          Dst:             cmap_insert
        - Src:             'lib/dpif-offload.c:1678,17'
          Dst:             hash_pointer
        - Src:             'lib/dpif-offload.c:1677,5'
          Dst:             cmap_insert
        - Src:             'lib/dpif-offload.c:1682,21'
          Dst:             hash_int
        - Src:             'lib/dpif-offload.c:1681,9'
          Dst:             cmap_insert
        - Src:             'lib/dpif-offload.c:1685,5'
          Dst:             ovs_mutex_unlock
    - functionName:    dpif_offload_port_mgr_find_by_odp_port
      functionSourceFile: '/src/openvswitch/lib/dpif-offload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1597
      functionLinenumberEnd: 1611
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          80
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - cmap_find
        - cmap_node_next
        - hash_int
        - odp_to_u32
        - ovs_ignore
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload.c:1601,5'
          Dst:             ovs_ignore
        - Src:             'lib/dpif-offload.c:1603,5'
          Dst:             odp_to_u32
        - Src:             'lib/dpif-offload.c:1603,5'
          Dst:             hash_int
        - Src:             'lib/dpif-offload.c:1603,5'
          Dst:             cmap_find
        - Src:             'lib/dpif-offload.c:1603,5'
          Dst:             cmap_node_next
    - functionName:    dpif_offload_port_mgr_find_by_ifindex
      functionSourceFile: '/src/openvswitch/lib/dpif-offload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1553
      functionLinenumberEnd: 1570
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          88
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - cmap_find
        - cmap_node_next
        - hash_int
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload.c:1557,5'
          Dst:             ovs_ignore
        - Src:             'lib/dpif-offload.c:1563,5'
          Dst:             hash_int
        - Src:             'lib/dpif-offload.c:1563,5'
          Dst:             cmap_find
        - Src:             'lib/dpif-offload.c:1563,5'
          Dst:             cmap_node_next
    - functionName:    dpif_offload_port_mgr_find_by_netdev
      functionSourceFile: '/src/openvswitch/lib/dpif-offload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1575
      functionLinenumberEnd: 1592
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          86
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - cmap_find
        - cmap_node_next
        - hash_pointer
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload.c:1579,5'
          Dst:             ovs_ignore
        - Src:             'lib/dpif-offload.c:1585,5'
          Dst:             hash_pointer
        - Src:             'lib/dpif-offload.c:1585,5'
          Dst:             cmap_find
        - Src:             'lib/dpif-offload.c:1585,5'
          Dst:             cmap_node_next
    - functionName:    odp_to_u32
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 202
      functionLinenumberEnd: 203
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_int
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 408
      functionLinenumberEnd: 409
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_2words
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:409,12'
          Dst:             hash_2words
    - functionName:    hash_pointer
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 140
      functionLinenumberEnd: 149
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_int
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:149,12'
          Dst:             hash_int
    - functionName:    cmap_node_next
      functionSourceFile: '/src/openvswitch/lib/cmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 67
      functionLinenumberEnd: 68
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          22
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    cmap_remove
      functionSourceFile: '/src/openvswitch/lib/cmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 293
      functionLinenumberEnd: 294
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - cmap_replace
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/cmap.h:294,12'
          Dst:             cmap_replace
    - functionName:    dpif_offload_port_mgr_remove
      functionSourceFile: '/src/openvswitch/lib/dpif-offload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1615
      functionLinenumberEnd: 1641
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          83
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - cmap_remove
        - dpif_offload_port_mgr_find_by_odp_port
        - hash_int
        - hash_pointer
        - odp_to_u32
        - ovs_ignore
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload.c:1622,5'
          Dst:             ovs_ignore
        - Src:             'lib/dpif-offload.c:1624,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-offload.c:1626,12'
          Dst:             dpif_offload_port_mgr_find_by_odp_port
        - Src:             'lib/dpif-offload.c:1630,30'
          Dst:             odp_to_u32
        - Src:             'lib/dpif-offload.c:1630,21'
          Dst:             hash_int
        - Src:             'lib/dpif-offload.c:1629,9'
          Dst:             cmap_remove
        - Src:             'lib/dpif-offload.c:1632,21'
          Dst:             hash_pointer
        - Src:             'lib/dpif-offload.c:1631,9'
          Dst:             cmap_remove
        - Src:             'lib/dpif-offload.c:1636,25'
          Dst:             hash_int
        - Src:             'lib/dpif-offload.c:1635,13'
          Dst:             cmap_remove
        - Src:             'lib/dpif-offload.c:1640,5'
          Dst:             ovs_mutex_unlock
    - functionName:    dpif_offload_datapath_register_flow_unreference_cb
      functionSourceFile: '/src/openvswitch/lib/dpif-offload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1497
      functionLinenumberEnd: 1511
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          88
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - dpif_get_offload_provider_collection
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload.c:1503,18'
          Dst:             dpif_get_offload_provider_collection
        - Src:             'lib/dpif-offload.c:1504,5'
          Dst:             ovs_ignore
    - functionName:    dpif_get_offload_provider_collection
      functionSourceFile: '/src/openvswitch/lib/dpif-offload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 183
      functionLinenumberEnd: 184
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          22
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    18
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_offload_netdev_udp_tnl_get_src_port
      functionSourceFile: '/src/openvswitch/lib/dpif-offload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1479
      functionLinenumberEnd: 1492
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          81
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_offload_netdev_hw_post_process
      functionSourceFile: '/src/openvswitch/lib/dpif-offload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1442
      functionLinenumberEnd: 1473
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          133
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_offload_datapath_flow_stats
      functionSourceFile: '/src/openvswitch/lib/dpif-offload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1410
      functionLinenumberEnd: 1436
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          105
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - dpif_offload_enabled
        - dpif_offload_get_netdev_by_port_id__
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - shash_find_data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload.c:1415,10'
          Dst:             dpif_offload_enabled
        - Src:             'lib/dpif-offload.c:1419,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-offload.c:1421,18'
          Dst:             shash_find_data
        - Src:             'lib/dpif-offload.c:1422,5'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/dpif-offload.c:1428,14'
          Dst:             dpif_offload_get_netdev_by_port_id__
    - functionName:    dpif_offload_enabled
      functionSourceFile: '/src/openvswitch/lib/dpif-offload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 512
      functionLinenumberEnd: 516
      functionDepth:   0
      returnType:      bool
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    27
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_offload_get_netdev_by_port_id__
      functionSourceFile: '/src/openvswitch/lib/dpif-offload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1188
      functionLinenumberEnd: 1201
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          91
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_offload_datapath_flow_del
      functionSourceFile: '/src/openvswitch/lib/dpif-offload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1381
      functionLinenumberEnd: 1403
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          92
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - dpif_offload_get_netdev_by_port_id__
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - shash_find_data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload.c:1386,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-offload.c:1388,18'
          Dst:             shash_find_data
        - Src:             'lib/dpif-offload.c:1389,5'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/dpif-offload.c:1395,14'
          Dst:             dpif_offload_get_netdev_by_port_id__
    - functionName:    dpif_offload_datapath_flow_put
      functionSourceFile: '/src/openvswitch/lib/dpif-offload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1351
      functionLinenumberEnd: 1376
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          99
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - dpif_offload_get_netdev_by_port_id__
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - shash_find_data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload.c:1356,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-offload.c:1358,18'
          Dst:             shash_find_data
        - Src:             'lib/dpif-offload.c:1359,5'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/dpif-offload.c:1366,14'
          Dst:             dpif_offload_get_netdev_by_port_id__
    - functionName:    dpif_offload_netdev_same_offload
      functionSourceFile: '/src/openvswitch/lib/dpif-offload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1338
      functionLinenumberEnd: 1344
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          47
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_offload_operate
      functionSourceFile: '/src/openvswitch/lib/dpif-offload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1248
      functionLinenumberEnd: 1332
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         62
      ICount:          352
      EdgeCount:       78
      CyclomaticComplexity: 18
      functionsReached:
        - dpif_get_offload_provider_collection
        - dpif_offload_enabled
        - dpif_offload_name
        - log_flow_del_message
        - log_flow_get_message
        - log_flow_put_message
        - vlog
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/dpif-offload.c:1280,21'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/dpif-offload.c:1253,18'
          Dst:             dpif_get_offload_provider_collection
        - Src:             'lib/dpif-offload.c:1254,25'
          Dst:             dpif_offload_enabled
        - Src:             'lib/dpif-offload.c:1275,21'
          Dst:             dpif_offload_name
        - Src:             'lib/dpif-offload.c:1275,21'
          Dst:             vlog
        - Src:             'lib/dpif-offload.c:1290,25'
          Dst:             log_flow_put_message
        - Src:             'lib/dpif-offload.c:1295,25'
          Dst:             log_flow_del_message
        - Src:             'lib/dpif-offload.c:1299,25'
          Dst:             log_flow_get_message
    - functionName:    dpif_offload_name
      functionSourceFile: '/src/openvswitch/lib/dpif-offload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 445
      functionLinenumberEnd: 446
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    11
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_offload_netdevs_out_of_resources
      functionSourceFile: '/src/openvswitch/lib/dpif-offload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1221
      functionLinenumberEnd: 1240
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         24
      ICount:          125
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - cmap_cursor_advance
        - cmap_cursor_start
        - dpif_get_offload_provider_collection
        - dpif_offload_enabled
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload.c:1226,18'
          Dst:             dpif_get_offload_provider_collection
        - Src:             'lib/dpif-offload.c:1227,25'
          Dst:             dpif_offload_enabled
        - Src:             'lib/dpif-offload.c:1232,9'
          Dst:             cmap_cursor_start
        - Src:             'lib/dpif-offload.c:1232,9'
          Dst:             cmap_cursor_advance
    - functionName:    dpif_offload_get_netdev_by_port_id
      functionSourceFile: '/src/openvswitch/lib/dpif-offload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1208
      functionLinenumberEnd: 1217
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          47
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - dpif_get_offload_provider_collection
        - dpif_offload_enabled
        - dpif_offload_get_netdev_by_port_id__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload.c:1211,18'
          Dst:             dpif_get_offload_provider_collection
        - Src:             'lib/dpif-offload.c:1212,25'
          Dst:             dpif_offload_enabled
        - Src:             'lib/dpif-offload.c:1216,12'
          Dst:             dpif_offload_get_netdev_by_port_id__
    - functionName:    dpif_offload_flow_dump_thread_destroy
      functionSourceFile: '/src/openvswitch/lib/dpif-offload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1172
      functionLinenumberEnd: 1182
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          64
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_offload_flow_dump_thread_create
      functionSourceFile: '/src/openvswitch/lib/dpif-offload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1147
      functionLinenumberEnd: 1165
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          112
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - dpif_offload_enabled
        - xmalloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload.c:1148,10'
          Dst:             dpif_offload_enabled
        - Src:             'lib/dpif-offload.c:1156,9'
          Dst:             xmalloc
    - functionName:    dpif_offload_advance_provider_dump
      functionSourceFile: '/src/openvswitch/lib/dpif-offload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1083
      functionLinenumberEnd: 1108
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          89
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload.c:1086,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-offload.c:1107,5'
          Dst:             ovs_mutex_unlock
    - functionName:    dpif_offload_flow_dump_next
      functionSourceFile: '/src/openvswitch/lib/dpif-offload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1115
      functionLinenumberEnd: 1138
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          96
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - dpif_offload_advance_provider_dump
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload.c:1118,5'
          Dst:             ovs_ignore
        - Src:             'lib/dpif-offload.c:1126,9'
          Dst:             ovs_ignore
        - Src:             'lib/dpif-offload.c:1136,9'
          Dst:             dpif_offload_advance_provider_dump
    - functionName:    dpif_offload_flow_dump_destroy
      functionSourceFile: '/src/openvswitch/lib/dpif-offload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1059
      functionLinenumberEnd: 1078
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         20
      ICount:          124
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - dpif_offload_name
        - ovs_mutex_destroy
        - ovs_strerror
        - vlog
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload.c:1068,13'
          Dst:             dpif_offload_name
        - Src:             'lib/dpif-offload.c:1068,13'
          Dst:             ovs_strerror
        - Src:             'lib/dpif-offload.c:1068,13'
          Dst:             vlog
        - Src:             'lib/dpif-offload.c:1076,5'
          Dst:             ovs_mutex_destroy
    - functionName:    dpif_offload_flow_dump_create
      functionSourceFile: '/src/openvswitch/lib/dpif-offload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1015
      functionLinenumberEnd: 1047
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         33
      ICount:          201
      EdgeCount:       43
      CyclomaticComplexity: 12
      functionsReached:
        - dpif_get_offload_provider_collection
        - dpif_offload_enabled
        - xmalloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload.c:1021,18'
          Dst:             dpif_get_offload_provider_collection
        - Src:             'lib/dpif-offload.c:1022,19'
          Dst:             dpif_offload_enabled
        - Src:             'lib/dpif-offload.c:1036,27'
          Dst:             xmalloc
    - functionName:    dpif_offload_meter_del
      functionSourceFile: '/src/openvswitch/lib/dpif-offload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 984
      functionLinenumberEnd: 1004
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          141
      EdgeCount:       34
      CyclomaticComplexity: 9
      functionsReached:
        - dpif_get_offload_provider_collection
        - dpif_offload_enabled
        - dpif_offload_name
        - ovs_strerror
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload.c:988,18'
          Dst:             dpif_get_offload_provider_collection
        - Src:             'lib/dpif-offload.c:989,25'
          Dst:             dpif_offload_enabled
        - Src:             'lib/dpif-offload.c:997,17'
          Dst:             dpif_offload_name
        - Src:             'lib/dpif-offload.c:997,17'
          Dst:             ovs_strerror
        - Src:             'lib/dpif-offload.c:997,17'
          Dst:             vlog_rate_limit
    - functionName:    dpif_offload_meter_get
      functionSourceFile: '/src/openvswitch/lib/dpif-offload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 959
      functionLinenumberEnd: 979
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          141
      EdgeCount:       34
      CyclomaticComplexity: 9
      functionsReached:
        - dpif_get_offload_provider_collection
        - dpif_offload_enabled
        - dpif_offload_name
        - ovs_strerror
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload.c:963,18'
          Dst:             dpif_get_offload_provider_collection
        - Src:             'lib/dpif-offload.c:964,25'
          Dst:             dpif_offload_enabled
        - Src:             'lib/dpif-offload.c:972,17'
          Dst:             dpif_offload_name
        - Src:             'lib/dpif-offload.c:972,17'
          Dst:             ovs_strerror
        - Src:             'lib/dpif-offload.c:972,17'
          Dst:             vlog_rate_limit
    - functionName:    dpif_offload_meter_set
      functionSourceFile: '/src/openvswitch/lib/dpif-offload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 930
      functionLinenumberEnd: 954
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          141
      EdgeCount:       34
      CyclomaticComplexity: 9
      functionsReached:
        - dpif_get_offload_provider_collection
        - dpif_offload_enabled
        - dpif_offload_name
        - ovs_strerror
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload.c:934,18'
          Dst:             dpif_get_offload_provider_collection
        - Src:             'lib/dpif-offload.c:935,25'
          Dst:             dpif_offload_enabled
        - Src:             'lib/dpif-offload.c:947,17'
          Dst:             dpif_offload_name
        - Src:             'lib/dpif-offload.c:947,17'
          Dst:             ovs_strerror
        - Src:             'lib/dpif-offload.c:947,17'
          Dst:             vlog_rate_limit
    - functionName:    dpif_offload_flow_count_by_impl
      functionSourceFile: '/src/openvswitch/lib/dpif-offload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 907
      functionLinenumberEnd: 925
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          119
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - dpif_get_offload_provider_collection
        - dpif_offload_enabled
        - dpif_offload_get_impl_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload.c:912,18'
          Dst:             dpif_get_offload_provider_collection
        - Src:             'lib/dpif-offload.c:913,25'
          Dst:             dpif_offload_enabled
        - Src:             'lib/dpif-offload.c:919,24'
          Dst:             dpif_offload_get_impl_type
    - functionName:    dpif_offload_get_impl_type
      functionSourceFile: '/src/openvswitch/lib/dpif-offload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 859
      functionLinenumberEnd: 860
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_offload_flow_count
      functionSourceFile: '/src/openvswitch/lib/dpif-offload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 885
      functionLinenumberEnd: 902
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         19
      ICount:          107
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - dpif_get_offload_provider_collection
        - dpif_offload_enabled
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload.c:890,18'
          Dst:             dpif_get_offload_provider_collection
        - Src:             'lib/dpif-offload.c:891,25'
          Dst:             dpif_offload_enabled
    - functionName:    hmap_next
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 429
      functionLinenumberEnd: 432
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_next__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:432,15'
          Dst:             hmap_next__
    - functionName:    hmap_first
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 416
      functionLinenumberEnd: 417
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:417,12'
          Dst:             hmap_next__
    - functionName:    dpif_offload_get_impl_type_by_class
      functionSourceFile: '/src/openvswitch/lib/dpif-offload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 865
      functionLinenumberEnd: 880
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          75
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_first
        - hmap_next
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - strcmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload.c:869,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-offload.c:870,5'
          Dst:             hmap_first
        - Src:             'lib/dpif-offload.c:873,14'
          Dst:             strcmp
        - Src:             'lib/dpif-offload.c:870,5'
          Dst:             hmap_next
        - Src:             'lib/dpif-offload.c:878,5'
          Dst:             ovs_mutex_unlock
    - functionName:    dpif_offload_flow_flush
      functionSourceFile: '/src/openvswitch/lib/dpif-offload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 835
      functionLinenumberEnd: 855
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         24
      ICount:          124
      EdgeCount:       30
      CyclomaticComplexity: 8
      functionsReached:
        - dpif_get_offload_provider_collection
        - dpif_offload_name
        - ovs_strerror
        - vlog
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload.c:839,18'
          Dst:             dpif_get_offload_provider_collection
        - Src:             'lib/dpif-offload.c:849,17'
          Dst:             dpif_offload_name
        - Src:             'lib/dpif-offload.c:849,17'
          Dst:             ovs_strerror
        - Src:             'lib/dpif-offload.c:849,17'
          Dst:             vlog
    - functionName:    dpif_offload_set_global_cfg
      functionSourceFile: '/src/openvswitch/lib/dpif-offload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 749
      functionLinenumberEnd: 831
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         60
      ICount:          294
      EdgeCount:       76
      CyclomaticComplexity: 18
      functionsReached:
        - dpif_offload_module_init
        - ovsthread_once_done
        - ovsthread_once_start
        - shash_find
        - smap_add
        - smap_clear
        - smap_get
        - smap_get_bool
        - strcmp
        - strtok_r
        - vlog
        - xstrdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload.c:756,16'
          Dst:             smap_get
        - Src:             'lib/dpif-offload.c:758,9'
          Dst:             ovsthread_once_start
        - Src:             'lib/dpif-offload.c:761,9'
          Dst:             dpif_offload_module_init
        - Src:             'lib/dpif-offload.c:765,28'
          Dst:             xstrdup
        - Src:             'lib/dpif-offload.c:769,51'
          Dst:             xstrdup
        - Src:             'lib/dpif-offload.c:772,31'
          Dst:             strtok_r
        - Src:             'lib/dpif-offload.c:776,22'
          Dst:             shash_find
        - Src:             'lib/dpif-offload.c:777,21'
          Dst:             vlog
        - Src:             'lib/dpif-offload.c:774,25'
          Dst:             strtok_r
        - Src:             'lib/dpif-offload.c:783,9'
          Dst:             ovsthread_once_done
        - Src:             'lib/dpif-offload.c:785,25'
          Dst:             strcmp
        - Src:             'lib/dpif-offload.c:787,13'
          Dst:             ovsthread_once_start
        - Src:             'lib/dpif-offload.c:787,13'
          Dst:             vlog
        - Src:             'lib/dpif-offload.c:787,13'
          Dst:             ovsthread_once_done
        - Src:             'lib/dpif-offload.c:793,10'
          Dst:             smap_get_bool
        - Src:             'lib/dpif-offload.c:796,13'
          Dst:             ovsthread_once_start
        - Src:             'lib/dpif-offload.c:798,13'
          Dst:             vlog
        - Src:             'lib/dpif-offload.c:800,17'
          Dst:             smap_get_bool
        - Src:             'lib/dpif-offload.c:804,13'
          Dst:             ovsthread_once_done
        - Src:             'lib/dpif-offload.c:812,5'
          Dst:             smap_clear
        - Src:             'lib/dpif-offload.c:823,28'
          Dst:             smap_get
        - Src:             'lib/dpif-offload.c:826,21'
          Dst:             smap_add
    - functionName:    ovsthread_once_start
      functionSourceFile: '/src/openvswitch/./include/openvswitch/thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsthread_once_start__
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/thread.h:161,12'
          Dst:             ovsthread_once_start__
    - functionName:    dpif_offload_module_init
      functionSourceFile: '/src/openvswitch/lib/dpif-offload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 141
      functionLinenumberEnd: 179
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         45
      ICount:          258
      EdgeCount:       62
      CyclomaticComplexity: 19
      functionsReached:
        - dpif_offload_register_provider
        - dpif_offload_show_classes
        - ovs_ignore
        - ovsthread_once_done
        - ovsthread_once_start
        - unixctl_command_register
        - xstrdup
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload.c:144,10'
          Dst:             ovsthread_once_start
        - Src:             'lib/dpif-offload.c:150,13'
          Dst:             xstrdup
        - Src:             'lib/dpif-offload.c:153,5'
          Dst:             unixctl_command_register
        - Src:             'lib/dpif-offload.c:153,5'
          Dst:             dpif_offload_show_classes
        - Src:             'lib/dpif-offload.c:157,9'
          Dst:             ovs_ignore
        - Src:             'lib/dpif-offload.c:164,9'
          Dst:             ovs_ignore
        - Src:             'lib/dpif-offload.c:175,9'
          Dst:             dpif_offload_register_provider
        - Src:             'lib/dpif-offload.c:178,5'
          Dst:             ovsthread_once_done
    - functionName:    dpif_offload_show_classes
      functionSourceFile: '/src/openvswitch/lib/dpif-offload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 108
      functionLinenumberEnd: 137
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          111
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - ds_cstr
        - ds_destroy
        - ds_init
        - ds_put_cstr
        - ds_put_format
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - shash_count
        - shash_sort
        - unixctl_command_reply
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload.c:112,5'
          Dst:             ds_init
        - Src:             'lib/dpif-offload.c:113,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-offload.c:115,12'
          Dst:             shash_sort
        - Src:             'lib/dpif-offload.c:116,28'
          Dst:             shash_count
        - Src:             'lib/dpif-offload.c:120,13'
          Dst:             ds_put_cstr
        - Src:             'lib/dpif-offload.c:121,13'
          Dst:             ds_put_cstr
        - Src:             'lib/dpif-offload.c:124,9'
          Dst:             ds_put_format
        - Src:             'lib/dpif-offload.c:127,13'
          Dst:             ds_put_format
        - Src:             'lib/dpif-offload.c:132,5'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/dpif-offload.c:135,33'
          Dst:             ds_cstr
        - Src:             'lib/dpif-offload.c:135,5'
          Dst:             unixctl_command_reply
        - Src:             'lib/dpif-offload.c:136,5'
          Dst:             ds_destroy
    - functionName:    dpif_offload_register_provider
      functionSourceFile: '/src/openvswitch/lib/dpif-offload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 95
      functionLinenumberEnd: 102
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dpif_offload_register_provider__
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload.c:98,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-offload.c:99,13'
          Dst:             dpif_offload_register_provider__
        - Src:             'lib/dpif-offload.c:100,5'
          Dst:             ovs_mutex_unlock
    - functionName:    dpif_offload_dump_done
      functionSourceFile: '/src/openvswitch/lib/dpif-offload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 734
      functionLinenumberEnd: 744
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dpif_offload_unref_collection
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload.c:738,5'
          Dst:             dpif_offload_unref_collection
    - functionName:    dpif_offload_unref_collection
      functionSourceFile: '/src/openvswitch/lib/dpif-offload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 373
      functionLinenumberEnd: 388
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          43
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovs_refcount_unref_relaxed
        - ovsrcu_postpone__
        - provider_collection_free_rcu
        - shash_find_and_delete
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload.c:381,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-offload.c:382,9'
          Dst:             ovs_refcount_unref_relaxed
        - Src:             'lib/dpif-offload.c:383,9'
          Dst:             shash_find_and_delete
        - Src:             'lib/dpif-offload.c:385,9'
          Dst:             ovsrcu_postpone__
        - Src:             'lib/dpif-offload.c:385,9'
          Dst:             provider_collection_free_rcu
        - Src:             'lib/dpif-offload.c:387,5'
          Dst:             ovs_mutex_unlock
    - functionName:    dpif_offload_dump_next
      functionSourceFile: '/src/openvswitch/lib/dpif-offload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 695
      functionLinenumberEnd: 730
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         32
      ICount:          194
      EdgeCount:       41
      CyclomaticComplexity: 11
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_get_offload_provider_collection_with_ref
      functionSourceFile: '/src/openvswitch/lib/dpif-offload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 190
      functionLinenumberEnd: 204
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovs_refcount_try_ref_rcu
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload.c:193,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-offload.c:198,25'
          Dst:             ovs_refcount_try_ref_rcu
        - Src:             'lib/dpif-offload.c:202,5'
          Dst:             ovs_mutex_unlock
    - functionName:    dpif_offload_dump_start
      functionSourceFile: '/src/openvswitch/lib/dpif-offload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 681
      functionLinenumberEnd: 691
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dpif_get_offload_provider_collection_with_ref
        - xzalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload.c:684,13'
          Dst:             xzalloc
        - Src:             'lib/dpif-offload.c:685,25'
          Dst:             dpif_get_offload_provider_collection_with_ref
    - functionName:    dpif_offload_port_offloaded_by
      functionSourceFile: '/src/openvswitch/lib/dpif-offload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 654
      functionLinenumberEnd: 671
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          101
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - dpif_get_offload_provider_collection
        - dpif_offload_enabled
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload.c:658,18'
          Dst:             dpif_get_offload_provider_collection
        - Src:             'lib/dpif-offload.c:659,25'
          Dst:             dpif_offload_enabled
    - functionName:    dpif_offload_port_set_config
      functionSourceFile: '/src/openvswitch/lib/dpif-offload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 636
      functionLinenumberEnd: 650
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          96
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - dpif_get_offload_provider_collection
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload.c:640,18'
          Dst:             dpif_get_offload_provider_collection
    - functionName:    dpif_offload_port_del
      functionSourceFile: '/src/openvswitch/lib/dpif-offload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 613
      functionLinenumberEnd: 631
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          116
      EdgeCount:       26
      CyclomaticComplexity: 7
      functionsReached:
        - dpif_get_offload_provider_collection
        - dpif_offload_name
        - ovs_strerror
        - vlog
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload.c:617,18'
          Dst:             dpif_get_offload_provider_collection
        - Src:             'lib/dpif-offload.c:626,13'
          Dst:             dpif_offload_name
        - Src:             'lib/dpif-offload.c:626,13'
          Dst:             ovs_strerror
        - Src:             'lib/dpif-offload.c:626,13'
          Dst:             vlog
    - functionName:    dpif_offload_try_port_add
      functionSourceFile: '/src/openvswitch/lib/dpif-offload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 538
      functionLinenumberEnd: 557
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          134
      EdgeCount:       30
      CyclomaticComplexity: 7
      functionsReached:
        - dpif_offload_name
        - netdev_get_name
        - ovs_strerror
        - vlog
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload.c:543,13'
          Dst:             netdev_get_name
        - Src:             'lib/dpif-offload.c:543,13'
          Dst:             dpif_offload_name
        - Src:             'lib/dpif-offload.c:543,13'
          Dst:             vlog
        - Src:             'lib/dpif-offload.c:547,13'
          Dst:             netdev_get_name
        - Src:             'lib/dpif-offload.c:547,13'
          Dst:             dpif_offload_name
        - Src:             'lib/dpif-offload.c:547,13'
          Dst:             ovs_strerror
        - Src:             'lib/dpif-offload.c:547,13'
          Dst:             vlog
        - Src:             'lib/dpif-offload.c:553,9'
          Dst:             netdev_get_name
        - Src:             'lib/dpif-offload.c:553,9'
          Dst:             dpif_offload_name
        - Src:             'lib/dpif-offload.c:553,9'
          Dst:             vlog
    - functionName:    dpif_offload_port_add
      functionSourceFile: '/src/openvswitch/lib/dpif-offload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 562
      functionLinenumberEnd: 609
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         42
      ICount:          216
      EdgeCount:       54
      CyclomaticComplexity: 14
      functionsReached:
        - dpif_get_offload_provider_collection
        - dpif_offload_try_port_add
        - netdev_get_name
        - smap_get
        - strcmp
        - strtok_r
        - vlog
        - xstrdup
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload.c:565,42'
          Dst:             netdev_get_name
        - Src:             'lib/dpif-offload.c:564,33'
          Dst:             smap_get
        - Src:             'lib/dpif-offload.c:568,18'
          Dst:             dpif_get_offload_provider_collection
        - Src:             'lib/dpif-offload.c:574,24'
          Dst:             xstrdup
        - Src:             'lib/dpif-offload.c:577,9'
          Dst:             netdev_get_name
        - Src:             'lib/dpif-offload.c:577,9'
          Dst:             vlog
        - Src:             'lib/dpif-offload.c:580,27'
          Dst:             strtok_r
        - Src:             'lib/dpif-offload.c:585,18'
          Dst:             strcmp
        - Src:             'lib/dpif-offload.c:590,22'
          Dst:             strcmp
        - Src:             'lib/dpif-offload.c:591,38'
          Dst:             dpif_offload_try_port_add
        - Src:             'lib/dpif-offload.c:582,21'
          Dst:             strtok_r
        - Src:             'lib/dpif-offload.c:604,17'
          Dst:             dpif_offload_try_port_add
    - functionName:    dpif_offload_set_netdev_offload
      functionSourceFile: '/src/openvswitch/lib/dpif-offload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 531
      functionLinenumberEnd: 533
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         5
      ICount:          47
      EdgeCount:       8
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    4
      BranchProfiles:
        - Branch String:   'lib/dpif-offload.c:532,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    dpif_offload_rebalance_policy_enabled
      functionSourceFile: '/src/openvswitch/lib/dpif-offload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 521
      functionLinenumberEnd: 525
      functionDepth:   0
      returnType:      bool
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_list_size
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 307
      functionLinenumberEnd: 314
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         5
      ICount:          34
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_offload_stats_get
      functionSourceFile: '/src/openvswitch/lib/dpif-offload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 470
      functionLinenumberEnd: 508
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          166
      EdgeCount:       32
      CyclomaticComplexity: 9
      functionsReached:
        - dpif_get_offload_provider_collection
        - dpif_offload_enabled
        - netdev_free_custom_stats_counters
        - ovs_list_size
        - xcalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload.c:478,18'
          Dst:             dpif_get_offload_provider_collection
        - Src:             'lib/dpif-offload.c:479,25'
          Dst:             dpif_offload_enabled
        - Src:             'lib/dpif-offload.c:484,19'
          Dst:             ovs_list_size
        - Src:             'lib/dpif-offload.c:485,13'
          Dst:             xcalloc
        - Src:             'lib/dpif-offload.c:495,17'
          Dst:             netdev_free_custom_stats_counters
    - functionName:    dpif_offload_get_debug
      functionSourceFile: '/src/openvswitch/lib/dpif-offload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 458
      functionLinenumberEnd: 465
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_offload_port_mgr_destroy
      functionSourceFile: '/src/openvswitch/lib/dpif-offload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1530
      functionLinenumberEnd: 1548
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          71
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - cmap_count
        - cmap_destroy
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload.c:1540,16'
          Dst:             cmap_count
        - Src:             'lib/dpif-offload.c:1540,5'
          Dst:             ovs_ignore
        - Src:             'lib/dpif-offload.c:1541,16'
          Dst:             cmap_count
        - Src:             'lib/dpif-offload.c:1541,5'
          Dst:             ovs_ignore
        - Src:             'lib/dpif-offload.c:1542,16'
          Dst:             cmap_count
        - Src:             'lib/dpif-offload.c:1542,5'
          Dst:             ovs_ignore
        - Src:             'lib/dpif-offload.c:1544,5'
          Dst:             cmap_destroy
        - Src:             'lib/dpif-offload.c:1545,5'
          Dst:             cmap_destroy
        - Src:             'lib/dpif-offload.c:1546,5'
          Dst:             cmap_destroy
    - functionName:    dpif_offload_destroy
      functionSourceFile: '/src/openvswitch/lib/dpif-offload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 436
      functionLinenumberEnd: 441
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dpif_offload_port_mgr_destroy
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload.c:437,5'
          Dst:             ovs_ignore
        - Src:             'lib/dpif-offload.c:439,5'
          Dst:             dpif_offload_port_mgr_destroy
    - functionName:    dpif_offload_port_mgr_init
      functionSourceFile: '/src/openvswitch/lib/dpif-offload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1516
      functionLinenumberEnd: 1525
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - cmap_init
        - ovs_mutex_init
        - xmalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload.c:1517,41'
          Dst:             xmalloc
        - Src:             'lib/dpif-offload.c:1519,5'
          Dst:             ovs_mutex_init
        - Src:             'lib/dpif-offload.c:1521,5'
          Dst:             cmap_init
        - Src:             'lib/dpif-offload.c:1522,5'
          Dst:             cmap_init
        - Src:             'lib/dpif-offload.c:1523,5'
          Dst:             cmap_init
    - functionName:    dpif_offload_init
      functionSourceFile: '/src/openvswitch/lib/dpif-offload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 426
      functionLinenumberEnd: 432
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          56
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - dpif_name
        - dpif_offload_port_mgr_init
        - ovs_ignore
        - xasprintf
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload.c:427,5'
          Dst:             ovs_ignore
        - Src:             'lib/dpif-offload.c:430,54'
          Dst:             dpif_name
        - Src:             'lib/dpif-offload.c:430,21'
          Dst:             xasprintf
        - Src:             'lib/dpif-offload.c:431,22'
          Dst:             dpif_offload_port_mgr_init
    - functionName:    dpif_offload_set_config
      functionSourceFile: '/src/openvswitch/lib/dpif-offload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 404
      functionLinenumberEnd: 419
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          93
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - dpif_get_offload_provider_collection
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload.c:408,18'
          Dst:             dpif_get_offload_provider_collection
    - functionName:    dpif_detach_offload_providers
      functionSourceFile: '/src/openvswitch/lib/dpif-offload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 392
      functionLinenumberEnd: 400
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          65
      EdgeCount:       10
      CyclomaticComplexity: 2
      functionsReached:
        - dpif_get_offload_provider_collection
        - dpif_offload_unref_collection
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/dpif-offload.c:398,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/dpif-offload.c:395,18'
          Dst:             dpif_get_offload_provider_collection
        - Src:             'lib/dpif-offload.c:397,9'
          Dst:             dpif_offload_unref_collection
    - functionName:    dpif_attach_new_offload_provider_collection
      functionSourceFile: '/src/openvswitch/lib/dpif-offload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 262
      functionLinenumberEnd: 326
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         50
      ICount:          329
      EdgeCount:       61
      CyclomaticComplexity: 13
      functionsReached:
        - dpif_name
        - dpif_normalize_type
        - dpif_type
        - hmap_first
        - hmap_next
        - move_provider_to_collection
        - ovs_list_init
        - ovs_list_push_back
        - ovs_mutex_init_recursive
        - ovs_refcount_init
        - ovs_strerror
        - shash_add
        - strcmp
        - strtok_r
        - vlog
        - xmalloc
        - xstrdup
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/dpif-offload.c:324,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/dpif-offload.c:264,53'
          Dst:             dpif_type
        - Src:             'lib/dpif-offload.c:264,33'
          Dst:             dpif_normalize_type
        - Src:             'lib/dpif-offload.c:271,18'
          Dst:             xmalloc
        - Src:             'lib/dpif-offload.c:272,37'
          Dst:             dpif_name
        - Src:             'lib/dpif-offload.c:272,29'
          Dst:             xstrdup
        - Src:             'lib/dpif-offload.c:273,5'
          Dst:             ovs_mutex_init_recursive
        - Src:             'lib/dpif-offload.c:274,5'
          Dst:             ovs_refcount_init
        - Src:             'lib/dpif-offload.c:275,5'
          Dst:             ovs_list_init
        - Src:             'lib/dpif-offload.c:276,5'
          Dst:             shash_add
        - Src:             'lib/dpif-offload.c:279,5'
          Dst:             hmap_first
        - Src:             'lib/dpif-offload.c:283,18'
          Dst:             strcmp
        - Src:             'lib/dpif-offload.c:287,21'
          Dst:             dpif_name
        - Src:             'lib/dpif-offload.c:287,21'
          Dst:             ovs_strerror
        - Src:             'lib/dpif-offload.c:287,21'
          Dst:             vlog
        - Src:             'lib/dpif-offload.c:292,21'
          Dst:             ovs_list_push_back
        - Src:             'lib/dpif-offload.c:279,5'
          Dst:             hmap_next
        - Src:             'lib/dpif-offload.c:301,14'
          Dst:             xstrdup
        - Src:             'lib/dpif-offload.c:303,23'
          Dst:             strtok_r
        - Src:             'lib/dpif-offload.c:308,17'
          Dst:             strcmp
        - Src:             'lib/dpif-offload.c:312,13'
          Dst:             move_provider_to_collection
        - Src:             'lib/dpif-offload.c:305,17'
          Dst:             strtok_r
        - Src:             'lib/dpif-offload.c:320,9'
          Dst:             move_provider_to_collection
    - functionName:    dpif_attach_offload_provider_collection
      functionSourceFile: '/src/openvswitch/lib/dpif-offload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 211
      functionLinenumberEnd: 218
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          57
      EdgeCount:       13
      CyclomaticComplexity: 8
      functionsReached:
        - ovs_refcount_ref
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/dpif-offload.c:217,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/dpif-offload.c:216,5'
          Dst:             ovs_refcount_ref
    - functionName:    dpif_attach_offload_providers
      functionSourceFile: '/src/openvswitch/lib/dpif-offload.c'
      linkageType:     InternalLinkage
      functionLinenumber: 334
      functionLinenumberEnd: 348
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dpif_attach_new_offload_provider_collection
        - dpif_attach_offload_provider_collection
        - dpif_name
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - shash_find_data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload.c:338,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-offload.c:340,59'
          Dst:             dpif_name
        - Src:             'lib/dpif-offload.c:340,18'
          Dst:             shash_find_data
        - Src:             'lib/dpif-offload.c:342,9'
          Dst:             dpif_attach_offload_provider_collection
        - Src:             'lib/dpif-offload.c:344,14'
          Dst:             dpif_attach_new_offload_provider_collection
        - Src:             'lib/dpif-offload.c:347,5'
          Dst:             ovs_mutex_unlock
    - functionName:    init_this_module_dpif_offload_dummy
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 35
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-dummy.c:35,1'
          Dst:             vlog_insert_module
    - functionName:    dummy_free_flow_mark
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 109
      functionLinenumberEnd: 113
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - id_fpool_free_id
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-dummy.c:111,9'
          Dst:             id_fpool_free_id
    - functionName:    dummy_del_flow_pmd_data
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 188
      functionLinenumberEnd: 201
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          99
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - hash_int
        - hmap_first_with_hash
        - hmap_next_with_hash
        - hmap_remove
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-dummy.c:189,19'
          Dst:             hash_int
        - Src:             'lib/dpif-offload-dummy.c:192,5'
          Dst:             hmap_first_with_hash
        - Src:             'lib/dpif-offload-dummy.c:194,13'
          Dst:             hmap_remove
        - Src:             'lib/dpif-offload-dummy.c:192,5'
          Dst:             hmap_next_with_hash
    - functionName:    hash_int
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 408
      functionLinenumberEnd: 409
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_2words
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:409,12'
          Dst:             hash_2words
    - functionName:    hmap_first_with_hash
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 360
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next_with_hash__
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:360,12'
          Dst:             hmap_next_with_hash__
    - functionName:    hmap_remove
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 317
      functionLinenumberEnd: 324
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          48
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_next_with_hash
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 395
      functionLinenumberEnd: 396
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next_with_hash__
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:396,12'
          Dst:             hmap_next_with_hash__
    - functionName:    hmap_next_with_hash__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 348
      functionLinenumberEnd: 352
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          40
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_2words
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 153
      functionLinenumberEnd: 154
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_add
        - hash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:154,33'
          Dst:             hash_add
        - Src:             'lib/hash.h:154,24'
          Dst:             hash_add
        - Src:             'lib/hash.h:154,12'
          Dst:             hash_finish
    - functionName:    hash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 108
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_add
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:109,12'
          Dst:             mhash_add
    - functionName:    hash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:119,12'
          Dst:             mhash_finish
    - functionName:    mhash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_rot
        - mhash_add__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:78,12'
          Dst:             mhash_add__
        - Src:             'lib/hash.h:79,12'
          Dst:             hash_rot
    - functionName:    mhash_add__
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hash_rot
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:71,12'
          Dst:             hash_rot
    - functionName:    hash_rot
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 32
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_insert_fast
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 289
      functionLinenumberEnd: 295
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          38
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_insert_at
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 306
      functionLinenumberEnd: 311
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_expand_at
        - hmap_insert_fast
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:307,5'
          Dst:             hmap_insert_fast
        - Src:             './include/openvswitch/hmap.h:309,9'
          Dst:             hmap_expand_at
    - functionName:    dummy_add_flow_pmd_data
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 155
      functionLinenumberEnd: 162
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          38
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_int
        - hmap_insert_at
        - xmalloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-dummy.c:156,36'
          Dst:             xmalloc
        - Src:             'lib/dpif-offload-dummy.c:160,5'
          Dst:             hash_int
        - Src:             'lib/dpif-offload-dummy.c:160,5'
          Dst:             hmap_insert_at
    - functionName:    ovs_u128_equals
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 481
      functionLinenumberEnd: 482
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          37
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dummy_flow_hash
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 129
      functionLinenumberEnd: 130
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dummy_update_flow_pmd_data
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 170
      functionLinenumberEnd: 181
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dummy_add_flow_pmd_data
        - dummy_find_flow_pmd_data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-dummy.c:171,32'
          Dst:             dummy_find_flow_pmd_data
        - Src:             'lib/dpif-offload-dummy.c:178,9'
          Dst:             dummy_add_flow_pmd_data
    - functionName:    dummy_find_flow_pmd_data
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 138
      functionLinenumberEnd: 148
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          77
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hash_int
        - hmap_first_with_hash
        - hmap_next_with_hash
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-dummy.c:139,19'
          Dst:             hash_int
        - Src:             'lib/dpif-offload-dummy.c:142,5'
          Dst:             hmap_first_with_hash
        - Src:             'lib/dpif-offload-dummy.c:142,5'
          Dst:             hmap_next_with_hash
    - functionName:    dummy_find_offloaded_flow
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 256
      functionLinenumberEnd: 267
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          83
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - dummy_flow_hash
        - hmap_first_with_hash
        - hmap_next_with_hash
        - ovs_u128_equals
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-dummy.c:257,21'
          Dst:             dummy_flow_hash
        - Src:             'lib/dpif-offload-dummy.c:260,5'
          Dst:             hmap_first_with_hash
        - Src:             'lib/dpif-offload-dummy.c:261,13'
          Dst:             ovs_u128_equals
        - Src:             'lib/dpif-offload-dummy.c:260,5'
          Dst:             hmap_next_with_hash
    - functionName:    dummy_offload_log_operation
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 548
      functionLinenumberEnd: 552
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          73
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - vlog
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-dummy.c:549,5'
          Dst:             vlog
    - functionName:    dummy_add_flow
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 223
      functionLinenumberEnd: 234
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          49
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dummy_add_flow_pmd_data
        - dummy_flow_hash
        - hmap_init
        - hmap_insert_at
        - xzalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-dummy.c:224,45'
          Dst:             xzalloc
        - Src:             'lib/dpif-offload-dummy.c:228,5'
          Dst:             hmap_init
        - Src:             'lib/dpif-offload-dummy.c:229,5'
          Dst:             dummy_add_flow_pmd_data
        - Src:             'lib/dpif-offload-dummy.c:231,5'
          Dst:             dummy_flow_hash
        - Src:             'lib/dpif-offload-dummy.c:231,5'
          Dst:             hmap_insert_at
    - functionName:    dummy_allocate_flow_mark
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 90
      functionLinenumberEnd: 105
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          47
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - id_fpool_create
        - id_fpool_new_id
        - ovsthread_once_done
        - ovsthread_once_start
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-dummy.c:94,9'
          Dst:             ovsthread_once_start
        - Src:             'lib/dpif-offload-dummy.c:96,35'
          Dst:             id_fpool_create
        - Src:             'lib/dpif-offload-dummy.c:97,9'
          Dst:             ovsthread_once_done
        - Src:             'lib/dpif-offload-dummy.c:100,9'
          Dst:             id_fpool_new_id
    - functionName:    ovsthread_once_start
      functionSourceFile: '/src/openvswitch/./include/openvswitch/thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsthread_once_start__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/thread.h:161,12'
          Dst:             ovsthread_once_start__
    - functionName:    dummy_find_offloaded_flow_and_update
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 275
      functionLinenumberEnd: 287
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          48
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dummy_find_offloaded_flow
        - dummy_update_flow_pmd_data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-dummy.c:278,16'
          Dst:             dummy_find_offloaded_flow
        - Src:             'lib/dpif-offload-dummy.c:283,5'
          Dst:             dummy_update_flow_pmd_data
    - functionName:    dummy_offload_are_all_actions_supported
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 648
      functionLinenumberEnd: 721
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         54
      ICount:          252
      EdgeCount:       59
      CyclomaticComplexity: 7
      functionsReached:
        - dummy_offload_get_port_by_odp_port
        - netdev_get_type
        - nl_attr_get
        - nl_attr_get_odp_port
        - nl_attr_is_valid
        - nl_attr_len_pad
        - nl_attr_next
        - nl_attr_type
        - strcmp
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/dpif-offload-dummy.c:663,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/dpif-offload-dummy.c:660,5'
          Dst:             nl_attr_is_valid
        - Src:             'lib/dpif-offload-dummy.c:661,39'
          Dst:             nl_attr_type
        - Src:             'lib/dpif-offload-dummy.c:665,34'
          Dst:             nl_attr_get_odp_port
        - Src:             'lib/dpif-offload-dummy.c:668,24'
          Dst:             dummy_offload_get_port_by_odp_port
        - Src:             'lib/dpif-offload-dummy.c:671,27'
          Dst:             netdev_get_type
        - Src:             'lib/dpif-offload-dummy.c:670,20'
          Dst:             strcmp
        - Src:             'lib/dpif-offload-dummy.c:679,54'
          Dst:             nl_attr_get
        - Src:             'lib/dpif-offload-dummy.c:660,5'
          Dst:             nl_attr_len_pad
        - Src:             'lib/dpif-offload-dummy.c:660,5'
          Dst:             nl_attr_next
    - functionName:    nl_attr_is_valid
      functionSourceFile: '/src/openvswitch/lib/netlink.h'
      linkageType:     InternalLinkage
      functionLinenumber: 171
      functionLinenumberEnd: 174
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dummy_offload_get_port_by_odp_port
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 570
      functionLinenumberEnd: 578
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dpif_offload_port_mgr_find_by_odp_port
        - dummy_offload_port_cast
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-dummy.c:573,12'
          Dst:             dpif_offload_port_mgr_find_by_odp_port
        - Src:             'lib/dpif-offload-dummy.c:577,12'
          Dst:             dummy_offload_port_cast
    - functionName:    nl_attr_len_pad
      functionSourceFile: '/src/openvswitch/lib/netlink.h'
      linkageType:     InternalLinkage
      functionLinenumber: 179
      functionLinenumberEnd: 182
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          37
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nl_attr_next
      functionSourceFile: '/src/openvswitch/lib/netlink.h'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 165
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dummy_offload_port_cast
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 118
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_has_flow_mark
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1076
      functionLinenumberEnd: 1083
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_flow_mark_ptr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:1078,18'
          Dst:             dp_packet_flow_mark_ptr
    - functionName:    dp_packet_flow_mark_ptr
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 651
      functionLinenumberEnd: 652
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dummy_free_port_rcu
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 338
      functionLinenumberEnd: 341
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dummy_free_port__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-dummy.c:339,5'
          Dst:             dummy_free_port__
    - functionName:    dummy_free_port__
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 307
      functionLinenumberEnd: 329
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          120
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - dp_packet_delete
        - dummy_cleanup_flow_pmd_data
        - dummy_free_flow
        - hmap_destroy
        - hmap_pop_helper__
        - netdev_close
        - ovs_list_is_empty
        - ovs_list_pop_front
        - ovs_mutex_destroy
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-dummy.c:311,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-offload-dummy.c:312,5'
          Dst:             hmap_pop_helper__
        - Src:             'lib/dpif-offload-dummy.c:313,9'
          Dst:             dummy_cleanup_flow_pmd_data
        - Src:             'lib/dpif-offload-dummy.c:314,9'
          Dst:             dummy_free_flow
        - Src:             'lib/dpif-offload-dummy.c:316,5'
          Dst:             hmap_destroy
        - Src:             'lib/dpif-offload-dummy.c:318,5'
          Dst:             ovs_list_is_empty
        - Src:             'lib/dpif-offload-dummy.c:318,5'
          Dst:             ovs_list_pop_front
        - Src:             'lib/dpif-offload-dummy.c:319,9'
          Dst:             dp_packet_delete
        - Src:             'lib/dpif-offload-dummy.c:323,5'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/dpif-offload-dummy.c:324,5'
          Dst:             ovs_mutex_destroy
        - Src:             'lib/dpif-offload-dummy.c:326,9'
          Dst:             netdev_close
    - functionName:    hmap_pop_helper__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 226
      functionLinenumberEnd: 238
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          66
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - hmap_remove
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:232,13'
          Dst:             hmap_remove
    - functionName:    dummy_cleanup_flow_pmd_data
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 208
      functionLinenumberEnd: 217
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          75
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - dummy_flow_unreference
        - hmap_first
        - hmap_next
        - hmap_remove
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-dummy.c:211,5'
          Dst:             hmap_first
        - Src:             'lib/dpif-offload-dummy.c:211,5'
          Dst:             hmap_next
        - Src:             'lib/dpif-offload-dummy.c:212,9'
          Dst:             hmap_remove
        - Src:             'lib/dpif-offload-dummy.c:214,9'
          Dst:             dummy_flow_unreference
    - functionName:    dummy_free_flow
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 241
      functionLinenumberEnd: 250
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_count
        - hmap_destroy
        - hmap_remove
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-dummy.c:243,9'
          Dst:             hmap_remove
        - Src:             'lib/dpif-offload-dummy.c:245,17'
          Dst:             hmap_count
        - Src:             'lib/dpif-offload-dummy.c:245,5'
          Dst:             ovs_ignore
        - Src:             'lib/dpif-offload-dummy.c:247,5'
          Dst:             hmap_destroy
    - functionName:    ovs_list_is_empty
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 320
      functionLinenumberEnd: 321
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_list_pop_front
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 261
      functionLinenumberEnd: 265
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_list_remove
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/list.h:264,5'
          Dst:             ovs_list_remove
    - functionName:    dp_packet_delete
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 271
      functionLinenumberEnd: 290
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          54
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - dp_packet_uninit
        - free_afxdp_buf
        - free_dpdk_buf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:274,13'
          Dst:             free_dpdk_buf
        - Src:             'lib/dp-packet.h:279,13'
          Dst:             free_afxdp_buf
        - Src:             'lib/dp-packet.h:283,9'
          Dst:             dp_packet_uninit
    - functionName:    free_dpdk_buf
      functionSourceFile: '/src/openvswitch/lib/netdev-dpdk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 76
      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:    free_afxdp_buf
      functionSourceFile: '/src/openvswitch/lib/netdev-afxdp.h'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 84
      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:    ovs_list_remove
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 251
      functionLinenumberEnd: 254
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          25
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_count
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 263
      functionLinenumberEnd: 264
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_first
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 416
      functionLinenumberEnd: 417
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next__
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:417,12'
          Dst:             hmap_next__
    - functionName:    hmap_next
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 429
      functionLinenumberEnd: 432
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_next__
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:432,15'
          Dst:             hmap_next__
    - functionName:    dummy_flow_unreference
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1011
      functionLinenumberEnd: 1015
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_next__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 401
      functionLinenumberEnd: 410
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          51
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dummy_free_port
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 345
      functionLinenumberEnd: 351
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dummy_free_port_rcu
        - ovsrcu_postpone__
        - xmalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-dummy.c:346,33'
          Dst:             xmalloc
        - Src:             'lib/dpif-offload-dummy.c:350,5'
          Dst:             ovsrcu_postpone__
        - Src:             'lib/dpif-offload-dummy.c:350,5'
          Dst:             dummy_free_port_rcu
    - functionName:    dummy_offload_cleanup
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 300
      functionLinenumberEnd: 302
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dpif_offload_set_netdev_offload
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-dummy.c:301,5'
          Dst:             dpif_offload_set_netdev_offload
    - functionName:    ovs_list_init
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    json_destroy
      functionSourceFile: '/src/openvswitch/./include/openvswitch/json.h'
      linkageType:     InternalLinkage
      functionLinenumber: 200
      functionLinenumberEnd: 204
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          38
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - json_destroy__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/json.h:202,9'
          Dst:             json_destroy__
    - functionName:    odp_to_u32
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 202
      functionLinenumberEnd: 203
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dummy_offload_enable
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 292
      functionLinenumberEnd: 296
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dpif_offload_set_netdev_offload
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-dummy.c:295,5'
          Dst:             dpif_offload_set_netdev_offload
    - functionName:    ovsthread_once_destroy
      functionSourceFile: '/src/openvswitch/./include/openvswitch/thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 166
      functionLinenumberEnd: 168
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_mutex_destroy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/thread.h:167,5'
          Dst:             ovs_mutex_destroy
    - functionName:    dummy_offload_cast
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 123
      functionLinenumberEnd: 124
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_base
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 750
      functionLinenumberEnd: 751
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __packet_data
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 774
      functionLinenumberEnd: 775
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_data
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 845
      functionLinenumberEnd: 847
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __packet_data
        - dp_packet_base
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:846,12'
          Dst:             __packet_data
        - Src:             'lib/dp-packet.h:847,23'
          Dst:             dp_packet_base
        - Src:             'lib/dp-packet.h:847,43'
          Dst:             __packet_data
    - functionName:    dp_packet_batch_reset
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 872
      functionLinenumberEnd: 875
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_batch_init
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 879
      functionLinenumberEnd: 883
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_batch_reset
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:880,5'
          Dst:             dp_packet_batch_reset
    - functionName:    dp_packet_rss_ptr
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 645
      functionLinenumberEnd: 646
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_l4
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 475
      functionLinenumberEnd: 477
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:477,23'
          Dst:             dp_packet_data
    - functionName:    dummy_offload_udp_tnl_get_src_port__
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 616
      functionLinenumberEnd: 630
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          60
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_data
        - dp_packet_size
        - htons
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-dummy.c:621,27'
          Dst:             dp_packet_data
        - Src:             'lib/dpif-offload-dummy.c:622,18'
          Dst:             dp_packet_size
        - Src:             'lib/dpif-offload-dummy.c:630,12'
          Dst:             htons
    - functionName:    dp_packet_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 762
      functionLinenumberEnd: 763
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_batch_init_packet
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 929
      functionLinenumberEnd: 933
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_batch_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:930,5'
          Dst:             dp_packet_batch_init
    - functionName:    dp_packet_get_rss_hash
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1050
      functionLinenumberEnd: 1051
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_rss_ptr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:1051,13'
          Dst:             dp_packet_rss_ptr
    - functionName:    ovs_list_insert
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 169
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dummy_register_flow_unreference_cb
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1002
      functionLinenumberEnd: 1006
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dummy_offload_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-dummy.c:1003,37'
          Dst:             dummy_offload_cast
    - functionName:    dummy_flow_stats
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 973
      functionLinenumberEnd: 997
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          91
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - dummy_find_offloaded_flow
        - dummy_offload_get_port_by_netdev
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-dummy.c:977,12'
          Dst:             dummy_offload_get_port_by_netdev
        - Src:             'lib/dpif-offload-dummy.c:982,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-offload-dummy.c:983,16'
          Dst:             dummy_find_offloaded_flow
        - Src:             'lib/dpif-offload-dummy.c:990,5'
          Dst:             ovs_mutex_unlock
    - functionName:    dummy_offload_get_port_by_netdev
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 557
      functionLinenumberEnd: 565
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dpif_offload_port_mgr_find_by_netdev
        - dummy_offload_port_cast
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-dummy.c:560,12'
          Dst:             dpif_offload_port_mgr_find_by_netdev
        - Src:             'lib/dpif-offload-dummy.c:564,12'
          Dst:             dummy_offload_port_cast
    - functionName:    dummy_flow_del
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 906
      functionLinenumberEnd: 966
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         34
      ICount:          214
      EdgeCount:       44
      CyclomaticComplexity: 12
      functionsReached:
        - ds_cstr
        - ds_destroy
        - ds_put_cstr
        - ds_put_format
        - dummy_del_flow_pmd_data
        - dummy_find_offloaded_flow
        - dummy_free_flow
        - dummy_free_flow_mark
        - dummy_offload_cast
        - dummy_offload_get_port_by_netdev
        - dummy_offload_log_operation
        - hmap_count
        - netdev_get_name
        - odp_format_ufid
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - vlog
        - vlog_is_enabled
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-dummy.c:907,37'
          Dst:             dummy_offload_cast
        - Src:             'lib/dpif-offload-dummy.c:913,12'
          Dst:             dummy_offload_get_port_by_netdev
        - Src:             'lib/dpif-offload-dummy.c:919,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-offload-dummy.c:921,16'
          Dst:             dummy_find_offloaded_flow
        - Src:             'lib/dpif-offload-dummy.c:927,10'
          Dst:             dummy_del_flow_pmd_data
        - Src:             'lib/dpif-offload-dummy.c:938,10'
          Dst:             hmap_count
        - Src:             'lib/dpif-offload-dummy.c:939,9'
          Dst:             dummy_free_flow_mark
        - Src:             'lib/dpif-offload-dummy.c:940,9'
          Dst:             dummy_free_flow
        - Src:             'lib/dpif-offload-dummy.c:944,5'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/dpif-offload-dummy.c:947,18'
          Dst:             vlog_is_enabled
        - Src:             'lib/dpif-offload-dummy.c:950,36'
          Dst:             netdev_get_name
        - Src:             'lib/dpif-offload-dummy.c:950,9'
          Dst:             ds_put_format
        - Src:             'lib/dpif-offload-dummy.c:952,13'
          Dst:             ds_put_cstr
        - Src:             'lib/dpif-offload-dummy.c:954,9'
          Dst:             ds_put_cstr
        - Src:             'lib/dpif-offload-dummy.c:955,9'
          Dst:             odp_format_ufid
        - Src:             'lib/dpif-offload-dummy.c:957,13'
          Dst:             ds_put_format
        - Src:             'lib/dpif-offload-dummy.c:959,13'
          Dst:             ds_put_format
        - Src:             'lib/dpif-offload-dummy.c:961,9'
          Dst:             ds_cstr
        - Src:             'lib/dpif-offload-dummy.c:961,9'
          Dst:             vlog
        - Src:             'lib/dpif-offload-dummy.c:962,9'
          Dst:             ds_destroy
        - Src:             'lib/dpif-offload-dummy.c:965,5'
          Dst:             dummy_offload_log_operation
    - functionName:    dummy_flow_put
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 823
      functionLinenumberEnd: 900
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          258
      EdgeCount:       36
      CyclomaticComplexity: 10
      functionsReached:
        - ds_cstr
        - ds_destroy
        - ds_put_cstr
        - ds_put_format
        - dummy_add_flow
        - dummy_allocate_flow_mark
        - dummy_find_offloaded_flow_and_update
        - dummy_offload_are_all_actions_supported
        - dummy_offload_cast
        - dummy_offload_get_port_by_netdev
        - dummy_offload_log_operation
        - match_format
        - netdev_get_name
        - odp_format_ufid
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - vlog
        - vlog_is_enabled
        - xmemdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-dummy.c:824,37'
          Dst:             dummy_offload_cast
        - Src:             'lib/dpif-offload-dummy.c:831,12'
          Dst:             dummy_offload_get_port_by_netdev
        - Src:             'lib/dpif-offload-dummy.c:837,20'
          Dst:             dummy_offload_are_all_actions_supported
        - Src:             'lib/dpif-offload-dummy.c:841,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-offload-dummy.c:843,16'
          Dst:             dummy_find_offloaded_flow_and_update
        - Src:             'lib/dpif-offload-dummy.c:849,25'
          Dst:             dummy_allocate_flow_mark
        - Src:             'lib/dpif-offload-dummy.c:856,20'
          Dst:             dummy_add_flow
        - Src:             'lib/dpif-offload-dummy.c:864,29'
          Dst:             xmemdup
        - Src:             'lib/dpif-offload-dummy.c:877,9'
          Dst:             vlog_is_enabled
        - Src:             'lib/dpif-offload-dummy.c:880,50'
          Dst:             netdev_get_name
        - Src:             'lib/dpif-offload-dummy.c:880,9'
          Dst:             ds_put_format
        - Src:             'lib/dpif-offload-dummy.c:882,9'
          Dst:             odp_format_ufid
        - Src:             'lib/dpif-offload-dummy.c:883,9'
          Dst:             ds_put_cstr
        - Src:             'lib/dpif-offload-dummy.c:884,9'
          Dst:             match_format
        - Src:             'lib/dpif-offload-dummy.c:885,9'
          Dst:             ds_put_format
        - Src:             'lib/dpif-offload-dummy.c:887,9'
          Dst:             ds_cstr
        - Src:             'lib/dpif-offload-dummy.c:887,9'
          Dst:             vlog
        - Src:             'lib/dpif-offload-dummy.c:888,9'
          Dst:             ds_destroy
        - Src:             'lib/dpif-offload-dummy.c:896,5'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/dpif-offload-dummy.c:899,5'
          Dst:             dummy_offload_log_operation
    - functionName:    dummy_offload_udp_tnl_get_src_port
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 638
      functionLinenumberEnd: 640
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dummy_offload_udp_tnl_get_src_port__
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-dummy.c:639,17'
          Dst:             dummy_offload_udp_tnl_get_src_port__
    - functionName:    dummy_offload_hw_post_process
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 584
      functionLinenumberEnd: 612
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          129
      EdgeCount:       28
      CyclomaticComplexity: 8
      functionsReached:
        - dp_packet_has_flow_mark
        - dummy_find_flow_pmd_data
        - dummy_offload_get_port_by_netdev
        - hmap_first
        - hmap_next
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-dummy.c:590,12'
          Dst:             dummy_offload_get_port_by_netdev
        - Src:             'lib/dpif-offload-dummy.c:591,19'
          Dst:             dp_packet_has_flow_mark
        - Src:             'lib/dpif-offload-dummy.c:596,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-offload-dummy.c:597,5'
          Dst:             hmap_first
        - Src:             'lib/dpif-offload-dummy.c:601,24'
          Dst:             dummy_find_flow_pmd_data
        - Src:             'lib/dpif-offload-dummy.c:597,5'
          Dst:             hmap_next
        - Src:             'lib/dpif-offload-dummy.c:608,5'
          Dst:             ovs_mutex_unlock
    - functionName:    dummy_offload_get_netdev
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 401
      functionLinenumberEnd: 410
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dpif_offload_port_mgr_find_by_odp_port
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-dummy.c:404,12'
          Dst:             dpif_offload_port_mgr_find_by_odp_port
    - functionName:    dummy_offload_port_del
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 381
      functionLinenumberEnd: 395
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          51
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - dpif_offload_enabled
        - dpif_offload_port_mgr_remove
        - dummy_free_port
        - dummy_offload_cast
        - dummy_offload_cleanup
        - dummy_offload_port_cast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-dummy.c:382,37'
          Dst:             dummy_offload_cast
        - Src:             'lib/dpif-offload-dummy.c:385,12'
          Dst:             dpif_offload_port_mgr_remove
        - Src:             'lib/dpif-offload-dummy.c:389,22'
          Dst:             dummy_offload_port_cast
        - Src:             'lib/dpif-offload-dummy.c:390,13'
          Dst:             dpif_offload_enabled
        - Src:             'lib/dpif-offload-dummy.c:391,13'
          Dst:             dummy_offload_cleanup
        - Src:             'lib/dpif-offload-dummy.c:393,9'
          Dst:             dummy_free_port
    - functionName:    dummy_offload_port_add
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 356
      functionLinenumberEnd: 377
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          72
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - dpif_offload_enabled
        - dpif_offload_port_mgr_add
        - dummy_free_port__
        - dummy_offload_cast
        - dummy_offload_enable
        - hmap_init
        - ovs_list_init
        - ovs_mutex_init
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - xzalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-dummy.c:357,37'
          Dst:             dummy_offload_cast
        - Src:             'lib/dpif-offload-dummy.c:358,39'
          Dst:             xzalloc
        - Src:             'lib/dpif-offload-dummy.c:360,5'
          Dst:             ovs_mutex_init
        - Src:             'lib/dpif-offload-dummy.c:361,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-offload-dummy.c:362,5'
          Dst:             hmap_init
        - Src:             'lib/dpif-offload-dummy.c:363,5'
          Dst:             ovs_list_init
        - Src:             'lib/dpif-offload-dummy.c:364,5'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/dpif-offload-dummy.c:366,9'
          Dst:             dpif_offload_port_mgr_add
        - Src:             'lib/dpif-offload-dummy.c:369,13'
          Dst:             dpif_offload_enabled
        - Src:             'lib/dpif-offload-dummy.c:370,13'
          Dst:             dummy_offload_enable
        - Src:             'lib/dpif-offload-dummy.c:375,5'
          Dst:             dummy_free_port__
    - functionName:    dummy_can_offload
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 542
      functionLinenumberEnd: 543
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - is_dummy_netdev_class
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-dummy.c:543,12'
          Dst:             is_dummy_netdev_class
    - functionName:    dummy_offload_get_global_stats
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 527
      functionLinenumberEnd: 536
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          43
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dpif_offload_name
        - dpif_offload_port_mgr_port_count
        - ovs_strzcpy
        - xmalloc
        - xstrdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-dummy.c:529,28'
          Dst:             dpif_offload_name
        - Src:             'lib/dpif-offload-dummy.c:529,20'
          Dst:             xstrdup
        - Src:             'lib/dpif-offload-dummy.c:531,23'
          Dst:             xmalloc
        - Src:             'lib/dpif-offload-dummy.c:532,32'
          Dst:             dpif_offload_port_mgr_port_count
        - Src:             'lib/dpif-offload-dummy.c:533,5'
          Dst:             ovs_strzcpy
    - functionName:    dummy_offload_get_debug
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 471
      functionLinenumberEnd: 522
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          203
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - cmap_cursor_advance
        - cmap_cursor_start
        - ds_put_format
        - dummy_offload_port_cast
        - json_destroy
        - json_integer_create
        - json_object_create
        - json_object_is_empty
        - json_object_put
        - netdev_get_name
        - odp_to_u32
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-dummy.c:473,35'
          Dst:             json_object_create
        - Src:             'lib/dpif-offload-dummy.c:476,9'
          Dst:             cmap_cursor_start
        - Src:             'lib/dpif-offload-dummy.c:476,9'
          Dst:             cmap_cursor_advance
        - Src:             'lib/dpif-offload-dummy.c:477,47'
          Dst:             dummy_offload_port_cast
        - Src:             'lib/dpif-offload-dummy.c:478,38'
          Dst:             json_object_create
        - Src:             'lib/dpif-offload-dummy.c:481,49'
          Dst:             odp_to_u32
        - Src:             'lib/dpif-offload-dummy.c:481,29'
          Dst:             json_integer_create
        - Src:             'lib/dpif-offload-dummy.c:480,13'
          Dst:             json_object_put
        - Src:             'lib/dpif-offload-dummy.c:483,13'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-offload-dummy.c:485,29'
          Dst:             json_integer_create
        - Src:             'lib/dpif-offload-dummy.c:484,13'
          Dst:             json_object_put
        - Src:             'lib/dpif-offload-dummy.c:487,29'
          Dst:             json_integer_create
        - Src:             'lib/dpif-offload-dummy.c:486,13'
          Dst:             json_object_put
        - Src:             'lib/dpif-offload-dummy.c:489,29'
          Dst:             json_integer_create
        - Src:             'lib/dpif-offload-dummy.c:488,13'
          Dst:             json_object_put
        - Src:             'lib/dpif-offload-dummy.c:491,29'
          Dst:             json_integer_create
        - Src:             'lib/dpif-offload-dummy.c:490,13'
          Dst:             json_object_put
        - Src:             'lib/dpif-offload-dummy.c:492,13'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/dpif-offload-dummy.c:494,41'
          Dst:             netdev_get_name
        - Src:             'lib/dpif-offload-dummy.c:494,13'
          Dst:             json_object_put
        - Src:             'lib/dpif-offload-dummy.c:498,14'
          Dst:             json_object_is_empty
        - Src:             'lib/dpif-offload-dummy.c:499,13'
          Dst:             json_object_put
        - Src:             'lib/dpif-offload-dummy.c:501,13'
          Dst:             json_destroy
        - Src:             'lib/dpif-offload-dummy.c:506,9'
          Dst:             cmap_cursor_start
        - Src:             'lib/dpif-offload-dummy.c:506,9'
          Dst:             cmap_cursor_advance
        - Src:             'lib/dpif-offload-dummy.c:507,47'
          Dst:             dummy_offload_port_cast
        - Src:             'lib/dpif-offload-dummy.c:509,13'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-offload-dummy.c:516,27'
          Dst:             netdev_get_name
        - Src:             'lib/dpif-offload-dummy.c:510,13'
          Dst:             ds_put_format
        - Src:             'lib/dpif-offload-dummy.c:519,13'
          Dst:             ovs_mutex_unlock
    - functionName:    dummy_offload_set_config
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 452
      functionLinenumberEnd: 466
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          79
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - cmap_cursor_advance
        - cmap_cursor_start
        - dummy_offload_cast
        - dummy_offload_enable
        - ovsthread_once_done
        - ovsthread_once_start
        - smap_get_bool
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-dummy.c:453,37'
          Dst:             dummy_offload_cast
        - Src:             'lib/dpif-offload-dummy.c:455,9'
          Dst:             smap_get_bool
        - Src:             'lib/dpif-offload-dummy.c:456,13'
          Dst:             ovsthread_once_start
        - Src:             'lib/dpif-offload-dummy.c:459,13'
          Dst:             cmap_cursor_start
        - Src:             'lib/dpif-offload-dummy.c:459,13'
          Dst:             cmap_cursor_advance
        - Src:             'lib/dpif-offload-dummy.c:460,17'
          Dst:             dummy_offload_enable
        - Src:             'lib/dpif-offload-dummy.c:463,13'
          Dst:             ovsthread_once_done
    - functionName:    dummy_offload_close
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 431
      functionLinenumberEnd: 447
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          80
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - cmap_cursor_advance
        - cmap_cursor_start
        - dpif_offload_destroy
        - dummy_offload_cast
        - dummy_offload_port_del
        - id_fpool_destroy
        - ovsthread_once_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-dummy.c:432,37'
          Dst:             dummy_offload_cast
        - Src:             'lib/dpif-offload-dummy.c:437,5'
          Dst:             cmap_cursor_start
        - Src:             'lib/dpif-offload-dummy.c:437,5'
          Dst:             cmap_cursor_advance
        - Src:             'lib/dpif-offload-dummy.c:438,9'
          Dst:             dummy_offload_port_del
        - Src:             'lib/dpif-offload-dummy.c:442,9'
          Dst:             id_fpool_destroy
        - Src:             'lib/dpif-offload-dummy.c:444,5'
          Dst:             ovsthread_once_destroy
        - Src:             'lib/dpif-offload-dummy.c:445,5'
          Dst:             dpif_offload_destroy
    - functionName:    dummy_offload_open
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 415
      functionLinenumberEnd: 426
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          56
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dpif_offload_init
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-dummy.c:418,15'
          Dst:             xmalloc
        - Src:             'lib/dpif-offload-dummy.c:420,5'
          Dst:             dpif_offload_init
    - functionName:    dummy_offload_hw_process_pkt
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 727
      functionLinenumberEnd: 817
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         52
      ICount:          322
      EdgeCount:       55
      CyclomaticComplexity: 5
      functionsReached:
        - abort
        - dp_packet_batch_init_packet
        - dp_packet_clone
        - dp_packet_get_rss_hash
        - dp_packet_l4
        - dp_packet_size
        - dummy_offload_get_port_by_odp_port
        - dummy_offload_udp_tnl_get_src_port__
        - flow_extract
        - netdev_n_txq
        - netdev_send
        - netdev_tnl_push_udp_header
        - nl_attr_get
        - nl_attr_get_odp_port
        - nl_attr_is_valid
        - nl_attr_len_pad
        - nl_attr_next
        - nl_attr_type
        - ovs_ignore
        - time_msec
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/dpif-offload-dummy.c:741,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/dpif-offload-dummy.c:728,21'
          Dst:             dp_packet_get_rss_hash
        - Src:             'lib/dpif-offload-dummy.c:729,25'
          Dst:             dp_packet_size
        - Src:             'lib/dpif-offload-dummy.c:737,5'
          Dst:             nl_attr_is_valid
        - Src:             'lib/dpif-offload-dummy.c:739,39'
          Dst:             nl_attr_type
        - Src:             'lib/dpif-offload-dummy.c:743,35'
          Dst:             nl_attr_get_odp_port
        - Src:             'lib/dpif-offload-dummy.c:748,20'
          Dst:             dummy_offload_get_port_by_odp_port
        - Src:             'lib/dpif-offload-dummy.c:753,21'
          Dst:             netdev_n_txq
        - Src:             'lib/dpif-offload-dummy.c:756,51'
          Dst:             dp_packet_clone
        - Src:             'lib/dpif-offload-dummy.c:754,13'
          Dst:             dp_packet_batch_init_packet
        - Src:             'lib/dpif-offload-dummy.c:760,13'
          Dst:             netdev_send
        - Src:             'lib/dpif-offload-dummy.c:764,54'
          Dst:             nl_attr_get
        - Src:             'lib/dpif-offload-dummy.c:769,24'
          Dst:             dummy_offload_udp_tnl_get_src_port__
        - Src:             'lib/dpif-offload-dummy.c:770,13'
          Dst:             netdev_tnl_push_udp_header
        - Src:             'lib/dpif-offload-dummy.c:772,13'
          Dst:             flow_extract
        - Src:             'lib/dpif-offload-dummy.c:773,19'
          Dst:             dp_packet_l4
        - Src:             'lib/dpif-offload-dummy.c:774,13'
          Dst:             ovs_ignore
        - Src:             'lib/dpif-offload-dummy.c:809,13'
          Dst:             abort
        - Src:             'lib/dpif-offload-dummy.c:737,5'
          Dst:             nl_attr_len_pad
        - Src:             'lib/dpif-offload-dummy.c:737,5'
          Dst:             nl_attr_next
        - Src:             'lib/dpif-offload-dummy.c:815,24'
          Dst:             time_msec
    - functionName:    dummy_netdev_hw_offload_run
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1100
      functionLinenumberEnd: 1147
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         43
      ICount:          249
      EdgeCount:       56
      CyclomaticComplexity: 15
      functionsReached:
        - cmap_cursor_advance
        - cmap_cursor_start
        - dpif_offload_enabled
        - dpif_offload_type
        - dummy_offload_hw_process_pkt
        - dummy_offload_port_cast
        - flow_equal_except
        - flow_extract
        - hmap_first
        - hmap_next
        - netdev_dummy_queue_simulate_offload_packet
        - ovs_list_is_empty
        - ovs_list_pop_front
        - ovs_mutex_trylock_at
        - ovs_mutex_unlock
        - strcmp
        - vlog
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-dummy.c:1105,10'
          Dst:             dpif_offload_enabled
        - Src:             'lib/dpif-offload-dummy.c:1106,19'
          Dst:             dpif_offload_type
        - Src:             'lib/dpif-offload-dummy.c:1106,12'
          Dst:             strcmp
        - Src:             'lib/dpif-offload-dummy.c:1110,5'
          Dst:             cmap_cursor_start
        - Src:             'lib/dpif-offload-dummy.c:1110,5'
          Dst:             cmap_cursor_advance
        - Src:             'lib/dpif-offload-dummy.c:1114,16'
          Dst:             dummy_offload_port_cast
        - Src:             'lib/dpif-offload-dummy.c:1116,13'
          Dst:             ovs_mutex_trylock_at
        - Src:             'lib/dpif-offload-dummy.c:1120,9'
          Dst:             ovs_list_is_empty
        - Src:             'lib/dpif-offload-dummy.c:1120,9'
          Dst:             ovs_list_pop_front
        - Src:             'lib/dpif-offload-dummy.c:1126,13'
          Dst:             flow_extract
        - Src:             'lib/dpif-offload-dummy.c:1127,13'
          Dst:             hmap_first
        - Src:             'lib/dpif-offload-dummy.c:1128,21'
          Dst:             flow_equal_except
        - Src:             'lib/dpif-offload-dummy.c:1131,33'
          Dst:             dummy_offload_hw_process_pkt
        - Src:             'lib/dpif-offload-dummy.c:1127,13'
          Dst:             hmap_next
        - Src:             'lib/dpif-offload-dummy.c:1138,17'
          Dst:             vlog
        - Src:             'lib/dpif-offload-dummy.c:1140,17'
          Dst:             netdev_dummy_queue_simulate_offload_packet
        - Src:             'lib/dpif-offload-dummy.c:1145,9'
          Dst:             ovs_mutex_unlock
    - functionName:    ovs_list_push_back
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 204
      functionLinenumberEnd: 206
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_list_insert
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/list.h:205,5'
          Dst:             ovs_list_insert
    - functionName:    dp_packet_set_flow_mark
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1087
      functionLinenumberEnd: 1090
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_flow_mark_ptr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:1088,6'
          Dst:             dp_packet_flow_mark_ptr
    - functionName:    dummy_netdev_simulate_offload
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1020
      functionLinenumberEnd: 1096
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         40
      ICount:          272
      EdgeCount:       52
      CyclomaticComplexity: 14
      functionsReached:
        - dp_packet_set_flow_mark
        - dpif_offload_enabled
        - dpif_offload_type
        - ds_cstr
        - ds_destroy
        - ds_put_cstr
        - ds_put_format
        - dummy_offload_get_port_by_netdev
        - flow_equal_except
        - flow_extract
        - flow_format
        - hmap_first
        - hmap_next
        - match_format
        - netdev_get_name
        - odp_format_ufid
        - ovs_list_push_back
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - strcmp
        - vlog
        - vlog_is_enabled
        - xmalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-dummy.c:1029,10'
          Dst:             dpif_offload_enabled
        - Src:             'lib/dpif-offload-dummy.c:1030,19'
          Dst:             dpif_offload_type
        - Src:             'lib/dpif-offload-dummy.c:1030,12'
          Dst:             strcmp
        - Src:             'lib/dpif-offload-dummy.c:1034,12'
          Dst:             dummy_offload_get_port_by_netdev
        - Src:             'lib/dpif-offload-dummy.c:1041,9'
          Dst:             flow_extract
        - Src:             'lib/dpif-offload-dummy.c:1044,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-offload-dummy.c:1045,5'
          Dst:             hmap_first
        - Src:             'lib/dpif-offload-dummy.c:1046,13'
          Dst:             flow_equal_except
        - Src:             'lib/dpif-offload-dummy.c:1048,13'
          Dst:             dp_packet_set_flow_mark
        - Src:             'lib/dpif-offload-dummy.c:1050,17'
          Dst:             vlog_is_enabled
        - Src:             'lib/dpif-offload-dummy.c:1054,31'
          Dst:             netdev_get_name
        - Src:             'lib/dpif-offload-dummy.c:1053,17'
          Dst:             ds_put_format
        - Src:             'lib/dpif-offload-dummy.c:1058,17'
          Dst:             flow_format
        - Src:             'lib/dpif-offload-dummy.c:1060,17'
          Dst:             ds_put_cstr
        - Src:             'lib/dpif-offload-dummy.c:1061,17'
          Dst:             odp_format_ufid
        - Src:             'lib/dpif-offload-dummy.c:1062,17'
          Dst:             ds_put_cstr
        - Src:             'lib/dpif-offload-dummy.c:1063,17'
          Dst:             match_format
        - Src:             'lib/dpif-offload-dummy.c:1064,17'
          Dst:             ds_put_format
        - Src:             'lib/dpif-offload-dummy.c:1066,17'
          Dst:             ds_cstr
        - Src:             'lib/dpif-offload-dummy.c:1066,17'
          Dst:             vlog
        - Src:             'lib/dpif-offload-dummy.c:1067,17'
          Dst:             ds_destroy
        - Src:             'lib/dpif-offload-dummy.c:1074,48'
          Dst:             xmalloc
        - Src:             'lib/dpif-offload-dummy.c:1078,17'
          Dst:             ovs_list_push_back
        - Src:             'lib/dpif-offload-dummy.c:1045,5'
          Dst:             hmap_next
        - Src:             'lib/dpif-offload-dummy.c:1094,5'
          Dst:             ovs_mutex_unlock
    - functionName:    init_this_module_dpif
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 57
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:57,1'
          Dst:             vlog_insert_module
    - functionName:    dpif_destroy_init_coverage
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 59
      functionLinenumberEnd: 59
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:59,1'
          Dst:             coverage_counter_register
    - functionName:    dpif_execute_init_coverage
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 60
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:60,1'
          Dst:             coverage_counter_register
    - functionName:    dpif_execute_error_init_coverage
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 61
      functionLinenumberEnd: 61
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:61,1'
          Dst:             coverage_counter_register
    - functionName:    dpif_execute_with_help_init_coverage
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 62
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:62,1'
          Dst:             coverage_counter_register
    - functionName:    dpif_flow_del_init_coverage
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 63
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:63,1'
          Dst:             coverage_counter_register
    - functionName:    dpif_flow_del_error_init_coverage
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 64
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:64,1'
          Dst:             coverage_counter_register
    - functionName:    dpif_flow_flush_init_coverage
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 65
      functionLinenumberEnd: 65
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:65,1'
          Dst:             coverage_counter_register
    - functionName:    dpif_flow_get_init_coverage
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:66,1'
          Dst:             coverage_counter_register
    - functionName:    dpif_flow_get_error_init_coverage
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 67
      functionLinenumberEnd: 67
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:67,1'
          Dst:             coverage_counter_register
    - functionName:    dpif_flow_put_init_coverage
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 68
      functionLinenumberEnd: 68
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:68,1'
          Dst:             coverage_counter_register
    - functionName:    dpif_flow_put_error_init_coverage
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 69
      functionLinenumberEnd: 69
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:69,1'
          Dst:             coverage_counter_register
    - functionName:    dpif_meter_del_init_coverage
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 70
      functionLinenumberEnd: 70
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:70,1'
          Dst:             coverage_counter_register
    - functionName:    dpif_meter_get_init_coverage
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 71
      functionLinenumberEnd: 71
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:71,1'
          Dst:             coverage_counter_register
    - functionName:    dpif_meter_set_init_coverage
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 72
      functionLinenumberEnd: 72
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:72,1'
          Dst:             coverage_counter_register
    - functionName:    dpif_port_add_init_coverage
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 73
      functionLinenumberEnd: 73
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:73,1'
          Dst:             coverage_counter_register
    - functionName:    dpif_port_del_init_coverage
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:74,1'
          Dst:             coverage_counter_register
    - functionName:    dpif_purge_init_coverage
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 75
      functionLinenumberEnd: 75
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:75,1'
          Dst:             coverage_counter_register
    - functionName:    dpif_purge_count
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 75
      functionLinenumberEnd: 75
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_dpif_purge_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:75,1'
          Dst:             counter_dpif_purge_get
    - functionName:    counter_dpif_purge_get
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 75
      functionLinenumberEnd: 75
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_dpif_purge_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:75,1'
          Dst:             counter_dpif_purge_get_unsafe
    - functionName:    counter_dpif_purge_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 75
      functionLinenumberEnd: 75
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_port_del_count
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_dpif_port_del_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:74,1'
          Dst:             counter_dpif_port_del_get
    - functionName:    counter_dpif_port_del_get
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_dpif_port_del_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:74,1'
          Dst:             counter_dpif_port_del_get_unsafe
    - functionName:    counter_dpif_port_del_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_port_add_count
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 73
      functionLinenumberEnd: 73
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_dpif_port_add_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:73,1'
          Dst:             counter_dpif_port_add_get
    - functionName:    counter_dpif_port_add_get
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 73
      functionLinenumberEnd: 73
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_dpif_port_add_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:73,1'
          Dst:             counter_dpif_port_add_get_unsafe
    - functionName:    counter_dpif_port_add_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 73
      functionLinenumberEnd: 73
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_meter_set_count
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 72
      functionLinenumberEnd: 72
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_dpif_meter_set_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:72,1'
          Dst:             counter_dpif_meter_set_get
    - functionName:    counter_dpif_meter_set_get
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 72
      functionLinenumberEnd: 72
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_dpif_meter_set_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:72,1'
          Dst:             counter_dpif_meter_set_get_unsafe
    - functionName:    counter_dpif_meter_set_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 72
      functionLinenumberEnd: 72
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_meter_get_count
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 71
      functionLinenumberEnd: 71
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_dpif_meter_get_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:71,1'
          Dst:             counter_dpif_meter_get_get
    - functionName:    counter_dpif_meter_get_get
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 71
      functionLinenumberEnd: 71
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_dpif_meter_get_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:71,1'
          Dst:             counter_dpif_meter_get_get_unsafe
    - functionName:    counter_dpif_meter_get_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 71
      functionLinenumberEnd: 71
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_meter_del_count
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 70
      functionLinenumberEnd: 70
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_dpif_meter_del_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:70,1'
          Dst:             counter_dpif_meter_del_get
    - functionName:    counter_dpif_meter_del_get
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 70
      functionLinenumberEnd: 70
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_dpif_meter_del_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:70,1'
          Dst:             counter_dpif_meter_del_get_unsafe
    - functionName:    counter_dpif_meter_del_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 70
      functionLinenumberEnd: 70
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_flow_put_error_count
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 69
      functionLinenumberEnd: 69
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_dpif_flow_put_error_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:69,1'
          Dst:             counter_dpif_flow_put_error_get
    - functionName:    counter_dpif_flow_put_error_get
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 69
      functionLinenumberEnd: 69
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_dpif_flow_put_error_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:69,1'
          Dst:             counter_dpif_flow_put_error_get_unsafe
    - functionName:    counter_dpif_flow_put_error_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 69
      functionLinenumberEnd: 69
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_flow_put_count
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 68
      functionLinenumberEnd: 68
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_dpif_flow_put_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:68,1'
          Dst:             counter_dpif_flow_put_get
    - functionName:    counter_dpif_flow_put_get
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 68
      functionLinenumberEnd: 68
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_dpif_flow_put_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:68,1'
          Dst:             counter_dpif_flow_put_get_unsafe
    - functionName:    counter_dpif_flow_put_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 68
      functionLinenumberEnd: 68
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_flow_get_error_count
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 67
      functionLinenumberEnd: 67
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_dpif_flow_get_error_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:67,1'
          Dst:             counter_dpif_flow_get_error_get
    - functionName:    counter_dpif_flow_get_error_get
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 67
      functionLinenumberEnd: 67
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_dpif_flow_get_error_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:67,1'
          Dst:             counter_dpif_flow_get_error_get_unsafe
    - functionName:    counter_dpif_flow_get_error_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 67
      functionLinenumberEnd: 67
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_flow_get_count
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_dpif_flow_get_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:66,1'
          Dst:             counter_dpif_flow_get_get
    - functionName:    counter_dpif_flow_get_get
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_dpif_flow_get_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:66,1'
          Dst:             counter_dpif_flow_get_get_unsafe
    - functionName:    counter_dpif_flow_get_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_flow_flush_count
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 65
      functionLinenumberEnd: 65
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_dpif_flow_flush_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:65,1'
          Dst:             counter_dpif_flow_flush_get
    - functionName:    counter_dpif_flow_flush_get
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 65
      functionLinenumberEnd: 65
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_dpif_flow_flush_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:65,1'
          Dst:             counter_dpif_flow_flush_get_unsafe
    - functionName:    counter_dpif_flow_flush_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 65
      functionLinenumberEnd: 65
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_flow_del_error_count
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 64
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_dpif_flow_del_error_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:64,1'
          Dst:             counter_dpif_flow_del_error_get
    - functionName:    counter_dpif_flow_del_error_get
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 64
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_dpif_flow_del_error_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:64,1'
          Dst:             counter_dpif_flow_del_error_get_unsafe
    - functionName:    counter_dpif_flow_del_error_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 64
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_flow_del_count
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 63
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_dpif_flow_del_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:63,1'
          Dst:             counter_dpif_flow_del_get
    - functionName:    counter_dpif_flow_del_get
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 63
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_dpif_flow_del_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:63,1'
          Dst:             counter_dpif_flow_del_get_unsafe
    - functionName:    counter_dpif_flow_del_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 63
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_execute_with_help_count
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 62
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_dpif_execute_with_help_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:62,1'
          Dst:             counter_dpif_execute_with_help_get
    - functionName:    counter_dpif_execute_with_help_get
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 62
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_dpif_execute_with_help_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:62,1'
          Dst:             counter_dpif_execute_with_help_get_unsafe
    - functionName:    counter_dpif_execute_with_help_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 62
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_execute_error_count
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 61
      functionLinenumberEnd: 61
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_dpif_execute_error_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:61,1'
          Dst:             counter_dpif_execute_error_get
    - functionName:    counter_dpif_execute_error_get
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 61
      functionLinenumberEnd: 61
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_dpif_execute_error_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:61,1'
          Dst:             counter_dpif_execute_error_get_unsafe
    - functionName:    counter_dpif_execute_error_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 61
      functionLinenumberEnd: 61
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_execute_count
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 60
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_dpif_execute_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:60,1'
          Dst:             counter_dpif_execute_get
    - functionName:    counter_dpif_execute_get
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 60
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_dpif_execute_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:60,1'
          Dst:             counter_dpif_execute_get_unsafe
    - functionName:    counter_dpif_execute_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 60
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_destroy_count
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 59
      functionLinenumberEnd: 59
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_dpif_destroy_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:59,1'
          Dst:             counter_dpif_destroy_get
    - functionName:    counter_dpif_destroy_get
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 59
      functionLinenumberEnd: 59
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_dpif_destroy_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:59,1'
          Dst:             counter_dpif_destroy_get_unsafe
    - functionName:    counter_dpif_destroy_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 59
      functionLinenumberEnd: 59
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_base
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 750
      functionLinenumberEnd: 751
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __packet_data
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 774
      functionLinenumberEnd: 775
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    free_afxdp_buf
      functionSourceFile: '/src/openvswitch/lib/netdev-afxdp.h'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 84
      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:    free_dpdk_buf
      functionSourceFile: '/src/openvswitch/lib/netdev-dpdk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 76
      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:    ipv6_addr_equals
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1184
      functionLinenumberEnd: 1186
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          80
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ipv6_addr_is_set
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1205
      functionLinenumberEnd: 1206
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ipv6_addr_equals
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:1206,13'
          Dst:             ipv6_addr_equals
    - functionName:    dp_packet_delete_batch
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1008
      functionLinenumberEnd: 1017
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          65
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - dp_packet_batch_reset
        - dp_packet_batch_size
        - dp_packet_delete
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:1012,9'
          Dst:             dp_packet_batch_size
        - Src:             'lib/dp-packet.h:1013,13'
          Dst:             dp_packet_delete
        - Src:             'lib/dp-packet.h:1015,9'
          Dst:             dp_packet_batch_reset
    - functionName:    dp_packet_batch_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 910
      functionLinenumberEnd: 911
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_delete
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 271
      functionLinenumberEnd: 290
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          54
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - dp_packet_uninit
        - free_afxdp_buf
        - free_dpdk_buf
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:274,13'
          Dst:             free_dpdk_buf
        - Src:             'lib/dp-packet.h:279,13'
          Dst:             free_afxdp_buf
        - Src:             'lib/dp-packet.h:283,9'
          Dst:             dp_packet_uninit
    - functionName:    dp_packet_batch_reset
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 872
      functionLinenumberEnd: 875
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofpbuf_clear
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 250
      functionLinenumberEnd: 253
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_set_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 768
      functionLinenumberEnd: 770
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_reset_cutlen
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 811
      functionLinenumberEnd: 813
      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:    dp_packet_get_cutlen
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 832
      functionLinenumberEnd: 834
      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:    flow_tnl_dst_is_set
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 51
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ipv6_addr_is_set
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:52,27'
          Dst:             ipv6_addr_is_set
    - functionName:    dp_packet_batch_init
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 879
      functionLinenumberEnd: 883
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_batch_reset
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:880,5'
          Dst:             dp_packet_batch_reset
    - functionName:    dp_packet_batch_destroy
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 999
      functionLinenumberEnd: 1004
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_execute_helper_cb
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1188
      functionLinenumberEnd: 1289
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         63
      ICount:          382
      EdgeCount:       71
      CyclomaticComplexity: 10
      functionsReached:
        - abort
        - dp_packet_batch_size
        - dp_packet_clone
        - dp_packet_delete
        - dp_packet_delete_batch
        - dp_packet_get_cutlen
        - dp_packet_reset_cutlen
        - dp_packet_set_size
        - dp_packet_size
        - dpif_execute
        - flow_tnl_dst_is_set
        - log_execute_message
        - nl_attr_type
        - odp_put_tunnel_action
        - ofpbuf_clear
        - ofpbuf_put
        - ovs_ignore
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/dpif.c:1195,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/dpif.c:1190,16'
          Dst:             nl_attr_type
        - Src:             'lib/dpif.c:1193,16'
          Dst:             dp_packet_batch_size
        - Src:             'lib/dpif.c:1193,5'
          Dst:             ovs_ignore
        - Src:             'lib/dpif.c:1204,9'
          Dst:             ofpbuf_put
        - Src:             'lib/dpif.c:1219,13'
          Dst:             flow_tnl_dst_is_set
        - Src:             'lib/dpif.c:1225,17'
          Dst:             flow_tnl_dst_is_set
        - Src:             'lib/dpif.c:1226,17'
          Dst:             odp_put_tunnel_action
        - Src:             'lib/dpif.c:1228,13'
          Dst:             ofpbuf_put
        - Src:             'lib/dpif.c:1238,27'
          Dst:             dp_packet_get_cutlen
        - Src:             'lib/dpif.c:1244,13'
          Dst:             dp_packet_reset_cutlen
        - Src:             'lib/dpif.c:1246,34'
          Dst:             dp_packet_clone
        - Src:             'lib/dpif.c:1248,40'
          Dst:             dp_packet_size
        - Src:             'lib/dpif.c:1248,13'
          Dst:             dp_packet_set_size
        - Src:             'lib/dpif.c:1254,22'
          Dst:             dpif_execute
        - Src:             'lib/dpif.c:1255,9'
          Dst:             log_execute_message
        - Src:             'lib/dpif.c:1258,9'
          Dst:             dp_packet_delete
        - Src:             'lib/dpif.c:1262,9'
          Dst:             ofpbuf_clear
        - Src:             'lib/dpif.c:1286,9'
          Dst:             abort
        - Src:             'lib/dpif.c:1288,5'
          Dst:             dp_packet_delete_batch
    - functionName:    dp_packet_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 762
      functionLinenumberEnd: 763
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_execute
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1327
      functionLinenumberEnd: 1342
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dpif_operate
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:1336,9'
          Dst:             dpif_operate
    - functionName:    log_execute_message
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1893
      functionLinenumberEnd: 1923
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          167
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - dp_packet_data
        - dp_packet_size
        - dpif_execute_needs_help
        - dpif_name
        - ds_cstr
        - ds_destroy
        - ds_put_format
        - format_odp_actions
        - odp_flow_format
        - odp_key_from_dp_packet
        - ofp_packet_to_string
        - ofpbuf_uninit
        - ovs_strerror
        - vlog
        - vlog_should_drop
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:1894,19'
          Dst:             vlog_should_drop
        - Src:             'lib/dpif.c:1894,47'
          Dst:             vlog_should_drop
        - Src:             'lib/dpif.c:1901,39'
          Dst:             dp_packet_data
        - Src:             'lib/dpif.c:1902,39'
          Dst:             dp_packet_size
        - Src:             'lib/dpif.c:1901,18'
          Dst:             ofp_packet_to_string
        - Src:             'lib/dpif.c:1904,9'
          Dst:             odp_key_from_dp_packet
        - Src:             'lib/dpif.c:1906,23'
          Dst:             dpif_name
        - Src:             'lib/dpif.c:1908,26'
          Dst:             dpif_execute_needs_help
        - Src:             'lib/dpif.c:1905,9'
          Dst:             ds_put_format
        - Src:             'lib/dpif.c:1910,9'
          Dst:             format_odp_actions
        - Src:             'lib/dpif.c:1912,48'
          Dst:             ovs_strerror
        - Src:             'lib/dpif.c:1912,13'
          Dst:             ds_put_format
        - Src:             'lib/dpif.c:1914,9'
          Dst:             ds_put_format
        - Src:             'lib/dpif.c:1915,9'
          Dst:             ds_put_format
        - Src:             'lib/dpif.c:1916,9'
          Dst:             odp_flow_format
        - Src:             'lib/dpif.c:1917,9'
          Dst:             ds_put_format
        - Src:             'lib/dpif.c:1918,56'
          Dst:             ds_cstr
        - Src:             'lib/dpif.c:1918,9'
          Dst:             vlog
        - Src:             'lib/dpif.c:1919,9'
          Dst:             ds_destroy
        - Src:             'lib/dpif.c:1921,9'
          Dst:             ofpbuf_uninit
    - functionName:    dp_packet_data
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 845
      functionLinenumberEnd: 847
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __packet_data
        - dp_packet_base
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:846,12'
          Dst:             __packet_data
        - Src:             'lib/dp-packet.h:847,23'
          Dst:             dp_packet_base
        - Src:             'lib/dp-packet.h:847,43'
          Dst:             __packet_data
    - functionName:    dpif_name
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 483
      functionLinenumberEnd: 484
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    44
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_execute_needs_help
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1320
      functionLinenumberEnd: 1321
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - nl_attr_oversized
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:1321,35'
          Dst:             nl_attr_oversized
    - functionName:    dpif_operate
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1352
      functionLinenumberEnd: 1468
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         66
      ICount:          382
      EdgeCount:       83
      CyclomaticComplexity: 19
      functionsReached:
        - dpif_execute_add
        - dpif_execute_error_add
        - dpif_execute_needs_help
        - dpif_execute_with_help
        - dpif_flow_del_add
        - dpif_flow_del_error_add
        - dpif_flow_get_add
        - dpif_flow_get_error_add
        - dpif_flow_put_add
        - dpif_flow_put_error_add
        - dpif_offload_enabled
        - dpif_offload_operate
        - log_execute_message
        - log_flow_del_message
        - log_flow_get_message
        - log_flow_put_message
        - xmemdup
      functionUses:    5
      BranchProfiles:
        - Branch String:   'lib/dpif.c:1404,17'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/dpif.c:1353,49'
          Dst:             dpif_offload_enabled
        - Src:             'lib/dpif.c:1372,20'
          Dst:             dpif_execute_needs_help
        - Src:             'lib/dpif.c:1384,55'
          Dst:             dpif_offload_enabled
        - Src:             'lib/dpif.c:1388,28'
          Dst:             xmemdup
        - Src:             'lib/dpif.c:1390,28'
          Dst:             dpif_offload_operate
        - Src:             'lib/dpif.c:1408,21'
          Dst:             dpif_flow_put_add
        - Src:             'lib/dpif.c:1409,21'
          Dst:             log_flow_put_message
        - Src:             'lib/dpif.c:1411,25'
          Dst:             dpif_flow_put_error_add
        - Src:             'lib/dpif.c:1422,21'
          Dst:             dpif_flow_get_add
        - Src:             'lib/dpif.c:1424,25'
          Dst:             dpif_flow_get_error_add
        - Src:             'lib/dpif.c:1427,21'
          Dst:             log_flow_get_message
        - Src:             'lib/dpif.c:1434,21'
          Dst:             dpif_flow_del_add
        - Src:             'lib/dpif.c:1435,21'
          Dst:             log_flow_del_message
        - Src:             'lib/dpif.c:1437,25'
          Dst:             dpif_flow_del_error_add
        - Src:             'lib/dpif.c:1446,21'
          Dst:             dpif_execute_add
        - Src:             'lib/dpif.c:1447,21'
          Dst:             log_execute_message
        - Src:             'lib/dpif.c:1450,25'
          Dst:             dpif_execute_error_add
        - Src:             'lib/dpif.c:1462,13'
          Dst:             dpif_execute_add
        - Src:             'lib/dpif.c:1463,25'
          Dst:             dpif_execute_with_help
    - functionName:    dpif_flow_put_add
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 68
      functionLinenumberEnd: 68
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_dpif_flow_put_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:68,1'
          Dst:             counter_dpif_flow_put_get
    - functionName:    log_flow_put_message
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1833
      functionLinenumberEnd: 1855
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          120
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - ds_cstr
        - ds_destroy
        - ds_init
        - ds_put_cstr
        - log_flow_message
        - should_log_flow_message
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:1834,9'
          Dst:             should_log_flow_message
        - Src:             'lib/dpif.c:1838,9'
          Dst:             ds_init
        - Src:             'lib/dpif.c:1839,9'
          Dst:             ds_put_cstr
        - Src:             'lib/dpif.c:1841,13'
          Dst:             ds_put_cstr
        - Src:             'lib/dpif.c:1844,13'
          Dst:             ds_put_cstr
        - Src:             'lib/dpif.c:1847,13'
          Dst:             ds_put_cstr
        - Src:             'lib/dpif.c:1849,47'
          Dst:             ds_cstr
        - Src:             'lib/dpif.c:1849,9'
          Dst:             log_flow_message
        - Src:             'lib/dpif.c:1853,9'
          Dst:             ds_destroy
    - functionName:    dpif_flow_put_error_add
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 69
      functionLinenumberEnd: 69
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_dpif_flow_put_error_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:69,1'
          Dst:             counter_dpif_flow_put_error_get
    - functionName:    dpif_flow_get_add
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_dpif_flow_get_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:66,1'
          Dst:             counter_dpif_flow_get_get
    - functionName:    dpif_flow_get_error_add
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 67
      functionLinenumberEnd: 67
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_dpif_flow_get_error_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:67,1'
          Dst:             counter_dpif_flow_get_error_get
    - functionName:    log_flow_get_message
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1930
      functionLinenumberEnd: 1938
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          68
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - log_flow_message
        - should_log_flow_message
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:1931,9'
          Dst:             should_log_flow_message
        - Src:             'lib/dpif.c:1932,9'
          Dst:             log_flow_message
    - functionName:    dpif_flow_del_add
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 63
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_dpif_flow_del_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:63,1'
          Dst:             counter_dpif_flow_del_get
    - functionName:    log_flow_del_message
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1862
      functionLinenumberEnd: 1869
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          57
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - log_flow_message
        - should_log_flow_message
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:1863,9'
          Dst:             should_log_flow_message
        - Src:             'lib/dpif.c:1864,9'
          Dst:             log_flow_message
    - functionName:    dpif_flow_del_error_add
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 64
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_dpif_flow_del_error_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:64,1'
          Dst:             counter_dpif_flow_del_error_get
    - functionName:    dpif_execute_add
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 60
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_dpif_execute_get
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:60,1'
          Dst:             counter_dpif_execute_get
    - functionName:    dpif_execute_error_add
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 61
      functionLinenumberEnd: 61
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_dpif_execute_error_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:61,1'
          Dst:             counter_dpif_execute_error_get
    - functionName:    dpif_execute_with_help
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1298
      functionLinenumberEnd: 1314
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          48
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_batch_destroy
        - dp_packet_batch_init_packet
        - dpif_execute_helper_cb
        - dpif_execute_with_help_add
        - odp_execute_actions
        - ofpbuf_init
        - ofpbuf_uninit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:1306,5'
          Dst:             dpif_execute_with_help_add
        - Src:             'lib/dpif.c:1308,5'
          Dst:             ofpbuf_init
        - Src:             'lib/dpif.c:1309,5'
          Dst:             dp_packet_batch_init_packet
        - Src:             'lib/dpif.c:1310,5'
          Dst:             odp_execute_actions
        - Src:             'lib/dpif.c:1310,5'
          Dst:             dpif_execute_helper_cb
        - Src:             'lib/dpif.c:1312,5'
          Dst:             dp_packet_batch_destroy
        - Src:             'lib/dpif.c:1313,5'
          Dst:             ofpbuf_uninit
    - functionName:    dpif_execute_with_help_add
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 62
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_dpif_execute_with_help_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:62,1'
          Dst:             counter_dpif_execute_with_help_get
    - functionName:    dp_packet_batch_init_packet
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 929
      functionLinenumberEnd: 933
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_batch_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:930,5'
          Dst:             dp_packet_batch_init
    - functionName:    should_log_flow_message
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1788
      functionLinenumberEnd: 1790
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - flow_message_log_level
        - vlog_should_drop
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:1789,38'
          Dst:             flow_message_log_level
        - Src:             'lib/dpif.c:1789,13'
          Dst:             vlog_should_drop
    - functionName:    log_flow_message
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1801
      functionLinenumberEnd: 1826
      functionDepth:   0
      returnType:      void
      argCount:        12
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          124
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - dpif_flow_stats_format
        - dpif_name
        - ds_cstr
        - ds_destroy
        - ds_put_cstr
        - ds_put_format
        - flow_message_log_level
        - format_odp_actions
        - odp_flow_format
        - odp_format_ufid
        - ovs_strerror
        - vlog
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:1803,32'
          Dst:             dpif_name
        - Src:             'lib/dpif.c:1803,5'
          Dst:             ds_put_format
        - Src:             'lib/dpif.c:1805,9'
          Dst:             ds_put_cstr
        - Src:             'lib/dpif.c:1807,5'
          Dst:             ds_put_format
        - Src:             'lib/dpif.c:1809,37'
          Dst:             ovs_strerror
        - Src:             'lib/dpif.c:1809,9'
          Dst:             ds_put_format
        - Src:             'lib/dpif.c:1812,9'
          Dst:             odp_format_ufid
        - Src:             'lib/dpif.c:1813,9'
          Dst:             ds_put_cstr
        - Src:             'lib/dpif.c:1815,5'
          Dst:             odp_flow_format
        - Src:             'lib/dpif.c:1817,9'
          Dst:             ds_put_cstr
        - Src:             'lib/dpif.c:1818,9'
          Dst:             dpif_flow_stats_format
        - Src:             'lib/dpif.c:1821,9'
          Dst:             ds_put_cstr
        - Src:             'lib/dpif.c:1822,9'
          Dst:             format_odp_actions
        - Src:             'lib/dpif.c:1824,18'
          Dst:             flow_message_log_level
        - Src:             'lib/dpif.c:1824,55'
          Dst:             ds_cstr
        - Src:             'lib/dpif.c:1824,5'
          Dst:             vlog
        - Src:             'lib/dpif.c:1825,5'
          Dst:             ds_destroy
    - functionName:    dpif_flow_stats_format
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 917
      functionLinenumberEnd: 929
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          69
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ds_put_cstr
        - ds_put_format
        - packet_format_tcp_flags
        - time_msec
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:918,5'
          Dst:             ds_put_format
        - Src:             'lib/dpif.c:921,36'
          Dst:             time_msec
        - Src:             'lib/dpif.c:921,9'
          Dst:             ds_put_format
        - Src:             'lib/dpif.c:923,9'
          Dst:             ds_put_format
        - Src:             'lib/dpif.c:926,9'
          Dst:             ds_put_cstr
        - Src:             'lib/dpif.c:927,9'
          Dst:             packet_format_tcp_flags
    - functionName:    flow_message_log_level
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1777
      functionLinenumberEnd: 1783
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          24
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_next__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 401
      functionLinenumberEnd: 410
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          51
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsthread_once_start
      functionSourceFile: '/src/openvswitch/./include/openvswitch/thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsthread_once_start__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/thread.h:161,12'
          Dst:             ovsthread_once_start__
    - functionName:    dpif_cache_set_size
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2124
      functionLinenumberEnd: 2126
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_cache_get_size
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2116
      functionLinenumberEnd: 2118
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_cache_get_name
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2108
      functionLinenumberEnd: 2110
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_cache_get_supported_levels
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2100
      functionLinenumberEnd: 2102
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_bond_stats_get
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2090
      functionLinenumberEnd: 2094
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_bond_del
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2081
      functionLinenumberEnd: 2083
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_bond_add
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2073
      functionLinenumberEnd: 2075
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_meter_del_add
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 70
      functionLinenumberEnd: 70
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_dpif_meter_del_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:70,1'
          Dst:             counter_dpif_meter_del_get
    - functionName:    dpif_meter_del
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2048
      functionLinenumberEnd: 2068
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          119
      EdgeCount:       23
      CyclomaticComplexity: 6
      functionsReached:
        - dpif_meter_del_add
        - dpif_name
        - dpif_offload_meter_del
        - ovs_strerror
        - vlog_rate_limit
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:2051,5'
          Dst:             dpif_meter_del_add
        - Src:             'lib/dpif.c:2055,9'
          Dst:             dpif_name
        - Src:             'lib/dpif.c:2055,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif.c:2057,9'
          Dst:             dpif_offload_meter_del
        - Src:             'lib/dpif.c:2059,9'
          Dst:             dpif_name
        - Src:             'lib/dpif.c:2059,9'
          Dst:             ovs_strerror
        - Src:             'lib/dpif.c:2059,9'
          Dst:             vlog_rate_limit
    - functionName:    dpif_meter_get_add
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 71
      functionLinenumberEnd: 71
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_dpif_meter_get_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:71,1'
          Dst:             counter_dpif_meter_get_get
    - functionName:    dpif_meter_get
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2024
      functionLinenumberEnd: 2042
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          111
      EdgeCount:       19
      CyclomaticComplexity: 5
      functionsReached:
        - dpif_meter_get_add
        - dpif_name
        - dpif_offload_meter_get
        - ovs_strerror
        - vlog_rate_limit
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:2027,5'
          Dst:             dpif_meter_get_add
        - Src:             'lib/dpif.c:2031,9'
          Dst:             dpif_name
        - Src:             'lib/dpif.c:2031,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif.c:2033,9'
          Dst:             dpif_offload_meter_get
        - Src:             'lib/dpif.c:2035,9'
          Dst:             dpif_name
        - Src:             'lib/dpif.c:2035,9'
          Dst:             ovs_strerror
        - Src:             'lib/dpif.c:2035,9'
          Dst:             vlog_rate_limit
    - functionName:    dpif_meter_set_add
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 72
      functionLinenumberEnd: 72
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_dpif_meter_set_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:72,1'
          Dst:             counter_dpif_meter_set_get
    - functionName:    dpif_meter_set
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1988
      functionLinenumberEnd: 2019
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         32
      ICount:          191
      EdgeCount:       41
      CyclomaticComplexity: 11
      functionsReached:
        - dpif_meter_set_add
        - dpif_name
        - dpif_offload_meter_set
        - ovs_strerror
        - vlog_rate_limit
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:1989,5'
          Dst:             dpif_meter_set_add
        - Src:             'lib/dpif.c:2011,9'
          Dst:             dpif_name
        - Src:             'lib/dpif.c:2011,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif.c:2013,9'
          Dst:             dpif_offload_meter_set
        - Src:             'lib/dpif.c:2015,9'
          Dst:             dpif_name
        - Src:             'lib/dpif.c:2015,9'
          Dst:             ovs_strerror
        - Src:             'lib/dpif.c:2015,9'
          Dst:             vlog_rate_limit
    - functionName:    dpif_meter_get_features
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1974
      functionLinenumberEnd: 1979
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_may_support_psample
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1965
      functionLinenumberEnd: 1967
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dpif_is_netdev
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:1967,13'
          Dst:             dpif_is_netdev
    - functionName:    dpif_supports_lb_output_action
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1955
      functionLinenumberEnd: 1960
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dpif_is_netdev
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:1960,12'
          Dst:             dpif_is_netdev
    - functionName:    dpif_may_support_explicit_drop_action
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1948
      functionLinenumberEnd: 1950
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          27
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dpif_is_netdev
        - dpif_offload_enabled
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:1950,12'
          Dst:             dpif_is_netdev
        - Src:             'lib/dpif.c:1950,37'
          Dst:             dpif_offload_enabled
    - functionName:    dpif_supports_tnl_push_pop
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1942
      functionLinenumberEnd: 1943
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dpif_is_netdev
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:1943,12'
          Dst:             dpif_is_netdev
    - functionName:    dpif_init
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1732
      functionLinenumberEnd: 1739
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - char
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          84
      EdgeCount:       13
      CyclomaticComplexity: 8
      functionsReached:
        - xasprintf
        - xstrdup
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/dpif.c:1738,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/dpif.c:1734,23'
          Dst:             xstrdup
        - Src:             'lib/dpif.c:1735,23'
          Dst:             xasprintf
    - functionName:    dpif_queue_to_priority
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1716
      functionLinenumberEnd: 1725
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          64
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - log_operation
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:1724,5'
          Dst:             log_operation
    - functionName:    log_operation
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1763
      functionLinenumberEnd: 1773
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          107
      EdgeCount:       29
      CyclomaticComplexity: 7
      functionsReached:
        - dpif_name
        - ofperr_get_name
        - ofperr_is_valid
        - ovs_strerror
        - vlog_rate_limit
      functionUses:    15
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:1765,9'
          Dst:             dpif_name
        - Src:             'lib/dpif.c:1765,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif.c:1766,16'
          Dst:             ofperr_is_valid
        - Src:             'lib/dpif.c:1767,9'
          Dst:             dpif_name
        - Src:             'lib/dpif.c:1767,9'
          Dst:             ofperr_get_name
        - Src:             'lib/dpif.c:1767,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif.c:1770,9'
          Dst:             dpif_name
        - Src:             'lib/dpif.c:1770,9'
          Dst:             ovs_strerror
        - Src:             'lib/dpif.c:1770,9'
          Dst:             vlog_rate_limit
    - functionName:    dpif_get_netflow_ids
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1704
      functionLinenumberEnd: 1707
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          20
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_get_dp_version
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1689
      functionLinenumberEnd: 1696
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_recv_wait
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1677
      functionLinenumberEnd: 1681
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_purge_add
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 75
      functionLinenumberEnd: 75
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_dpif_purge_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:75,1'
          Dst:             counter_dpif_purge_get
    - functionName:    dpif_recv_purge
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1664
      functionLinenumberEnd: 1669
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dpif_purge_add
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:1665,5'
          Dst:             dpif_purge_add
    - functionName:    dpif_recv
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1640
      functionLinenumberEnd: 1657
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          74
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - dpif_print_packet
        - log_operation
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:1652,13'
          Dst:             dpif_print_packet
        - Src:             'lib/dpif.c:1654,13'
          Dst:             log_operation
    - functionName:    dpif_print_packet
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1582
      functionLinenumberEnd: 1599
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          69
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - dpif_name
        - dpif_upcall_type_to_string
        - ds_cstr
        - ds_destroy
        - ds_init
        - odp_flow_key_format
        - ofp_dp_packet_to_string
        - vlog
        - vlog_should_drop
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:1583,10'
          Dst:             vlog_should_drop
        - Src:             'lib/dpif.c:1587,18'
          Dst:             ofp_dp_packet_to_string
        - Src:             'lib/dpif.c:1589,9'
          Dst:             ds_init
        - Src:             'lib/dpif.c:1590,9'
          Dst:             odp_flow_key_format
        - Src:             'lib/dpif.c:1592,9'
          Dst:             dpif_name
        - Src:             'lib/dpif.c:1592,9'
          Dst:             dpif_upcall_type_to_string
        - Src:             'lib/dpif.c:1592,9'
          Dst:             ds_cstr
        - Src:             'lib/dpif.c:1592,9'
          Dst:             vlog
        - Src:             'lib/dpif.c:1596,9'
          Dst:             ds_destroy
    - functionName:    dpif_upcall_type_to_string
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1473
      functionLinenumberEnd: 1479
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          32
      EdgeCount:       12
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/dpif.c:1474,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    dpif_set_config
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1605
      functionLinenumberEnd: 1616
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          59
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - dpif_offload_set_config
        - log_operation
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:1611,13'
          Dst:             log_operation
        - Src:             'lib/dpif.c:1614,5'
          Dst:             dpif_offload_set_config
    - functionName:    dpif_disable_upcall
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1574
      functionLinenumberEnd: 1578
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_enable_upcall
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1566
      functionLinenumberEnd: 1570
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_register_upcall_cb
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1558
      functionLinenumberEnd: 1562
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_register_dp_purge_cb
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1550
      functionLinenumberEnd: 1554
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_number_handlers_required
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1541
      functionLinenumberEnd: 1546
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_handlers_set
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1522
      functionLinenumberEnd: 1529
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - log_operation
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:1527,9'
          Dst:             log_operation
    - functionName:    dpif_recv_set
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1490
      functionLinenumberEnd: 1497
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - log_operation
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:1495,9'
          Dst:             log_operation
    - functionName:    dpif_flow_dump_next
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1148
      functionLinenumberEnd: 1173
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          160
      EdgeCount:       30
      CyclomaticComplexity: 8
      functionsReached:
        - dpif_name
        - dpif_offload_flow_dump_next
        - log_flow_message
        - ovs_ignore
        - should_log_flow_message
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:1152,5'
          Dst:             ovs_ignore
        - Src:             'lib/dpif.c:1155,13'
          Dst:             dpif_offload_flow_dump_next
        - Src:             'lib/dpif.c:1165,17'
          Dst:             should_log_flow_message
        - Src:             'lib/dpif.c:1166,13'
          Dst:             log_flow_message
        - Src:             'lib/dpif.c:1171,9'
          Dst:             dpif_name
        - Src:             'lib/dpif.c:1171,9'
          Dst:             vlog_rate_limit
    - functionName:    dpif_flow_dump_thread_destroy
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1122
      functionLinenumberEnd: 1125
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dpif_offload_flow_dump_thread_destroy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:1123,5'
          Dst:             dpif_offload_flow_dump_thread_destroy
    - functionName:    dpif_flow_dump_thread_create
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1115
      functionLinenumberEnd: 1116
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_flow_dump_destroy
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1097
      functionLinenumberEnd: 1109
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          73
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - dpif_offload_flow_dump_destroy
        - log_operation
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:1102,21'
          Dst:             dpif_offload_flow_dump_destroy
        - Src:             'lib/dpif.c:1108,5'
          Dst:             log_operation
    - functionName:    dpif_flow_dump_create
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1085
      functionLinenumberEnd: 1086
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_flow_del
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1058
      functionLinenumberEnd: 1073
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          55
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dpif_operate
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:1071,5'
          Dst:             dpif_operate
    - functionName:    ovs_u128_equals
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 481
      functionLinenumberEnd: 482
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          37
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_flow_get
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1001
      functionLinenumberEnd: 1020
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          72
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dpif_operate
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:1018,5'
          Dst:             dpif_operate
    - functionName:    dpif_flow_put
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1031
      functionLinenumberEnd: 1050
      functionDepth:   0
      returnType:      int
      argCount:        11
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          82
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dpif_operate
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:1048,5'
          Dst:             dpif_operate
    - functionName:    dpif_probe_feature
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 953
      functionLinenumberEnd: 994
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         40
      ICount:          235
      EdgeCount:       52
      CyclomaticComplexity: 14
      functionsReached:
        - dpif_flow_del
        - dpif_flow_get
        - dpif_flow_put
        - dpif_name
        - ofpbuf_use_stack
        - ovs_strerror
        - ovs_u128_equals
        - vlog
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:965,13'
          Dst:             dpif_flow_put
        - Src:             'lib/dpif.c:971,13'
          Dst:             dpif_name
        - Src:             'lib/dpif.c:971,13'
          Dst:             ovs_strerror
        - Src:             'lib/dpif.c:971,13'
          Dst:             vlog
        - Src:             'lib/dpif.c:977,5'
          Dst:             ofpbuf_use_stack
        - Src:             'lib/dpif.c:978,13'
          Dst:             dpif_flow_get
        - Src:             'lib/dpif.c:982,26'
          Dst:             ovs_u128_equals
        - Src:             'lib/dpif.c:986,13'
          Dst:             dpif_flow_del
        - Src:             'lib/dpif.c:989,9'
          Dst:             dpif_name
        - Src:             'lib/dpif.c:989,9'
          Dst:             vlog
    - functionName:    dpif_flow_flush_add
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 65
      functionLinenumberEnd: 65
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_dpif_flow_flush_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:65,1'
          Dst:             counter_dpif_flow_flush_get
    - functionName:    dpif_flow_flush
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 935
      functionLinenumberEnd: 943
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dpif_flow_flush_add
        - dpif_offload_flow_flush
        - log_operation
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:938,5'
          Dst:             dpif_flow_flush_add
        - Src:             'lib/dpif.c:941,5'
          Dst:             log_operation
        - Src:             'lib/dpif.c:942,5'
          Dst:             dpif_offload_flow_flush
    - functionName:    dpif_flow_stats_extract
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 907
      functionLinenumberEnd: 912
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          39
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_size
        - ntohs
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:908,24'
          Dst:             ntohs
        - Src:             'lib/dpif.c:909,22'
          Dst:             dp_packet_size
    - functionName:    dpif_port_poll_wait
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 897
      functionLinenumberEnd: 899
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_port_poll
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 885
      functionLinenumberEnd: 890
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_port_dump_done
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 858
      functionLinenumberEnd: 864
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          70
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - log_operation
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:862,9'
          Dst:             log_operation
    - functionName:    dpif_port_dump_next
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 832
      functionLinenumberEnd: 851
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          117
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - dpif_name
        - log_operation
        - vlog_rate_limit
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:841,9'
          Dst:             dpif_name
        - Src:             'lib/dpif.c:841,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif.c:843,9'
          Dst:             log_operation
    - functionName:    dpif_port_dump_start
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 813
      functionLinenumberEnd: 817
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          38
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - log_operation
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:816,5'
          Dst:             log_operation
    - functionName:    dpif_port_get_name
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 789
      functionLinenumberEnd: 802
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dpif_port_destroy
        - dpif_port_query_by_number
        - ovs_ignore
        - ovs_strlcpy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:793,5'
          Dst:             ovs_ignore
        - Src:             'lib/dpif.c:795,13'
          Dst:             dpif_port_query_by_number
        - Src:             'lib/dpif.c:797,9'
          Dst:             ovs_strlcpy
        - Src:             'lib/dpif.c:798,9'
          Dst:             dpif_port_destroy
    - functionName:    dpif_port_query_by_number
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 714
      functionLinenumberEnd: 729
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          141
      EdgeCount:       33
      CyclomaticComplexity: 8
      functionsReached:
        - dpif_name
        - ovs_strerror
        - vlog_rate_limit
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:717,9'
          Dst:             dpif_name
        - Src:             'lib/dpif.c:717,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif.c:722,13'
          Dst:             dpif_name
        - Src:             'lib/dpif.c:722,13'
          Dst:             ovs_strerror
        - Src:             'lib/dpif.c:722,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif.c:725,13'
          Dst:             dpif_name
        - Src:             'lib/dpif.c:725,13'
          Dst:             ovs_strerror
        - Src:             'lib/dpif.c:725,13'
          Dst:             vlog_rate_limit
    - functionName:    dpif_port_destroy
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 665
      functionLinenumberEnd: 668
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_port_get_pid
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 776
      functionLinenumberEnd: 778
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_port_query_by_name
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 743
      functionLinenumberEnd: 759
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          99
      EdgeCount:       19
      CyclomaticComplexity: 5
      functionsReached:
        - dpif_name
        - ovs_strerror
        - vlog_rate_limit
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:746,9'
          Dst:             dpif_name
        - Src:             'lib/dpif.c:746,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif.c:755,9'
          Dst:             dpif_name
        - Src:             'lib/dpif.c:755,9'
          Dst:             ovs_strerror
        - Src:             'lib/dpif.c:755,9'
          Dst:             vlog_rate_limit
    - functionName:    dpif_port_set_config
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 688
      functionLinenumberEnd: 699
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          63
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - dpif_offload_port_set_config
        - log_operation
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:694,13'
          Dst:             log_operation
        - Src:             'lib/dpif.c:696,9'
          Dst:             dpif_offload_port_set_config
    - functionName:    dpif_port_exists
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 674
      functionLinenumberEnd: 681
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          75
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - dpif_name
        - ovs_strerror
        - vlog_rate_limit
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:677,9'
          Dst:             dpif_name
        - Src:             'lib/dpif.c:677,9'
          Dst:             ovs_strerror
        - Src:             'lib/dpif.c:677,9'
          Dst:             vlog_rate_limit
    - functionName:    dpif_port_clone
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 652
      functionLinenumberEnd: 656
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - xstrdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:653,17'
          Dst:             xstrdup
        - Src:             'lib/dpif.c:654,17'
          Dst:             xstrdup
    - functionName:    dpif_port_del_add
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_dpif_port_del_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:74,1'
          Dst:             counter_dpif_port_del_get
    - functionName:    dpif_port_del
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 630
      functionLinenumberEnd: 646
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          81
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - dpif_name
        - dpif_offload_port_del
        - dpif_port_del_add
        - log_operation
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:633,5'
          Dst:             dpif_port_del_add
        - Src:             'lib/dpif.c:638,13'
          Dst:             dpif_name
        - Src:             'lib/dpif.c:638,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif.c:641,13'
          Dst:             log_operation
        - Src:             'lib/dpif.c:645,5'
          Dst:             dpif_offload_port_del
    - functionName:    dpif_is_tap_port
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 112
      functionLinenumberEnd: 113
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - strcmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:113,13'
          Dst:             strcmp
    - functionName:    dpif_port_add_add
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 73
      functionLinenumberEnd: 73
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_dpif_port_add_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:73,1'
          Dst:             counter_dpif_port_add_get
    - functionName:    dpif_port_add
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 593
      functionLinenumberEnd: 623
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          146
      EdgeCount:       31
      CyclomaticComplexity: 8
      functionsReached:
        - dpif_is_tap_port
        - dpif_name
        - dpif_normalize_type
        - dpif_offload_port_add
        - dpif_port_add_add
        - dpif_type
        - netdev_get_name
        - netdev_get_type
        - netdev_set_dpif_type
        - ovs_strerror
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:594,31'
          Dst:             netdev_get_name
        - Src:             'lib/dpif.c:598,5'
          Dst:             dpif_port_add_add
        - Src:             'lib/dpif.c:606,9'
          Dst:             dpif_name
        - Src:             'lib/dpif.c:606,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif.c:609,31'
          Dst:             netdev_get_type
        - Src:             'lib/dpif.c:609,14'
          Dst:             dpif_is_tap_port
        - Src:             'lib/dpif.c:610,61'
          Dst:             dpif_type
        - Src:             'lib/dpif.c:610,41'
          Dst:             dpif_normalize_type
        - Src:             'lib/dpif.c:612,13'
          Dst:             netdev_set_dpif_type
        - Src:             'lib/dpif.c:613,13'
          Dst:             dpif_offload_port_add
        - Src:             'lib/dpif.c:616,9'
          Dst:             dpif_name
        - Src:             'lib/dpif.c:616,9'
          Dst:             ovs_strerror
        - Src:             'lib/dpif.c:616,9'
          Dst:             vlog_rate_limit
    - functionName:    dpif_type
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 498
      functionLinenumberEnd: 499
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_normalize_type
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 515
      functionLinenumberEnd: 516
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          31
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_port_open_type
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 568
      functionLinenumberEnd: 580
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          60
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - dpif_normalize_type
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - shash_find_data
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:571,21'
          Dst:             dpif_normalize_type
        - Src:             'lib/dpif.c:573,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif.c:574,10'
          Dst:             shash_find_data
        - Src:             'lib/dpif.c:578,5'
          Dst:             ovs_mutex_unlock
    - functionName:    dpif_get_features
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 560
      functionLinenumberEnd: 562
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_set_features
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 549
      functionLinenumberEnd: 555
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - log_operation
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:554,5'
          Dst:             log_operation
    - functionName:    dpif_get_dp_stats
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 538
      functionLinenumberEnd: 544
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - log_operation
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:543,5'
          Dst:             log_operation
    - functionName:    dpif_destroy_add
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 59
      functionLinenumberEnd: 59
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_dpif_destroy_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:59,1'
          Dst:             counter_dpif_destroy_get
    - functionName:    dpif_delete
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 524
      functionLinenumberEnd: 531
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dpif_destroy_add
        - log_operation
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:527,5'
          Dst:             dpif_destroy_add
        - Src:             'lib/dpif.c:530,5'
          Dst:             log_operation
    - functionName:    dpif_cleanup_required
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 505
      functionLinenumberEnd: 506
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_base_name
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 491
      functionLinenumberEnd: 492
      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:    dpif_wait
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 473
      functionLinenumberEnd: 477
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_run
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 462
      functionLinenumberEnd: 467
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_uninit
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1749
      functionLinenumberEnd: 1759
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_close
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 447
      functionLinenumberEnd: 457
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_class_unref
        - dpif_detach_offload_providers
        - dpif_uninit
        - shash_find_data
      functionUses:    43
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:451,14'
          Dst:             shash_find_data
        - Src:             'lib/dpif.c:453,9'
          Dst:             dpif_detach_offload_providers
        - Src:             'lib/dpif.c:454,9'
          Dst:             dpif_uninit
        - Src:             'lib/dpif.c:455,9'
          Dst:             dp_class_unref
    - functionName:    dp_class_unref
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 259
      functionLinenumberEnd: 264
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:260,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif.c:261,5'
          Dst:             ovs_ignore
        - Src:             'lib/dpif.c:263,5'
          Dst:             ovs_mutex_unlock
    - functionName:    dpif_create_and_open
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 426
      functionLinenumberEnd: 440
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          115
      EdgeCount:       31
      CyclomaticComplexity: 8
      functionsReached:
        - dpif_create
        - dpif_open
        - ovs_strerror
        - vlog
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:429,13'
          Dst:             dpif_create
        - Src:             'lib/dpif.c:431,17'
          Dst:             dpif_open
        - Src:             'lib/dpif.c:433,13'
          Dst:             ovs_strerror
        - Src:             'lib/dpif.c:433,13'
          Dst:             vlog
        - Src:             'lib/dpif.c:437,9'
          Dst:             ovs_strerror
        - Src:             'lib/dpif.c:437,9'
          Dst:             vlog
    - functionName:    dpif_create
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 415
      functionLinenumberEnd: 416
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - do_open
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:416,12'
          Dst:             do_open
    - functionName:    dpif_open
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 404
      functionLinenumberEnd: 405
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - do_open
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:405,12'
          Dst:             do_open
    - functionName:    do_open
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 339
      functionLinenumberEnd: 394
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         35
      ICount:          212
      EdgeCount:       45
      CyclomaticComplexity: 12
      functionsReached:
        - dp_class_lookup
        - dp_class_unref
        - dp_initialize
        - dpif_attach_offload_providers
        - dpif_is_tap_port
        - dpif_normalize_type
        - dpif_offload_port_add
        - dpif_port_dump_done
        - dpif_port_dump_next
        - dpif_port_dump_start
        - dpif_type
        - netdev_close
        - netdev_open
        - netdev_set_dpif_type
        - ovs_ignore
        - ovs_strerror
        - vlog
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:344,5'
          Dst:             dp_initialize
        - Src:             'lib/dpif.c:346,12'
          Dst:             dpif_normalize_type
        - Src:             'lib/dpif.c:347,24'
          Dst:             dp_class_lookup
        - Src:             'lib/dpif.c:349,9'
          Dst:             vlog
        - Src:             'lib/dpif.c:358,57'
          Dst:             dpif_type
        - Src:             'lib/dpif.c:358,37'
          Dst:             dpif_normalize_type
        - Src:             'lib/dpif.c:362,9'
          Dst:             ovs_ignore
        - Src:             'lib/dpif.c:366,13'
          Dst:             dpif_attach_offload_providers
        - Src:             'lib/dpif.c:367,13'
          Dst:             dpif_port_dump_start
        - Src:             'lib/dpif.c:367,13'
          Dst:             dpif_port_dump_next
        - Src:             'lib/dpif.c:367,13'
          Dst:             dpif_port_dump_done
        - Src:             'lib/dpif.c:371,21'
          Dst:             dpif_is_tap_port
        - Src:             'lib/dpif.c:375,23'
          Dst:             netdev_open
        - Src:             'lib/dpif.c:377,21'
          Dst:             ovs_strerror
        - Src:             'lib/dpif.c:377,21'
          Dst:             vlog
        - Src:             'lib/dpif.c:383,17'
          Dst:             netdev_set_dpif_type
        - Src:             'lib/dpif.c:384,17'
          Dst:             dpif_offload_port_add
        - Src:             'lib/dpif.c:385,17'
          Dst:             netdev_close
        - Src:             'lib/dpif.c:389,9'
          Dst:             dp_class_unref
    - functionName:    dp_initialize
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 137
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         10
      ICount:          50
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - dp_register_provider
        - dpctl_unixctl_register
        - dpif_offload_module_init
        - ovsthread_once_done
        - ovsthread_once_start
        - route_table_init
        - seq_create
        - tnl_neigh_cache_init
        - tnl_port_map_init
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:121,9'
          Dst:             ovsthread_once_start
        - Src:             'lib/dpif.c:124,24'
          Dst:             seq_create
        - Src:             'lib/dpif.c:125,9'
          Dst:             dpctl_unixctl_register
        - Src:             'lib/dpif.c:126,9'
          Dst:             tnl_port_map_init
        - Src:             'lib/dpif.c:127,9'
          Dst:             tnl_neigh_cache_init
        - Src:             'lib/dpif.c:128,9'
          Dst:             route_table_init
        - Src:             'lib/dpif.c:129,9'
          Dst:             dpif_offload_module_init
        - Src:             'lib/dpif.c:132,13'
          Dst:             dp_register_provider
        - Src:             'lib/dpif.c:135,9'
          Dst:             ovsthread_once_done
    - functionName:    dp_class_lookup
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 268
      functionLinenumberEnd: 278
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - shash_find_data
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:271,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif.c:272,10'
          Dst:             shash_find_data
        - Src:             'lib/dpif.c:276,5'
          Dst:             ovs_mutex_unlock
    - functionName:    dp_register_provider
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 177
      functionLinenumberEnd: 184
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_register_provider__
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:180,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif.c:181,13'
          Dst:             dp_register_provider__
        - Src:             'lib/dpif.c:182,5'
          Dst:             ovs_mutex_unlock
    - functionName:    dp_register_provider__
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 141
      functionLinenumberEnd: 171
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         28
      ICount:          156
      EdgeCount:       35
      CyclomaticComplexity: 9
      functionsReached:
        - ovs_strerror
        - shash_add
        - shash_find
        - sset_contains
        - vlog
        - xmalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:145,9'
          Dst:             sset_contains
        - Src:             'lib/dpif.c:146,9'
          Dst:             vlog
        - Src:             'lib/dpif.c:151,9'
          Dst:             shash_find
        - Src:             'lib/dpif.c:152,9'
          Dst:             vlog
        - Src:             'lib/dpif.c:159,9'
          Dst:             ovs_strerror
        - Src:             'lib/dpif.c:159,9'
          Dst:             vlog
        - Src:             'lib/dpif.c:164,24'
          Dst:             xmalloc
        - Src:             'lib/dpif.c:168,5'
          Dst:             shash_add
    - functionName:    dp_parse_name
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 322
      functionLinenumberEnd: 335
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dpif_normalize_type
        - strchr
        - xstrdup
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:323,27'
          Dst:             xstrdup
        - Src:             'lib/dpif.c:326,17'
          Dst:             strchr
        - Src:             'lib/dpif.c:330,25'
          Dst:             dpif_normalize_type
        - Src:             'lib/dpif.c:330,17'
          Dst:             xstrdup
        - Src:             'lib/dpif.c:333,25'
          Dst:             dpif_normalize_type
        - Src:             'lib/dpif.c:333,17'
          Dst:             xstrdup
    - functionName:    dp_enumerate_names
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 289
      functionLinenumberEnd: 314
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         22
      ICount:          122
      EdgeCount:       27
      CyclomaticComplexity: 7
      functionsReached:
        - dp_class_lookup
        - dp_class_unref
        - dp_initialize
        - ovs_strerror
        - sset_clear
        - vlog
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:294,5'
          Dst:             dp_initialize
        - Src:             'lib/dpif.c:295,5'
          Dst:             sset_clear
        - Src:             'lib/dpif.c:297,24'
          Dst:             dp_class_lookup
        - Src:             'lib/dpif.c:299,9'
          Dst:             vlog
        - Src:             'lib/dpif.c:308,9'
          Dst:             ovs_strerror
        - Src:             'lib/dpif.c:308,9'
          Dst:             vlog
        - Src:             'lib/dpif.c:311,5'
          Dst:             dp_class_unref
    - functionName:    hmap_next
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 429
      functionLinenumberEnd: 432
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_next__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:432,15'
          Dst:             hmap_next__
    - functionName:    hmap_first
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 416
      functionLinenumberEnd: 417
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:417,12'
          Dst:             hmap_next__
    - functionName:    dp_enumerate_types
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 244
      functionLinenumberEnd: 255
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          63
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - dp_initialize
        - hmap_first
        - hmap_next
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - sset_add
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:247,5'
          Dst:             dp_initialize
        - Src:             'lib/dpif.c:249,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif.c:250,5'
          Dst:             hmap_first
        - Src:             'lib/dpif.c:252,9'
          Dst:             sset_add
        - Src:             'lib/dpif.c:250,5'
          Dst:             hmap_next
        - Src:             'lib/dpif.c:254,5'
          Dst:             ovs_mutex_unlock
    - functionName:    dp_disallow_provider
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 234
      functionLinenumberEnd: 238
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - sset_add
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:235,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif.c:236,5'
          Dst:             sset_add
        - Src:             'lib/dpif.c:237,5'
          Dst:             ovs_mutex_unlock
    - functionName:    dp_unregister_provider__
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 192
      functionLinenumberEnd: 211
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          72
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - shash_delete
        - shash_find
        - vlog
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:196,12'
          Dst:             shash_find
        - Src:             'lib/dpif.c:203,9'
          Dst:             vlog
        - Src:             'lib/dpif.c:207,5'
          Dst:             shash_delete
    - functionName:    dp_unregister_provider
      functionSourceFile: '/src/openvswitch/lib/dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 218
      functionLinenumberEnd: 227
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_initialize
        - dp_unregister_provider__
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif.c:221,5'
          Dst:             dp_initialize
        - Src:             'lib/dpif.c:223,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif.c:224,13'
          Dst:             dp_unregister_provider__
        - Src:             'lib/dpif.c:225,5'
          Dst:             ovs_mutex_unlock
    - functionName:    init_this_module_entropy
      functionSourceFile: '/src/openvswitch/lib/entropy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27
      functionLinenumberEnd: 27
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/entropy.c:27,1'
          Dst:             vlog_insert_module
    - functionName:    get_entropy_or_die
      functionSourceFile: '/src/openvswitch/lib/entropy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 59
      functionLinenumberEnd: 65
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         5
      ICount:          34
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - get_entropy
        - ovs_retval_to_string
        - vlog_fatal
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/entropy.c:60,17'
          Dst:             get_entropy
        - Src:             'lib/entropy.c:62,9'
          Dst:             ovs_retval_to_string
        - Src:             'lib/entropy.c:62,9'
          Dst:             vlog_fatal
    - functionName:    get_entropy
      functionSourceFile: '/src/openvswitch/lib/entropy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 53
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         22
      ICount:          109
      EdgeCount:       27
      CyclomaticComplexity: 7
      functionsReached:
        - __errno_location
        - close
        - open
        - ovs_retval_to_string
        - ovs_strerror
        - read_fully
        - vlog
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/entropy.c:40,10'
          Dst:             open
        - Src:             'lib/entropy.c:42,9'
          Dst:             __errno_location
        - Src:             'lib/entropy.c:42,9'
          Dst:             ovs_strerror
        - Src:             'lib/entropy.c:42,9'
          Dst:             vlog
        - Src:             'lib/entropy.c:43,16'
          Dst:             __errno_location
        - Src:             'lib/entropy.c:43,24'
          Dst:             __errno_location
        - Src:             'lib/entropy.c:46,13'
          Dst:             read_fully
        - Src:             'lib/entropy.c:47,5'
          Dst:             close
        - Src:             'lib/entropy.c:50,9'
          Dst:             ovs_retval_to_string
        - Src:             'lib/entropy.c:50,9'
          Dst:             vlog
    - functionName:    init_this_module_fatal_signal
      functionSourceFile: '/src/openvswitch/lib/fatal-signal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/fatal-signal.c:50,1'
          Dst:             vlog_insert_module
    - functionName:    hmap_next__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 401
      functionLinenumberEnd: 410
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          51
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_next
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 429
      functionLinenumberEnd: 432
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_next__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:432,15'
          Dst:             hmap_next__
    - functionName:    hmap_first
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 416
      functionLinenumberEnd: 417
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:417,12'
          Dst:             hmap_next__
    - functionName:    do_unlink_files
      functionSourceFile: '/src/openvswitch/lib/fatal-signal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 461
      functionLinenumberEnd: 467
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         13
      ICount:          63
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_first
        - hmap_next
        - unlink
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/fatal-signal.c:464,5'
          Dst:             hmap_first
        - Src:             'lib/fatal-signal.c:464,5'
          Dst:             hmap_first
        - Src:             'lib/fatal-signal.c:465,9'
          Dst:             unlink
        - Src:             'lib/fatal-signal.c:464,5'
          Dst:             hmap_next
        - Src:             'lib/fatal-signal.c:464,5'
          Dst:             hmap_next
    - functionName:    fatal_signal_block
      functionSourceFile: '/src/openvswitch/lib/fatal-signal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 509
      functionLinenumberEnd: 519
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          44
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - sigaddset
        - sigemptyset
        - xpthread_sigmask
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/fatal-signal.c:513,5'
          Dst:             sigemptyset
        - Src:             'lib/fatal-signal.c:516,9'
          Dst:             sigaddset
        - Src:             'lib/fatal-signal.c:518,5'
          Dst:             xpthread_sigmask
    - 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:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sigaddset
      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:    fatal_signal_destroy_wakeup_events
      functionSourceFile: '/src/openvswitch/lib/fatal-signal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 91
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - close
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/fatal-signal.c:87,5'
          Dst:             close
        - Src:             'lib/fatal-signal.c:89,5'
          Dst:             close
    - functionName:    fatal_signal_fork
      functionSourceFile: '/src/openvswitch/lib/fatal-signal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 482
      functionLinenumberEnd: 503
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         13
      ICount:          71
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - assert_single_threaded_at
        - fatal_signal_create_wakeup_events
        - fatal_signal_destroy_wakeup_events
        - raise
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/fatal-signal.c:485,5'
          Dst:             assert_single_threaded_at
        - Src:             'lib/fatal-signal.c:487,5'
          Dst:             fatal_signal_destroy_wakeup_events
        - Src:             'lib/fatal-signal.c:488,5'
          Dst:             fatal_signal_create_wakeup_events
        - Src:             'lib/fatal-signal.c:501,9'
          Dst:             raise
    - functionName:    fatal_signal_create_wakeup_events
      functionSourceFile: '/src/openvswitch/lib/fatal-signal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 80
      functionLinenumberEnd: 82
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - xpipe_nonblocking
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/fatal-signal.c:81,5'
          Dst:             xpipe_nonblocking
    - functionName:    raise
      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:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fatal_signal_unlink_file_now
      functionSourceFile: '/src/openvswitch/lib/fatal-signal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 427
      functionLinenumberEnd: 443
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          71
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - __errno_location
        - fatal_signal_init
        - fatal_signal_remove_file_to_unlink
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovs_strerror
        - unlink
        - vlog
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/fatal-signal.c:430,5'
          Dst:             fatal_signal_init
        - Src:             'lib/fatal-signal.c:432,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/fatal-signal.c:434,13'
          Dst:             unlink
        - Src:             'lib/fatal-signal.c:434,28'
          Dst:             __errno_location
        - Src:             'lib/fatal-signal.c:436,9'
          Dst:             ovs_strerror
        - Src:             'lib/fatal-signal.c:436,9'
          Dst:             vlog
        - Src:             'lib/fatal-signal.c:439,5'
          Dst:             fatal_signal_remove_file_to_unlink
        - Src:             'lib/fatal-signal.c:441,5'
          Dst:             ovs_mutex_unlock
    - functionName:    fatal_signal_init
      functionSourceFile: '/src/openvswitch/lib/fatal-signal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 100
      functionLinenumberEnd: 131
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         15
      ICount:          76
      EdgeCount:       18
      CyclomaticComplexity: 5
      functionsReached:
        - __errno_location
        - assert_single_threaded_at
        - atexit
        - backtrace_capture
        - fatal_signal_atexit_handler
        - fatal_signal_create_wakeup_events
        - fatal_signal_handler
        - ovs_mutex_init_recursive
        - ovs_strerror
        - signal
        - vlog_fatal
        - xsigaction
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/fatal-signal.c:106,9'
          Dst:             assert_single_threaded_at
        - Src:             'lib/fatal-signal.c:109,9'
          Dst:             ovs_mutex_init_recursive
        - Src:             'lib/fatal-signal.c:115,9'
          Dst:             backtrace_capture
        - Src:             'lib/fatal-signal.c:117,9'
          Dst:             fatal_signal_create_wakeup_events
        - Src:             'lib/fatal-signal.c:123,13'
          Dst:             xsigaction
        - Src:             'lib/fatal-signal.c:125,20'
          Dst:             signal
        - Src:             'lib/fatal-signal.c:125,20'
          Dst:             fatal_signal_handler
        - Src:             'lib/fatal-signal.c:126,17'
          Dst:             __errno_location
        - Src:             'lib/fatal-signal.c:126,17'
          Dst:             ovs_strerror
        - Src:             'lib/fatal-signal.c:126,17'
          Dst:             vlog_fatal
        - Src:             'lib/fatal-signal.c:129,9'
          Dst:             atexit
        - Src:             'lib/fatal-signal.c:129,9'
          Dst:             fatal_signal_atexit_handler
    - functionName:    fatal_signal_remove_file_to_unlink
      functionSourceFile: '/src/openvswitch/lib/fatal-signal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 415
      functionLinenumberEnd: 421
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - fatal_signal_init
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - sset_find_and_delete
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/fatal-signal.c:416,5'
          Dst:             fatal_signal_init
        - Src:             'lib/fatal-signal.c:418,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/fatal-signal.c:419,5'
          Dst:             sset_find_and_delete
        - Src:             'lib/fatal-signal.c:420,5'
          Dst:             ovs_mutex_unlock
    - functionName:    fatal_signal_handler
      functionSourceFile: '/src/openvswitch/lib/fatal-signal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 293
      functionLinenumberEnd: 301
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
        - raise
        - send_backtrace_to_monitor
        - signal
        - write
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/fatal-signal.c:295,9'
          Dst:             signal
        - Src:             'lib/fatal-signal.c:296,9'
          Dst:             send_backtrace_to_monitor
        - Src:             'lib/fatal-signal.c:297,9'
          Dst:             raise
        - Src:             'lib/fatal-signal.c:299,16'
          Dst:             write
        - Src:             'lib/fatal-signal.c:299,5'
          Dst:             ovs_ignore
    - functionName:    signal
      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:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fatal_signal_atexit_handler
      functionSourceFile: '/src/openvswitch/lib/fatal-signal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 357
      functionLinenumberEnd: 361
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          14
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - call_hooks
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/fatal-signal.c:358,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/fatal-signal.c:359,5'
          Dst:             call_hooks
        - Src:             'lib/fatal-signal.c:360,5'
          Dst:             ovs_mutex_unlock
    - functionName:    atexit
      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:    call_hooks
      functionSourceFile: '/src/openvswitch/lib/fatal-signal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 366
      functionLinenumberEnd: 380
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         16
      ICount:          77
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    send_backtrace_to_monitor
      functionSourceFile: '/src/openvswitch/lib/fatal-signal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 257
      functionLinenumberEnd: 274
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         11
      ICount:          59
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - backtrace_capture
        - backtrace_symbols_fd
        - ovs_ignore
        - vlog_direct_write_to_log_file_unsafe
        - vlog_get_log_file_fd_unsafe
        - write
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/fatal-signal.c:260,5'
          Dst:             backtrace_capture
        - Src:             'lib/fatal-signal.c:263,20'
          Dst:             write
        - Src:             'lib/fatal-signal.c:263,9'
          Dst:             ovs_ignore
        - Src:             'lib/fatal-signal.c:265,22'
          Dst:             vlog_get_log_file_fd_unsafe
        - Src:             'lib/fatal-signal.c:271,9'
          Dst:             vlog_direct_write_to_log_file_unsafe
        - Src:             'lib/fatal-signal.c:272,9'
          Dst:             backtrace_symbols_fd
    - functionName:    backtrace_symbols_fd
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    cancel_files
      functionSourceFile: '/src/openvswitch/lib/fatal-signal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 454
      functionLinenumberEnd: 457
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sset_clear
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/fatal-signal.c:455,5'
          Dst:             sset_clear
    - functionName:    unlink_files
      functionSourceFile: '/src/openvswitch/lib/fatal-signal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 448
      functionLinenumberEnd: 450
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          14
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - do_unlink_files
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/fatal-signal.c:449,5'
          Dst:             do_unlink_files
    - functionName:    fatal_signal_add_file_to_unlink
      functionSourceFile: '/src/openvswitch/lib/fatal-signal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 398
      functionLinenumberEnd: 409
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - cancel_files
        - fatal_signal_add_hook
        - fatal_signal_init
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - sset_add
        - unlink_files
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/fatal-signal.c:399,5'
          Dst:             fatal_signal_init
        - Src:             'lib/fatal-signal.c:401,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/fatal-signal.c:404,9'
          Dst:             fatal_signal_add_hook
        - Src:             'lib/fatal-signal.c:404,9'
          Dst:             unlink_files
        - Src:             'lib/fatal-signal.c:404,9'
          Dst:             cancel_files
        - Src:             'lib/fatal-signal.c:407,5'
          Dst:             sset_add
        - Src:             'lib/fatal-signal.c:408,5'
          Dst:             ovs_mutex_unlock
    - functionName:    fatal_signal_add_hook
      functionSourceFile: '/src/openvswitch/lib/fatal-signal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 150
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          52
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - fatal_signal_init
        - ovs_ignore
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/fatal-signal.c:151,5'
          Dst:             fatal_signal_init
        - Src:             'lib/fatal-signal.c:153,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/fatal-signal.c:154,5'
          Dst:             ovs_ignore
        - Src:             'lib/fatal-signal.c:160,5'
          Dst:             ovs_mutex_unlock
    - functionName:    fatal_ignore_sigpipe
      functionSourceFile: '/src/openvswitch/lib/fatal-signal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 351
      functionLinenumberEnd: 353
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - signal
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/fatal-signal.c:352,5'
          Dst:             signal
    - functionName:    fatal_signal_wait
      functionSourceFile: '/src/openvswitch/lib/fatal-signal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 344
      functionLinenumberEnd: 347
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          14
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - fatal_signal_init
        - poll_fd_wait_at
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/fatal-signal.c:345,5'
          Dst:             fatal_signal_init
        - Src:             'lib/fatal-signal.c:346,5'
          Dst:             poll_fd_wait_at
    - functionName:    fatal_signal_run
      functionSourceFile: '/src/openvswitch/lib/fatal-signal.c'
      linkageType:     InternalLinkage
      functionLinenumber: 316
      functionLinenumberEnd: 340
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         10
      ICount:          61
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - abort
        - call_hooks
        - fatal_signal_init
        - fflush
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - raise
        - signal
        - signal_name
        - vlog
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/fatal-signal.c:319,5'
          Dst:             fatal_signal_init
        - Src:             'lib/fatal-signal.c:325,9'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/fatal-signal.c:327,9'
          Dst:             signal_name
        - Src:             'lib/fatal-signal.c:327,9'
          Dst:             vlog
        - Src:             'lib/fatal-signal.c:329,9'
          Dst:             call_hooks
        - Src:             'lib/fatal-signal.c:330,9'
          Dst:             fflush
        - Src:             'lib/fatal-signal.c:334,9'
          Dst:             signal
        - Src:             'lib/fatal-signal.c:335,9'
          Dst:             raise
        - Src:             'lib/fatal-signal.c:337,9'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/fatal-signal.c:338,9'
          Dst:             abort
    - 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:    ovs_list_moved
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 229
      functionLinenumberEnd: 235
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_list_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/list.h:231,9'
          Dst:             ovs_list_init
    - functionName:    ovs_list_init
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_list_remove
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 251
      functionLinenumberEnd: 254
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          25
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_list_insert
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 169
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_list_move
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 242
      functionLinenumberEnd: 245
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_list_moved
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/list.h:244,5'
          Dst:             ovs_list_moved
    - functionName:    guarded_list_pop_all
      functionSourceFile: '/src/openvswitch/lib/guarded-list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 85
      functionLinenumberEnd: 96
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_list_init
        - ovs_list_move
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/guarded-list.c:88,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/guarded-list.c:89,5'
          Dst:             ovs_list_move
        - Src:             'lib/guarded-list.c:92,5'
          Dst:             ovs_list_init
        - Src:             'lib/guarded-list.c:94,5'
          Dst:             ovs_mutex_unlock
    - functionName:    ovs_list_pop_front
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 261
      functionLinenumberEnd: 265
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_list_remove
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/list.h:264,5'
          Dst:             ovs_list_remove
    - functionName:    guarded_list_pop_front
      functionSourceFile: '/src/openvswitch/lib/guarded-list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 70
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_list_pop_front
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/guarded-list.c:73,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/guarded-list.c:75,16'
          Dst:             ovs_list_pop_front
        - Src:             'lib/guarded-list.c:78,5'
          Dst:             ovs_mutex_unlock
    - functionName:    ovs_list_push_back
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 204
      functionLinenumberEnd: 206
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_list_insert
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/list.h:205,5'
          Dst:             ovs_list_insert
    - functionName:    guarded_list_push_back
      functionSourceFile: '/src/openvswitch/lib/guarded-list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 65
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_list_push_back
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/guarded-list.c:58,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/guarded-list.c:60,9'
          Dst:             ovs_list_push_back
        - Src:             'lib/guarded-list.c:63,5'
          Dst:             ovs_mutex_unlock
    - functionName:    guarded_list_is_empty
      functionSourceFile: '/src/openvswitch/lib/guarded-list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37
      functionLinenumberEnd: 44
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/guarded-list.c:40,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/guarded-list.c:42,5'
          Dst:             ovs_mutex_unlock
    - functionName:    guarded_list_destroy
      functionSourceFile: '/src/openvswitch/lib/guarded-list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 33
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_mutex_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/guarded-list.c:32,5'
          Dst:             ovs_mutex_destroy
    - functionName:    guarded_list_init
      functionSourceFile: '/src/openvswitch/lib/guarded-list.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23
      functionLinenumberEnd: 27
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_list_init
        - ovs_mutex_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/guarded-list.c:24,5'
          Dst:             ovs_mutex_init
        - Src:             'lib/guarded-list.c:25,5'
          Dst:             ovs_list_init
    - functionName:    init_this_module_hmap
      functionSourceFile: '/src/openvswitch/lib/hmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26
      functionLinenumberEnd: 26
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hmap.c:26,1'
          Dst:             vlog_insert_module
    - functionName:    hmap_pathological_init_coverage
      functionSourceFile: '/src/openvswitch/lib/hmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28
      functionLinenumberEnd: 28
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hmap.c:28,1'
          Dst:             coverage_counter_register
    - functionName:    hmap_expand_init_coverage
      functionSourceFile: '/src/openvswitch/lib/hmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 29
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hmap.c:29,1'
          Dst:             coverage_counter_register
    - functionName:    hmap_shrink_init_coverage
      functionSourceFile: '/src/openvswitch/lib/hmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 30
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hmap.c:30,1'
          Dst:             coverage_counter_register
    - functionName:    hmap_reserve_init_coverage
      functionSourceFile: '/src/openvswitch/lib/hmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 31
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hmap.c:31,1'
          Dst:             coverage_counter_register
    - functionName:    hmap_reserve_count
      functionSourceFile: '/src/openvswitch/lib/hmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 31
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_hmap_reserve_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hmap.c:31,1'
          Dst:             counter_hmap_reserve_get
    - functionName:    counter_hmap_reserve_get
      functionSourceFile: '/src/openvswitch/lib/hmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 31
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_hmap_reserve_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hmap.c:31,1'
          Dst:             counter_hmap_reserve_get_unsafe
    - functionName:    counter_hmap_reserve_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/hmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 31
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_shrink_count
      functionSourceFile: '/src/openvswitch/lib/hmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 30
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_hmap_shrink_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hmap.c:30,1'
          Dst:             counter_hmap_shrink_get
    - functionName:    counter_hmap_shrink_get
      functionSourceFile: '/src/openvswitch/lib/hmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 30
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_hmap_shrink_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hmap.c:30,1'
          Dst:             counter_hmap_shrink_get_unsafe
    - functionName:    counter_hmap_shrink_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/hmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 30
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_expand_count
      functionSourceFile: '/src/openvswitch/lib/hmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 29
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_hmap_expand_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hmap.c:29,1'
          Dst:             counter_hmap_expand_get
    - functionName:    counter_hmap_expand_get
      functionSourceFile: '/src/openvswitch/lib/hmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 29
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_hmap_expand_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hmap.c:29,1'
          Dst:             counter_hmap_expand_get_unsafe
    - functionName:    counter_hmap_expand_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/hmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 29
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_pathological_count
      functionSourceFile: '/src/openvswitch/lib/hmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28
      functionLinenumberEnd: 28
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_hmap_pathological_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hmap.c:28,1'
          Dst:             counter_hmap_pathological_get
    - functionName:    counter_hmap_pathological_get
      functionSourceFile: '/src/openvswitch/lib/hmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28
      functionLinenumberEnd: 28
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_hmap_pathological_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hmap.c:28,1'
          Dst:             counter_hmap_pathological_get_unsafe
    - functionName:    counter_hmap_pathological_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/hmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28
      functionLinenumberEnd: 28
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_pathological_add
      functionSourceFile: '/src/openvswitch/lib/hmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28
      functionLinenumberEnd: 28
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_hmap_pathological_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hmap.c:28,1'
          Dst:             counter_hmap_pathological_get
    - functionName:    hmap_insert_fast
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 289
      functionLinenumberEnd: 295
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          38
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    is_pow2
      functionSourceFile: '/src/openvswitch/./include/openvswitch/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 399
      functionLinenumberEnd: 400
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          26
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_first_in_bucket
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 367
      functionLinenumberEnd: 368
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_contains
      functionSourceFile: '/src/openvswitch/lib/hmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 301
      functionLinenumberEnd: 311
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          51
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - hmap_first_in_bucket
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hmap.c:304,14'
          Dst:             hmap_first_in_bucket
    - functionName:    hmap_at_position
      functionSourceFile: '/src/openvswitch/lib/hmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 268
      functionLinenumberEnd: 296
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          129
      EdgeCount:       18
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    random_range
      functionSourceFile: '/src/openvswitch/lib/random.h'
      linkageType:     InternalLinkage
      functionLinenumber: 32
      functionLinenumberEnd: 33
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - random_uint32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/random.h:33,12'
          Dst:             random_uint32
    - functionName:    hmap_random_node
      functionSourceFile: '/src/openvswitch/lib/hmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 231
      functionLinenumberEnd: 254
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          84
      EdgeCount:       18
      CyclomaticComplexity: 5
      functionsReached:
        - random_range
        - random_uint32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hmap.c:237,32'
          Dst:             random_uint32
        - Src:             'lib/hmap.c:250,9'
          Dst:             random_range
    - functionName:    hmap_node_moved
      functionSourceFile: '/src/openvswitch/lib/hmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 216
      functionLinenumberEnd: 222
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          43
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_reserve_add
      functionSourceFile: '/src/openvswitch/lib/hmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 31
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_hmap_reserve_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hmap.c:31,1'
          Dst:             counter_hmap_reserve_get
    - functionName:    hmap_reserve_at
      functionSourceFile: '/src/openvswitch/lib/hmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 203
      functionLinenumberEnd: 209
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - calc_mask
        - hmap_reserve_add
        - resize
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hmap.c:204,23'
          Dst:             calc_mask
        - Src:             'lib/hmap.c:206,9'
          Dst:             hmap_reserve_add
        - Src:             'lib/hmap.c:207,9'
          Dst:             resize
    - functionName:    calc_mask
      functionSourceFile: '/src/openvswitch/lib/hmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 146
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          47
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    resize
      functionSourceFile: '/src/openvswitch/lib/hmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 92
      functionLinenumberEnd: 142
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         35
      ICount:          220
      EdgeCount:       44
      CyclomaticComplexity: 11
      functionsReached:
        - hmap_destroy
        - hmap_init
        - hmap_insert_fast
        - hmap_pathological_add
        - hmap_swap
        - is_pow2
        - ovs_ignore
        - vlog_rate_limit
        - xmalloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hmap.c:96,16'
          Dst:             is_pow2
        - Src:             'lib/hmap.c:96,5'
          Dst:             ovs_ignore
        - Src:             'lib/hmap.c:98,5'
          Dst:             hmap_init
        - Src:             'lib/hmap.c:100,23'
          Dst:             xmalloc
        - Src:             'lib/hmap.c:114,13'
          Dst:             hmap_insert_fast
        - Src:             'lib/hmap.c:127,5'
          Dst:             hmap_swap
        - Src:             'lib/hmap.c:128,5'
          Dst:             hmap_destroy
        - Src:             'lib/hmap.c:132,9'
          Dst:             hmap_pathological_add
        - Src:             'lib/hmap.c:133,9'
          Dst:             vlog_rate_limit
    - functionName:    hmap_init
      functionSourceFile: '/src/openvswitch/lib/hmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36
      functionLinenumberEnd: 41
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          20
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    47
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_swap
      functionSourceFile: '/src/openvswitch/lib/hmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 72
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_moved
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hmap.c:76,5'
          Dst:             hmap_moved
        - Src:             'lib/hmap.c:77,5'
          Dst:             hmap_moved
    - functionName:    hmap_destroy
      functionSourceFile: '/src/openvswitch/lib/hmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 51
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          39
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    42
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_moved
      functionSourceFile: '/src/openvswitch/lib/hmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 88
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          25
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_shrink_add
      functionSourceFile: '/src/openvswitch/lib/hmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 30
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_hmap_shrink_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hmap.c:30,1'
          Dst:             counter_hmap_shrink_get
    - functionName:    hmap_shrink_at
      functionSourceFile: '/src/openvswitch/lib/hmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 186
      functionLinenumberEnd: 192
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - calc_mask
        - hmap_shrink_add
        - resize
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hmap.c:187,23'
          Dst:             calc_mask
        - Src:             'lib/hmap.c:189,9'
          Dst:             hmap_shrink_add
        - Src:             'lib/hmap.c:190,9'
          Dst:             resize
    - functionName:    hmap_expand_add
      functionSourceFile: '/src/openvswitch/lib/hmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 29
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_hmap_expand_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hmap.c:29,1'
          Dst:             counter_hmap_expand_get
    - functionName:    hmap_expand_at
      functionSourceFile: '/src/openvswitch/lib/hmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 171
      functionLinenumberEnd: 177
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - calc_mask
        - hmap_expand_add
        - resize
      functionUses:    33
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hmap.c:172,23'
          Dst:             calc_mask
        - Src:             'lib/hmap.c:174,9'
          Dst:             hmap_expand_add
        - Src:             'lib/hmap.c:175,9'
          Dst:             resize
    - functionName:    hmap_clear
      functionSourceFile: '/src/openvswitch/lib/hmap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 62
      functionLinenumberEnd: 67
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          32
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_next_in_bucket
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 381
      functionLinenumberEnd: 382
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_first_in_bucket
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 367
      functionLinenumberEnd: 368
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_rot
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 32
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhash_add__
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hash_rot
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:71,12'
          Dst:             hash_rot
    - functionName:    mhash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_rot
        - mhash_add__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:78,12'
          Dst:             mhash_add__
        - Src:             'lib/hash.h:79,12'
          Dst:             hash_rot
    - functionName:    mhash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 108
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_add
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:109,12'
          Dst:             mhash_add
    - functionName:    hash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:119,12'
          Dst:             mhash_finish
    - functionName:    hash_2words
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 153
      functionLinenumberEnd: 154
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_add
        - hash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:154,33'
          Dst:             hash_add
        - Src:             'lib/hash.h:154,24'
          Dst:             hash_add
        - Src:             'lib/hash.h:154,12'
          Dst:             hash_finish
    - functionName:    hash_int
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 408
      functionLinenumberEnd: 409
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_2words
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:409,12'
          Dst:             hash_2words
    - functionName:    hmap_insert_fast
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 289
      functionLinenumberEnd: 295
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          38
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_insert_at
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 306
      functionLinenumberEnd: 311
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_expand_at
        - hmap_insert_fast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:307,5'
          Dst:             hmap_insert_fast
        - Src:             './include/openvswitch/hmap.h:309,9'
          Dst:             hmap_expand_at
    - functionName:    hmap_next__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 401
      functionLinenumberEnd: 410
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          51
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmapx_equals
      functionSourceFile: '/src/openvswitch/lib/hmapx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 181
      functionLinenumberEnd: 195
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          86
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - hmap_first
        - hmap_next
        - hmapx_count
        - hmapx_find__
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hmapx.c:184,9'
          Dst:             hmapx_count
        - Src:             'lib/hmapx.c:184,27'
          Dst:             hmapx_count
        - Src:             'lib/hmapx.c:188,5'
          Dst:             hmap_first
        - Src:             'lib/hmapx.c:189,14'
          Dst:             hmapx_find__
        - Src:             'lib/hmapx.c:188,5'
          Dst:             hmap_next
    - functionName:    hmapx_count
      functionSourceFile: '/src/openvswitch/lib/hmapx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 102
      functionLinenumberEnd: 103
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_count
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hmapx.c:103,12'
          Dst:             hmap_count
    - functionName:    hmap_first
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 416
      functionLinenumberEnd: 417
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next__
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:417,12'
          Dst:             hmap_next__
    - functionName:    hmapx_find__
      functionSourceFile: '/src/openvswitch/lib/hmapx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25
      functionLinenumberEnd: 34
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          71
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_first_in_bucket
        - hmap_next_in_bucket
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hmapx.c:28,5'
          Dst:             hmap_first_in_bucket
        - Src:             'lib/hmapx.c:28,5'
          Dst:             hmap_next_in_bucket
    - functionName:    hmap_next
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 429
      functionLinenumberEnd: 432
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_next__
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:432,15'
          Dst:             hmap_next__
    - functionName:    hmap_count
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 263
      functionLinenumberEnd: 264
      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:    hmapx_contains
      functionSourceFile: '/src/openvswitch/lib/hmapx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 174
      functionLinenumberEnd: 175
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmapx_find
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hmapx.c:175,12'
          Dst:             hmapx_find
    - functionName:    hmapx_find
      functionSourceFile: '/src/openvswitch/lib/hmapx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 167
      functionLinenumberEnd: 168
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_pointer
        - hmapx_find__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hmapx.c:168,36'
          Dst:             hash_pointer
        - Src:             'lib/hmapx.c:168,12'
          Dst:             hmapx_find__
    - functionName:    hash_pointer
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 140
      functionLinenumberEnd: 149
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_int
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:149,12'
          Dst:             hash_int
    - functionName:    hmapx_find_and_delete_assert
      functionSourceFile: '/src/openvswitch/lib/hmapx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 159
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmapx_find_and_delete
        - ovs_ignore
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hmapx.c:160,16'
          Dst:             hmapx_find_and_delete
        - Src:             'lib/hmapx.c:160,5'
          Dst:             ovs_ignore
    - functionName:    hmapx_find_and_delete
      functionSourceFile: '/src/openvswitch/lib/hmapx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 147
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmapx_delete
        - hmapx_find
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hmapx.c:148,31'
          Dst:             hmapx_find
        - Src:             'lib/hmapx.c:150,9'
          Dst:             hmapx_delete
    - functionName:    hmapx_delete
      functionSourceFile: '/src/openvswitch/lib/hmapx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 138
      functionLinenumberEnd: 141
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_remove
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hmapx.c:139,5'
          Dst:             hmap_remove
    - functionName:    hmap_remove
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 317
      functionLinenumberEnd: 324
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          48
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmapx_add_assert
      functionSourceFile: '/src/openvswitch/lib/hmapx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 120
      functionLinenumberEnd: 122
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmapx_add
        - ovs_ignore
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hmapx.c:121,16'
          Dst:             hmapx_add
        - Src:             'lib/hmapx.c:121,5'
          Dst:             ovs_ignore
    - functionName:    hmapx_add
      functionSourceFile: '/src/openvswitch/lib/hmapx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 110
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hash_pointer
        - hmapx_add__
        - hmapx_find__
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hmapx.c:111,21'
          Dst:             hash_pointer
        - Src:             'lib/hmapx.c:112,13'
          Dst:             hmapx_find__
        - Src:             'lib/hmapx.c:114,15'
          Dst:             hmapx_add__
    - functionName:    hmapx_add__
      functionSourceFile: '/src/openvswitch/lib/hmapx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 42
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_insert_at
        - xmalloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hmapx.c:39,31'
          Dst:             xmalloc
        - Src:             'lib/hmapx.c:41,5'
          Dst:             hmap_insert_at
    - functionName:    hmap_is_empty
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 281
      functionLinenumberEnd: 282
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmapx_is_empty
      functionSourceFile: '/src/openvswitch/lib/hmapx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 95
      functionLinenumberEnd: 96
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_is_empty
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hmapx.c:96,12'
          Dst:             hmap_is_empty
    - functionName:    hmapx_moved
      functionSourceFile: '/src/openvswitch/lib/hmapx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 87
      functionLinenumberEnd: 89
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_moved
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hmapx.c:88,5'
          Dst:             hmap_moved
    - functionName:    hmapx_swap
      functionSourceFile: '/src/openvswitch/lib/hmapx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 79
      functionLinenumberEnd: 81
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_swap
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hmapx.c:80,5'
          Dst:             hmap_swap
    - functionName:    hmapx_clone
      functionSourceFile: '/src/openvswitch/lib/hmapx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 65
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          70
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - hmap_first
        - hmap_next
        - hmap_reserve_at
        - hmapx_add__
        - hmapx_count
        - hmapx_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hmapx.c:68,5'
          Dst:             hmapx_init
        - Src:             'lib/hmapx.c:69,5'
          Dst:             hmapx_count
        - Src:             'lib/hmapx.c:69,5'
          Dst:             hmap_reserve_at
        - Src:             'lib/hmapx.c:71,5'
          Dst:             hmap_first
        - Src:             'lib/hmapx.c:72,9'
          Dst:             hmapx_add__
        - Src:             'lib/hmapx.c:71,5'
          Dst:             hmap_next
    - functionName:    hmapx_init
      functionSourceFile: '/src/openvswitch/lib/hmapx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hmapx.c:49,5'
          Dst:             hmap_init
    - functionName:    hmapx_clear
      functionSourceFile: '/src/openvswitch/lib/hmapx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 127
      functionLinenumberEnd: 133
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          59
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - hmap_first
        - hmap_next
        - hmapx_delete
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hmapx.c:130,5'
          Dst:             hmap_first
        - Src:             'lib/hmapx.c:130,5'
          Dst:             hmap_next
        - Src:             'lib/hmapx.c:131,9'
          Dst:             hmapx_delete
    - functionName:    hmapx_destroy
      functionSourceFile: '/src/openvswitch/lib/hmapx.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 60
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_destroy
        - hmapx_clear
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hmapx.c:57,9'
          Dst:             hmapx_clear
        - Src:             'lib/hmapx.c:58,9'
          Dst:             hmap_destroy
    - functionName:    ovs_list_insert
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 169
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_list_remove
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 251
      functionLinenumberEnd: 254
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          25
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_list_push_back
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 204
      functionLinenumberEnd: 206
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_list_insert
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/list.h:205,5'
          Dst:             ovs_list_insert
    - functionName:    id_slab_insert
      functionSourceFile: '/src/openvswitch/lib/id-fpool.c'
      linkageType:     InternalLinkage
      functionLinenumber: 98
      functionLinenumberEnd: 107
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    id_fpool_free_id
      functionSourceFile: '/src/openvswitch/lib/id-fpool.c'
      linkageType:     InternalLinkage
      functionLinenumber: 247
      functionLinenumberEnd: 278
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          127
      EdgeCount:       25
      CyclomaticComplexity: 6
      functionsReached:
        - id_slab_create
        - id_slab_insert
        - ovs_ignore
        - ovs_list_push_back
        - ovs_spin_lock_at
        - ovs_spin_unlock
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/id-fpool.c:254,5'
          Dst:             ovs_ignore
        - Src:             'lib/id-fpool.c:257,5'
          Dst:             ovs_spin_lock_at
        - Src:             'lib/id-fpool.c:261,20'
          Dst:             id_slab_create
        - Src:             'lib/id-fpool.c:265,9'
          Dst:             id_slab_insert
        - Src:             'lib/id-fpool.c:269,5'
          Dst:             ovs_spin_lock_at
        - Src:             'lib/id-fpool.c:270,5'
          Dst:             ovs_list_push_back
        - Src:             'lib/id-fpool.c:271,5'
          Dst:             ovs_spin_unlock
        - Src:             'lib/id-fpool.c:274,16'
          Dst:             id_slab_create
        - Src:             'lib/id-fpool.c:277,5'
          Dst:             ovs_spin_unlock
    - functionName:    id_slab_create
      functionSourceFile: '/src/openvswitch/lib/id-fpool.c'
      linkageType:     InternalLinkage
      functionLinenumber: 73
      functionLinenumberEnd: 94
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          100
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - ovs_list_init
        - xmalloc
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/id-fpool.c:83,12'
          Dst:             xmalloc
        - Src:             'lib/id-fpool.c:84,5'
          Dst:             ovs_list_init
    - functionName:    ovs_list_init
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_list_pop_front
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 261
      functionLinenumberEnd: 265
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_list_remove
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/list.h:264,5'
          Dst:             ovs_list_remove
    - functionName:    ovs_list_is_empty
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 320
      functionLinenumberEnd: 321
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    id_slab_remove
      functionSourceFile: '/src/openvswitch/lib/id-fpool.c'
      linkageType:     InternalLinkage
      functionLinenumber: 111
      functionLinenumberEnd: 120
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    id_fpool_new_id
      functionSourceFile: '/src/openvswitch/lib/id-fpool.c'
      linkageType:     InternalLinkage
      functionLinenumber: 187
      functionLinenumberEnd: 242
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         35
      ICount:          200
      EdgeCount:       41
      CyclomaticComplexity: 8
      functionsReached:
        - id_slab_create
        - id_slab_remove
        - ovs_ignore
        - ovs_list_is_empty
        - ovs_list_pop_front
        - ovs_spin_lock_at
        - ovs_spin_unlock
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/id-fpool.c:192,5'
          Dst:             ovs_ignore
        - Src:             'lib/id-fpool.c:195,5'
          Dst:             ovs_spin_lock_at
        - Src:             'lib/id-fpool.c:197,9'
          Dst:             id_slab_remove
        - Src:             'lib/id-fpool.c:203,5'
          Dst:             ovs_spin_lock_at
        - Src:             'lib/id-fpool.c:204,10'
          Dst:             ovs_list_is_empty
        - Src:             'lib/id-fpool.c:205,20'
          Dst:             ovs_list_pop_front
        - Src:             'lib/id-fpool.c:208,20'
          Dst:             id_slab_create
        - Src:             'lib/id-fpool.c:210,5'
          Dst:             ovs_spin_unlock
        - Src:             'lib/id-fpool.c:213,15'
          Dst:             id_slab_remove
        - Src:             'lib/id-fpool.c:217,5'
          Dst:             ovs_spin_unlock
        - Src:             'lib/id-fpool.c:229,9'
          Dst:             ovs_spin_lock_at
        - Src:             'lib/id-fpool.c:230,15'
          Dst:             id_slab_remove
        - Src:             'lib/id-fpool.c:231,9'
          Dst:             ovs_spin_unlock
        - Src:             'lib/id-fpool.c:240,5'
          Dst:             ovs_spin_unlock
    - functionName:    per_user_destroy
      functionSourceFile: '/src/openvswitch/lib/id-fpool.c'
      linkageType:     InternalLinkage
      functionLinenumber: 131
      functionLinenumberEnd: 137
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          43
      EdgeCount:       9
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_spin_destroy
        - ovs_spin_lock_at
        - ovs_spin_unlock
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/id-fpool.c:132,5'
          Dst:             ovs_spin_lock_at
        - Src:             'lib/id-fpool.c:135,5'
          Dst:             ovs_spin_unlock
        - Src:             'lib/id-fpool.c:136,5'
          Dst:             ovs_spin_destroy
    - functionName:    ovs_list_poison
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 157
      functionLinenumberEnd: 159
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    id_fpool_destroy
      functionSourceFile: '/src/openvswitch/lib/id-fpool.c'
      linkageType:     InternalLinkage
      functionLinenumber: 167
      functionLinenumberEnd: 183
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         20
      ICount:          103
      EdgeCount:       23
      CyclomaticComplexity: 5
      functionsReached:
        - ovs_list_poison
        - ovs_spin_destroy
        - ovs_spin_lock_at
        - ovs_spin_unlock
        - per_user_destroy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/id-fpool.c:171,5'
          Dst:             ovs_spin_lock_at
        - Src:             'lib/id-fpool.c:175,5'
          Dst:             ovs_list_poison
        - Src:             'lib/id-fpool.c:176,5'
          Dst:             ovs_spin_unlock
        - Src:             'lib/id-fpool.c:177,5'
          Dst:             ovs_spin_destroy
        - Src:             'lib/id-fpool.c:180,9'
          Dst:             per_user_destroy
    - functionName:    per_user_init
      functionSourceFile: '/src/openvswitch/lib/id-fpool.c'
      linkageType:     InternalLinkage
      functionLinenumber: 124
      functionLinenumberEnd: 127
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         5
      ICount:          33
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - id_slab_create
        - ovs_spin_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/id-fpool.c:125,5'
          Dst:             ovs_spin_init
        - Src:             'lib/id-fpool.c:126,16'
          Dst:             id_slab_create
    - functionName:    id_fpool_create
      functionSourceFile: '/src/openvswitch/lib/id-fpool.c'
      linkageType:     InternalLinkage
      functionLinenumber: 141
      functionLinenumberEnd: 162
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          92
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
        - ovs_list_init
        - ovs_spin_init
        - per_user_init
        - xmalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/id-fpool.c:145,5'
          Dst:             ovs_ignore
        - Src:             'lib/id-fpool.c:146,5'
          Dst:             ovs_ignore
        - Src:             'lib/id-fpool.c:148,12'
          Dst:             xmalloc
        - Src:             'lib/id-fpool.c:154,9'
          Dst:             per_user_init
        - Src:             'lib/id-fpool.c:159,5'
          Dst:             ovs_spin_init
        - Src:             'lib/id-fpool.c:160,5'
          Dst:             ovs_list_init
    - functionName:    json_serialize_object_member
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1837
      functionLinenumberEnd: 1851
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          67
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ds_put_char
        - indent_line
        - json_serialize
        - json_serialize_string
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/json.c:1841,9'
          Dst:             ds_put_char
        - Src:             'lib/json.c:1842,9'
          Dst:             indent_line
        - Src:             'lib/json.c:1845,5'
          Dst:             json_serialize_string
        - Src:             'lib/json.c:1846,5'
          Dst:             ds_put_char
        - Src:             'lib/json.c:1848,9'
          Dst:             ds_put_char
        - Src:             'lib/json.c:1850,5'
          Dst:             json_serialize
    - functionName:    ds_put_char
      functionSourceFile: '/src/openvswitch/./include/openvswitch/dynamic-string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_char__
      functionUses:    19
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/dynamic-string.h:99,9'
          Dst:             ds_put_char__
    - functionName:    indent_line
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1827
      functionLinenumberEnd: 1832
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_char
        - ds_put_char_multiple
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/json.c:1829,9'
          Dst:             ds_put_char
        - Src:             'lib/json.c:1830,9'
          Dst:             ds_put_char_multiple
    - functionName:    json_serialize_string
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1957
      functionLinenumberEnd: 1986
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         23
      ICount:          132
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - ds_put_buffer
        - ds_put_char
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/json.c:1964,5'
          Dst:             ds_put_char
        - Src:             'lib/json.c:1972,17'
          Dst:             ds_put_buffer
        - Src:             'lib/json.c:1978,17'
          Dst:             ds_put_char
        - Src:             'lib/json.c:1983,9'
          Dst:             ds_put_buffer
        - Src:             'lib/json.c:1985,5'
          Dst:             ds_put_char
    - functionName:    json_serialize
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1779
      functionLinenumberEnd: 1823
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          104
      EdgeCount:       30
      CyclomaticComplexity: 16
      functionsReached:
        - abort
        - ds_put_cstr
        - ds_put_format
        - json_serialize_array
        - json_serialize_object
        - json_serialize_string
        - json_serialized_object
        - json_string
      functionUses:    3
      BranchProfiles:
        - Branch String:   'lib/json.c:1782,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/json.c:1784,9'
          Dst:             ds_put_cstr
        - Src:             'lib/json.c:1788,9'
          Dst:             ds_put_cstr
        - Src:             'lib/json.c:1792,9'
          Dst:             ds_put_cstr
        - Src:             'lib/json.c:1796,9'
          Dst:             json_serialize_object
        - Src:             'lib/json.c:1800,9'
          Dst:             json_serialize_array
        - Src:             'lib/json.c:1804,9'
          Dst:             ds_put_format
        - Src:             'lib/json.c:1808,9'
          Dst:             ds_put_format
        - Src:             'lib/json.c:1812,31'
          Dst:             json_string
        - Src:             'lib/json.c:1812,9'
          Dst:             json_serialize_string
        - Src:             'lib/json.c:1816,25'
          Dst:             json_serialized_object
        - Src:             'lib/json.c:1816,9'
          Dst:             ds_put_cstr
        - Src:             'lib/json.c:1821,9'
          Dst:             abort
    - functionName:    json_serialize_object
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1855
      functionLinenumberEnd: 1889
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         20
      ICount:          144
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - cooperative_multitasking_yield_at
        - ds_put_char
        - hmap_first
        - hmap_next
        - indent_line
        - json_serialize_object_member
        - shash_count
        - shash_sort
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/json.c:1858,5'
          Dst:             ds_put_char
        - Src:             'lib/json.c:1861,5'
          Dst:             indent_line
        - Src:             'lib/json.c:1864,9'
          Dst:             cooperative_multitasking_yield_at
        - Src:             'lib/json.c:1871,17'
          Dst:             shash_sort
        - Src:             'lib/json.c:1872,13'
          Dst:             shash_count
        - Src:             'lib/json.c:1874,13'
          Dst:             json_serialize_object_member
        - Src:             'lib/json.c:1882,9'
          Dst:             hmap_first
        - Src:             'lib/json.c:1883,13'
          Dst:             json_serialize_object_member
        - Src:             'lib/json.c:1882,9'
          Dst:             hmap_next
        - Src:             'lib/json.c:1887,5'
          Dst:             ds_put_char
    - functionName:    json_serialize_array
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1893
      functionLinenumberEnd: 1918
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          105
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - cooperative_multitasking_yield_at
        - ds_put_char
        - indent_line
        - json_array_at
        - json_array_size
        - json_serialize
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/json.c:1894,19'
          Dst:             json_array_size
        - Src:             'lib/json.c:1897,5'
          Dst:             ds_put_char
        - Src:             'lib/json.c:1901,9'
          Dst:             cooperative_multitasking_yield_at
        - Src:             'lib/json.c:1905,9'
          Dst:             indent_line
        - Src:             'lib/json.c:1909,17'
          Dst:             ds_put_char
        - Src:             'lib/json.c:1910,17'
          Dst:             indent_line
        - Src:             'lib/json.c:1912,28'
          Dst:             json_array_at
        - Src:             'lib/json.c:1912,13'
          Dst:             json_serialize
        - Src:             'lib/json.c:1917,5'
          Dst:             ds_put_char
    - functionName:    json_string
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 460
      functionLinenumberEnd: 463
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
      functionUses:    178
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/json.c:461,5'
          Dst:             ovs_ignore
    - functionName:    json_serialized_object
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 468
      functionLinenumberEnd: 470
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/json.c:469,5'
          Dst:             ovs_ignore
    - functionName:    json_array_size
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 475
      functionLinenumberEnd: 481
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
      functionUses:    33
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/json.c:476,5'
          Dst:             ovs_ignore
    - functionName:    json_array_at
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 485
      functionLinenumberEnd: 499
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          78
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - ovs_ignore
      functionUses:    48
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/json.c:486,5'
          Dst:             ovs_ignore
    - functionName:    hmap_first
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 416
      functionLinenumberEnd: 417
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next__
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:417,12'
          Dst:             hmap_next__
    - functionName:    hmap_next
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 429
      functionLinenumberEnd: 432
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_next__
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:432,15'
          Dst:             hmap_next__
    - functionName:    hmap_next__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 401
      functionLinenumberEnd: 410
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          51
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    json_parser_top
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1475
      functionLinenumberEnd: 1476
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    json_parser_put_value
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1481
      functionLinenumberEnd: 1491
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          65
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - abort
        - json_array_add
        - json_object_put_nocopy
        - json_parser_top
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/json.c:1482,37'
          Dst:             json_parser_top
        - Src:             'lib/json.c:1484,9'
          Dst:             json_object_put_nocopy
        - Src:             'lib/json.c:1487,9'
          Dst:             json_array_add
        - Src:             'lib/json.c:1489,9'
          Dst:             abort
    - functionName:    json_object_put_nocopy
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 431
      functionLinenumberEnd: 433
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - json_destroy
        - shash_replace_nocopy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/json.c:432,18'
          Dst:             shash_replace_nocopy
        - Src:             'lib/json.c:432,5'
          Dst:             json_destroy
    - functionName:    json_array_add
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 238
      functionLinenumberEnd: 278
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         20
      ICount:          157
      EdgeCount:       20
      CyclomaticComplexity: 2
      functionsReached:
        - abort
        - x2nrealloc
        - xmalloc
      functionUses:    27
      BranchProfiles:
        - Branch String:   'lib/json.c:239,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/json.c:255,34'
          Dst:             xmalloc
        - Src:             'lib/json.c:269,9'
          Dst:             abort
        - Src:             'lib/json.c:274,27'
          Dst:             x2nrealloc
    - functionName:    json_destroy
      functionSourceFile: '/src/openvswitch/./include/openvswitch/json.h'
      linkageType:     InternalLinkage
      functionLinenumber: 200
      functionLinenumberEnd: 204
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          38
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - json_destroy__
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/json.h:202,9'
          Dst:             json_destroy__
    - functionName:    json_destroy__
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 535
      functionLinenumberEnd: 566
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          99
      EdgeCount:       37
      CyclomaticComplexity: 20
      functionsReached:
        - abort
        - json_destroy_array
        - json_destroy_object
      functionUses:    9
      BranchProfiles:
        - Branch String:   'lib/json.c:536,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/json.c:538,9'
          Dst:             json_destroy_object
        - Src:             'lib/json.c:542,9'
          Dst:             json_destroy_array
        - Src:             'lib/json.c:563,9'
          Dst:             abort
    - functionName:    json_destroy_object
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 570
      functionLinenumberEnd: 589
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          98
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - cooperative_multitasking_yield_at
        - hmap_first
        - hmap_next
        - json_destroy
        - json_destroy_with_yield
        - shash_delete
        - shash_destroy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/json.c:574,9'
          Dst:             cooperative_multitasking_yield_at
        - Src:             'lib/json.c:577,5'
          Dst:             hmap_first
        - Src:             'lib/json.c:577,5'
          Dst:             hmap_next
        - Src:             'lib/json.c:581,13'
          Dst:             json_destroy_with_yield
        - Src:             'lib/json.c:583,13'
          Dst:             json_destroy
        - Src:             'lib/json.c:585,9'
          Dst:             shash_delete
        - Src:             'lib/json.c:587,5'
          Dst:             shash_destroy
    - functionName:    json_destroy_array
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 593
      functionLinenumberEnd: 611
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          86
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - cooperative_multitasking_yield_at
        - json_array_at
        - json_array_size
        - json_destroy
        - json_destroy_with_yield
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/json.c:594,19'
          Dst:             json_array_size
        - Src:             'lib/json.c:597,9'
          Dst:             cooperative_multitasking_yield_at
        - Src:             'lib/json.c:603,17'
          Dst:             json_array_at
        - Src:             'lib/json.c:602,13'
          Dst:             json_destroy_with_yield
        - Src:             'lib/json.c:605,26'
          Dst:             json_array_at
        - Src:             'lib/json.c:605,13'
          Dst:             json_destroy
    - functionName:    json_destroy_with_yield
      functionSourceFile: '/src/openvswitch/lib/json.h'
      linkageType:     InternalLinkage
      functionLinenumber: 24
      functionLinenumberEnd: 28
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          38
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - json_destroy__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/json.h:26,9'
          Dst:             json_destroy__
    - functionName:    json_parser_push
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1496
      functionLinenumberEnd: 1517
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          94
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - json_destroy
        - json_error
        - json_parser_put_value
        - x2nrealloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/json.c:1501,24'
          Dst:             x2nrealloc
        - Src:             'lib/json.c:1506,13'
          Dst:             json_parser_put_value
        - Src:             'lib/json.c:1513,9'
          Dst:             json_destroy
        - Src:             'lib/json.c:1514,9'
          Dst:             json_error
    - functionName:    json_error
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1708
      functionLinenumberEnd: 1724
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          55
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_init
        - ds_put_format
        - ds_put_format_valist
        - ds_steal_cstr
      functionUses:    23
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/json.c:1713,9'
          Dst:             ds_init
        - Src:             'lib/json.c:1714,9'
          Dst:             ds_put_format
        - Src:             'lib/json.c:1717,9'
          Dst:             ds_put_format_valist
        - Src:             'lib/json.c:1720,20'
          Dst:             ds_steal_cstr
    - functionName:    json_parse_value
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1534
      functionLinenumberEnd: 1582
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          117
      EdgeCount:       41
      CyclomaticComplexity: 22
      functionsReached:
        - json_boolean_create
        - json_error
        - json_integer_create
        - json_null_create
        - json_parser_push_array
        - json_parser_push_object
        - json_parser_put_value
        - json_real_create
        - json_string_create
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/json.c:1537,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/json.c:1539,17'
          Dst:             json_boolean_create
        - Src:             'lib/json.c:1543,17'
          Dst:             json_null_create
        - Src:             'lib/json.c:1547,17'
          Dst:             json_boolean_create
        - Src:             'lib/json.c:1551,9'
          Dst:             json_parser_push_object
        - Src:             'lib/json.c:1555,9'
          Dst:             json_parser_push_array
        - Src:             'lib/json.c:1559,17'
          Dst:             json_integer_create
        - Src:             'lib/json.c:1563,17'
          Dst:             json_real_create
        - Src:             'lib/json.c:1567,17'
          Dst:             json_string_create
        - Src:             'lib/json.c:1576,9'
          Dst:             json_error
        - Src:             'lib/json.c:1580,5'
          Dst:             json_parser_put_value
    - functionName:    json_boolean_create
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 174
      functionLinenumberEnd: 175
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - bool
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - json_create
      functionUses:    13
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/json.c:175,12'
          Dst:             json_create
    - functionName:    json_null_create
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 168
      functionLinenumberEnd: 169
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - json_create
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/json.c:169,12'
          Dst:             json_create
    - functionName:    json_parser_push_object
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1521
      functionLinenumberEnd: 1523
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - json_object_create
        - json_parser_push
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/json.c:1522,25'
          Dst:             json_object_create
        - Src:             'lib/json.c:1522,5'
          Dst:             json_parser_push
    - functionName:    json_parser_push_array
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1527
      functionLinenumberEnd: 1529
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - json_array_create_empty
        - json_parser_push
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/json.c:1528,25'
          Dst:             json_array_create_empty
        - Src:             'lib/json.c:1528,5'
          Dst:             json_parser_push
    - functionName:    json_integer_create
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 409
      functionLinenumberEnd: 412
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - json_create
      functionUses:    26
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/json.c:410,25'
          Dst:             json_create
    - functionName:    json_real_create
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 417
      functionLinenumberEnd: 420
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - double
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - json_create
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/json.c:418,25'
          Dst:             json_create
    - functionName:    json_string_create
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 189
      functionLinenumberEnd: 201
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - json_create
        - strlen
        - xmemdup0
      functionUses:    43
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/json.c:190,25'
          Dst:             json_create
        - Src:             'lib/json.c:191,21'
          Dst:             strlen
        - Src:             'lib/json.c:199,25'
          Dst:             xmemdup0
    - functionName:    json_create
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1699
      functionLinenumberEnd: 1703
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - xmalloc
      functionUses:    15
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/json.c:1700,25'
          Dst:             xmalloc
    - functionName:    json_array_create_empty
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 227
      functionLinenumberEnd: 233
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - json_create
      functionUses:    18
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/json.c:228,25'
          Dst:             json_create
    - functionName:    json_object_create
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 393
      functionLinenumberEnd: 397
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - json_create
        - shash_init
        - xmalloc
      functionUses:    35
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/json.c:394,25'
          Dst:             json_create
        - Src:             'lib/json.c:395,20'
          Dst:             xmalloc
        - Src:             'lib/json.c:396,5'
          Dst:             shash_init
    - functionName:    json_parser_pop
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1586
      functionLinenumberEnd: 1612
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         18
      ICount:          110
      EdgeCount:       22
      CyclomaticComplexity: 6
      functionsReached:
        - abort
        - json_array_trim
        - json_parser_top
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/json.c:1590,12'
          Dst:             json_parser_top
        - Src:             'lib/json.c:1592,9'
          Dst:             json_array_trim
        - Src:             'lib/json.c:1603,16'
          Dst:             json_parser_top
        - Src:             'lib/json.c:1609,13'
          Dst:             abort
    - functionName:    json_array_trim
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 316
      functionLinenumberEnd: 327
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          61
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - xrealloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/json.c:324,27'
          Dst:             xrealloc
    - functionName:    json_parser_input_string
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1164
      functionLinenumberEnd: 1170
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - json_parser_input
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/json.c:1169,5'
          Dst:             json_parser_input
    - functionName:    json_parser_input
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1616
      functionLinenumberEnd: 1695
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         45
      ICount:          234
      EdgeCount:       53
      CyclomaticComplexity: 10
      functionsReached:
        - abort
        - ds_clear
        - json_error
        - json_parse_value
        - json_parser_pop
        - json_parser_push_array
        - json_parser_push_object
        - xstrdup
      functionUses:    6
      BranchProfiles:
        - Branch String:   'lib/json.c:1617,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/json.c:1620,13'
          Dst:             json_parser_push_object
        - Src:             'lib/json.c:1622,13'
          Dst:             json_parser_push_array
        - Src:             'lib/json.c:1624,13'
          Dst:             json_error
        - Src:             'lib/json.c:1629,9'
          Dst:             json_error
        - Src:             'lib/json.c:1634,13'
          Dst:             json_parser_pop
        - Src:             'lib/json.c:1640,30'
          Dst:             xstrdup
        - Src:             'lib/json.c:1643,13'
          Dst:             json_error
        - Src:             'lib/json.c:1651,13'
          Dst:             json_error
        - Src:             'lib/json.c:1656,9'
          Dst:             json_parse_value
        - Src:             'lib/json.c:1663,13'
          Dst:             json_parser_pop
        - Src:             'lib/json.c:1665,13'
          Dst:             json_error
        - Src:             'lib/json.c:1671,13'
          Dst:             json_parser_pop
        - Src:             'lib/json.c:1676,9'
          Dst:             json_parse_value
        - Src:             'lib/json.c:1683,13'
          Dst:             json_parser_pop
        - Src:             'lib/json.c:1685,13'
          Dst:             json_error
        - Src:             'lib/json.c:1690,9'
          Dst:             abort
        - Src:             'lib/json.c:1694,5'
          Dst:             ds_clear
    - functionName:    uc_is_trailing_surrogate
      functionSourceFile: '/src/openvswitch/lib/unicode.h'
      linkageType:     InternalLinkage
      functionLinenumber: 41
      functionLinenumberEnd: 42
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          22
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    uc_is_leading_surrogate
      functionSourceFile: '/src/openvswitch/lib/unicode.h'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 35
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          22
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    json_lex_4hex
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1015
      functionLinenumberEnd: 1032
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          60
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - hexits_value
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/json.c:1023,13'
          Dst:             hexits_value
    - functionName:    hash_rot
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 32
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhash_add__
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hash_rot
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:71,12'
          Dst:             hash_rot
    - functionName:    mhash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_rot
        - mhash_add__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:78,12'
          Dst:             mhash_add__
        - Src:             'lib/hash.h:79,12'
          Dst:             hash_rot
    - functionName:    mhash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 108
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_add
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:109,12'
          Dst:             mhash_add
    - functionName:    hash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:119,12'
          Dst:             mhash_finish
    - functionName:    hash_2words
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 153
      functionLinenumberEnd: 154
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_add
        - hash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:154,33'
          Dst:             hash_add
        - Src:             'lib/hash.h:154,24'
          Dst:             hash_add
        - Src:             'lib/hash.h:154,12'
          Dst:             hash_finish
    - functionName:    json_parser_abort
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1460
      functionLinenumberEnd: 1471
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          59
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ds_destroy
        - json_destroy
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/json.c:1462,9'
          Dst:             ds_destroy
        - Src:             'lib/json.c:1464,13'
          Dst:             json_destroy
    - functionName:    json_parser_is_done
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1414
      functionLinenumberEnd: 1415
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    json_lex_string
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1174
      functionLinenumberEnd: 1189
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          52
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ds_cstr
        - json_error
        - json_parser_input_string
        - json_string_unescape
        - strchr
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/json.c:1175,23'
          Dst:             ds_cstr
        - Src:             'lib/json.c:1176,10'
          Dst:             strchr
        - Src:             'lib/json.c:1177,9'
          Dst:             json_parser_input_string
        - Src:             'lib/json.c:1181,39'
          Dst:             strlen
        - Src:             'lib/json.c:1181,13'
          Dst:             json_string_unescape
        - Src:             'lib/json.c:1182,13'
          Dst:             json_parser_input_string
        - Src:             'lib/json.c:1184,13'
          Dst:             json_error
    - functionName:    json_string_unescape
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1078
      functionLinenumberEnd: 1148
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          158
      EdgeCount:       31
      CyclomaticComplexity: 6
      functionsReached:
        - ds_clear
        - ds_cstr
        - ds_init
        - ds_put_char
        - ds_put_cstr
        - ds_put_format
        - ds_reserve
        - json_lex_unicode
      functionUses:    4
      BranchProfiles:
        - Branch String:   'lib/json.c:1106,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/json.c:1083,5'
          Dst:             ds_init
        - Src:             'lib/json.c:1084,5'
          Dst:             ds_reserve
        - Src:             'lib/json.c:1087,13'
          Dst:             ds_clear
        - Src:             'lib/json.c:1088,13'
          Dst:             ds_put_cstr
        - Src:             'lib/json.c:1092,13'
          Dst:             ds_put_char
        - Src:             'lib/json.c:1102,13'
          Dst:             ds_clear
        - Src:             'lib/json.c:1103,13'
          Dst:             ds_put_cstr
        - Src:             'lib/json.c:1108,13'
          Dst:             ds_put_char
        - Src:             'lib/json.c:1112,13'
          Dst:             ds_put_char
        - Src:             'lib/json.c:1116,13'
          Dst:             ds_put_char
        - Src:             'lib/json.c:1120,13'
          Dst:             ds_put_char
        - Src:             'lib/json.c:1124,13'
          Dst:             ds_put_char
        - Src:             'lib/json.c:1128,13'
          Dst:             ds_put_char
        - Src:             'lib/json.c:1132,18'
          Dst:             json_lex_unicode
        - Src:             'lib/json.c:1139,13'
          Dst:             ds_clear
        - Src:             'lib/json.c:1140,13'
          Dst:             ds_put_format
        - Src:             'lib/json.c:1147,13'
          Dst:             ds_cstr
    - functionName:    json_lex_unicode
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1036
      functionLinenumberEnd: 1074
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          136
      EdgeCount:       26
      CyclomaticComplexity: 9
      functionsReached:
        - ds_clear
        - ds_put_cstr
        - ds_put_utf8
        - json_lex_4hex
        - uc_is_leading_surrogate
        - uc_is_trailing_surrogate
        - utf16_decode_surrogate_pair
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/json.c:1040,13'
          Dst:             json_lex_4hex
        - Src:             'lib/json.c:1042,9'
          Dst:             ds_clear
        - Src:             'lib/json.c:1043,9'
          Dst:             ds_put_cstr
        - Src:             'lib/json.c:1047,10'
          Dst:             uc_is_leading_surrogate
        - Src:             'lib/json.c:1048,9'
          Dst:             ds_put_utf8
        - Src:             'lib/json.c:1053,9'
          Dst:             ds_clear
        - Src:             'lib/json.c:1054,9'
          Dst:             ds_put_cstr
        - Src:             'lib/json.c:1058,13'
          Dst:             json_lex_4hex
        - Src:             'lib/json.c:1060,9'
          Dst:             ds_clear
        - Src:             'lib/json.c:1061,9'
          Dst:             ds_put_cstr
        - Src:             'lib/json.c:1065,10'
          Dst:             uc_is_trailing_surrogate
        - Src:             'lib/json.c:1066,9'
          Dst:             ds_clear
        - Src:             'lib/json.c:1067,9'
          Dst:             ds_put_cstr
        - Src:             'lib/json.c:1072,22'
          Dst:             utf16_decode_surrogate_pair
        - Src:             'lib/json.c:1072,5'
          Dst:             ds_put_utf8
    - functionName:    json_lex_number
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 864
      functionLinenumberEnd: 1011
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         100
      ICount:          578
      EdgeCount:       134
      CyclomaticComplexity: 36
      functionsReached:
        - __ctype_b_loc
        - ds_cstr
        - json_error
        - json_parser_input
        - str_to_double
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/json.c:865,22'
          Dst:             ds_cstr
        - Src:             'lib/json.c:883,13'
          Dst:             __ctype_b_loc
        - Src:             'lib/json.c:884,13'
          Dst:             json_error
        - Src:             'lib/json.c:887,16'
          Dst:             __ctype_b_loc
        - Src:             'lib/json.c:898,18'
          Dst:             __ctype_b_loc
        - Src:             'lib/json.c:900,9'
          Dst:             json_error
        - Src:             'lib/json.c:907,14'
          Dst:             __ctype_b_loc
        - Src:             'lib/json.c:908,13'
          Dst:             json_error
        - Src:             'lib/json.c:919,18'
          Dst:             __ctype_b_loc
        - Src:             'lib/json.c:935,14'
          Dst:             __ctype_b_loc
        - Src:             'lib/json.c:936,13'
          Dst:             json_error
        - Src:             'lib/json.c:947,18'
          Dst:             __ctype_b_loc
        - Src:             'lib/json.c:963,9'
          Dst:             json_error
        - Src:             'lib/json.c:973,9'
          Dst:             json_parser_input
        - Src:             'lib/json.c:992,13'
          Dst:             json_parser_input
        - Src:             'lib/json.c:998,24'
          Dst:             ds_cstr
        - Src:             'lib/json.c:998,10'
          Dst:             str_to_double
        - Src:             'lib/json.c:999,9'
          Dst:             json_error
        - Src:             'lib/json.c:1006,5'
          Dst:             json_parser_input
        - Src:             'lib/json.c:1010,5'
          Dst:             json_error
    - functionName:    json_lex_keyword
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 844
      functionLinenumberEnd: 860
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          64
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - ds_cstr
        - json_error
        - json_parser_input
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/json.c:848,9'
          Dst:             ds_cstr
        - Src:             'lib/json.c:849,10'
          Dst:             strcmp
        - Src:             'lib/json.c:851,17'
          Dst:             strcmp
        - Src:             'lib/json.c:853,17'
          Dst:             strcmp
        - Src:             'lib/json.c:856,9'
          Dst:             json_error
        - Src:             'lib/json.c:859,5'
          Dst:             json_parser_input
    - functionName:    json_from_stream
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1259
      functionLinenumberEnd: 1281
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         18
      ICount:          97
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - __errno_location
        - feof
        - ferror
        - fread
        - json_destroy
        - json_parser_create
        - json_parser_feed
        - json_parser_finish
        - json_string_create_nocopy
        - ovs_strerror
        - xasprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/json.c:1263,9'
          Dst:             json_parser_create
        - Src:             'lib/json.c:1264,14'
          Dst:             feof
        - Src:             'lib/json.c:1264,30'
          Dst:             ferror
        - Src:             'lib/json.c:1268,13'
          Dst:             fread
        - Src:             'lib/json.c:1269,19'
          Dst:             json_parser_feed
        - Src:             'lib/json.c:1273,12'
          Dst:             json_parser_finish
        - Src:             'lib/json.c:1275,9'
          Dst:             ferror
        - Src:             'lib/json.c:1276,9'
          Dst:             json_destroy
        - Src:             'lib/json.c:1278,69'
          Dst:             __errno_location
        - Src:             'lib/json.c:1278,56'
          Dst:             ovs_strerror
        - Src:             'lib/json.c:1278,13'
          Dst:             xasprintf
        - Src:             'lib/json.c:1277,16'
          Dst:             json_string_create_nocopy
    - functionName:    json_parser_create
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1286
      functionLinenumberEnd: 1289
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - xzalloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/json.c:1287,29'
          Dst:             xzalloc
    - 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:    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:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    json_parser_feed
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1306
      functionLinenumberEnd: 1409
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         95
      ICount:          510
      EdgeCount:       103
      CyclomaticComplexity: 10
      functionsReached:
        - __ctype_b_loc
        - ds_put_buffer
        - json_error
        - json_lex_keyword
        - json_lex_number
        - json_lex_string
        - json_parser_input
        - ovs_abort
        - strchr
      functionUses:    4
      BranchProfiles:
        - Branch String:   'lib/json.c:1317,9'
          Branch Sides:    []
        - Branch String:   'lib/json.c:1319,13'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/json.c:1337,17'
          Dst:             json_parser_input
        - Src:             'lib/json.c:1354,21'
          Dst:             __ctype_b_loc
        - Src:             'lib/json.c:1355,21'
          Dst:             json_error
        - Src:             'lib/json.c:1357,21'
          Dst:             json_error
        - Src:             'lib/json.c:1364,18'
          Dst:             __ctype_b_loc
        - Src:             'lib/json.c:1365,17'
          Dst:             ds_put_buffer
        - Src:             'lib/json.c:1366,17'
          Dst:             json_lex_keyword
        - Src:             'lib/json.c:1373,18'
          Dst:             strchr
        - Src:             'lib/json.c:1374,17'
          Dst:             ds_put_buffer
        - Src:             'lib/json.c:1375,17'
          Dst:             json_lex_number
        - Src:             'lib/json.c:1385,17'
          Dst:             ds_put_buffer
        - Src:             'lib/json.c:1386,17'
          Dst:             json_lex_string
        - Src:             'lib/json.c:1388,17'
          Dst:             json_error
        - Src:             'lib/json.c:1397,13'
          Dst:             ovs_abort
        - Src:             'lib/json.c:1407,9'
          Dst:             ds_put_buffer
    - functionName:    json_parser_finish
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1420
      functionLinenumberEnd: 1455
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         21
      ICount:          129
      EdgeCount:       23
      CyclomaticComplexity: 4
      functionsReached:
        - json_error
        - json_parser_abort
        - json_parser_feed
        - json_string_create_nocopy
        - ovs_ignore
      functionUses:    3
      BranchProfiles:
        - Branch String:   'lib/json.c:1423,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/json.c:1429,9'
          Dst:             json_error
        - Src:             'lib/json.c:1434,9'
          Dst:             json_parser_feed
        - Src:             'lib/json.c:1439,9'
          Dst:             json_error
        - Src:             'lib/json.c:1441,9'
          Dst:             json_error
        - Src:             'lib/json.c:1445,9'
          Dst:             ovs_ignore
        - Src:             'lib/json.c:1446,9'
          Dst:             ovs_ignore
        - Src:             'lib/json.c:1449,16'
          Dst:             json_string_create_nocopy
        - Src:             'lib/json.c:1453,5'
          Dst:             json_parser_abort
    - functionName:    json_string_create_nocopy
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 180
      functionLinenumberEnd: 184
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - json_create
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/json.c:181,25'
          Dst:             json_create
    - functionName:    json_from_file
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1233
      functionLinenumberEnd: 1247
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __errno_location
        - fclose
        - fopen
        - json_from_stream
        - json_string_create_nocopy
        - ovs_strerror
        - xasprintf
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/json.c:1237,14'
          Dst:             fopen
        - Src:             'lib/json.c:1241,36'
          Dst:             __errno_location
        - Src:             'lib/json.c:1241,23'
          Dst:             ovs_strerror
        - Src:             'lib/json.c:1240,13'
          Dst:             xasprintf
        - Src:             'lib/json.c:1239,16'
          Dst:             json_string_create_nocopy
        - Src:             'lib/json.c:1243,12'
          Dst:             json_from_stream
        - Src:             'lib/json.c:1244,5'
          Dst:             fclose
    - functionName:    json_from_serialized_object
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1219
      functionLinenumberEnd: 1220
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - json_from_string
        - json_serialized_object
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/json.c:1220,29'
          Dst:             json_serialized_object
        - Src:             'lib/json.c:1220,12'
          Dst:             json_from_string
    - functionName:    json_from_string
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1210
      functionLinenumberEnd: 1213
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - json_parser_create
        - json_parser_feed
        - json_parser_finish
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/json.c:1211,29'
          Dst:             json_parser_create
        - Src:             'lib/json.c:1212,33'
          Dst:             strlen
        - Src:             'lib/json.c:1212,5'
          Dst:             json_parser_feed
        - Src:             'lib/json.c:1213,12'
          Dst:             json_parser_finish
    - functionName:    json_to_ds
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1768
      functionLinenumberEnd: 1775
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - json_serialize
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/json.c:1774,5'
          Dst:             json_serialize
    - functionName:    json_string_escape
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1153
      functionLinenumberEnd: 1160
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - json_to_ds
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/json.c:1159,5'
          Dst:             json_to_ds
    - functionName:    json_equal_array
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 783
      functionLinenumberEnd: 797
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          66
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - json_array_at
        - json_array_size
        - json_equal
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/json.c:784,19'
          Dst:             json_array_size
        - Src:             'lib/json.c:786,14'
          Dst:             json_array_size
        - Src:             'lib/json.c:791,25'
          Dst:             json_array_at
        - Src:             'lib/json.c:791,46'
          Dst:             json_array_at
        - Src:             'lib/json.c:791,14'
          Dst:             json_equal
    - functionName:    json_equal
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 801
      functionLinenumberEnd: 838
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         28
      ICount:          159
      EdgeCount:       30
      CyclomaticComplexity: 4
      functionsReached:
        - abort
        - json_equal_array
        - json_equal_object
        - json_serialized_object
        - json_string
        - strcmp
      functionUses:    10
      BranchProfiles:
        - Branch String:   'lib/json.c:810,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/json.c:812,16'
          Dst:             json_equal_object
        - Src:             'lib/json.c:815,16'
          Dst:             json_equal_array
        - Src:             'lib/json.c:818,24'
          Dst:             json_string
        - Src:             'lib/json.c:818,40'
          Dst:             json_string
        - Src:             'lib/json.c:818,17'
          Dst:             strcmp
        - Src:             'lib/json.c:821,24'
          Dst:             json_serialized_object
        - Src:             'lib/json.c:821,51'
          Dst:             json_serialized_object
        - Src:             'lib/json.c:821,17'
          Dst:             strcmp
        - Src:             'lib/json.c:836,9'
          Dst:             abort
    - functionName:    json_equal_object
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 764
      functionLinenumberEnd: 779
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          98
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - hmap_first
        - hmap_next
        - json_equal
        - shash_count
        - shash_find
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/json.c:767,9'
          Dst:             shash_count
        - Src:             'lib/json.c:767,27'
          Dst:             shash_count
        - Src:             'lib/json.c:771,5'
          Dst:             hmap_first
        - Src:             'lib/json.c:772,37'
          Dst:             shash_find
        - Src:             'lib/json.c:773,25'
          Dst:             json_equal
        - Src:             'lib/json.c:771,5'
          Dst:             hmap_next
    - functionName:    hash_int
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 408
      functionLinenumberEnd: 409
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_2words
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:409,12'
          Dst:             hash_2words
    - functionName:    hash_string
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 403
      functionLinenumberEnd: 404
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_bytes
        - strlen
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:404,26'
          Dst:             strlen
        - Src:             'lib/hash.h:404,12'
          Dst:             hash_bytes
    - functionName:    json_hash_array
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 719
      functionLinenumberEnd: 726
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          52
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - hash_int
        - json_array_at
        - json_array_size
        - json_hash
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/json.c:720,19'
          Dst:             json_array_size
        - Src:             'lib/json.c:722,13'
          Dst:             hash_int
        - Src:             'lib/json.c:724,27'
          Dst:             json_array_at
        - Src:             'lib/json.c:724,17'
          Dst:             json_hash
    - functionName:    json_hash
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 731
      functionLinenumberEnd: 760
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          120
      EdgeCount:       32
      CyclomaticComplexity: 17
      functionsReached:
        - abort
        - hash_double
        - hash_int
        - hash_string
        - json_hash_array
        - json_hash_object
        - json_serialized_object
        - json_string
      functionUses:    5
      BranchProfiles:
        - Branch String:   'lib/json.c:732,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/json.c:734,16'
          Dst:             json_hash_object
        - Src:             'lib/json.c:737,16'
          Dst:             json_hash_array
        - Src:             'lib/json.c:740,28'
          Dst:             json_string
        - Src:             'lib/json.c:740,16'
          Dst:             hash_string
        - Src:             'lib/json.c:743,28'
          Dst:             json_serialized_object
        - Src:             'lib/json.c:743,16'
          Dst:             hash_string
        - Src:             'lib/json.c:748,16'
          Dst:             hash_int
        - Src:             'lib/json.c:751,16'
          Dst:             hash_int
        - Src:             'lib/json.c:754,16'
          Dst:             hash_double
        - Src:             'lib/json.c:758,9'
          Dst:             abort
    - functionName:    json_hash_object
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 702
      functionLinenumberEnd: 714
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          65
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - hash_string
        - json_hash
        - shash_count
        - shash_sort
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/json.c:706,13'
          Dst:             shash_sort
        - Src:             'lib/json.c:707,9'
          Dst:             shash_count
        - Src:             'lib/json.c:710,17'
          Dst:             hash_string
        - Src:             'lib/json.c:711,17'
          Dst:             json_hash
    - functionName:    json_clone
      functionSourceFile: '/src/openvswitch/./include/openvswitch/json.h'
      linkageType:     InternalLinkage
      functionLinenumber: 189
      functionLinenumberEnd: 192
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    json_nullable_clone
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 652
      functionLinenumberEnd: 653
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          27
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - json_clone
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/json.c:653,19'
          Dst:             json_clone
    - functionName:    json_deep_clone_array
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 672
      functionLinenumberEnd: 698
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          102
      EdgeCount:       14
      CyclomaticComplexity: 2
      functionsReached:
        - json_array_at
        - json_array_create
        - json_array_create_1
        - json_array_create_2
        - json_array_create_3
        - json_array_create_empty
        - json_array_size
        - json_deep_clone
        - xmalloc
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/json.c:677,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/json.c:676,9'
          Dst:             json_array_size
        - Src:             'lib/json.c:679,16'
          Dst:             json_array_create_empty
        - Src:             'lib/json.c:681,52'
          Dst:             json_array_at
        - Src:             'lib/json.c:681,36'
          Dst:             json_deep_clone
        - Src:             'lib/json.c:681,16'
          Dst:             json_array_create_1
        - Src:             'lib/json.c:683,52'
          Dst:             json_array_at
        - Src:             'lib/json.c:683,36'
          Dst:             json_deep_clone
        - Src:             'lib/json.c:684,52'
          Dst:             json_array_at
        - Src:             'lib/json.c:684,36'
          Dst:             json_deep_clone
        - Src:             'lib/json.c:683,16'
          Dst:             json_array_create_2
        - Src:             'lib/json.c:686,52'
          Dst:             json_array_at
        - Src:             'lib/json.c:686,36'
          Dst:             json_deep_clone
        - Src:             'lib/json.c:687,52'
          Dst:             json_array_at
        - Src:             'lib/json.c:687,36'
          Dst:             json_deep_clone
        - Src:             'lib/json.c:688,52'
          Dst:             json_array_at
        - Src:             'lib/json.c:688,36'
          Dst:             json_deep_clone
        - Src:             'lib/json.c:686,16'
          Dst:             json_array_create_3
        - Src:             'lib/json.c:693,16'
          Dst:             xmalloc
        - Src:             'lib/json.c:695,39'
          Dst:             json_array_at
        - Src:             'lib/json.c:695,23'
          Dst:             json_deep_clone
        - Src:             'lib/json.c:697,12'
          Dst:             json_array_create
    - functionName:    json_deep_clone
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 619
      functionLinenumberEnd: 648
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         17
      ICount:          98
      EdgeCount:       32
      CyclomaticComplexity: 17
      functionsReached:
        - abort
        - json_create
        - json_deep_clone_array
        - json_deep_clone_object
        - json_integer_create
        - json_real_create
        - json_serialized_object_create
        - json_string
        - json_string_create
      functionUses:    9
      BranchProfiles:
        - Branch String:   'lib/json.c:620,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/json.c:622,16'
          Dst:             json_deep_clone_object
        - Src:             'lib/json.c:625,16'
          Dst:             json_deep_clone_array
        - Src:             'lib/json.c:628,35'
          Dst:             json_string
        - Src:             'lib/json.c:628,16'
          Dst:             json_string_create
        - Src:             'lib/json.c:631,16'
          Dst:             json_serialized_object_create
        - Src:             'lib/json.c:636,16'
          Dst:             json_create
        - Src:             'lib/json.c:639,16'
          Dst:             json_integer_create
        - Src:             'lib/json.c:642,16'
          Dst:             json_real_create
        - Src:             'lib/json.c:646,9'
          Dst:             abort
    - functionName:    json_array_create_1
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 342
      functionLinenumberEnd: 348
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - json_create
      functionUses:    18
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/json.c:343,25'
          Dst:             json_create
    - functionName:    json_array_create_2
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 353
      functionLinenumberEnd: 360
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          32
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - json_create
      functionUses:    13
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/json.c:354,25'
          Dst:             json_create
    - functionName:    json_array_create_3
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 365
      functionLinenumberEnd: 373
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          39
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - json_create
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/json.c:366,25'
          Dst:             json_create
    - functionName:    json_array_create
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 331
      functionLinenumberEnd: 337
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - json_create
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/json.c:332,25'
          Dst:             json_create
    - functionName:    json_deep_clone_object
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 658
      functionLinenumberEnd: 667
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          68
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - hmap_first
        - hmap_next
        - json_deep_clone
        - json_object_create
        - json_object_put
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/json.c:662,12'
          Dst:             json_object_create
        - Src:             'lib/json.c:663,5'
          Dst:             hmap_first
        - Src:             'lib/json.c:665,43'
          Dst:             json_deep_clone
        - Src:             'lib/json.c:665,9'
          Dst:             json_object_put
        - Src:             'lib/json.c:663,5'
          Dst:             hmap_next
    - functionName:    json_serialized_object_create
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 211
      functionLinenumberEnd: 214
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - json_create
        - json_to_string
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/json.c:212,25'
          Dst:             json_create
        - Src:             'lib/json.c:213,21'
          Dst:             json_to_string
    - functionName:    json_to_string
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1757
      functionLinenumberEnd: 1762
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_init
        - ds_steal_cstr
        - json_to_ds
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/json.c:1760,5'
          Dst:             ds_init
        - Src:             'lib/json.c:1761,5'
          Dst:             json_to_ds
        - Src:             'lib/json.c:1762,12'
          Dst:             ds_steal_cstr
    - functionName:    json_object_put
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 425
      functionLinenumberEnd: 427
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - json_destroy
        - shash_replace
      functionUses:    75
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/json.c:426,18'
          Dst:             shash_replace
        - Src:             'lib/json.c:426,5'
          Dst:             json_destroy
    - functionName:    json_integer
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 524
      functionLinenumberEnd: 526
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/json.c:525,5'
          Dst:             ovs_ignore
    - functionName:    json_real
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 517
      functionLinenumberEnd: 519
      functionDepth:   0
      returnType:      double
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          56
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/json.c:518,5'
          Dst:             ovs_ignore
    - functionName:    json_boolean
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 510
      functionLinenumberEnd: 512
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/json.c:511,5'
          Dst:             ovs_ignore
    - functionName:    json_object
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 503
      functionLinenumberEnd: 505
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    31
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/json.c:504,5'
          Dst:             ovs_ignore
    - functionName:    json_object_put_uuid
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 454
      functionLinenumberEnd: 456
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - json_object_put
        - json_string_create_uuid
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/json.c:455,33'
          Dst:             json_string_create_uuid
        - Src:             'lib/json.c:455,5'
          Dst:             json_object_put
    - functionName:    json_string_create_uuid
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 205
      functionLinenumberEnd: 206
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - json_string_create_nocopy
        - uuid_to_string
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/json.c:206,38'
          Dst:             uuid_to_string
        - Src:             'lib/json.c:206,12'
          Dst:             json_string_create_nocopy
    - functionName:    uuid_to_string
      functionSourceFile: '/src/openvswitch/lib/uuid.h'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 88
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - snprintf
        - xmalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/uuid.h:85,18'
          Dst:             xmalloc
        - Src:             'lib/uuid.h:87,5'
          Dst:             snprintf
    - functionName:    json_object_put_format
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 444
      functionLinenumberEnd: 450
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - json_object_put
        - json_string_create_nocopy
        - xvasprintf
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/json.c:448,47'
          Dst:             xvasprintf
        - Src:             'lib/json.c:448,21'
          Dst:             json_string_create_nocopy
        - Src:             'lib/json.c:447,5'
          Dst:             json_object_put
    - functionName:    json_object_put_string
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 437
      functionLinenumberEnd: 439
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - json_object_put
        - json_string_create
      functionUses:    38
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/json.c:438,33'
          Dst:             json_string_create
        - Src:             'lib/json.c:438,5'
          Dst:             json_object_put
    - functionName:    json_object_is_empty
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 402
      functionLinenumberEnd: 404
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          39
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - shash_is_empty
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/json.c:404,15'
          Dst:             shash_is_empty
    - functionName:    json_array_contains_string
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 378
      functionLinenumberEnd: 389
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          73
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - json_array_at
        - json_array_size
        - json_string
        - strcmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/json.c:379,16'
          Dst:             json_array_size
        - Src:             'lib/json.c:382,35'
          Dst:             json_array_at
        - Src:             'lib/json.c:384,50'
          Dst:             json_string
        - Src:             'lib/json.c:384,43'
          Dst:             strcmp
    - functionName:    json_array_pop
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 293
      functionLinenumberEnd: 312
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          97
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - json_array_size
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/json.c:294,10'
          Dst:             json_array_size
    - functionName:    json_array_set
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 282
      functionLinenumberEnd: 289
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - json_array_size
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/json.c:283,16'
          Dst:             json_array_size
        - Src:             'lib/json.c:283,5'
          Dst:             ovs_ignore
    - functionName:    json_serialized_object_create_with_yield
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 219
      functionLinenumberEnd: 222
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - json_create
        - json_to_string
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/json.c:220,25'
          Dst:             json_create
        - Src:             'lib/json.c:221,21'
          Dst:             json_to_string
    - functionName:    json_type_to_string
      functionSourceFile: '/src/openvswitch/lib/json.c'
      linkageType:     InternalLinkage
      functionLinenumber: 133
      functionLinenumberEnd: 162
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         16
      ICount:          67
      EdgeCount:       30
      CyclomaticComplexity: 16
      functionsReached: []
      functionUses:    3
      BranchProfiles:
        - Branch String:   'lib/json.c:134,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    init_this_module_jsonrpc
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/jsonrpc.c:39,1'
          Dst:             vlog_insert_module
    - functionName:    jsonrpc_recv_incomplete_init_coverage
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41
      functionLinenumberEnd: 41
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/jsonrpc.c:41,1'
          Dst:             coverage_counter_register
    - functionName:    jsonrpc_recv_incomplete_count
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41
      functionLinenumberEnd: 41
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_jsonrpc_recv_incomplete_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/jsonrpc.c:41,1'
          Dst:             counter_jsonrpc_recv_incomplete_get
    - functionName:    counter_jsonrpc_recv_incomplete_get
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41
      functionLinenumberEnd: 41
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_jsonrpc_recv_incomplete_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/jsonrpc.c:41,1'
          Dst:             counter_jsonrpc_recv_incomplete_get_unsafe
    - functionName:    counter_jsonrpc_recv_incomplete_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41
      functionLinenumberEnd: 41
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    atomic_count_inc
      functionSourceFile: '/src/openvswitch/lib/ovs-atomic.h'
      linkageType:     InternalLinkage
      functionLinenumber: 451
      functionLinenumberEnd: 456
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_list_insert
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 169
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    jsonrpc_session_set_options
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1352
      functionLinenumberEnd: 1356
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - jsonrpc_session_set_dscp
        - jsonrpc_session_set_max_backoff
        - jsonrpc_session_set_probe_interval
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/jsonrpc.c:1353,5'
          Dst:             jsonrpc_session_set_max_backoff
        - Src:             'lib/jsonrpc.c:1354,5'
          Dst:             jsonrpc_session_set_probe_interval
        - Src:             'lib/jsonrpc.c:1355,5'
          Dst:             jsonrpc_session_set_dscp
    - functionName:    jsonrpc_session_set_max_backoff
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1314
      functionLinenumberEnd: 1316
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - reconnect_set_backoff
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/jsonrpc.c:1315,5'
          Dst:             reconnect_set_backoff
    - functionName:    jsonrpc_session_set_probe_interval
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1327
      functionLinenumberEnd: 1332
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_replay_is_active
        - reconnect_set_probe_interval
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/jsonrpc.c:1328,9'
          Dst:             ovs_replay_is_active
        - Src:             'lib/jsonrpc.c:1331,5'
          Dst:             reconnect_set_probe_interval
    - functionName:    jsonrpc_session_set_dscp
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1339
      functionLinenumberEnd: 1347
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - jsonrpc_session_force_reconnect
        - pstream_close
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/jsonrpc.c:1341,9'
          Dst:             pstream_close
        - Src:             'lib/jsonrpc.c:1345,9'
          Dst:             jsonrpc_session_force_reconnect
    - functionName:    jsonrpc_session_force_reconnect
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1288
      functionLinenumberEnd: 1290
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - reconnect_force_reconnect
        - time_msec
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/jsonrpc.c:1289,45'
          Dst:             time_msec
        - Src:             'lib/jsonrpc.c:1289,5'
          Dst:             reconnect_force_reconnect
    - functionName:    ovs_replay_is_active
      functionSourceFile: '/src/openvswitch/lib/ovs-replay.h'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 67
      functionDepth:   0
      returnType:      bool
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          14
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_replay_get_state
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-replay.h:67,12'
          Dst:             ovs_replay_get_state
    - functionName:    jsonrpc_session_reset_backoff
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1298
      functionLinenumberEnd: 1308
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - jsonrpc_session_is_connected
        - reconnect_set_backoff_free_tries
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/jsonrpc.c:1301,9'
          Dst:             jsonrpc_session_is_connected
        - Src:             'lib/jsonrpc.c:1307,5'
          Dst:             reconnect_set_backoff_free_tries
    - functionName:    jsonrpc_session_is_connected
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1236
      functionLinenumberEnd: 1237
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    jsonrpc_session_enable_reconnect
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1279
      functionLinenumberEnd: 1283
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - reconnect_set_backoff
        - reconnect_set_max_tries
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/jsonrpc.c:1280,5'
          Dst:             reconnect_set_max_tries
        - Src:             'lib/jsonrpc.c:1281,5'
          Dst:             reconnect_set_backoff
    - functionName:    jsonrpc_session_get_reconnect_stats
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1272
      functionLinenumberEnd: 1274
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - reconnect_get_stats
        - time_msec
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/jsonrpc.c:1273,39'
          Dst:             time_msec
        - Src:             'lib/jsonrpc.c:1273,5'
          Dst:             reconnect_get_stats
    - functionName:    jsonrpc_session_get_last_error
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1264
      functionLinenumberEnd: 1265
      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:    jsonrpc_session_get_status
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1255
      functionLinenumberEnd: 1256
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          39
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - jsonrpc_get_status
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/jsonrpc.c:1256,26'
          Dst:             jsonrpc_get_status
    - functionName:    jsonrpc_get_status
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 177
      functionLinenumberEnd: 178
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    jsonrpc_session_get_seqno
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1246
      functionLinenumberEnd: 1247
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    jsonrpc_session_is_alive
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1229
      functionLinenumberEnd: 1230
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          42
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - reconnect_get_max_tries
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/jsonrpc.c:1230,35'
          Dst:             reconnect_get_max_tries
    - functionName:    jsonrpc_session_recv_wait
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1220
      functionLinenumberEnd: 1224
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - jsonrpc_recv_wait
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/jsonrpc.c:1222,9'
          Dst:             jsonrpc_recv_wait
    - functionName:    jsonrpc_recv_wait
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 403
      functionLinenumberEnd: 409
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          44
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - byteq_is_empty
        - poll_immediate_wake_at
        - stream_recv_wait
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/jsonrpc.c:404,25'
          Dst:             byteq_is_empty
        - Src:             'lib/jsonrpc.c:405,9'
          Dst:             poll_immediate_wake_at
        - Src:             'lib/jsonrpc.c:407,9'
          Dst:             stream_recv_wait
    - functionName:    jsonrpc_session_recv
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1179
      functionLinenumberEnd: 1216
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         29
      ICount:          166
      EdgeCount:       38
      CyclomaticComplexity: 11
      functionsReached:
        - json_clone
        - json_string
        - jsonrpc_create_reply
        - jsonrpc_get_received_bytes
        - jsonrpc_msg_destroy
        - jsonrpc_recv
        - jsonrpc_session_send
        - reconnect_activity
        - reconnect_receive_attempted
        - strcmp
        - time_msec
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/jsonrpc.c:1184,26'
          Dst:             jsonrpc_get_received_bytes
        - Src:             'lib/jsonrpc.c:1185,9'
          Dst:             jsonrpc_recv
        - Src:             'lib/jsonrpc.c:1187,29'
          Dst:             time_msec
        - Src:             'lib/jsonrpc.c:1188,9'
          Dst:             reconnect_receive_attempted
        - Src:             'lib/jsonrpc.c:1189,31'
          Dst:             jsonrpc_get_received_bytes
        - Src:             'lib/jsonrpc.c:1195,13'
          Dst:             reconnect_activity
        - Src:             'lib/jsonrpc.c:1199,50'
          Dst:             strcmp
        - Src:             'lib/jsonrpc.c:1203,46'
          Dst:             json_clone
        - Src:             'lib/jsonrpc.c:1203,25'
          Dst:             jsonrpc_create_reply
        - Src:             'lib/jsonrpc.c:1204,17'
          Dst:             jsonrpc_session_send
        - Src:             'lib/jsonrpc.c:1207,35'
          Dst:             json_string
        - Src:             'lib/jsonrpc.c:1207,28'
          Dst:             strcmp
        - Src:             'lib/jsonrpc.c:1212,13'
          Dst:             jsonrpc_msg_destroy
    - functionName:    jsonrpc_get_received_bytes
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 205
      functionLinenumberEnd: 206
      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:    jsonrpc_recv
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 330
      functionLinenumberEnd: 397
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         38
      ICount:          258
      EdgeCount:       50
      CyclomaticComplexity: 14
      functionsReached:
        - byteq_advance_head
        - byteq_advance_tail
        - byteq_fast_forward
        - byteq_head
        - byteq_headroom
        - byteq_is_empty
        - byteq_tail
        - byteq_tailroom
        - json_parser_create
        - json_parser_feed
        - json_parser_is_done
        - jsonrpc_error
        - jsonrpc_parse_received_message
        - jsonrpc_recv_incomplete_add
        - ovs_strerror
        - stream_recv
        - stream_report_content
        - vlog_rate_limit
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/jsonrpc.c:342,13'
          Dst:             byteq_is_empty
        - Src:             'lib/jsonrpc.c:346,13'
          Dst:             byteq_fast_forward
        - Src:             'lib/jsonrpc.c:347,21'
          Dst:             byteq_headroom
        - Src:             'lib/jsonrpc.c:348,47'
          Dst:             byteq_head
        - Src:             'lib/jsonrpc.c:348,22'
          Dst:             stream_recv
        - Src:             'lib/jsonrpc.c:353,21'
          Dst:             ovs_strerror
        - Src:             'lib/jsonrpc.c:353,21'
          Dst:             vlog_rate_limit
        - Src:             'lib/jsonrpc.c:355,21'
          Dst:             jsonrpc_error
        - Src:             'lib/jsonrpc.c:359,17'
          Dst:             jsonrpc_error
        - Src:             'lib/jsonrpc.c:362,13'
          Dst:             byteq_advance_head
        - Src:             'lib/jsonrpc.c:367,27'
          Dst:             json_parser_create
        - Src:             'lib/jsonrpc.c:369,13'
          Dst:             byteq_tailroom
        - Src:             'lib/jsonrpc.c:371,42'
          Dst:             byteq_tail
        - Src:             'lib/jsonrpc.c:370,16'
          Dst:             json_parser_feed
        - Src:             'lib/jsonrpc.c:372,9'
          Dst:             byteq_advance_tail
        - Src:             'lib/jsonrpc.c:375,13'
          Dst:             json_parser_is_done
        - Src:             'lib/jsonrpc.c:376,21'
          Dst:             jsonrpc_parse_received_message
        - Src:             'lib/jsonrpc.c:384,21'
          Dst:             stream_report_content
        - Src:             'lib/jsonrpc.c:394,5'
          Dst:             jsonrpc_recv_incomplete_add
    - functionName:    json_clone
      functionSourceFile: '/src/openvswitch/./include/openvswitch/json.h'
      linkageType:     InternalLinkage
      functionLinenumber: 189
      functionLinenumberEnd: 192
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    jsonrpc_create_reply
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 595
      functionLinenumberEnd: 597
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - json_clone
        - jsonrpc_create
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/jsonrpc.c:597,28'
          Dst:             json_clone
        - Src:             'lib/jsonrpc.c:596,12'
          Dst:             jsonrpc_create
    - functionName:    jsonrpc_session_send
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1168
      functionLinenumberEnd: 1175
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - jsonrpc_msg_destroy
        - jsonrpc_send
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/jsonrpc.c:1170,16'
          Dst:             jsonrpc_send
        - Src:             'lib/jsonrpc.c:1172,9'
          Dst:             jsonrpc_msg_destroy
    - functionName:    jsonrpc_msg_destroy
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 698
      functionLinenumberEnd: 707
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - json_destroy
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/jsonrpc.c:701,9'
          Dst:             json_destroy
        - Src:             'lib/jsonrpc.c:702,9'
          Dst:             json_destroy
        - Src:             'lib/jsonrpc.c:703,9'
          Dst:             json_destroy
        - Src:             'lib/jsonrpc.c:704,9'
          Dst:             json_destroy
    - functionName:    json_destroy
      functionSourceFile: '/src/openvswitch/./include/openvswitch/json.h'
      linkageType:     InternalLinkage
      functionLinenumber: 200
      functionLinenumberEnd: 204
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          38
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - json_destroy__
      functionUses:    12
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/json.h:202,9'
          Dst:             json_destroy__
    - functionName:    jsonrpc_send
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 259
      functionLinenumberEnd: 310
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         41
      ICount:          260
      EdgeCount:       52
      CyclomaticComplexity: 13
      functionsReached:
        - json_destroy
        - json_to_ds
        - jsonrpc_error
        - jsonrpc_log_msg
        - jsonrpc_msg_destroy
        - jsonrpc_msg_to_json
        - jsonrpc_run
        - ofpbuf_use_ds
        - ovs_list_push_back
        - vlog
        - vlog_rate_limit
        - xmalloc
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/jsonrpc.c:266,9'
          Dst:             jsonrpc_msg_destroy
        - Src:             'lib/jsonrpc.c:270,5'
          Dst:             jsonrpc_log_msg
        - Src:             'lib/jsonrpc.c:272,12'
          Dst:             jsonrpc_msg_to_json
        - Src:             'lib/jsonrpc.c:273,5'
          Dst:             json_to_ds
        - Src:             'lib/jsonrpc.c:275,5'
          Dst:             json_destroy
        - Src:             'lib/jsonrpc.c:277,11'
          Dst:             xmalloc
        - Src:             'lib/jsonrpc.c:278,5'
          Dst:             ofpbuf_use_ds
        - Src:             'lib/jsonrpc.c:279,5'
          Dst:             ovs_list_push_back
        - Src:             'lib/jsonrpc.c:287,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/jsonrpc.c:292,13'
          Dst:             vlog
        - Src:             'lib/jsonrpc.c:297,13'
          Dst:             vlog
        - Src:             'lib/jsonrpc.c:302,13'
          Dst:             jsonrpc_error
        - Src:             'lib/jsonrpc.c:307,9'
          Dst:             jsonrpc_run
    - functionName:    jsonrpc_log_msg
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 220
      functionLinenumberEnd: 246
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          147
      EdgeCount:       33
      CyclomaticComplexity: 9
      functionsReached:
        - ds_cstr
        - ds_destroy
        - ds_put_cstr
        - ds_put_format
        - json_to_ds
        - jsonrpc_msg_type_to_string
        - vlog
        - vlog_is_enabled
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/jsonrpc.c:221,9'
          Dst:             vlog_is_enabled
        - Src:             'lib/jsonrpc.c:224,13'
          Dst:             ds_put_format
        - Src:             'lib/jsonrpc.c:227,13'
          Dst:             ds_put_cstr
        - Src:             'lib/jsonrpc.c:228,13'
          Dst:             json_to_ds
        - Src:             'lib/jsonrpc.c:231,13'
          Dst:             ds_put_cstr
        - Src:             'lib/jsonrpc.c:232,13'
          Dst:             json_to_ds
        - Src:             'lib/jsonrpc.c:235,13'
          Dst:             ds_put_cstr
        - Src:             'lib/jsonrpc.c:236,13'
          Dst:             json_to_ds
        - Src:             'lib/jsonrpc.c:239,13'
          Dst:             ds_put_cstr
        - Src:             'lib/jsonrpc.c:240,13'
          Dst:             json_to_ds
        - Src:             'lib/jsonrpc.c:242,9'
          Dst:             jsonrpc_msg_type_to_string
        - Src:             'lib/jsonrpc.c:242,9'
          Dst:             ds_cstr
        - Src:             'lib/jsonrpc.c:242,9'
          Dst:             vlog
        - Src:             'lib/jsonrpc.c:244,9'
          Dst:             ds_destroy
    - functionName:    jsonrpc_msg_to_json
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 775
      functionLinenumberEnd: 806
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         27
      ICount:          152
      EdgeCount:       35
      CyclomaticComplexity: 10
      functionsReached:
        - json_null_create
        - json_object_create
        - json_object_put
        - json_string_create_nocopy
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/jsonrpc.c:776,25'
          Dst:             json_object_create
        - Src:             'lib/jsonrpc.c:779,41'
          Dst:             json_string_create_nocopy
        - Src:             'lib/jsonrpc.c:779,9'
          Dst:             json_object_put
        - Src:             'lib/jsonrpc.c:783,9'
          Dst:             json_object_put
        - Src:             'lib/jsonrpc.c:787,9'
          Dst:             json_object_put
        - Src:             'lib/jsonrpc.c:789,41'
          Dst:             json_null_create
        - Src:             'lib/jsonrpc.c:789,9'
          Dst:             json_object_put
        - Src:             'lib/jsonrpc.c:793,9'
          Dst:             json_object_put
        - Src:             'lib/jsonrpc.c:795,40'
          Dst:             json_null_create
        - Src:             'lib/jsonrpc.c:795,9'
          Dst:             json_object_put
        - Src:             'lib/jsonrpc.c:799,9'
          Dst:             json_object_put
        - Src:             'lib/jsonrpc.c:801,37'
          Dst:             json_null_create
        - Src:             'lib/jsonrpc.c:801,9'
          Dst:             json_object_put
    - functionName:    ovs_list_push_back
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 204
      functionLinenumberEnd: 206
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_list_insert
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/list.h:205,5'
          Dst:             ovs_list_insert
    - functionName:    jsonrpc_error
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 529
      functionLinenumberEnd: 535
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - jsonrpc_cleanup
        - ovs_ignore
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/jsonrpc.c:530,5'
          Dst:             ovs_ignore
        - Src:             'lib/jsonrpc.c:533,9'
          Dst:             jsonrpc_cleanup
    - functionName:    jsonrpc_run
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 119
      functionLinenumberEnd: 148
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         23
      ICount:          144
      EdgeCount:       29
      CyclomaticComplexity: 8
      functionsReached:
        - jsonrpc_error
        - ofpbuf_delete
        - ofpbuf_from_list
        - ofpbuf_pull
        - ovs_list_front
        - ovs_list_is_empty
        - ovs_list_remove
        - ovs_strerror
        - stream_run
        - stream_send
        - vlog_rate_limit
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/jsonrpc.c:124,5'
          Dst:             stream_run
        - Src:             'lib/jsonrpc.c:125,13'
          Dst:             ovs_list_is_empty
        - Src:             'lib/jsonrpc.c:126,33'
          Dst:             ovs_list_front
        - Src:             'lib/jsonrpc.c:127,30'
          Dst:             ofpbuf_from_list
        - Src:             'lib/jsonrpc.c:130,18'
          Dst:             stream_send
        - Src:             'lib/jsonrpc.c:133,13'
          Dst:             ofpbuf_pull
        - Src:             'lib/jsonrpc.c:135,17'
          Dst:             ovs_list_remove
        - Src:             'lib/jsonrpc.c:137,17'
          Dst:             ofpbuf_delete
        - Src:             'lib/jsonrpc.c:141,17'
          Dst:             ovs_strerror
        - Src:             'lib/jsonrpc.c:141,17'
          Dst:             vlog_rate_limit
        - Src:             'lib/jsonrpc.c:143,17'
          Dst:             jsonrpc_error
    - functionName:    ovs_list_is_empty
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 320
      functionLinenumberEnd: 321
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_list_front
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 283
      functionLinenumberEnd: 288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovs_list_is_empty
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/list.h:286,17'
          Dst:             ovs_list_is_empty
        - Src:             './include/openvswitch/list.h:286,5'
          Dst:             ovs_ignore
    - functionName:    ofpbuf_from_list
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 280
      functionLinenumberEnd: 281
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofpbuf_pull
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 258
      functionLinenumberEnd: 269
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          64
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:259,5'
          Dst:             ovs_ignore
    - functionName:    ovs_list_remove
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 251
      functionLinenumberEnd: 254
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          25
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofpbuf_delete
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 172
      functionLinenumberEnd: 177
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          28
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofpbuf_uninit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:174,9'
          Dst:             ofpbuf_uninit
    - functionName:    jsonrpc_cleanup
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 539
      functionLinenumberEnd: 549
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - json_parser_abort
        - ofpbuf_list_delete
        - stream_close
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/jsonrpc.c:540,5'
          Dst:             stream_close
        - Src:             'lib/jsonrpc.c:543,5'
          Dst:             json_parser_abort
        - Src:             'lib/jsonrpc.c:546,5'
          Dst:             ofpbuf_list_delete
    - functionName:    jsonrpc_msg_type_to_string
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 619
      functionLinenumberEnd: 634
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          37
      EdgeCount:       12
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    5
      BranchProfiles:
        - Branch String:   'lib/jsonrpc.c:620,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    jsonrpc_create
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 555
      functionLinenumberEnd: 563
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          52
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nullable_xstrdup
        - xmalloc
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/jsonrpc.c:556,31'
          Dst:             xmalloc
        - Src:             'lib/jsonrpc.c:558,19'
          Dst:             nullable_xstrdup
    - functionName:    jsonrpc_parse_received_message
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 499
      functionLinenumberEnd: 525
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         18
      ICount:          112
      EdgeCount:       22
      CyclomaticComplexity: 6
      functionsReached:
        - json_destroy
        - json_parser_finish
        - json_string
        - jsonrpc_error
        - jsonrpc_log_msg
        - jsonrpc_msg_from_json
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/jsonrpc.c:504,12'
          Dst:             json_parser_finish
        - Src:             'lib/jsonrpc.c:507,9'
          Dst:             json_string
        - Src:             'lib/jsonrpc.c:507,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/jsonrpc.c:509,9'
          Dst:             jsonrpc_error
        - Src:             'lib/jsonrpc.c:510,9'
          Dst:             json_destroy
        - Src:             'lib/jsonrpc.c:514,13'
          Dst:             jsonrpc_msg_from_json
        - Src:             'lib/jsonrpc.c:516,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/jsonrpc.c:519,9'
          Dst:             jsonrpc_error
        - Src:             'lib/jsonrpc.c:523,5'
          Dst:             jsonrpc_log_msg
    - functionName:    jsonrpc_recv_incomplete_add
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41
      functionLinenumberEnd: 41
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_jsonrpc_recv_incomplete_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/jsonrpc.c:41,1'
          Dst:             counter_jsonrpc_recv_incomplete_get
    - functionName:    jsonrpc_msg_from_json
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 721
      functionLinenumberEnd: 767
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         27
      ICount:          189
      EdgeCount:       36
      CyclomaticComplexity: 11
      functionsReached:
        - json_destroy
        - json_object
        - json_string
        - jsonrpc_msg_destroy
        - jsonrpc_msg_is_valid
        - null_from_json_null
        - shash_find_and_delete
        - shash_first
        - shash_is_empty
        - xasprintf
        - xstrdup
        - xzalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/jsonrpc.c:728,17'
          Dst:             xstrdup
        - Src:             'lib/jsonrpc.c:731,14'
          Dst:             json_object
        - Src:             'lib/jsonrpc.c:733,14'
          Dst:             shash_find_and_delete
        - Src:             'lib/jsonrpc.c:735,17'
          Dst:             xstrdup
        - Src:             'lib/jsonrpc.c:739,11'
          Dst:             xzalloc
        - Src:             'lib/jsonrpc.c:740,36'
          Dst:             json_string
        - Src:             'lib/jsonrpc.c:740,28'
          Dst:             xstrdup
        - Src:             'lib/jsonrpc.c:741,39'
          Dst:             shash_find_and_delete
        - Src:             'lib/jsonrpc.c:741,19'
          Dst:             null_from_json_null
        - Src:             'lib/jsonrpc.c:742,39'
          Dst:             shash_find_and_delete
        - Src:             'lib/jsonrpc.c:742,19'
          Dst:             null_from_json_null
        - Src:             'lib/jsonrpc.c:743,38'
          Dst:             shash_find_and_delete
        - Src:             'lib/jsonrpc.c:743,18'
          Dst:             null_from_json_null
        - Src:             'lib/jsonrpc.c:744,35'
          Dst:             shash_find_and_delete
        - Src:             'lib/jsonrpc.c:744,15'
          Dst:             null_from_json_null
        - Src:             'lib/jsonrpc.c:749,10'
          Dst:             shash_is_empty
        - Src:             'lib/jsonrpc.c:751,27'
          Dst:             shash_first
        - Src:             'lib/jsonrpc.c:750,17'
          Dst:             xasprintf
        - Src:             'lib/jsonrpc.c:754,13'
          Dst:             jsonrpc_msg_is_valid
        - Src:             'lib/jsonrpc.c:760,5'
          Dst:             json_destroy
        - Src:             'lib/jsonrpc.c:761,5'
          Dst:             json_destroy
        - Src:             'lib/jsonrpc.c:763,9'
          Dst:             jsonrpc_msg_destroy
    - functionName:    null_from_json_null
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 711
      functionLinenumberEnd: 717
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          42
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - json_destroy
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/jsonrpc.c:713,9'
          Dst:             json_destroy
    - functionName:    jsonrpc_msg_is_valid
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 638
      functionLinenumberEnd: 694
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         25
      ICount:          219
      EdgeCount:       31
      CyclomaticComplexity: 8
      functionsReached:
        - jsonrpc_msg_type_to_string
        - xasprintf
        - xstrdup
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/jsonrpc.c:646,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/jsonrpc.c:643,16'
          Dst:             xstrdup
        - Src:             'lib/jsonrpc.c:664,16'
          Dst:             xasprintf
        - Src:             'lib/jsonrpc.c:667,17'
          Dst:             jsonrpc_msg_type_to_string
        - Src:             'lib/jsonrpc.c:669,16'
          Dst:             xasprintf
        - Src:             'lib/jsonrpc.c:674,16'
          Dst:             xasprintf
        - Src:             'lib/jsonrpc.c:679,16'
          Dst:             xasprintf
        - Src:             'lib/jsonrpc.c:684,16'
          Dst:             xasprintf
        - Src:             'lib/jsonrpc.c:689,16'
          Dst:             xasprintf
    - functionName:    jsonrpc_session_get_n_remotes
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1161
      functionLinenumberEnd: 1162
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    jsonrpc_session_get_id
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1151
      functionLinenumberEnd: 1157
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          48
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - stream_get_peer_id
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/jsonrpc.c:1153,16'
          Dst:             stream_get_peer_id
    - functionName:    jsonrpc_session_get_name
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1145
      functionLinenumberEnd: 1146
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - reconnect_get_name
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/jsonrpc.c:1146,12'
          Dst:             reconnect_get_name
    - functionName:    jsonrpc_session_get_backlog
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1137
      functionLinenumberEnd: 1138
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - jsonrpc_get_backlog
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/jsonrpc.c:1138,21'
          Dst:             jsonrpc_get_backlog
    - functionName:    jsonrpc_get_backlog
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 186
      functionLinenumberEnd: 187
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          24
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    jsonrpc_session_wait
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1122
      functionLinenumberEnd: 1133
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          70
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - jsonrpc_wait
        - pstream_wait
        - reconnect_wait
        - stream_connect_wait
        - stream_run_wait
        - time_msec
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/jsonrpc.c:1124,9'
          Dst:             jsonrpc_wait
        - Src:             'lib/jsonrpc.c:1126,9'
          Dst:             stream_run_wait
        - Src:             'lib/jsonrpc.c:1127,9'
          Dst:             stream_connect_wait
        - Src:             'lib/jsonrpc.c:1130,9'
          Dst:             pstream_wait
        - Src:             'lib/jsonrpc.c:1132,34'
          Dst:             time_msec
        - Src:             'lib/jsonrpc.c:1132,5'
          Dst:             reconnect_wait
    - functionName:    jsonrpc_wait
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 154
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          44
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ovs_list_is_empty
        - stream_run_wait
        - stream_send_wait
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/jsonrpc.c:156,9'
          Dst:             stream_run_wait
        - Src:             'lib/jsonrpc.c:157,14'
          Dst:             ovs_list_is_empty
        - Src:             'lib/jsonrpc.c:158,13'
          Dst:             stream_send_wait
    - functionName:    jsonrpc_session_connect
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 997
      functionLinenumberEnd: 1021
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         18
      ICount:          117
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - jsonrpc_pstream_open
        - jsonrpc_session_disconnect
        - jsonrpc_session_pick_remote
        - jsonrpc_stream_open
        - reconnect_connect_failed
        - reconnect_connecting
        - reconnect_get_name
        - reconnect_is_passive
        - reconnect_listening
        - time_msec
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/jsonrpc.c:998,24'
          Dst:             reconnect_get_name
        - Src:             'lib/jsonrpc.c:1001,5'
          Dst:             jsonrpc_session_disconnect
        - Src:             'lib/jsonrpc.c:1002,10'
          Dst:             reconnect_is_passive
        - Src:             'lib/jsonrpc.c:1003,17'
          Dst:             jsonrpc_stream_open
        - Src:             'lib/jsonrpc.c:1005,48'
          Dst:             time_msec
        - Src:             'lib/jsonrpc.c:1005,13'
          Dst:             reconnect_connecting
        - Src:             'lib/jsonrpc.c:1010,34'
          Dst:             jsonrpc_pstream_open
        - Src:             'lib/jsonrpc.c:1013,47'
          Dst:             time_msec
        - Src:             'lib/jsonrpc.c:1013,13'
          Dst:             reconnect_listening
        - Src:             'lib/jsonrpc.c:1018,48'
          Dst:             time_msec
        - Src:             'lib/jsonrpc.c:1018,9'
          Dst:             reconnect_connect_failed
        - Src:             'lib/jsonrpc.c:1019,9'
          Dst:             jsonrpc_session_pick_remote
    - functionName:    jsonrpc_session_disconnect
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 979
      functionLinenumberEnd: 993
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          62
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - jsonrpc_close
        - jsonrpc_error
        - jsonrpc_session_pick_remote
        - stream_close
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/jsonrpc.c:981,9'
          Dst:             jsonrpc_error
        - Src:             'lib/jsonrpc.c:982,9'
          Dst:             jsonrpc_close
        - Src:             'lib/jsonrpc.c:985,9'
          Dst:             stream_close
        - Src:             'lib/jsonrpc.c:992,5'
          Dst:             jsonrpc_session_pick_remote
    - functionName:    jsonrpc_stream_open
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 75
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - stream_open_with_default_port
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/jsonrpc.c:75,12'
          Dst:             stream_open_with_default_port
    - functionName:    jsonrpc_pstream_open
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 83
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - pstream_open_with_default_port
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/jsonrpc.c:83,12'
          Dst:             pstream_open_with_default_port
    - functionName:    jsonrpc_session_pick_remote
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 840
      functionLinenumberEnd: 843
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - reconnect_set_name
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/jsonrpc.c:841,5'
          Dst:             reconnect_set_name
    - functionName:    jsonrpc_close
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 108
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - jsonrpc_cleanup
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/jsonrpc.c:110,9'
          Dst:             jsonrpc_cleanup
    - functionName:    jsonrpc_session_run
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1025
      functionLinenumberEnd: 1118
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         49
      ICount:          358
      EdgeCount:       61
      CyclomaticComplexity: 14
      functionsReached:
        - json_array_create_empty
        - json_destroy
        - json_string_create
        - jsonrpc_create_request
        - jsonrpc_get_backlog
        - jsonrpc_get_status
        - jsonrpc_open
        - jsonrpc_run
        - jsonrpc_send
        - jsonrpc_session_connect
        - jsonrpc_session_disconnect
        - jsonrpc_session_pick_remote
        - jsonrpc_set_backlog_threshold
        - pstream_accept
        - pstream_close
        - reconnect_activity
        - reconnect_connect_failed
        - reconnect_connected
        - reconnect_disconnected
        - reconnect_get_name
        - reconnect_listen_error
        - reconnect_run
        - stream_close
        - stream_connect
        - stream_run
        - time_msec
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/jsonrpc.c:1095,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/jsonrpc.c:1030,17'
          Dst:             pstream_accept
        - Src:             'lib/jsonrpc.c:1033,17'
          Dst:             reconnect_get_name
        - Src:             'lib/jsonrpc.c:1033,17'
          Dst:             vlog_rate_limit
        - Src:             'lib/jsonrpc.c:1036,17'
          Dst:             jsonrpc_session_disconnect
        - Src:             'lib/jsonrpc.c:1038,47'
          Dst:             time_msec
        - Src:             'lib/jsonrpc.c:1038,13'
          Dst:             reconnect_connected
        - Src:             'lib/jsonrpc.c:1039,22'
          Dst:             jsonrpc_open
        - Src:             'lib/jsonrpc.c:1040,13'
          Dst:             jsonrpc_set_backlog_threshold
        - Src:             'lib/jsonrpc.c:1044,50'
          Dst:             time_msec
        - Src:             'lib/jsonrpc.c:1044,13'
          Dst:             reconnect_listen_error
        - Src:             'lib/jsonrpc.c:1045,13'
          Dst:             pstream_close
        - Src:             'lib/jsonrpc.c:1054,19'
          Dst:             jsonrpc_get_backlog
        - Src:             'lib/jsonrpc.c:1055,9'
          Dst:             jsonrpc_run
        - Src:             'lib/jsonrpc.c:1056,13'
          Dst:             jsonrpc_get_backlog
        - Src:             'lib/jsonrpc.c:1065,46'
          Dst:             time_msec
        - Src:             'lib/jsonrpc.c:1065,13'
          Dst:             reconnect_activity
        - Src:             'lib/jsonrpc.c:1068,17'
          Dst:             jsonrpc_get_status
        - Src:             'lib/jsonrpc.c:1070,50'
          Dst:             time_msec
        - Src:             'lib/jsonrpc.c:1070,13'
          Dst:             reconnect_disconnected
        - Src:             'lib/jsonrpc.c:1071,13'
          Dst:             jsonrpc_session_disconnect
        - Src:             'lib/jsonrpc.c:1077,9'
          Dst:             stream_run
        - Src:             'lib/jsonrpc.c:1078,17'
          Dst:             stream_connect
        - Src:             'lib/jsonrpc.c:1080,47'
          Dst:             time_msec
        - Src:             'lib/jsonrpc.c:1080,13'
          Dst:             reconnect_connected
        - Src:             'lib/jsonrpc.c:1081,22'
          Dst:             jsonrpc_open
        - Src:             'lib/jsonrpc.c:1082,13'
          Dst:             jsonrpc_set_backlog_threshold
        - Src:             'lib/jsonrpc.c:1087,52'
          Dst:             time_msec
        - Src:             'lib/jsonrpc.c:1087,13'
          Dst:             reconnect_connect_failed
        - Src:             'lib/jsonrpc.c:1088,13'
          Dst:             jsonrpc_session_pick_remote
        - Src:             'lib/jsonrpc.c:1089,13'
          Dst:             stream_close
        - Src:             'lib/jsonrpc.c:1095,41'
          Dst:             time_msec
        - Src:             'lib/jsonrpc.c:1095,13'
          Dst:             reconnect_run
        - Src:             'lib/jsonrpc.c:1097,9'
          Dst:             jsonrpc_session_connect
        - Src:             'lib/jsonrpc.c:1101,46'
          Dst:             time_msec
        - Src:             'lib/jsonrpc.c:1101,9'
          Dst:             reconnect_disconnected
        - Src:             'lib/jsonrpc.c:1102,9'
          Dst:             jsonrpc_session_disconnect
        - Src:             'lib/jsonrpc.c:1110,22'
          Dst:             json_array_create_empty
        - Src:             'lib/jsonrpc.c:1111,23'
          Dst:             jsonrpc_create_request
        - Src:             'lib/jsonrpc.c:1112,13'
          Dst:             json_destroy
        - Src:             'lib/jsonrpc.c:1113,27'
          Dst:             json_string_create
        - Src:             'lib/jsonrpc.c:1114,13'
          Dst:             jsonrpc_send
    - functionName:    jsonrpc_open
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 90
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          39
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - byteq_init
        - ovs_ignore
        - ovs_list_init
        - stream_get_name
        - xstrdup
        - xzalloc
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/jsonrpc.c:93,5'
          Dst:             ovs_ignore
        - Src:             'lib/jsonrpc.c:95,11'
          Dst:             xzalloc
        - Src:             'lib/jsonrpc.c:96,25'
          Dst:             stream_get_name
        - Src:             'lib/jsonrpc.c:96,17'
          Dst:             xstrdup
        - Src:             'lib/jsonrpc.c:98,5'
          Dst:             byteq_init
        - Src:             'lib/jsonrpc.c:99,5'
          Dst:             ovs_list_init
    - functionName:    jsonrpc_set_backlog_threshold
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 196
      functionLinenumberEnd: 199
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    jsonrpc_create_request
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 579
      functionLinenumberEnd: 584
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - json_clone
        - jsonrpc_create
        - jsonrpc_create_id
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/jsonrpc.c:580,23'
          Dst:             jsonrpc_create_id
        - Src:             'lib/jsonrpc.c:582,16'
          Dst:             json_clone
        - Src:             'lib/jsonrpc.c:584,12'
          Dst:             jsonrpc_create
    - functionName:    jsonrpc_create_id
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 568
      functionLinenumberEnd: 573
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - atomic_count_inc
        - json_integer_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/jsonrpc.c:572,10'
          Dst:             atomic_count_inc
        - Src:             'lib/jsonrpc.c:573,12'
          Dst:             json_integer_create
    - functionName:    ovs_list_init
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    jsonrpc_session_replace
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 966
      functionLinenumberEnd: 975
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          62
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - jsonrpc_close
        - jsonrpc_get_name
        - reconnect_connected
        - reconnect_set_name
        - time_msec
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/jsonrpc.c:968,9'
          Dst:             jsonrpc_close
        - Src:             'lib/jsonrpc.c:972,42'
          Dst:             jsonrpc_get_name
        - Src:             'lib/jsonrpc.c:972,9'
          Dst:             reconnect_set_name
        - Src:             'lib/jsonrpc.c:973,43'
          Dst:             time_msec
        - Src:             'lib/jsonrpc.c:973,9'
          Dst:             reconnect_connected
    - functionName:    jsonrpc_get_name
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 213
      functionLinenumberEnd: 214
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    jsonrpc_session_steal
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 957
      functionLinenumberEnd: 961
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - jsonrpc_session_close
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/jsonrpc.c:960,5'
          Dst:             jsonrpc_session_close
    - functionName:    jsonrpc_session_close
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 944
      functionLinenumberEnd: 953
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - jsonrpc_close
        - pstream_close
        - reconnect_destroy
        - stream_close
        - svec_destroy
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/jsonrpc.c:946,9'
          Dst:             jsonrpc_close
        - Src:             'lib/jsonrpc.c:947,9'
          Dst:             reconnect_destroy
        - Src:             'lib/jsonrpc.c:948,9'
          Dst:             stream_close
        - Src:             'lib/jsonrpc.c:949,9'
          Dst:             pstream_close
        - Src:             'lib/jsonrpc.c:950,9'
          Dst:             svec_destroy
    - functionName:    jsonrpc_session_open_unreliably
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 915
      functionLinenumberEnd: 939
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          87
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - jsonrpc_get_name
        - jsonrpc_session_set_backlog_threshold
        - ovs_replay_is_active
        - reconnect_connected
        - reconnect_create
        - reconnect_set_max_tries
        - reconnect_set_name
        - reconnect_set_probe_interval
        - reconnect_set_quiet
        - svec_add
        - svec_init
        - time_msec
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/jsonrpc.c:918,9'
          Dst:             xmalloc
        - Src:             'lib/jsonrpc.c:919,5'
          Dst:             svec_init
        - Src:             'lib/jsonrpc.c:920,27'
          Dst:             jsonrpc_get_name
        - Src:             'lib/jsonrpc.c:920,5'
          Dst:             svec_add
        - Src:             'lib/jsonrpc.c:922,37'
          Dst:             time_msec
        - Src:             'lib/jsonrpc.c:922,20'
          Dst:             reconnect_create
        - Src:             'lib/jsonrpc.c:923,5'
          Dst:             reconnect_set_quiet
        - Src:             'lib/jsonrpc.c:924,38'
          Dst:             jsonrpc_get_name
        - Src:             'lib/jsonrpc.c:924,5'
          Dst:             reconnect_set_name
        - Src:             'lib/jsonrpc.c:925,5'
          Dst:             reconnect_set_max_tries
        - Src:             'lib/jsonrpc.c:926,39'
          Dst:             time_msec
        - Src:             'lib/jsonrpc.c:926,5'
          Dst:             reconnect_connected
        - Src:             'lib/jsonrpc.c:928,9'
          Dst:             ovs_replay_is_active
        - Src:             'lib/jsonrpc.c:929,9'
          Dst:             reconnect_set_probe_interval
        - Src:             'lib/jsonrpc.c:938,5'
          Dst:             jsonrpc_session_set_backlog_threshold
    - functionName:    jsonrpc_session_set_backlog_threshold
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1365
      functionLinenumberEnd: 1371
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - jsonrpc_set_backlog_threshold
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/jsonrpc.c:1369,9'
          Dst:             jsonrpc_set_backlog_threshold
    - functionName:    jsonrpc_session_open_multiple
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 868
      functionLinenumberEnd: 905
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          153
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - jsonrpc_session_pick_remote
        - jsonrpc_session_set_backlog_threshold
        - ovs_replay_is_active
        - pstream_verify_name
        - reconnect_create
        - reconnect_enable
        - reconnect_get_name
        - reconnect_set_backoff
        - reconnect_set_backoff_free_tries
        - reconnect_set_max_tries
        - reconnect_set_passive
        - reconnect_set_probe_interval
        - stream_or_pstream_needs_probes
        - svec_add
        - svec_clone
        - time_msec
        - xmalloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/jsonrpc.c:871,9'
          Dst:             xmalloc
        - Src:             'lib/jsonrpc.c:874,5'
          Dst:             svec_clone
        - Src:             'lib/jsonrpc.c:876,9'
          Dst:             svec_add
        - Src:             'lib/jsonrpc.c:880,37'
          Dst:             time_msec
        - Src:             'lib/jsonrpc.c:880,20'
          Dst:             reconnect_create
        - Src:             'lib/jsonrpc.c:881,5'
          Dst:             jsonrpc_session_pick_remote
        - Src:             'lib/jsonrpc.c:882,36'
          Dst:             time_msec
        - Src:             'lib/jsonrpc.c:882,5'
          Dst:             reconnect_enable
        - Src:             'lib/jsonrpc.c:883,5'
          Dst:             reconnect_set_backoff_free_tries
        - Src:             'lib/jsonrpc.c:891,5'
          Dst:             jsonrpc_session_set_backlog_threshold
        - Src:             'lib/jsonrpc.c:893,24'
          Dst:             reconnect_get_name
        - Src:             'lib/jsonrpc.c:894,10'
          Dst:             pstream_verify_name
        - Src:             'lib/jsonrpc.c:895,51'
          Dst:             time_msec
        - Src:             'lib/jsonrpc.c:895,9'
          Dst:             reconnect_set_passive
        - Src:             'lib/jsonrpc.c:897,9'
          Dst:             reconnect_set_max_tries
        - Src:             'lib/jsonrpc.c:898,9'
          Dst:             reconnect_set_backoff
        - Src:             'lib/jsonrpc.c:901,10'
          Dst:             stream_or_pstream_needs_probes
        - Src:             'lib/jsonrpc.c:901,50'
          Dst:             ovs_replay_is_active
        - Src:             'lib/jsonrpc.c:902,9'
          Dst:             reconnect_set_probe_interval
    - functionName:    jsonrpc_session_open
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 861
      functionLinenumberEnd: 863
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - jsonrpc_session_open_multiple
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/jsonrpc.c:863,12'
          Dst:             jsonrpc_session_open_multiple
    - functionName:    jsonrpc_msg_to_string
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 811
      functionLinenumberEnd: 816
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - json_destroy
        - json_to_string
        - jsonrpc_msg_clone
        - jsonrpc_msg_to_json
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/jsonrpc.c:812,32'
          Dst:             jsonrpc_msg_clone
        - Src:             'lib/jsonrpc.c:813,25'
          Dst:             jsonrpc_msg_to_json
        - Src:             'lib/jsonrpc.c:814,15'
          Dst:             json_to_string
        - Src:             'lib/jsonrpc.c:815,5'
          Dst:             json_destroy
    - functionName:    jsonrpc_msg_clone
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 609
      functionLinenumberEnd: 614
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - json_nullable_clone
        - jsonrpc_create
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/jsonrpc.c:611,27'
          Dst:             json_nullable_clone
        - Src:             'lib/jsonrpc.c:612,27'
          Dst:             json_nullable_clone
        - Src:             'lib/jsonrpc.c:613,27'
          Dst:             json_nullable_clone
        - Src:             'lib/jsonrpc.c:614,27'
          Dst:             json_nullable_clone
        - Src:             'lib/jsonrpc.c:610,12'
          Dst:             jsonrpc_create
    - functionName:    jsonrpc_create_error
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 602
      functionLinenumberEnd: 604
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - json_clone
        - jsonrpc_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/jsonrpc.c:604,28'
          Dst:             json_clone
        - Src:             'lib/jsonrpc.c:603,12'
          Dst:             jsonrpc_create
    - functionName:    jsonrpc_create_notify
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 589
      functionLinenumberEnd: 590
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - jsonrpc_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/jsonrpc.c:590,12'
          Dst:             jsonrpc_create
    - functionName:    jsonrpc_transact_block
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 469
      functionLinenumberEnd: 491
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          111
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - json_clone
        - json_destroy
        - json_equal
        - jsonrpc_msg_destroy
        - jsonrpc_recv_block
        - jsonrpc_send_block
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/jsonrpc.c:474,10'
          Dst:             json_clone
        - Src:             'lib/jsonrpc.c:475,13'
          Dst:             jsonrpc_send_block
        - Src:             'lib/jsonrpc.c:478,21'
          Dst:             jsonrpc_recv_block
        - Src:             'lib/jsonrpc.c:483,20'
          Dst:             json_equal
        - Src:             'lib/jsonrpc.c:486,13'
          Dst:             jsonrpc_msg_destroy
        - Src:             'lib/jsonrpc.c:490,5'
          Dst:             json_destroy
    - functionName:    jsonrpc_send_block
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 418
      functionLinenumberEnd: 436
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          65
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - fatal_signal_run
        - jsonrpc_run
        - jsonrpc_send
        - jsonrpc_wait
        - ovs_list_is_empty
        - poll_block
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/jsonrpc.c:421,5'
          Dst:             fatal_signal_run
        - Src:             'lib/jsonrpc.c:423,13'
          Dst:             jsonrpc_send
        - Src:             'lib/jsonrpc.c:429,9'
          Dst:             jsonrpc_run
        - Src:             'lib/jsonrpc.c:430,13'
          Dst:             ovs_list_is_empty
        - Src:             'lib/jsonrpc.c:433,9'
          Dst:             jsonrpc_wait
        - Src:             'lib/jsonrpc.c:434,9'
          Dst:             poll_block
    - functionName:    jsonrpc_recv_block
      functionSourceFile: '/src/openvswitch/lib/jsonrpc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 442
      functionLinenumberEnd: 453
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - fatal_signal_run
        - jsonrpc_recv
        - jsonrpc_recv_wait
        - jsonrpc_run
        - jsonrpc_wait
        - poll_block
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/jsonrpc.c:444,21'
          Dst:             jsonrpc_recv
        - Src:             'lib/jsonrpc.c:446,13'
          Dst:             fatal_signal_run
        - Src:             'lib/jsonrpc.c:450,9'
          Dst:             jsonrpc_run
        - Src:             'lib/jsonrpc.c:451,9'
          Dst:             jsonrpc_wait
        - Src:             'lib/jsonrpc.c:452,9'
          Dst:             jsonrpc_recv_wait
        - Src:             'lib/jsonrpc.c:453,9'
          Dst:             poll_block
    - functionName:    init_this_module_meta_flow
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 46
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/meta-flow.c:46,1'
          Dst:             vlog_insert_module
    - functionName:    dl_type_is_ip_any
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1256
      functionLinenumberEnd: 1258
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htons
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:1257,23'
          Dst:             htons
        - Src:             'lib/packets.h:1258,23'
          Dst:             htons
    - functionName:    uint_is_superset
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 422
      functionLinenumberEnd: 423
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    bitmap_n_longs
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    zero_rightmost_1bit
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 390
      functionLinenumberEnd: 391
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_refcount_ref
      functionSourceFile: '/src/openvswitch/lib/ovs-atomic.h'
      linkageType:     InternalLinkage
      functionLinenumber: 539
      functionLinenumberEnd: 545
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-atomic.h:544,5'
          Dst:             ovs_ignore
    - functionName:    ovs_refcount_init
      functionSourceFile: '/src/openvswitch/lib/ovs-atomic.h'
      linkageType:     InternalLinkage
      functionLinenumber: 529
      functionLinenumberEnd: 531
      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:    cmap_node_next
      functionSourceFile: '/src/openvswitch/lib/cmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 67
      functionLinenumberEnd: 68
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          22
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_refcount_unref
      functionSourceFile: '/src/openvswitch/lib/ovs-atomic.h'
      linkageType:     InternalLinkage
      functionLinenumber: 562
      functionLinenumberEnd: 576
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-atomic.h:567,5'
          Dst:             ovs_ignore
    - functionName:    hash_rot
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 32
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhash_add__
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hash_rot
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:71,12'
          Dst:             hash_rot
    - functionName:    mhash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_rot
        - mhash_add__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:78,12'
          Dst:             mhash_add__
        - Src:             'lib/hash.h:79,12'
          Dst:             hash_rot
    - functionName:    mhash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 108
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_add
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:109,12'
          Dst:             mhash_add
    - functionName:    hash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:119,12'
          Dst:             mhash_finish
    - functionName:    hash_2words
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 153
      functionLinenumberEnd: 154
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_add
        - hash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:154,33'
          Dst:             hash_add
        - Src:             'lib/hash.h:154,24'
          Dst:             hash_add
        - Src:             'lib/hash.h:154,12'
          Dst:             hash_finish
    - functionName:    hash_int
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 408
      functionLinenumberEnd: 409
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_2words
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:409,12'
          Dst:             hash_2words
    - functionName:    bitmap_bit__
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 32
      functionLinenumberEnd: 33
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    raw_ctz
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 261
      functionLinenumberEnd: 267
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          36
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    bitmap_unit__
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 26
      functionLinenumberEnd: 27
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ds_put_char
      functionSourceFile: '/src/openvswitch/./include/openvswitch/dynamic-string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_char__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/dynamic-string.h:99,9'
          Dst:             ds_put_char__
    - functionName:    parse_mf_flags
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3171
      functionLinenumberEnd: 3188
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - short
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          82
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - htons
        - ntohs
        - parse_flags
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/meta-flow.c:3177,31'
          Dst:             ntohs
        - Src:             'lib/meta-flow.c:3176,11'
          Dst:             parse_flags
        - Src:             'lib/meta-flow.c:3182,15'
          Dst:             htons
        - Src:             'lib/meta-flow.c:3184,18'
          Dst:             htons
    - functionName:    is_ip_proto
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1065
      functionLinenumberEnd: 1073
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - char
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          52
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - is_ip_any
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:1066,9'
          Dst:             is_ip_any
    - functionName:    is_ip_any
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1059
      functionLinenumberEnd: 1060
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dl_type_is_ip_any
        - get_dl_type
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:1060,30'
          Dst:             get_dl_type
        - Src:             'lib/flow.h:1060,12'
          Dst:             dl_type_is_ip_any
    - functionName:    get_dl_type
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1036
      functionLinenumberEnd: 1044
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          53
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - htonl
        - htons
        - pt_ns
        - pt_ns_type_be
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:1037,30'
          Dst:             htonl
        - Src:             'lib/flow.h:1039,16'
          Dst:             pt_ns
        - Src:             'lib/flow.h:1040,16'
          Dst:             pt_ns_type_be
        - Src:             'lib/flow.h:1042,16'
          Dst:             htons
    - functionName:    pt_ns
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1570
      functionLinenumberEnd: 1571
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:1571,12'
          Dst:             ntohl
    - functionName:    pt_ns_type_be
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1577
      functionLinenumberEnd: 1578
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - be32_to_be16
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:1578,12'
          Dst:             be32_to_be16
    - functionName:    be32_to_be16
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 135
      functionLinenumberEnd: 135
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    is_nd
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1119
      functionLinenumberEnd: 1135
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          98
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - htons
        - is_icmpv6
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:1120,9'
          Dst:             is_icmpv6
        - Src:             'lib/flow.h:1124,29'
          Dst:             htons
        - Src:             'lib/flow.h:1131,33'
          Dst:             htons
        - Src:             'lib/flow.h:1132,33'
          Dst:             htons
    - functionName:    is_icmpv6
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1107
      functionLinenumberEnd: 1115
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          53
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - get_dl_type
        - htons
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:1108,9'
          Dst:             get_dl_type
        - Src:             'lib/flow.h:1108,30'
          Dst:             htons
    - functionName:    is_icmpv4
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1095
      functionLinenumberEnd: 1103
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          53
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - get_dl_type
        - htons
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:1096,9'
          Dst:             get_dl_type
        - Src:             'lib/flow.h:1096,30'
          Dst:             htons
    - functionName:    is_sctp
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1089
      functionLinenumberEnd: 1090
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - is_ip_proto
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:1090,12'
          Dst:             is_ip_proto
    - functionName:    is_udp
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1083
      functionLinenumberEnd: 1084
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - is_ip_proto
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:1084,12'
          Dst:             is_ip_proto
    - functionName:    is_tcp
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1077
      functionLinenumberEnd: 1078
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - is_ip_proto
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:1078,12'
          Dst:             is_ip_proto
    - functionName:    is_ct_valid
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 954
      functionLinenumberEnd: 972
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          108
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    eth_type_mpls
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 423
      functionLinenumberEnd: 425
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htons
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:424,24'
          Dst:             htons
        - Src:             'lib/packets.h:425,21'
          Dst:             htons
    - functionName:    is_vlan
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1048
      functionLinenumberEnd: 1056
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          62
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - htons
        - is_ethernet
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:1049,10'
          Dst:             is_ethernet
        - Src:             'lib/flow.h:1053,9'
          Dst:             htons
        - Src:             'lib/flow.h:1055,34'
          Dst:             htons
    - functionName:    is_ethernet
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1028
      functionLinenumberEnd: 1032
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:1032,33'
          Dst:             htonl
    - functionName:    ipv6_addr_equals
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1184
      functionLinenumberEnd: 1186
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          80
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nxm_do_init
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 103
      functionLinenumberEnd: 117
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         10
      ICount:          66
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovs_ignore
        - shash_add_once
        - shash_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/meta-flow.c:106,5'
          Dst:             shash_init
        - Src:             'lib/meta-flow.c:110,9'
          Dst:             ovs_ignore
        - Src:             'lib/meta-flow.c:112,9'
          Dst:             shash_add_once
        - Src:             'lib/meta-flow.c:114,13'
          Dst:             shash_add_once
    - functionName:    mf_set_mask_l3_prereqs
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3910
      functionLinenumberEnd: 3930
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         38
      ICount:          199
      EdgeCount:       53
      CyclomaticComplexity: 17
      functionsReached:
        - htons
        - is_ip_any
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/meta-flow.c:3911,9'
          Dst:             is_ip_any
        - Src:             'lib/meta-flow.c:3921,32'
          Dst:             htons
    - functionName:    bitmap_not
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 191
      functionLinenumberEnd: 200
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          58
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mf_bitmap_not
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3902
      functionLinenumberEnd: 3904
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - bitmap_not
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/meta-flow.c:3903,5'
          Dst:             bitmap_not
    - functionName:    bitmap_or
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 179
      functionLinenumberEnd: 185
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         5
      ICount:          42
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mf_bitmap_or
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3894
      functionLinenumberEnd: 3896
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - bitmap_or
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/meta-flow.c:3895,5'
          Dst:             bitmap_or
    - functionName:    bitmap_and
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 167
      functionLinenumberEnd: 173
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         5
      ICount:          42
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mf_bitmap_and
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3886
      functionLinenumberEnd: 3888
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - bitmap_and
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/meta-flow.c:3887,5'
          Dst:             bitmap_and
    - functionName:    bitmap_is_superset
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 259
      functionLinenumberEnd: 267
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          59
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - bitmap_n_longs
        - uint_is_superset
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/bitmap.h:260,22'
          Dst:             bitmap_n_longs
        - Src:             'lib/bitmap.h:262,14'
          Dst:             uint_is_superset
    - functionName:    mf_bitmap_is_superset
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3879
      functionLinenumberEnd: 3880
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - bitmap_is_superset
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/meta-flow.c:3880,12'
          Dst:             bitmap_is_superset
    - functionName:    mf_vl_mff_mf_from_nxm_header
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3862
      functionLinenumberEnd: 3872
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - mf_from_nxm_header
        - mf_vl_mff_invalid
        - mf_vl_mff_set_tlv_bitmap
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/meta-flow.c:3863,14'
          Dst:             mf_from_nxm_header
        - Src:             'lib/meta-flow.c:3866,16'
          Dst:             mf_vl_mff_invalid
        - Src:             'lib/meta-flow.c:3870,5'
          Dst:             mf_vl_mff_set_tlv_bitmap
    - functionName:    mf_vl_mff_invalid
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3781
      functionLinenumberEnd: 3782
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          41
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mf_vl_mff_set_tlv_bitmap
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3787
      functionLinenumberEnd: 3792
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          49
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - mf_is_tun_metadata
        - ovs_ignore
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/meta-flow.c:3789,20'
          Dst:             mf_is_tun_metadata
        - Src:             'lib/meta-flow.c:3789,9'
          Dst:             ovs_ignore
    - functionName:    mf_is_tun_metadata
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1897
      functionLinenumberEnd: 1899
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mf_vl_mff_nx_pull_entry
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3847
      functionLinenumberEnd: 3855
      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:
        - mf_vl_mff_set_tlv_bitmap
        - nx_pull_entry
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/meta-flow.c:3848,25'
          Dst:             nx_pull_entry
        - Src:             'lib/meta-flow.c:3853,5'
          Dst:             mf_vl_mff_set_tlv_bitmap
    - functionName:    mf_vl_mff_nx_pull_header
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3833
      functionLinenumberEnd: 3841
      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:
        - mf_vl_mff_set_tlv_bitmap
        - nx_pull_header
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/meta-flow.c:3834,25'
          Dst:             nx_pull_header
        - Src:             'lib/meta-flow.c:3839,5'
          Dst:             mf_vl_mff_set_tlv_bitmap
    - functionName:    mf_vl_mff_unref
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3825
      functionLinenumberEnd: 3827
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mf_vl_mff_ref_cnt_mod
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/meta-flow.c:3826,5'
          Dst:             mf_vl_mff_ref_cnt_mod
    - functionName:    mf_vl_mff_ref_cnt_mod
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3797
      functionLinenumberEnd: 3815
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          110
      EdgeCount:       30
      CyclomaticComplexity: 8
      functionsReached:
        - mf_get_vl_mff__
        - ovs_refcount_ref
        - ovs_refcount_unref
        - raw_ctz
        - vlog
        - zero_rightmost_1bit
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/meta-flow.c:3802,9'
          Dst:             raw_ctz
        - Src:             'lib/meta-flow.c:3803,19'
          Dst:             mf_get_vl_mff__
        - Src:             'lib/meta-flow.c:3806,21'
          Dst:             ovs_refcount_ref
        - Src:             'lib/meta-flow.c:3808,21'
          Dst:             ovs_refcount_unref
        - Src:             'lib/meta-flow.c:3811,17'
          Dst:             vlog
        - Src:             'lib/meta-flow.c:3802,9'
          Dst:             zero_rightmost_1bit
    - functionName:    mf_get_vl_mff__
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3651
      functionLinenumberEnd: 3662
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          73
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - cmap_find
        - cmap_node_next
        - mf_field_hash
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/meta-flow.c:3654,5'
          Dst:             mf_field_hash
        - Src:             'lib/meta-flow.c:3654,5'
          Dst:             cmap_find
        - Src:             'lib/meta-flow.c:3654,5'
          Dst:             cmap_node_next
    - functionName:    mf_field_hash
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3608
      functionLinenumberEnd: 3609
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_int
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/meta-flow.c:3609,12'
          Dst:             hash_int
    - functionName:    mf_vl_mff_ref
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3819
      functionLinenumberEnd: 3821
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mf_vl_mff_ref_cnt_mod
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/meta-flow.c:3820,5'
          Dst:             mf_vl_mff_ref_cnt_mod
    - functionName:    mf_vl_mff_map_del
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3684
      functionLinenumberEnd: 3718
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         33
      ICount:          193
      EdgeCount:       43
      CyclomaticComplexity: 12
      functionsReached:
        - cmap_remove
        - mf_field_hash
        - mf_get_vl_mff__
        - ovs_refcount_read
        - vmf_delete
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/meta-flow.c:3696,19'
          Dst:             mf_get_vl_mff__
        - Src:             'lib/meta-flow.c:3697,24'
          Dst:             ovs_refcount_read
        - Src:             'lib/meta-flow.c:3709,15'
          Dst:             mf_get_vl_mff__
        - Src:             'lib/meta-flow.c:3712,25'
          Dst:             mf_field_hash
        - Src:             'lib/meta-flow.c:3711,13'
          Dst:             cmap_remove
        - Src:             'lib/meta-flow.c:3713,13'
          Dst:             vmf_delete
    - functionName:    ovs_refcount_read
      functionSourceFile: '/src/openvswitch/lib/ovs-atomic.h'
      linkageType:     InternalLinkage
      functionLinenumber: 586
      functionLinenumberEnd: 592
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    cmap_remove
      functionSourceFile: '/src/openvswitch/lib/cmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 293
      functionLinenumberEnd: 294
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - cmap_replace
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/cmap.h:294,12'
          Dst:             cmap_replace
    - functionName:    vmf_delete
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3614
      functionLinenumberEnd: 3624
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          52
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - ovs_refcount_unref
        - ovsrcu_postpone__
        - vlog_rate_limit
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/meta-flow.c:3615,9'
          Dst:             ovs_refcount_unref
        - Src:             'lib/meta-flow.c:3618,9'
          Dst:             ovsrcu_postpone__
        - Src:             'lib/meta-flow.c:3620,9'
          Dst:             vlog_rate_limit
    - functionName:    mf_vl_mff_map_add
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3724
      functionLinenumberEnd: 3747
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          116
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - cmap_insert
        - mf_field_hash
        - ovs_refcount_init
        - xmalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/meta-flow.c:3735,15'
          Dst:             xmalloc
        - Src:             'lib/meta-flow.c:3740,9'
          Dst:             ovs_refcount_init
        - Src:             'lib/meta-flow.c:3743,21'
          Dst:             mf_field_hash
        - Src:             'lib/meta-flow.c:3742,9'
          Dst:             cmap_insert
    - functionName:    mf_vl_mff_map_mod_from_tun_metadata
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3759
      functionLinenumberEnd: 3775
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          52
      EdgeCount:       14
      CyclomaticComplexity: 8
      functionsReached:
        - abort
        - mf_vl_mff_map_add
        - mf_vl_mff_map_clear
        - mf_vl_mff_map_del
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib/meta-flow.c:3760,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/meta-flow.c:3762,16'
          Dst:             mf_vl_mff_map_add
        - Src:             'lib/meta-flow.c:3765,16'
          Dst:             mf_vl_mff_map_del
        - Src:             'lib/meta-flow.c:3768,16'
          Dst:             mf_vl_mff_map_clear
        - Src:             'lib/meta-flow.c:3771,9'
          Dst:             abort
    - functionName:    mf_vl_mff_map_clear
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3629
      functionLinenumberEnd: 3647
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          121
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - cmap_cursor_advance
        - cmap_cursor_start
        - cmap_remove
        - mf_field_hash
        - ovs_refcount_read
        - vmf_delete
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/meta-flow.c:3633,9'
          Dst:             cmap_cursor_start
        - Src:             'lib/meta-flow.c:3633,9'
          Dst:             cmap_cursor_advance
        - Src:             'lib/meta-flow.c:3634,17'
          Dst:             ovs_refcount_read
        - Src:             'lib/meta-flow.c:3640,5'
          Dst:             cmap_cursor_start
        - Src:             'lib/meta-flow.c:3640,5'
          Dst:             cmap_cursor_advance
        - Src:             'lib/meta-flow.c:3642,21'
          Dst:             mf_field_hash
        - Src:             'lib/meta-flow.c:3641,9'
          Dst:             cmap_remove
        - Src:             'lib/meta-flow.c:3643,9'
          Dst:             vmf_delete
    - functionName:    mf_get_vl_mff
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3670
      functionLinenumberEnd: 3678
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          66
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - mf_get_vl_mff__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/meta-flow.c:3672,38'
          Dst:             mf_get_vl_mff__
    - functionName:    bitmap_set1
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 96
      functionLinenumberEnd: 98
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - bitmap_bit__
        - bitmap_unit__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/bitmap.h:97,39'
          Dst:             bitmap_bit__
        - Src:             'lib/bitmap.h:97,6'
          Dst:             bitmap_unit__
    - functionName:    bitmap_is_set
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 90
      functionLinenumberEnd: 91
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - bitmap_bit__
        - bitmap_unit__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/bitmap.h:91,14'
          Dst:             bitmap_unit__
        - Src:             'lib/bitmap.h:91,46'
          Dst:             bitmap_bit__
    - functionName:    mf_from_id
      functionSourceFile: '/src/openvswitch/./include/openvswitch/meta-flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2363
      functionLinenumberEnd: 2366
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/meta-flow.h:2365,5'
          Dst:             ovs_ignore
    - functionName:    bitmap_scan
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 227
      functionLinenumberEnd: 252
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - bool
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          160
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - bitmap_unit__
        - raw_ctz
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/bitmap.h:231,13'
          Dst:             bitmap_unit__
        - Src:             'lib/bitmap.h:246,18'
          Dst:             raw_ctz
    - functionName:    field_array_set
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3571
      functionLinenumberEnd: 3596
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - char
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          150
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - bitmap_is_set
        - bitmap_scan
        - bitmap_set1
        - mf_from_id
        - ovs_ignore
        - xrealloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/meta-flow.c:3574,5'
          Dst:             ovs_ignore
        - Src:             'lib/meta-flow.c:3577,5'
          Dst:             bitmap_scan
        - Src:             'lib/meta-flow.c:3578,19'
          Dst:             mf_from_id
        - Src:             'lib/meta-flow.c:3577,5'
          Dst:             bitmap_scan
        - Src:             'lib/meta-flow.c:3581,25'
          Dst:             mf_from_id
        - Src:             'lib/meta-flow.c:3584,10'
          Dst:             bitmap_is_set
        - Src:             'lib/meta-flow.c:3585,22'
          Dst:             xrealloc
        - Src:             'lib/meta-flow.c:3593,5'
          Dst:             bitmap_set1
    - functionName:    mf_format_subvalue
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3564
      functionLinenumberEnd: 3566
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_hex
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/meta-flow.c:3565,5'
          Dst:             ds_put_hex
    - functionName:    mf_get_subfield
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3555
      functionLinenumberEnd: 3559
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - bitwise_get
        - mf_get_value
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/meta-flow.c:3558,5'
          Dst:             mf_get_value
        - Src:             'lib/meta-flow.c:3559,12'
          Dst:             bitwise_get
    - functionName:    mf_get_value
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 666
      functionLinenumberEnd: 987
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         234
      ICount:          1447
      EdgeCount:       467
      CyclomaticComplexity: 235
      functionsReached:
        - abort
        - flow_get_xreg
        - flow_get_xxreg
        - hton128
        - htonl
        - htonll
        - htons
        - mpls_lse_to_bos
        - mpls_lse_to_label
        - mpls_lse_to_tc
        - mpls_lse_to_ttl
        - nsh_path_hdr_to_si
        - nsh_path_hdr_to_spi
        - ntohs
        - ofp_to_u16
        - ofputil_port_to_ofp11
        - tun_metadata_read
        - vlan_tci_to_pcp
      functionUses:    12
      BranchProfiles:
        - Branch String:   'lib/meta-flow.c:667,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/meta-flow.c:669,23'
          Dst:             htonl
        - Src:             'lib/meta-flow.c:672,23'
          Dst:             htonl
        - Src:             'lib/meta-flow.c:678,23'
          Dst:             htonl
        - Src:             'lib/meta-flow.c:696,23'
          Dst:             htons
        - Src:             'lib/meta-flow.c:714,23'
          Dst:             htonl
        - Src:             'lib/meta-flow.c:729,9'
          Dst:             tun_metadata_read
        - Src:             'lib/meta-flow.c:737,29'
          Dst:             ofp_to_u16
        - Src:             'lib/meta-flow.c:737,23'
          Dst:             htons
        - Src:             'lib/meta-flow.c:740,23'
          Dst:             ofputil_port_to_ofp11
        - Src:             'lib/meta-flow.c:743,23'
          Dst:             ofputil_port_to_ofp11
        - Src:             'lib/meta-flow.c:747,23'
          Dst:             htonl
        - Src:             'lib/meta-flow.c:751,23'
          Dst:             htonl
        - Src:             'lib/meta-flow.c:755,23'
          Dst:             htonl
        - Src:             'lib/meta-flow.c:759,23'
          Dst:             htons
        - Src:             'lib/meta-flow.c:763,23'
          Dst:             htonl
        - Src:             'lib/meta-flow.c:767,24'
          Dst:             hton128
        - Src:             'lib/meta-flow.c:799,23'
          Dst:             htonl
        - Src:             'lib/meta-flow.c:803,30'
          Dst:             flow_get_xreg
        - Src:             'lib/meta-flow.c:803,23'
          Dst:             htonll
        - Src:             'lib/meta-flow.c:807,32'
          Dst:             flow_get_xxreg
        - Src:             'lib/meta-flow.c:807,24'
          Dst:             hton128
        - Src:             'lib/meta-flow.c:827,44'
          Dst:             htons
        - Src:             'lib/meta-flow.c:830,44'
          Dst:             htons
        - Src:             'lib/meta-flow.c:835,21'
          Dst:             vlan_tci_to_pcp
        - Src:             'lib/meta-flow.c:839,29'
          Dst:             mpls_lse_to_label
        - Src:             'lib/meta-flow.c:839,23'
          Dst:             htonl
        - Src:             'lib/meta-flow.c:843,21'
          Dst:             mpls_lse_to_tc
        - Src:             'lib/meta-flow.c:847,21'
          Dst:             mpls_lse_to_bos
        - Src:             'lib/meta-flow.c:851,21'
          Dst:             mpls_lse_to_ttl
        - Src:             'lib/meta-flow.c:899,23'
          Dst:             htons
        - Src:             'lib/meta-flow.c:943,21'
          Dst:             ntohs
        - Src:             'lib/meta-flow.c:948,21'
          Dst:             ntohs
        - Src:             'lib/meta-flow.c:968,23'
          Dst:             nsh_path_hdr_to_spi
        - Src:             'lib/meta-flow.c:969,28'
          Dst:             htonl
        - Src:             'lib/meta-flow.c:974,21'
          Dst:             nsh_path_hdr_to_si
        - Src:             'lib/meta-flow.c:985,9'
          Dst:             abort
    - functionName:    ofp_to_u16
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 196
      functionLinenumberEnd: 197
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hton128
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 48
      functionLinenumberEnd: 53
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonll
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byte-order.h:51,19'
          Dst:             htonll
        - Src:             'lib/byte-order.h:52,19'
          Dst:             htonll
    - functionName:    flow_get_xreg
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 143
      functionLinenumberEnd: 144
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          27
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    htonll
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 30
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byte-order.h:30,12'
          Dst:             htonl
        - Src:             'lib/byte-order.h:30,44'
          Dst:             htonl
        - Src:             'lib/byte-order.h:30,62'
          Dst:             htonl
    - functionName:    flow_get_xxreg
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 164
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          60
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    vlan_tci_to_pcp
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 515
      functionLinenumberEnd: 516
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:516,13'
          Dst:             ntohs
    - functionName:    mpls_lse_to_label
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 568
      functionLinenumberEnd: 569
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:569,13'
          Dst:             ntohl
    - functionName:    mpls_lse_to_tc
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 576
      functionLinenumberEnd: 577
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:577,13'
          Dst:             ntohl
    - functionName:    mpls_lse_to_bos
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 624
      functionLinenumberEnd: 625
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:625,24'
          Dst:             htonl
    - functionName:    mpls_lse_to_ttl
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 584
      functionLinenumberEnd: 585
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:585,13'
          Dst:             ntohl
    - functionName:    nsh_path_hdr_to_spi
      functionSourceFile: '/src/openvswitch/./include/openvswitch/nsh.h'
      linkageType:     InternalLinkage
      functionLinenumber: 346
      functionLinenumberEnd: 348
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
        - ntohl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/nsh.h:347,20'
          Dst:             ntohl
        - Src:             './include/openvswitch/nsh.h:348,12'
          Dst:             htonl
    - functionName:    nsh_path_hdr_to_si
      functionSourceFile: '/src/openvswitch/./include/openvswitch/nsh.h'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 360
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/nsh.h:360,13'
          Dst:             ntohl
    - functionName:    mf_read_subfield
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3539
      functionLinenumberEnd: 3548
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          38
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - bitwise_copy
        - mf_get_value
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/meta-flow.c:3542,5'
          Dst:             mf_get_value
        - Src:             'lib/meta-flow.c:3545,5'
          Dst:             bitwise_copy
    - functionName:    mf_mask_subfield
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3525
      functionLinenumberEnd: 3532
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          43
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - bitwise_copy
        - mf_get
        - mf_set
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/meta-flow.c:3528,5'
          Dst:             mf_get
        - Src:             'lib/meta-flow.c:3529,5'
          Dst:             bitwise_copy
        - Src:             'lib/meta-flow.c:3530,5'
          Dst:             bitwise_copy
        - Src:             'lib/meta-flow.c:3531,5'
          Dst:             mf_set
    - functionName:    mf_get
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2972
      functionLinenumberEnd: 2975
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mf_get_mask
        - mf_get_value
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/meta-flow.c:2973,5'
          Dst:             mf_get_value
        - Src:             'lib/meta-flow.c:2974,5'
          Dst:             mf_get_mask
    - functionName:    mf_set
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2540
      functionLinenumberEnd: 2833
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         262
      ICount:          1607
      EdgeCount:       268
      CyclomaticComplexity: 8
      functionsReached:
        - abort
        - htonl
        - ip_is_cidr
        - is_all_ones
        - is_all_zeros
        - match_set_arp_sha_masked
        - match_set_arp_tha_masked
        - match_set_ct_ipv6_dst_masked
        - match_set_ct_ipv6_src_masked
        - match_set_ct_label_masked
        - match_set_ct_mark_masked
        - match_set_ct_nw_dst_masked
        - match_set_ct_nw_src_masked
        - match_set_ct_state_masked
        - match_set_ct_tp_dst_masked
        - match_set_ct_tp_src_masked
        - match_set_dl_dst_masked
        - match_set_dl_src_masked
        - match_set_dl_tci_masked
        - match_set_dp_hash_masked
        - match_set_ipv6_dst_masked
        - match_set_ipv6_label_masked
        - match_set_ipv6_src_masked
        - match_set_metadata_masked
        - match_set_nd_target_masked
        - match_set_nw_dst_masked
        - match_set_nw_frag_masked
        - match_set_nw_src_masked
        - match_set_pkt_mark_masked
        - match_set_reg_masked
        - match_set_tcp_flags_masked
        - match_set_tp_dst_masked
        - match_set_tp_src_masked
        - match_set_tun_dst_masked
        - match_set_tun_erspan_dir_masked
        - match_set_tun_erspan_hwid_masked
        - match_set_tun_erspan_idx_masked
        - match_set_tun_erspan_ver_masked
        - match_set_tun_flags_masked
        - match_set_tun_gbp_flags_masked
        - match_set_tun_gbp_id_masked
        - match_set_tun_gtpu_flags_masked
        - match_set_tun_gtpu_msgtype_masked
        - match_set_tun_id_masked
        - match_set_tun_ipv6_dst_masked
        - match_set_tun_ipv6_src_masked
        - match_set_tun_src_masked
        - match_set_tun_tos_masked
        - match_set_tun_ttl_masked
        - match_set_vlan_vid_masked
        - match_set_xreg_masked
        - match_set_xxreg_masked
        - mf_is_tun_metadata
        - mf_set_value
        - mf_set_wild
        - nsh_path_hdr_set_si
        - nsh_path_hdr_set_spi
        - ntoh128
        - ntohl
        - ntohll
        - ntohs
        - tun_metadata_set_match
      functionUses:    6
      BranchProfiles:
        - Branch String:   'lib/meta-flow.c:2561,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/meta-flow.c:2541,18'
          Dst:             is_all_ones
        - Src:             'lib/meta-flow.c:2542,9'
          Dst:             mf_set_value
        - Src:             'lib/meta-flow.c:2544,16'
          Dst:             is_all_zeros
        - Src:             'lib/meta-flow.c:2544,52'
          Dst:             mf_is_tun_metadata
        - Src:             'lib/meta-flow.c:2547,9'
          Dst:             mf_set_wild
        - Src:             'lib/meta-flow.c:2594,41'
          Dst:             ntohl
        - Src:             'lib/meta-flow.c:2594,61'
          Dst:             ntohl
        - Src:             'lib/meta-flow.c:2594,9'
          Dst:             match_set_dp_hash_masked
        - Src:             'lib/meta-flow.c:2597,9'
          Dst:             match_set_tun_id_masked
        - Src:             'lib/meta-flow.c:2600,9'
          Dst:             match_set_tun_src_masked
        - Src:             'lib/meta-flow.c:2603,9'
          Dst:             match_set_tun_dst_masked
        - Src:             'lib/meta-flow.c:2606,9'
          Dst:             match_set_tun_ipv6_src_masked
        - Src:             'lib/meta-flow.c:2609,9'
          Dst:             match_set_tun_ipv6_dst_masked
        - Src:             'lib/meta-flow.c:2612,43'
          Dst:             ntohs
        - Src:             'lib/meta-flow.c:2612,63'
          Dst:             ntohs
        - Src:             'lib/meta-flow.c:2612,9'
          Dst:             match_set_tun_flags_masked
        - Src:             'lib/meta-flow.c:2615,9'
          Dst:             match_set_tun_gbp_id_masked
        - Src:             'lib/meta-flow.c:2618,9'
          Dst:             match_set_tun_gbp_flags_masked
        - Src:             'lib/meta-flow.c:2621,9'
          Dst:             match_set_tun_ttl_masked
        - Src:             'lib/meta-flow.c:2624,9'
          Dst:             match_set_tun_tos_masked
        - Src:             'lib/meta-flow.c:2627,9'
          Dst:             match_set_tun_erspan_ver_masked
        - Src:             'lib/meta-flow.c:2630,48'
          Dst:             ntohl
        - Src:             'lib/meta-flow.c:2631,41'
          Dst:             ntohl
        - Src:             'lib/meta-flow.c:2630,9'
          Dst:             match_set_tun_erspan_idx_masked
        - Src:             'lib/meta-flow.c:2634,9'
          Dst:             match_set_tun_erspan_dir_masked
        - Src:             'lib/meta-flow.c:2637,9'
          Dst:             match_set_tun_erspan_hwid_masked
        - Src:             'lib/meta-flow.c:2640,9'
          Dst:             match_set_tun_gtpu_flags_masked
        - Src:             'lib/meta-flow.c:2643,9'
          Dst:             match_set_tun_gtpu_msgtype_masked
        - Src:             'lib/meta-flow.c:2646,9'
          Dst:             tun_metadata_set_match
        - Src:             'lib/meta-flow.c:2650,9'
          Dst:             match_set_metadata_masked
        - Src:             'lib/meta-flow.c:2655,30'
          Dst:             ntohl
        - Src:             'lib/meta-flow.c:2655,50'
          Dst:             ntohl
        - Src:             'lib/meta-flow.c:2654,9'
          Dst:             match_set_reg_masked
        - Src:             'lib/meta-flow.c:2660,31'
          Dst:             ntohll
        - Src:             'lib/meta-flow.c:2660,52'
          Dst:             ntohll
        - Src:             'lib/meta-flow.c:2659,9'
          Dst:             match_set_xreg_masked
        - Src:             'lib/meta-flow.c:2665,17'
          Dst:             ntoh128
        - Src:             'lib/meta-flow.c:2665,40'
          Dst:             ntoh128
        - Src:             'lib/meta-flow.c:2664,9'
          Dst:             match_set_xxreg_masked
        - Src:             'lib/meta-flow.c:2670,42'
          Dst:             ntohl
        - Src:             'lib/meta-flow.c:2671,35'
          Dst:             ntohl
        - Src:             'lib/meta-flow.c:2670,9'
          Dst:             match_set_pkt_mark_masked
        - Src:             'lib/meta-flow.c:2675,42'
          Dst:             ntohl
        - Src:             'lib/meta-flow.c:2675,62'
          Dst:             ntohl
        - Src:             'lib/meta-flow.c:2675,9'
          Dst:             match_set_ct_state_masked
        - Src:             'lib/meta-flow.c:2679,41'
          Dst:             ntohl
        - Src:             'lib/meta-flow.c:2679,61'
          Dst:             ntohl
        - Src:             'lib/meta-flow.c:2679,9'
          Dst:             match_set_ct_mark_masked
        - Src:             'lib/meta-flow.c:2683,42'
          Dst:             ntoh128
        - Src:             'lib/meta-flow.c:2684,35'
          Dst:             ntoh128
        - Src:             'lib/meta-flow.c:2683,9'
          Dst:             match_set_ct_label_masked
        - Src:             'lib/meta-flow.c:2688,9'
          Dst:             match_set_ct_nw_src_masked
        - Src:             'lib/meta-flow.c:2692,9'
          Dst:             match_set_ct_nw_dst_masked
        - Src:             'lib/meta-flow.c:2696,9'
          Dst:             match_set_ct_ipv6_src_masked
        - Src:             'lib/meta-flow.c:2700,9'
          Dst:             match_set_ct_ipv6_dst_masked
        - Src:             'lib/meta-flow.c:2704,9'
          Dst:             match_set_ct_tp_src_masked
        - Src:             'lib/meta-flow.c:2708,9'
          Dst:             match_set_ct_tp_dst_masked
        - Src:             'lib/meta-flow.c:2712,9'
          Dst:             match_set_dl_dst_masked
        - Src:             'lib/meta-flow.c:2716,9'
          Dst:             match_set_dl_src_masked
        - Src:             'lib/meta-flow.c:2721,9'
          Dst:             match_set_arp_sha_masked
        - Src:             'lib/meta-flow.c:2726,9'
          Dst:             match_set_arp_tha_masked
        - Src:             'lib/meta-flow.c:2730,9'
          Dst:             match_set_dl_tci_masked
        - Src:             'lib/meta-flow.c:2734,9'
          Dst:             match_set_vlan_vid_masked
        - Src:             'lib/meta-flow.c:2738,9'
          Dst:             match_set_nw_src_masked
        - Src:             'lib/meta-flow.c:2742,9'
          Dst:             match_set_nw_dst_masked
        - Src:             'lib/meta-flow.c:2746,9'
          Dst:             match_set_ipv6_src_masked
        - Src:             'lib/meta-flow.c:2750,9'
          Dst:             match_set_ipv6_dst_masked
        - Src:             'lib/meta-flow.c:2754,27'
          Dst:             htonl
        - Src:             'lib/meta-flow.c:2754,54'
          Dst:             htonl
        - Src:             'lib/meta-flow.c:2755,13'
          Dst:             mf_set_value
        - Src:             'lib/meta-flow.c:2757,13'
          Dst:             match_set_ipv6_label_masked
        - Src:             'lib/meta-flow.c:2762,9'
          Dst:             match_set_nd_target_masked
        - Src:             'lib/meta-flow.c:2766,9'
          Dst:             match_set_nw_frag_masked
        - Src:             'lib/meta-flow.c:2771,9'
          Dst:             match_set_nw_src_masked
        - Src:             'lib/meta-flow.c:2775,9'
          Dst:             match_set_nw_dst_masked
        - Src:             'lib/meta-flow.c:2781,9'
          Dst:             match_set_tp_src_masked
        - Src:             'lib/meta-flow.c:2787,9'
          Dst:             match_set_tp_dst_masked
        - Src:             'lib/meta-flow.c:2791,9'
          Dst:             match_set_tcp_flags_masked
        - Src:             'lib/meta-flow.c:2808,9'
          Dst:             nsh_path_hdr_set_spi
        - Src:             'lib/meta-flow.c:2812,41'
          Dst:             htonl
        - Src:             'lib/meta-flow.c:2813,9'
          Dst:             nsh_path_hdr_set_si
        - Src:             'lib/meta-flow.c:2826,9'
          Dst:             abort
        - Src:             'lib/meta-flow.c:2830,17'
          Dst:             ip_is_cidr
    - functionName:    mf_set_value
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 999
      functionLinenumberEnd: 1334
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         243
      ICount:          1428
      EdgeCount:       485
      CyclomaticComplexity: 244
      functionsReached:
        - abort
        - htonl
        - match_set_actset_output
        - match_set_arp_sha
        - match_set_arp_tha
        - match_set_conj_id
        - match_set_ct_ipv6_dst
        - match_set_ct_ipv6_src
        - match_set_ct_label
        - match_set_ct_mark
        - match_set_ct_nw_dst
        - match_set_ct_nw_proto
        - match_set_ct_nw_src
        - match_set_ct_state
        - match_set_ct_tp_dst
        - match_set_ct_tp_src
        - match_set_ct_zone
        - match_set_dl_dst
        - match_set_dl_src
        - match_set_dl_tci
        - match_set_dl_type
        - match_set_dl_vlan
        - match_set_dl_vlan_pcp
        - match_set_dp_hash
        - match_set_icmp_code
        - match_set_icmp_type
        - match_set_in_port
        - match_set_ipv6_dst
        - match_set_ipv6_label
        - match_set_ipv6_src
        - match_set_metadata
        - match_set_mpls_bos
        - match_set_mpls_label
        - match_set_mpls_tc
        - match_set_mpls_ttl
        - match_set_nd_options_type
        - match_set_nd_reserved
        - match_set_nd_target
        - match_set_nw_dscp
        - match_set_nw_dst
        - match_set_nw_ecn
        - match_set_nw_frag
        - match_set_nw_proto
        - match_set_nw_src
        - match_set_nw_ttl
        - match_set_packet_type
        - match_set_pkt_mark
        - match_set_recirc_id
        - match_set_reg
        - match_set_skb_priority
        - match_set_tcp_flags
        - match_set_tp_dst
        - match_set_tp_src
        - match_set_tun_dst
        - match_set_tun_erspan_dir
        - match_set_tun_erspan_hwid
        - match_set_tun_erspan_idx
        - match_set_tun_erspan_ver
        - match_set_tun_flags
        - match_set_tun_gbp_flags
        - match_set_tun_gbp_id
        - match_set_tun_gtpu_flags
        - match_set_tun_gtpu_msgtype
        - match_set_tun_id
        - match_set_tun_ipv6_dst
        - match_set_tun_ipv6_src
        - match_set_tun_src
        - match_set_tun_tos
        - match_set_tun_ttl
        - match_set_vlan_vid
        - match_set_xreg
        - match_set_xxreg
        - nsh_path_hdr_set_si
        - nsh_path_hdr_set_spi
        - ntoh128
        - ntohl
        - ntohll
        - ntohs
        - ofputil_port_from_ofp11
        - tun_metadata_set_match
        - u16_to_ofp
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/meta-flow.c:1004,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/meta-flow.c:1006,34'
          Dst:             ntohl
        - Src:             'lib/meta-flow.c:1006,9'
          Dst:             match_set_dp_hash
        - Src:             'lib/meta-flow.c:1009,36'
          Dst:             ntohl
        - Src:             'lib/meta-flow.c:1009,9'
          Dst:             match_set_recirc_id
        - Src:             'lib/meta-flow.c:1012,9'
          Dst:             match_set_packet_type
        - Src:             'lib/meta-flow.c:1015,34'
          Dst:             ntohl
        - Src:             'lib/meta-flow.c:1015,9'
          Dst:             match_set_conj_id
        - Src:             'lib/meta-flow.c:1018,9'
          Dst:             match_set_tun_id
        - Src:             'lib/meta-flow.c:1021,9'
          Dst:             match_set_tun_src
        - Src:             'lib/meta-flow.c:1024,9'
          Dst:             match_set_tun_dst
        - Src:             'lib/meta-flow.c:1027,9'
          Dst:             match_set_tun_ipv6_src
        - Src:             'lib/meta-flow.c:1030,9'
          Dst:             match_set_tun_ipv6_dst
        - Src:             'lib/meta-flow.c:1033,36'
          Dst:             ntohs
        - Src:             'lib/meta-flow.c:1033,9'
          Dst:             match_set_tun_flags
        - Src:             'lib/meta-flow.c:1036,10'
          Dst:             match_set_tun_gbp_id
        - Src:             'lib/meta-flow.c:1039,10'
          Dst:             match_set_tun_gbp_flags
        - Src:             'lib/meta-flow.c:1042,9'
          Dst:             match_set_tun_tos
        - Src:             'lib/meta-flow.c:1045,9'
          Dst:             match_set_tun_ttl
        - Src:             'lib/meta-flow.c:1048,9'
          Dst:             match_set_tun_erspan_ver
        - Src:             'lib/meta-flow.c:1051,41'
          Dst:             ntohl
        - Src:             'lib/meta-flow.c:1051,9'
          Dst:             match_set_tun_erspan_idx
        - Src:             'lib/meta-flow.c:1054,9'
          Dst:             match_set_tun_erspan_dir
        - Src:             'lib/meta-flow.c:1057,9'
          Dst:             match_set_tun_erspan_hwid
        - Src:             'lib/meta-flow.c:1060,9'
          Dst:             match_set_tun_gtpu_flags
        - Src:             'lib/meta-flow.c:1063,9'
          Dst:             match_set_tun_gtpu_msgtype
        - Src:             'lib/meta-flow.c:1066,9'
          Dst:             tun_metadata_set_match
        - Src:             'lib/meta-flow.c:1070,9'
          Dst:             match_set_metadata
        - Src:             'lib/meta-flow.c:1074,45'
          Dst:             ntohs
        - Src:             'lib/meta-flow.c:1074,34'
          Dst:             u16_to_ofp
        - Src:             'lib/meta-flow.c:1074,9'
          Dst:             match_set_in_port
        - Src:             'lib/meta-flow.c:1079,9'
          Dst:             ofputil_port_from_ofp11
        - Src:             'lib/meta-flow.c:1080,9'
          Dst:             match_set_in_port
        - Src:             'lib/meta-flow.c:1085,9'
          Dst:             ofputil_port_from_ofp11
        - Src:             'lib/meta-flow.c:1086,9'
          Dst:             match_set_actset_output
        - Src:             'lib/meta-flow.c:1091,39'
          Dst:             ntohl
        - Src:             'lib/meta-flow.c:1091,9'
          Dst:             match_set_skb_priority
        - Src:             'lib/meta-flow.c:1095,35'
          Dst:             ntohl
        - Src:             'lib/meta-flow.c:1095,9'
          Dst:             match_set_pkt_mark
        - Src:             'lib/meta-flow.c:1099,35'
          Dst:             ntohl
        - Src:             'lib/meta-flow.c:1099,9'
          Dst:             match_set_ct_state
        - Src:             'lib/meta-flow.c:1103,34'
          Dst:             ntohs
        - Src:             'lib/meta-flow.c:1103,9'
          Dst:             match_set_ct_zone
        - Src:             'lib/meta-flow.c:1107,34'
          Dst:             ntohl
        - Src:             'lib/meta-flow.c:1107,9'
          Dst:             match_set_ct_mark
        - Src:             'lib/meta-flow.c:1111,35'
          Dst:             ntoh128
        - Src:             'lib/meta-flow.c:1111,9'
          Dst:             match_set_ct_label
        - Src:             'lib/meta-flow.c:1115,9'
          Dst:             match_set_ct_nw_proto
        - Src:             'lib/meta-flow.c:1119,9'
          Dst:             match_set_ct_nw_src
        - Src:             'lib/meta-flow.c:1123,9'
          Dst:             match_set_ct_nw_dst
        - Src:             'lib/meta-flow.c:1127,9'
          Dst:             match_set_ct_ipv6_src
        - Src:             'lib/meta-flow.c:1131,9'
          Dst:             match_set_ct_ipv6_dst
        - Src:             'lib/meta-flow.c:1135,9'
          Dst:             match_set_ct_tp_src
        - Src:             'lib/meta-flow.c:1139,9'
          Dst:             match_set_ct_tp_dst
        - Src:             'lib/meta-flow.c:1143,49'
          Dst:             ntohl
        - Src:             'lib/meta-flow.c:1143,9'
          Dst:             match_set_reg
        - Src:             'lib/meta-flow.c:1147,51'
          Dst:             ntohll
        - Src:             'lib/meta-flow.c:1147,9'
          Dst:             match_set_xreg
        - Src:             'lib/meta-flow.c:1151,53'
          Dst:             ntoh128
        - Src:             'lib/meta-flow.c:1151,9'
          Dst:             match_set_xxreg
        - Src:             'lib/meta-flow.c:1155,9'
          Dst:             match_set_dl_src
        - Src:             'lib/meta-flow.c:1159,9'
          Dst:             match_set_dl_dst
        - Src:             'lib/meta-flow.c:1163,9'
          Dst:             match_set_dl_type
        - Src:             'lib/meta-flow.c:1167,9'
          Dst:             match_set_dl_tci
        - Src:             'lib/meta-flow.c:1171,9'
          Dst:             match_set_dl_vlan
        - Src:             'lib/meta-flow.c:1174,9'
          Dst:             match_set_vlan_vid
        - Src:             'lib/meta-flow.c:1179,9'
          Dst:             match_set_dl_vlan_pcp
        - Src:             'lib/meta-flow.c:1183,9'
          Dst:             match_set_mpls_label
        - Src:             'lib/meta-flow.c:1187,9'
          Dst:             match_set_mpls_tc
        - Src:             'lib/meta-flow.c:1191,9'
          Dst:             match_set_mpls_bos
        - Src:             'lib/meta-flow.c:1195,9'
          Dst:             match_set_mpls_ttl
        - Src:             'lib/meta-flow.c:1199,9'
          Dst:             match_set_nw_src
        - Src:             'lib/meta-flow.c:1203,9'
          Dst:             match_set_nw_dst
        - Src:             'lib/meta-flow.c:1207,9'
          Dst:             match_set_ipv6_src
        - Src:             'lib/meta-flow.c:1211,9'
          Dst:             match_set_ipv6_dst
        - Src:             'lib/meta-flow.c:1215,9'
          Dst:             match_set_ipv6_label
        - Src:             'lib/meta-flow.c:1219,9'
          Dst:             match_set_nw_proto
        - Src:             'lib/meta-flow.c:1223,9'
          Dst:             match_set_nw_dscp
        - Src:             'lib/meta-flow.c:1227,9'
          Dst:             match_set_nw_dscp
        - Src:             'lib/meta-flow.c:1231,9'
          Dst:             match_set_nw_ecn
        - Src:             'lib/meta-flow.c:1235,9'
          Dst:             match_set_nw_ttl
        - Src:             'lib/meta-flow.c:1239,9'
          Dst:             match_set_nw_frag
        - Src:             'lib/meta-flow.c:1243,35'
          Dst:             ntohs
        - Src:             'lib/meta-flow.c:1243,9'
          Dst:             match_set_nw_proto
        - Src:             'lib/meta-flow.c:1247,9'
          Dst:             match_set_nw_src
        - Src:             'lib/meta-flow.c:1251,9'
          Dst:             match_set_nw_dst
        - Src:             'lib/meta-flow.c:1256,9'
          Dst:             match_set_arp_sha
        - Src:             'lib/meta-flow.c:1261,9'
          Dst:             match_set_arp_tha
        - Src:             'lib/meta-flow.c:1267,9'
          Dst:             match_set_tp_src
        - Src:             'lib/meta-flow.c:1273,9'
          Dst:             match_set_tp_dst
        - Src:             'lib/meta-flow.c:1277,9'
          Dst:             match_set_tcp_flags
        - Src:             'lib/meta-flow.c:1282,9'
          Dst:             match_set_icmp_type
        - Src:             'lib/meta-flow.c:1287,9'
          Dst:             match_set_icmp_code
        - Src:             'lib/meta-flow.c:1291,9'
          Dst:             match_set_nd_target
        - Src:             'lib/meta-flow.c:1295,9'
          Dst:             match_set_nd_reserved
        - Src:             'lib/meta-flow.c:1299,9'
          Dst:             match_set_nd_options_type
        - Src:             'lib/meta-flow.c:1315,41'
          Dst:             htonl
        - Src:             'lib/meta-flow.c:1316,9'
          Dst:             nsh_path_hdr_set_spi
        - Src:             'lib/meta-flow.c:1319,41'
          Dst:             htonl
        - Src:             'lib/meta-flow.c:1320,9'
          Dst:             nsh_path_hdr_set_si
        - Src:             'lib/meta-flow.c:1332,9'
          Dst:             abort
    - functionName:    mf_set_wild
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2162
      functionLinenumberEnd: 2515
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         247
      ICount:          1515
      EdgeCount:       493
      CyclomaticComplexity: 248
      functionsReached:
        - abort
        - htonl
        - htonll
        - htons
        - match_set_any_mpls_bos
        - match_set_any_mpls_label
        - match_set_any_mpls_tc
        - match_set_any_mpls_ttl
        - match_set_any_pcp
        - match_set_any_vid
        - match_set_dl_tci_masked
        - match_set_metadata_masked
        - match_set_nw_dst_masked
        - match_set_nw_src_masked
        - match_set_reg_masked
        - match_set_tun_dst_masked
        - match_set_tun_erspan_dir_masked
        - match_set_tun_erspan_hwid_masked
        - match_set_tun_erspan_idx_masked
        - match_set_tun_erspan_ver_masked
        - match_set_tun_flags_masked
        - match_set_tun_gbp_flags_masked
        - match_set_tun_gbp_id_masked
        - match_set_tun_gtpu_flags_masked
        - match_set_tun_gtpu_msgtype_masked
        - match_set_tun_id_masked
        - match_set_tun_src_masked
        - match_set_tun_tos_masked
        - match_set_tun_ttl_masked
        - match_set_xreg_masked
        - match_set_xxreg_masked
        - nsh_path_hdr_set_si
        - nsh_path_hdr_set_spi
        - tun_metadata_set_match
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/meta-flow.c:2167,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/meta-flow.c:2185,40'
          Dst:             htonll
        - Src:             'lib/meta-flow.c:2185,51'
          Dst:             htonll
        - Src:             'lib/meta-flow.c:2185,9'
          Dst:             match_set_tun_id_masked
        - Src:             'lib/meta-flow.c:2188,41'
          Dst:             htonl
        - Src:             'lib/meta-flow.c:2188,51'
          Dst:             htonl
        - Src:             'lib/meta-flow.c:2188,9'
          Dst:             match_set_tun_src_masked
        - Src:             'lib/meta-flow.c:2191,41'
          Dst:             htonl
        - Src:             'lib/meta-flow.c:2191,51'
          Dst:             htonl
        - Src:             'lib/meta-flow.c:2191,9'
          Dst:             match_set_tun_dst_masked
        - Src:             'lib/meta-flow.c:2206,9'
          Dst:             match_set_tun_flags_masked
        - Src:             'lib/meta-flow.c:2209,9'
          Dst:             match_set_tun_gbp_id_masked
        - Src:             'lib/meta-flow.c:2212,9'
          Dst:             match_set_tun_gbp_flags_masked
        - Src:             'lib/meta-flow.c:2215,9'
          Dst:             match_set_tun_tos_masked
        - Src:             'lib/meta-flow.c:2218,9'
          Dst:             match_set_tun_ttl_masked
        - Src:             'lib/meta-flow.c:2221,9'
          Dst:             match_set_tun_erspan_ver_masked
        - Src:             'lib/meta-flow.c:2224,9'
          Dst:             match_set_tun_erspan_idx_masked
        - Src:             'lib/meta-flow.c:2227,9'
          Dst:             match_set_tun_erspan_dir_masked
        - Src:             'lib/meta-flow.c:2230,9'
          Dst:             match_set_tun_erspan_hwid_masked
        - Src:             'lib/meta-flow.c:2233,9'
          Dst:             match_set_tun_gtpu_flags_masked
        - Src:             'lib/meta-flow.c:2236,9'
          Dst:             match_set_tun_gtpu_msgtype_masked
        - Src:             'lib/meta-flow.c:2239,9'
          Dst:             tun_metadata_set_match
        - Src:             'lib/meta-flow.c:2243,42'
          Dst:             htonll
        - Src:             'lib/meta-flow.c:2243,53'
          Dst:             htonll
        - Src:             'lib/meta-flow.c:2243,9'
          Dst:             match_set_metadata_masked
        - Src:             'lib/meta-flow.c:2322,9'
          Dst:             match_set_reg_masked
        - Src:             'lib/meta-flow.c:2326,9'
          Dst:             match_set_xreg_masked
        - Src:             'lib/meta-flow.c:2330,9'
          Dst:             match_set_xxreg_masked
        - Src:             'lib/meta-flow.c:2346,31'
          Dst:             htons
        - Src:             'lib/meta-flow.c:2347,35'
          Dst:             htons
        - Src:             'lib/meta-flow.c:2351,40'
          Dst:             htons
        - Src:             'lib/meta-flow.c:2351,50'
          Dst:             htons
        - Src:             'lib/meta-flow.c:2351,9'
          Dst:             match_set_dl_tci_masked
        - Src:             'lib/meta-flow.c:2356,9'
          Dst:             match_set_any_vid
        - Src:             'lib/meta-flow.c:2361,9'
          Dst:             match_set_any_pcp
        - Src:             'lib/meta-flow.c:2365,9'
          Dst:             match_set_any_mpls_label
        - Src:             'lib/meta-flow.c:2369,9'
          Dst:             match_set_any_mpls_tc
        - Src:             'lib/meta-flow.c:2373,9'
          Dst:             match_set_any_mpls_bos
        - Src:             'lib/meta-flow.c:2377,9'
          Dst:             match_set_any_mpls_ttl
        - Src:             'lib/meta-flow.c:2382,40'
          Dst:             htonl
        - Src:             'lib/meta-flow.c:2382,50'
          Dst:             htonl
        - Src:             'lib/meta-flow.c:2382,9'
          Dst:             match_set_nw_src_masked
        - Src:             'lib/meta-flow.c:2387,40'
          Dst:             htonl
        - Src:             'lib/meta-flow.c:2387,50'
          Dst:             htonl
        - Src:             'lib/meta-flow.c:2387,9'
          Dst:             match_set_nw_dst_masked
        - Src:             'lib/meta-flow.c:2401,38'
          Dst:             htonl
        - Src:             'lib/meta-flow.c:2402,34'
          Dst:             htonl
        - Src:             'lib/meta-flow.c:2449,42'
          Dst:             htonl
        - Src:             'lib/meta-flow.c:2450,38'
          Dst:             htonl
        - Src:             'lib/meta-flow.c:2458,34'
          Dst:             htons
        - Src:             'lib/meta-flow.c:2459,30'
          Dst:             htons
        - Src:             'lib/meta-flow.c:2467,34'
          Dst:             htons
        - Src:             'lib/meta-flow.c:2468,30'
          Dst:             htons
        - Src:             'lib/meta-flow.c:2473,37'
          Dst:             htons
        - Src:             'lib/meta-flow.c:2474,33'
          Dst:             htons
        - Src:             'lib/meta-flow.c:2496,42'
          Dst:             htonl
        - Src:             'lib/meta-flow.c:2497,57'
          Dst:             htonl
        - Src:             'lib/meta-flow.c:2497,9'
          Dst:             nsh_path_hdr_set_spi
        - Src:             'lib/meta-flow.c:2500,42'
          Dst:             htonl
        - Src:             'lib/meta-flow.c:2501,9'
          Dst:             nsh_path_hdr_set_si
        - Src:             'lib/meta-flow.c:2507,9'
          Dst:             htonl
        - Src:             'lib/meta-flow.c:2507,9'
          Dst:             htonl
        - Src:             'lib/meta-flow.c:2507,9'
          Dst:             htonl
        - Src:             'lib/meta-flow.c:2513,9'
          Dst:             abort
    - functionName:    ntohll
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
        - ntohl
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byte-order.h:36,12'
          Dst:             htonl
        - Src:             'lib/byte-order.h:36,44'
          Dst:             ntohl
        - Src:             'lib/byte-order.h:36,62'
          Dst:             ntohl
    - functionName:    ntoh128
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 58
      functionLinenumberEnd: 63
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohll
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byte-order.h:61,18'
          Dst:             ntohll
        - Src:             'lib/byte-order.h:62,18'
          Dst:             ntohll
    - functionName:    nsh_path_hdr_set_spi
      functionSourceFile: '/src/openvswitch/./include/openvswitch/nsh.h'
      linkageType:     InternalLinkage
      functionLinenumber: 395
      functionLinenumberEnd: 400
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
        - ntohl
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/nsh.h:396,22'
          Dst:             ntohl
        - Src:             './include/openvswitch/nsh.h:397,22'
          Dst:             ntohl
        - Src:             './include/openvswitch/nsh.h:398,17'
          Dst:             htonl
    - functionName:    nsh_path_hdr_set_si
      functionSourceFile: '/src/openvswitch/./include/openvswitch/nsh.h'
      linkageType:     InternalLinkage
      functionLinenumber: 404
      functionLinenumberEnd: 408
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
        - ntohl
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/nsh.h:405,22'
          Dst:             ntohl
        - Src:             './include/openvswitch/nsh.h:406,17'
          Dst:             htonl
    - functionName:    ip_is_cidr
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 664
      functionLinenumberEnd: 666
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:665,19'
          Dst:             ntohl
    - functionName:    u16_to_ofp
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 214
      functionLinenumberEnd: 215
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mf_get_mask
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 416
      functionLinenumberEnd: 418
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mf_get_value
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/meta-flow.c:417,5'
          Dst:             mf_get_value
    - functionName:    mf_write_subfield_value
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3507
      functionLinenumberEnd: 3516
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          59
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - bitwise_copy
        - bitwise_one
        - mf_get
        - mf_set
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/meta-flow.c:3512,5'
          Dst:             mf_get
        - Src:             'lib/meta-flow.c:3513,5'
          Dst:             bitwise_copy
        - Src:             'lib/meta-flow.c:3514,5'
          Dst:             bitwise_one
        - Src:             'lib/meta-flow.c:3515,5'
          Dst:             mf_set
    - functionName:    mf_write_subfield
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3494
      functionLinenumberEnd: 3502
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          51
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - bitwise_copy
        - bitwise_one
        - mf_get
        - mf_set
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/meta-flow.c:3498,5'
          Dst:             mf_get
        - Src:             'lib/meta-flow.c:3499,5'
          Dst:             bitwise_copy
        - Src:             'lib/meta-flow.c:3500,5'
          Dst:             bitwise_one
        - Src:             'lib/meta-flow.c:3501,5'
          Dst:             mf_set
    - functionName:    mf_write_subfield_flow
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3478
      functionLinenumberEnd: 3486
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          40
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - bitwise_copy
        - mf_get_value
        - mf_set_flow_value
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/meta-flow.c:3482,5'
          Dst:             mf_get_value
        - Src:             'lib/meta-flow.c:3483,5'
          Dst:             bitwise_copy
        - Src:             'lib/meta-flow.c:3485,5'
          Dst:             mf_set_flow_value
    - functionName:    mf_set_flow_value
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1425
      functionLinenumberEnd: 1754
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         230
      ICount:          1446
      EdgeCount:       458
      CyclomaticComplexity: 230
      functionsReached:
        - abort
        - flow_fix_vlan_tpid
        - flow_set_dl_vlan
        - flow_set_mpls_bos
        - flow_set_mpls_label
        - flow_set_mpls_tc
        - flow_set_mpls_ttl
        - flow_set_vlan_pcp
        - flow_set_vlan_vid
        - flow_set_xreg
        - flow_set_xxreg
        - htonl
        - htons
        - nsh_path_hdr_set_si
        - nsh_path_hdr_set_spi
        - ntoh128
        - ntohl
        - ntohll
        - ntohs
        - ofputil_port_from_ofp11
        - tun_metadata_write
        - u16_to_ofp
      functionUses:    7
      BranchProfiles:
        - Branch String:   'lib/meta-flow.c:1426,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/meta-flow.c:1428,25'
          Dst:             ntohl
        - Src:             'lib/meta-flow.c:1431,27'
          Dst:             ntohl
        - Src:             'lib/meta-flow.c:1437,25'
          Dst:             ntohl
        - Src:             'lib/meta-flow.c:1456,30'
          Dst:             ntohs
        - Src:             'lib/meta-flow.c:1474,35'
          Dst:             ntohl
        - Src:             'lib/meta-flow.c:1489,9'
          Dst:             tun_metadata_write
        - Src:             'lib/meta-flow.c:1496,45'
          Dst:             ntohs
        - Src:             'lib/meta-flow.c:1496,34'
          Dst:             u16_to_ofp
        - Src:             'lib/meta-flow.c:1499,9'
          Dst:             ofputil_port_from_ofp11
        - Src:             'lib/meta-flow.c:1502,9'
          Dst:             ofputil_port_from_ofp11
        - Src:             'lib/meta-flow.c:1506,30'
          Dst:             ntohl
        - Src:             'lib/meta-flow.c:1510,26'
          Dst:             ntohl
        - Src:             'lib/meta-flow.c:1514,26'
          Dst:             ntohl
        - Src:             'lib/meta-flow.c:1518,25'
          Dst:             ntohs
        - Src:             'lib/meta-flow.c:1522,25'
          Dst:             ntohl
        - Src:             'lib/meta-flow.c:1526,26'
          Dst:             ntoh128
        - Src:             'lib/meta-flow.c:1558,41'
          Dst:             ntohl
        - Src:             'lib/meta-flow.c:1562,49'
          Dst:             ntohll
        - Src:             'lib/meta-flow.c:1562,9'
          Dst:             flow_set_xreg
        - Src:             'lib/meta-flow.c:1566,51'
          Dst:             ntoh128
        - Src:             'lib/meta-flow.c:1566,9'
          Dst:             flow_set_xxreg
        - Src:             'lib/meta-flow.c:1583,9'
          Dst:             flow_fix_vlan_tpid
        - Src:             'lib/meta-flow.c:1587,9'
          Dst:             flow_set_dl_vlan
        - Src:             'lib/meta-flow.c:1588,9'
          Dst:             flow_fix_vlan_tpid
        - Src:             'lib/meta-flow.c:1592,9'
          Dst:             flow_set_vlan_vid
        - Src:             'lib/meta-flow.c:1593,9'
          Dst:             flow_fix_vlan_tpid
        - Src:             'lib/meta-flow.c:1598,9'
          Dst:             flow_set_vlan_pcp
        - Src:             'lib/meta-flow.c:1599,9'
          Dst:             flow_fix_vlan_tpid
        - Src:             'lib/meta-flow.c:1603,9'
          Dst:             flow_set_mpls_label
        - Src:             'lib/meta-flow.c:1607,9'
          Dst:             flow_set_mpls_tc
        - Src:             'lib/meta-flow.c:1611,9'
          Dst:             flow_set_mpls_bos
        - Src:             'lib/meta-flow.c:1615,9'
          Dst:             flow_set_mpls_ttl
        - Src:             'lib/meta-flow.c:1635,42'
          Dst:             htonl
        - Src:             'lib/meta-flow.c:1666,26'
          Dst:             ntohs
        - Src:             'lib/meta-flow.c:1705,24'
          Dst:             htons
        - Src:             'lib/meta-flow.c:1710,24'
          Dst:             htons
        - Src:             'lib/meta-flow.c:1722,27'
          Dst:             htons
        - Src:             'lib/meta-flow.c:1738,9'
          Dst:             nsh_path_hdr_set_spi
        - Src:             'lib/meta-flow.c:1741,9'
          Dst:             nsh_path_hdr_set_si
        - Src:             'lib/meta-flow.c:1752,9'
          Dst:             abort
    - functionName:    flow_set_xreg
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 152
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          30
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    flow_set_xxreg
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 169
      functionLinenumberEnd: 174
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          58
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mf_format_packet_type_string
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3390
      functionLinenumberEnd: 3392
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - format_packet_type_masked
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/meta-flow.c:3391,5'
          Dst:             format_packet_type_masked
    - functionName:    mf_format_tcp_flags_string
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3376
      functionLinenumberEnd: 3379
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - short
        - short
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - format_flags_masked
        - ntohs
        - packet_tcp_flag_to_string
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/meta-flow.c:3377,61'
          Dst:             ntohs
        - Src:             'lib/meta-flow.c:3378,25'
          Dst:             ntohs
        - Src:             'lib/meta-flow.c:3378,42'
          Dst:             ntohs
        - Src:             'lib/meta-flow.c:3377,5'
          Dst:             format_flags_masked
        - Src:             'lib/meta-flow.c:3377,5'
          Dst:             packet_tcp_flag_to_string
    - functionName:    mf_format_tnl_flags_string
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3369
      functionLinenumberEnd: 3372
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - short
        - short
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - flow_tun_flag_to_string
        - format_flags_masked
        - ntohs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/meta-flow.c:3370,59'
          Dst:             ntohs
        - Src:             'lib/meta-flow.c:3371,25'
          Dst:             ntohs
        - Src:             'lib/meta-flow.c:3370,5'
          Dst:             format_flags_masked
        - Src:             'lib/meta-flow.c:3370,5'
          Dst:             flow_tun_flag_to_string
    - functionName:    mf_format_frag_string
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3352
      functionLinenumberEnd: 3365
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - char
        - char
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          84
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - ds_put_cstr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/meta-flow.c:3360,13'
          Dst:             ds_put_cstr
        - Src:             'lib/meta-flow.c:3364,5'
          Dst:             ds_put_cstr
    - functionName:    mf_format_ct_state_string
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3383
      functionLinenumberEnd: 3386
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ct_state_to_string
        - format_flags_masked
        - ntohl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/meta-flow.c:3384,54'
          Dst:             ntohl
        - Src:             'lib/meta-flow.c:3385,25'
          Dst:             ntohl
        - Src:             'lib/meta-flow.c:3384,5'
          Dst:             format_flags_masked
        - Src:             'lib/meta-flow.c:3384,5'
          Dst:             ct_state_to_string
    - functionName:    mf_format_integer_string
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3327
      functionLinenumberEnd: 3348
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          100
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - ds_put_char
        - ds_put_format
        - ds_put_hex
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/meta-flow.c:3329,9'
          Dst:             ds_put_hex
        - Src:             'lib/meta-flow.c:3334,9'
          Dst:             ovs_ignore
        - Src:             'lib/meta-flow.c:3338,9'
          Dst:             ds_put_format
        - Src:             'lib/meta-flow.c:3345,9'
          Dst:             ds_put_char
        - Src:             'lib/meta-flow.c:3346,9'
          Dst:             ds_put_hex
    - functionName:    mf_format
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3401
      functionLinenumberEnd: 3470
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         56
      ICount:          288
      EdgeCount:       67
      CyclomaticComplexity: 13
      functionsReached:
        - abort
        - ds_put_cstr
        - eth_format_masked
        - ip_format_masked
        - ipv6_format_masked
        - is_all_ones
        - is_all_zeros
        - mf_format_ct_state_string
        - mf_format_frag_string
        - mf_format_integer_string
        - mf_format_packet_type_string
        - mf_format_tcp_flags_string
        - mf_format_tnl_flags_string
        - ntohs
        - ofputil_format_port
        - ofputil_port_from_ofp11
        - u16_to_ofp
      functionUses:    7
      BranchProfiles:
        - Branch String:   'lib/meta-flow.c:3411,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/meta-flow.c:3403,13'
          Dst:             is_all_zeros
        - Src:             'lib/meta-flow.c:3404,13'
          Dst:             ds_put_cstr
        - Src:             'lib/meta-flow.c:3406,20'
          Dst:             is_all_ones
        - Src:             'lib/meta-flow.c:3415,13'
          Dst:             ofputil_port_from_ofp11
        - Src:             'lib/meta-flow.c:3416,13'
          Dst:             ofputil_format_port
        - Src:             'lib/meta-flow.c:3422,44'
          Dst:             ntohs
        - Src:             'lib/meta-flow.c:3422,33'
          Dst:             u16_to_ofp
        - Src:             'lib/meta-flow.c:3422,13'
          Dst:             ofputil_format_port
        - Src:             'lib/meta-flow.c:3428,9'
          Dst:             mf_format_integer_string
        - Src:             'lib/meta-flow.c:3432,9'
          Dst:             mf_format_ct_state_string
        - Src:             'lib/meta-flow.c:3437,9'
          Dst:             eth_format_masked
        - Src:             'lib/meta-flow.c:3441,9'
          Dst:             ip_format_masked
        - Src:             'lib/meta-flow.c:3445,9'
          Dst:             ipv6_format_masked
        - Src:             'lib/meta-flow.c:3449,9'
          Dst:             mf_format_frag_string
        - Src:             'lib/meta-flow.c:3453,9'
          Dst:             mf_format_tnl_flags_string
        - Src:             'lib/meta-flow.c:3458,9'
          Dst:             mf_format_tcp_flags_string
        - Src:             'lib/meta-flow.c:3463,9'
          Dst:             mf_format_packet_type_string
        - Src:             'lib/meta-flow.c:3468,9'
          Dst:             abort
    - functionName:    mf_parse_value
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3309
      functionLinenumberEnd: 3322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          56
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - is_all_ones
        - mf_parse
        - xasprintf
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/meta-flow.c:3313,13'
          Dst:             mf_parse
        - Src:             'lib/meta-flow.c:3318,10'
          Dst:             is_all_ones
        - Src:             'lib/meta-flow.c:3319,16'
          Dst:             xasprintf
    - functionName:    mf_parse
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3231
      functionLinenumberEnd: 3302
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          227
      EdgeCount:       27
      CyclomaticComplexity: 3
      functionsReached:
        - abort
        - mf_from_ct_state_string
        - mf_from_ethernet_string
        - mf_from_frag_string
        - mf_from_integer_string
        - mf_from_ipv4_string
        - mf_from_ipv6_string
        - mf_from_ofp_port_string
        - mf_from_ofp_port_string32
        - mf_from_packet_type_string
        - mf_from_tcp_flags_string
        - mf_from_tun_flags_string
        - mf_is_mask_valid
        - ovs_ignore
        - strcmp
        - xasprintf
      functionUses:    3
      BranchProfiles:
        - Branch String:   'lib/meta-flow.c:3240,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/meta-flow.c:3234,10'
          Dst:             strcmp
        - Src:             'lib/meta-flow.c:3243,17'
          Dst:             mf_from_integer_string
        - Src:             'lib/meta-flow.c:3248,9'
          Dst:             ovs_ignore
        - Src:             'lib/meta-flow.c:3249,17'
          Dst:             mf_from_ct_state_string
        - Src:             'lib/meta-flow.c:3253,17'
          Dst:             mf_from_ethernet_string
        - Src:             'lib/meta-flow.c:3257,17'
          Dst:             mf_from_ipv4_string
        - Src:             'lib/meta-flow.c:3261,17'
          Dst:             mf_from_ipv6_string
        - Src:             'lib/meta-flow.c:3265,17'
          Dst:             mf_from_ofp_port_string
        - Src:             'lib/meta-flow.c:3270,17'
          Dst:             mf_from_ofp_port_string32
        - Src:             'lib/meta-flow.c:3275,17'
          Dst:             mf_from_frag_string
        - Src:             'lib/meta-flow.c:3279,9'
          Dst:             ovs_ignore
        - Src:             'lib/meta-flow.c:3280,17'
          Dst:             mf_from_tun_flags_string
        - Src:             'lib/meta-flow.c:3284,9'
          Dst:             ovs_ignore
        - Src:             'lib/meta-flow.c:3285,17'
          Dst:             mf_from_tcp_flags_string
        - Src:             'lib/meta-flow.c:3289,9'
          Dst:             ovs_ignore
        - Src:             'lib/meta-flow.c:3290,17'
          Dst:             mf_from_packet_type_string
        - Src:             'lib/meta-flow.c:3295,9'
          Dst:             abort
        - Src:             'lib/meta-flow.c:3298,20'
          Dst:             mf_is_mask_valid
        - Src:             'lib/meta-flow.c:3299,17'
          Dst:             xasprintf
    - functionName:    mf_from_integer_string
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2980
      functionLinenumberEnd: 3010
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          144
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - parse_int_string
        - xasprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/meta-flow.c:2985,11'
          Dst:             parse_int_string
        - Src:             'lib/meta-flow.c:2992,15'
          Dst:             parse_int_string
        - Src:             'lib/meta-flow.c:3005,16'
          Dst:             xasprintf
        - Src:             'lib/meta-flow.c:3008,16'
          Dst:             xasprintf
    - functionName:    mf_from_ct_state_string
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3206
      functionLinenumberEnd: 3223
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          69
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - ct_state_to_string
        - htonl
        - parse_flags
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/meta-flow.c:3211,11'
          Dst:             parse_flags
        - Src:             'lib/meta-flow.c:3211,11'
          Dst:             ct_state_to_string
        - Src:             'lib/meta-flow.c:3217,15'
          Dst:             htonl
        - Src:             'lib/meta-flow.c:3219,18'
          Dst:             htonl
    - functionName:    mf_from_ethernet_string
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3053
      functionLinenumberEnd: 3073
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          136
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - ovs_ignore
        - ovs_scan
        - strlen
        - xasprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/meta-flow.c:3056,5'
          Dst:             ovs_ignore
        - Src:             'lib/meta-flow.c:3059,9'
          Dst:             ovs_scan
        - Src:             'lib/meta-flow.c:3060,17'
          Dst:             strlen
        - Src:             'lib/meta-flow.c:3066,9'
          Dst:             ovs_scan
        - Src:             'lib/meta-flow.c:3068,17'
          Dst:             strlen
        - Src:             'lib/meta-flow.c:3072,12'
          Dst:             xasprintf
    - functionName:    mf_from_ipv4_string
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3078
      functionLinenumberEnd: 3080
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ip_parse_masked
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/meta-flow.c:3079,5'
          Dst:             ovs_ignore
        - Src:             'lib/meta-flow.c:3080,12'
          Dst:             ip_parse_masked
    - functionName:    mf_from_ipv6_string
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3086
      functionLinenumberEnd: 3088
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ipv6_parse_masked
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/meta-flow.c:3087,5'
          Dst:             ovs_ignore
        - Src:             'lib/meta-flow.c:3088,12'
          Dst:             ipv6_parse_masked
    - functionName:    mf_from_ofp_port_string
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3095
      functionLinenumberEnd: 3106
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          57
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htons
        - ofp_to_u16
        - ofputil_port_from_string
        - ovs_ignore
        - xasprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/meta-flow.c:3098,5'
          Dst:             ovs_ignore
        - Src:             'lib/meta-flow.c:3100,9'
          Dst:             ofputil_port_from_string
        - Src:             'lib/meta-flow.c:3101,25'
          Dst:             ofp_to_u16
        - Src:             'lib/meta-flow.c:3101,19'
          Dst:             htons
        - Src:             'lib/meta-flow.c:3105,12'
          Dst:             xasprintf
    - functionName:    mf_from_ofp_port_string32
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3112
      functionLinenumberEnd: 3122
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofputil_port_from_string
        - ofputil_port_to_ofp11
        - ovs_ignore
        - xasprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/meta-flow.c:3115,5'
          Dst:             ovs_ignore
        - Src:             'lib/meta-flow.c:3116,9'
          Dst:             ofputil_port_from_string
        - Src:             'lib/meta-flow.c:3117,19'
          Dst:             ofputil_port_to_ofp11
        - Src:             'lib/meta-flow.c:3121,12'
          Dst:             xasprintf
    - functionName:    mf_from_frag_string
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3150
      functionLinenumberEnd: 3165
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          66
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - strcasecmp
        - xasprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/meta-flow.c:3154,14'
          Dst:             strcasecmp
        - Src:             'lib/meta-flow.c:3163,12'
          Dst:             xasprintf
    - functionName:    mf_from_tun_flags_string
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3199
      functionLinenumberEnd: 3201
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - flow_tun_flag_to_string
        - htons
        - parse_mf_flags
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/meta-flow.c:3201,27'
          Dst:             htons
        - Src:             'lib/meta-flow.c:3200,12'
          Dst:             parse_mf_flags
        - Src:             'lib/meta-flow.c:3200,12'
          Dst:             flow_tun_flag_to_string
    - functionName:    mf_from_tcp_flags_string
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3192
      functionLinenumberEnd: 3194
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htons
        - packet_tcp_flag_to_string
        - parse_mf_flags
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/meta-flow.c:3194,27'
          Dst:             htons
        - Src:             'lib/meta-flow.c:3193,12'
          Dst:             parse_mf_flags
        - Src:             'lib/meta-flow.c:3193,12'
          Dst:             packet_tcp_flag_to_string
    - functionName:    mf_from_packet_type_string
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3014
      functionLinenumberEnd: 3048
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          96
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached:
        - parse_int_string
        - xasprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/meta-flow.c:3024,11'
          Dst:             parse_int_string
        - Src:             'lib/meta-flow.c:3034,11'
          Dst:             parse_int_string
        - Src:             'lib/meta-flow.c:3047,12'
          Dst:             xasprintf
    - functionName:    mf_is_mask_valid
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 424
      functionLinenumberEnd: 435
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          58
      EdgeCount:       19
      CyclomaticComplexity: 11
      functionsReached:
        - abort
        - is_all_ones
        - is_all_zeros
      functionUses:    4
      BranchProfiles:
        - Branch String:   'lib/meta-flow.c:425,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/meta-flow.c:427,17'
          Dst:             is_all_zeros
        - Src:             'lib/meta-flow.c:428,17'
          Dst:             is_all_ones
        - Src:             'lib/meta-flow.c:434,5'
          Dst:             abort
    - functionName:    mf_check_dst
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2957
      functionLinenumberEnd: 2965
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          73
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - mf_check__
        - vlog_rate_limit
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/meta-flow.c:2958,17'
          Dst:             mf_check__
        - Src:             'lib/meta-flow.c:2960,9'
          Dst:             vlog_rate_limit
    - functionName:    mf_check__
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2838
      functionLinenumberEnd: 2861
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         42
      ICount:          239
      EdgeCount:       53
      CyclomaticComplexity: 13
      functionsReached:
        - mf_are_match_prereqs_ok
        - vlog_rate_limit
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/meta-flow.c:2840,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/meta-flow.c:2843,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/meta-flow.c:2846,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/meta-flow.c:2850,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/meta-flow.c:2854,26'
          Dst:             mf_are_match_prereqs_ok
        - Src:             'lib/meta-flow.c:2855,9'
          Dst:             vlog_rate_limit
    - functionName:    mf_are_match_prereqs_ok
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 504
      functionLinenumberEnd: 505
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mf_are_prereqs_ok__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/meta-flow.c:505,12'
          Dst:             mf_are_prereqs_ok__
    - functionName:    mf_are_prereqs_ok__
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 444
      functionLinenumberEnd: 489
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         41
      ICount:          277
      EdgeCount:       45
      CyclomaticComplexity: 6
      functionsReached:
        - abort
        - eth_type_mpls
        - get_dl_type
        - htons
        - is_ct_valid
        - is_ethernet
        - is_icmpv4
        - is_icmpv6
        - is_ip_any
        - is_nd
        - is_sctp
        - is_tcp
        - is_udp
        - is_vlan
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/meta-flow.c:447,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/meta-flow.c:445,24'
          Dst:             get_dl_type
        - Src:             'lib/meta-flow.c:451,16'
          Dst:             is_ethernet
        - Src:             'lib/meta-flow.c:453,28'
          Dst:             htons
        - Src:             'lib/meta-flow.c:454,28'
          Dst:             htons
        - Src:             'lib/meta-flow.c:456,27'
          Dst:             htons
        - Src:             'lib/meta-flow.c:458,27'
          Dst:             htons
        - Src:             'lib/meta-flow.c:460,16'
          Dst:             is_vlan
        - Src:             'lib/meta-flow.c:462,16'
          Dst:             eth_type_mpls
        - Src:             'lib/meta-flow.c:464,16'
          Dst:             is_ip_any
        - Src:             'lib/meta-flow.c:466,27'
          Dst:             htons
        - Src:             'lib/meta-flow.c:468,16'
          Dst:             is_ct_valid
        - Src:             'lib/meta-flow.c:471,16'
          Dst:             is_tcp
        - Src:             'lib/meta-flow.c:473,16'
          Dst:             is_udp
        - Src:             'lib/meta-flow.c:475,16'
          Dst:             is_sctp
        - Src:             'lib/meta-flow.c:477,16'
          Dst:             is_icmpv4
        - Src:             'lib/meta-flow.c:479,16'
          Dst:             is_icmpv6
        - Src:             'lib/meta-flow.c:481,16'
          Dst:             is_nd
        - Src:             'lib/meta-flow.c:483,16'
          Dst:             is_nd
        - Src:             'lib/meta-flow.c:483,51'
          Dst:             htons
        - Src:             'lib/meta-flow.c:485,16'
          Dst:             is_nd
        - Src:             'lib/meta-flow.c:485,51'
          Dst:             htons
        - Src:             'lib/meta-flow.c:488,5'
          Dst:             abort
    - functionName:    mf_check_src
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2948
      functionLinenumberEnd: 2949
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mf_check__
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/meta-flow.c:2949,12'
          Dst:             mf_check__
    - functionName:    mf_subfield_swap
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2916
      functionLinenumberEnd: 2941
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          124
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - bitwise_copy
        - mf_are_prereqs_ok
        - mf_get_value
        - mf_set_flow_value
        - ovs_ignore
        - unwildcard_subfield
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/meta-flow.c:2917,5'
          Dst:             ovs_ignore
        - Src:             'lib/meta-flow.c:2918,9'
          Dst:             mf_are_prereqs_ok
        - Src:             'lib/meta-flow.c:2919,12'
          Dst:             mf_are_prereqs_ok
        - Src:             'lib/meta-flow.c:2920,9'
          Dst:             unwildcard_subfield
        - Src:             'lib/meta-flow.c:2921,9'
          Dst:             unwildcard_subfield
        - Src:             'lib/meta-flow.c:2925,9'
          Dst:             mf_get_value
        - Src:             'lib/meta-flow.c:2926,9'
          Dst:             mf_get_value
        - Src:             'lib/meta-flow.c:2930,9'
          Dst:             bitwise_copy
        - Src:             'lib/meta-flow.c:2933,9'
          Dst:             mf_set_flow_value
        - Src:             'lib/meta-flow.c:2936,9'
          Dst:             bitwise_copy
        - Src:             'lib/meta-flow.c:2939,9'
          Dst:             mf_set_flow_value
    - functionName:    mf_are_prereqs_ok
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 496
      functionLinenumberEnd: 497
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mf_are_prereqs_ok__
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/meta-flow.c:497,12'
          Dst:             mf_are_prereqs_ok__
    - functionName:    unwildcard_subfield
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2866
      functionLinenumberEnd: 2874
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - bitwise_one
        - mf_mask_field_masked
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/meta-flow.c:2871,9'
          Dst:             bitwise_one
        - Src:             'lib/meta-flow.c:2872,9'
          Dst:             mf_mask_field_masked
    - functionName:    mf_mask_field_masked
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1342
      functionLinenumberEnd: 1359
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          85
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - htons
        - mf_get_value
        - mf_set_flow_value
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/meta-flow.c:1348,26'
          Dst:             htons
        - Src:             'lib/meta-flow.c:1354,5'
          Dst:             mf_get_value
        - Src:             'lib/meta-flow.c:1358,5'
          Dst:             mf_set_flow_value
    - functionName:    mf_subfield_copy
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2888
      functionLinenumberEnd: 2906
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          107
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - bitwise_copy
        - mf_are_prereqs_ok
        - mf_get_value
        - mf_is_tunnel_field
        - mf_set_flow_value
        - ovs_ignore
        - unwildcard_subfield
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/meta-flow.c:2889,5'
          Dst:             ovs_ignore
        - Src:             'lib/meta-flow.c:2890,9'
          Dst:             mf_are_prereqs_ok
        - Src:             'lib/meta-flow.c:2891,12'
          Dst:             mf_are_prereqs_ok
        - Src:             'lib/meta-flow.c:2892,9'
          Dst:             unwildcard_subfield
        - Src:             'lib/meta-flow.c:2893,14'
          Dst:             mf_is_tunnel_field
        - Src:             'lib/meta-flow.c:2894,13'
          Dst:             unwildcard_subfield
        - Src:             'lib/meta-flow.c:2899,9'
          Dst:             mf_get_value
        - Src:             'lib/meta-flow.c:2900,9'
          Dst:             mf_get_value
        - Src:             'lib/meta-flow.c:2901,9'
          Dst:             bitwise_copy
        - Src:             'lib/meta-flow.c:2904,9'
          Dst:             mf_set_flow_value
    - functionName:    mf_is_tunnel_field
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1788
      functionLinenumberEnd: 1893
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         220
      ICount:          880
      EdgeCount:       438
      CyclomaticComplexity: 220
      functionsReached:
        - abort
      functionUses:    3
      BranchProfiles:
        - Branch String:   'lib/meta-flow.c:1789,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/meta-flow.c:1891,9'
          Dst:             abort
    - functionName:    mf_is_set
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2140
      functionLinenumberEnd: 2150
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          57
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - is_all_zeros
        - mf_get_value
        - mf_is_tun_metadata
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/meta-flow.c:2141,10'
          Dst:             mf_is_tun_metadata
        - Src:             'lib/meta-flow.c:2144,9'
          Dst:             mf_get_value
        - Src:             'lib/meta-flow.c:2145,17'
          Dst:             is_all_zeros
    - functionName:    mf_is_pipeline_field
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2026
      functionLinenumberEnd: 2131
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         220
      ICount:          880
      EdgeCount:       438
      CyclomaticComplexity: 220
      functionsReached:
        - abort
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/meta-flow.c:2027,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/meta-flow.c:2129,9'
          Dst:             abort
    - functionName:    mf_is_frozen_metadata
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2013
      functionLinenumberEnd: 2022
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          64
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mf_is_any_metadata
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1904
      functionLinenumberEnd: 2009
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         220
      ICount:          880
      EdgeCount:       438
      CyclomaticComplexity: 220
      functionsReached:
        - abort
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib/meta-flow.c:1905,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/meta-flow.c:2007,9'
          Dst:             abort
    - functionName:    apply_mask
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1761
      functionLinenumberEnd: 1767
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         5
      ICount:          60
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mf_set_flow_value_masked
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1777
      functionLinenumberEnd: 1784
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - apply_mask
        - mf_get_value
        - mf_set_flow_value
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/meta-flow.c:1780,5'
          Dst:             mf_get_value
        - Src:             'lib/meta-flow.c:1781,5'
          Dst:             apply_mask
        - Src:             'lib/meta-flow.c:1783,5'
          Dst:             mf_set_flow_value
    - functionName:    field_len
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1371
      functionLinenumberEnd: 1390
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          76
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mf_field_len
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1403
      functionLinenumberEnd: 1417
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          93
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - field_len
        - is_all_ones
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/meta-flow.c:1405,31'
          Dst:             is_all_ones
        - Src:             'lib/meta-flow.c:1407,11'
          Dst:             field_len
        - Src:             'lib/meta-flow.c:1409,20'
          Dst:             field_len
    - functionName:    mf_mask_field
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1365
      functionLinenumberEnd: 1367
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mf_mask_field_masked
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/meta-flow.c:1366,5'
          Dst:             mf_mask_field_masked
    - functionName:    mf_is_value_valid
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 520
      functionLinenumberEnd: 659
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         225
      ICount:          1061
      EdgeCount:       449
      CyclomaticComplexity: 226
      functionsReached:
        - abort
        - htonl
        - htons
        - ofputil_port_from_ofp11
      functionUses:    3
      BranchProfiles:
        - Branch String:   'lib/meta-flow.c:521,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/meta-flow.c:594,17'
          Dst:             ofputil_port_from_ofp11
        - Src:             'lib/meta-flow.c:606,33'
          Dst:             htons
        - Src:             'lib/meta-flow.c:609,32'
          Dst:             htons
        - Src:             'lib/meta-flow.c:612,32'
          Dst:             htons
        - Src:             'lib/meta-flow.c:614,32'
          Dst:             htons
        - Src:             'lib/meta-flow.c:621,33'
          Dst:             htonl
        - Src:             'lib/meta-flow.c:624,33'
          Dst:             htonl
        - Src:             'lib/meta-flow.c:633,33'
          Dst:             htons
        - Src:             'lib/meta-flow.c:636,33'
          Dst:             htonl
        - Src:             'lib/meta-flow.c:647,32'
          Dst:             htonl
        - Src:             'lib/meta-flow.c:657,9'
          Dst:             abort
    - functionName:    eth_addr_is_zero
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 246
      functionLinenumberEnd: 247
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          25
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_u128_is_zero
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 488
      functionLinenumberEnd: 489
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ipv6_mask_is_any
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1193
      functionLinenumberEnd: 1194
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ipv6_addr_equals
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:1194,12'
          Dst:             ipv6_addr_equals
    - functionName:    mf_is_all_wild
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 206
      functionLinenumberEnd: 405
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         230
      ICount:          1621
      EdgeCount:       458
      CyclomaticComplexity: 230
      functionsReached:
        - abort
        - eth_addr_is_zero
        - flow_get_xreg
        - flow_get_xxreg
        - htonl
        - htons
        - ipv6_mask_is_any
        - ovs_u128_is_zero
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/meta-flow.c:207,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/meta-flow.c:221,16'
          Dst:             ipv6_mask_is_any
        - Src:             'lib/meta-flow.c:223,16'
          Dst:             ipv6_mask_is_any
        - Src:             'lib/meta-flow.c:263,16'
          Dst:             ovs_u128_is_zero
        - Src:             'lib/meta-flow.c:275,16'
          Dst:             ipv6_mask_is_any
        - Src:             'lib/meta-flow.c:277,16'
          Dst:             ipv6_mask_is_any
        - Src:             'lib/meta-flow.c:281,17'
          Dst:             flow_get_xreg
        - Src:             'lib/meta-flow.c:283,26'
          Dst:             flow_get_xxreg
        - Src:             'lib/meta-flow.c:284,16'
          Dst:             ovs_u128_is_zero
        - Src:             'lib/meta-flow.c:290,16'
          Dst:             eth_addr_is_zero
        - Src:             'lib/meta-flow.c:292,16'
          Dst:             eth_addr_is_zero
        - Src:             'lib/meta-flow.c:298,16'
          Dst:             eth_addr_is_zero
        - Src:             'lib/meta-flow.c:302,16'
          Dst:             eth_addr_is_zero
        - Src:             'lib/meta-flow.c:307,43'
          Dst:             htons
        - Src:             'lib/meta-flow.c:309,43'
          Dst:             htons
        - Src:             'lib/meta-flow.c:312,43'
          Dst:             htons
        - Src:             'lib/meta-flow.c:315,42'
          Dst:             htonl
        - Src:             'lib/meta-flow.c:317,42'
          Dst:             htonl
        - Src:             'lib/meta-flow.c:319,42'
          Dst:             htonl
        - Src:             'lib/meta-flow.c:321,42'
          Dst:             htonl
        - Src:             'lib/meta-flow.c:329,16'
          Dst:             ipv6_mask_is_any
        - Src:             'lib/meta-flow.c:331,16'
          Dst:             ipv6_mask_is_any
        - Src:             'lib/meta-flow.c:347,16'
          Dst:             ipv6_mask_is_any
        - Src:             'lib/meta-flow.c:388,43'
          Dst:             htonl
        - Src:             'lib/meta-flow.c:390,43'
          Dst:             htonl
        - Src:             'lib/meta-flow.c:403,9'
          Dst:             abort
    - functionName:    mf_subvalue_format
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 195
      functionLinenumberEnd: 197
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_hex
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/meta-flow.c:196,5'
          Dst:             ds_put_hex
    - functionName:    mf_subvalue_shift
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 174
      functionLinenumberEnd: 190
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          86
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - bitwise_copy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/meta-flow.c:180,13'
          Dst:             bitwise_copy
        - Src:             'lib/meta-flow.c:184,13'
          Dst:             bitwise_copy
    - functionName:    mf_subvalue_width
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 166
      functionLinenumberEnd: 167
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - bitwise_rscan
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/meta-flow.c:167,16'
          Dst:             bitwise_rscan
    - functionName:    mf_subvalue_intersect
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 144
      functionLinenumberEnd: 160
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          104
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mf_from_name_len
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 98
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - nxm_init
        - shash_find_len
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/meta-flow.c:95,5'
          Dst:             nxm_init
        - Src:             'lib/meta-flow.c:97,31'
          Dst:             shash_find_len
    - functionName:    nxm_init
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 121
      functionLinenumberEnd: 124
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nxm_do_init
        - pthread_once
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/meta-flow.c:123,5'
          Dst:             pthread_once
        - Src:             'lib/meta-flow.c:123,5'
          Dst:             nxm_do_init
    - functionName:    mf_from_name
      functionSourceFile: '/src/openvswitch/lib/meta-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 85
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nxm_init
        - shash_find_data
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/meta-flow.c:86,5'
          Dst:             nxm_init
        - Src:             'lib/meta-flow.c:87,12'
          Dst:             shash_find_data
    - functionName:    hmap_next__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 401
      functionLinenumberEnd: 410
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          51
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_insert_fast
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 289
      functionLinenumberEnd: 295
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          38
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_rot
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 32
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhash_add__
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hash_rot
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:71,12'
          Dst:             hash_rot
    - functionName:    mhash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_rot
        - mhash_add__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:78,12'
          Dst:             mhash_add__
        - Src:             'lib/hash.h:79,12'
          Dst:             hash_rot
    - functionName:    mhash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 108
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_add
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:109,12'
          Dst:             mhash_add
    - functionName:    hash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:119,12'
          Dst:             mhash_finish
    - functionName:    hash_2words
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 153
      functionLinenumberEnd: 154
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_add
        - hash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:154,33'
          Dst:             hash_add
        - Src:             'lib/hash.h:154,24'
          Dst:             hash_add
        - Src:             'lib/hash.h:154,12'
          Dst:             hash_finish
    - functionName:    hmap_next_with_hash__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 348
      functionLinenumberEnd: 352
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          40
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    name_needs_quotes
      functionSourceFile: '/src/openvswitch/lib/namemap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 110
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          75
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - __ctype_b_loc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/namemap.c:111,10'
          Dst:             __ctype_b_loc
        - Src:             'lib/namemap.c:116,14'
          Dst:             __ctype_b_loc
    - functionName:    namemap_put_name
      functionSourceFile: '/src/openvswitch/lib/namemap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 126
      functionLinenumberEnd: 132
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_cstr
        - json_string_escape
        - name_needs_quotes
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/namemap.c:127,9'
          Dst:             name_needs_quotes
        - Src:             'lib/namemap.c:128,9'
          Dst:             json_string_escape
        - Src:             'lib/namemap.c:130,9'
          Dst:             ds_put_cstr
    - functionName:    hmap_remove
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 317
      functionLinenumberEnd: 324
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          48
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_next
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 429
      functionLinenumberEnd: 432
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_next__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:432,15'
          Dst:             hmap_next__
    - functionName:    hmap_first
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 416
      functionLinenumberEnd: 417
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:417,12'
          Dst:             hmap_next__
    - functionName:    namemap_destroy
      functionSourceFile: '/src/openvswitch/lib/namemap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 91
      functionLinenumberEnd: 104
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          86
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_destroy
        - hmap_first
        - hmap_next
        - hmap_remove
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/namemap.c:95,9'
          Dst:             hmap_first
        - Src:             'lib/namemap.c:95,9'
          Dst:             hmap_next
        - Src:             'lib/namemap.c:96,13'
          Dst:             hmap_remove
        - Src:             'lib/namemap.c:97,13'
          Dst:             hmap_remove
        - Src:             'lib/namemap.c:101,9'
          Dst:             hmap_destroy
        - Src:             'lib/namemap.c:102,9'
          Dst:             hmap_destroy
    - functionName:    hmap_insert_at
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 306
      functionLinenumberEnd: 311
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_expand_at
        - hmap_insert_fast
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:307,5'
          Dst:             hmap_insert_fast
        - Src:             './include/openvswitch/hmap.h:309,9'
          Dst:             hmap_expand_at
    - functionName:    namemap_put
      functionSourceFile: '/src/openvswitch/lib/namemap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 61
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          92
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - hash_int
        - hash_string
        - hmap_insert_at
        - namemap_find_by_name
        - namemap_find_by_number
        - xmalloc
        - xstrdup
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/namemap.c:65,12'
          Dst:             namemap_find_by_name
        - Src:             'lib/namemap.c:74,12'
          Dst:             namemap_find_by_number
        - Src:             'lib/namemap.c:81,12'
          Dst:             xmalloc
        - Src:             'lib/namemap.c:82,5'
          Dst:             hash_int
        - Src:             'lib/namemap.c:82,5'
          Dst:             hmap_insert_at
        - Src:             'lib/namemap.c:83,5'
          Dst:             hash_string
        - Src:             'lib/namemap.c:83,5'
          Dst:             hmap_insert_at
        - Src:             'lib/namemap.c:85,18'
          Dst:             xstrdup
    - functionName:    namemap_find_by_name
      functionSourceFile: '/src/openvswitch/lib/namemap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33
      functionLinenumberEnd: 43
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          73
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hash_string
        - hmap_first_with_hash
        - hmap_next_with_hash
        - strcmp
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/namemap.c:36,5'
          Dst:             hash_string
        - Src:             'lib/namemap.c:36,5'
          Dst:             hmap_first_with_hash
        - Src:             'lib/namemap.c:38,14'
          Dst:             strcmp
        - Src:             'lib/namemap.c:36,5'
          Dst:             hmap_next_with_hash
    - functionName:    namemap_find_by_number
      functionSourceFile: '/src/openvswitch/lib/namemap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 57
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          72
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hash_int
        - hmap_first_in_bucket
        - hmap_next_in_bucket
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/namemap.c:50,5'
          Dst:             hash_int
        - Src:             'lib/namemap.c:50,5'
          Dst:             hmap_first_in_bucket
        - Src:             'lib/namemap.c:50,5'
          Dst:             hmap_next_in_bucket
    - functionName:    hash_int
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 408
      functionLinenumberEnd: 409
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_2words
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:409,12'
          Dst:             hash_2words
    - functionName:    hash_string
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 403
      functionLinenumberEnd: 404
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_bytes
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:404,26'
          Dst:             strlen
        - Src:             'lib/hash.h:404,12'
          Dst:             hash_bytes
    - functionName:    hmap_first_in_bucket
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 367
      functionLinenumberEnd: 368
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_next_in_bucket
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 381
      functionLinenumberEnd: 382
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_first_with_hash
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 360
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next_with_hash__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:360,12'
          Dst:             hmap_next_with_hash__
    - functionName:    hmap_next_with_hash
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 395
      functionLinenumberEnd: 396
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next_with_hash__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:396,12'
          Dst:             hmap_next_with_hash__
    - functionName:    namemap_init
      functionSourceFile: '/src/openvswitch/lib/namemap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26
      functionLinenumberEnd: 29
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_init
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/namemap.c:27,5'
          Dst:             hmap_init
        - Src:             'lib/namemap.c:28,5'
          Dst:             hmap_init
    - functionName:    init_this_module_netdev_dummy
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-dummy.c:50,1'
          Dst:             vlog_insert_module
    - functionName:    netdev_dummy_reconfigure
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1117
      functionLinenumberEnd: 1149
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          133
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - netdev_dummy_cast
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - xrealloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-dummy.c:1118,35'
          Dst:             netdev_dummy_cast
        - Src:             'lib/netdev-dummy.c:1122,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-dummy.c:1130,29'
          Dst:             xrealloc
        - Src:             'lib/netdev-dummy.c:1133,29'
          Dst:             xrealloc
        - Src:             'lib/netdev-dummy.c:1148,5'
          Dst:             ovs_mutex_unlock
    - functionName:    netdev_dummy_cast
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 221
      functionLinenumberEnd: 223
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - is_dummy_netdev_class
        - netdev_get_class
        - ovs_ignore
      functionUses:    28
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-dummy.c:222,38'
          Dst:             netdev_get_class
        - Src:             'lib/netdev-dummy.c:222,16'
          Dst:             is_dummy_netdev_class
        - Src:             'lib/netdev-dummy.c:222,5'
          Dst:             ovs_ignore
    - functionName:    is_dummy_netdev_class
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 215
      functionLinenumberEnd: 216
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_dummy_construct
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 729
      functionLinenumberEnd: 771
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          141
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - atomic_count_inc
        - dummy_packet_conn_init
        - netdev_dummy_cast
        - ovs_list_init
        - ovs_list_push_back
        - ovs_mutex_init
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovs_strlcpy
        - xcalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-dummy.c:731,35'
          Dst:             netdev_dummy_cast
        - Src:             'lib/netdev-dummy.c:734,9'
          Dst:             atomic_count_inc
        - Src:             'lib/netdev-dummy.c:736,5'
          Dst:             ovs_mutex_init
        - Src:             'lib/netdev-dummy.c:737,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-dummy.c:753,5'
          Dst:             ovs_strlcpy
        - Src:             'lib/netdev-dummy.c:755,5'
          Dst:             ovs_strlcpy
        - Src:             'lib/netdev-dummy.c:758,25'
          Dst:             xcalloc
        - Src:             'lib/netdev-dummy.c:759,25'
          Dst:             xcalloc
        - Src:             'lib/netdev-dummy.c:761,5'
          Dst:             dummy_packet_conn_init
        - Src:             'lib/netdev-dummy.c:763,5'
          Dst:             ovs_list_init
        - Src:             'lib/netdev-dummy.c:764,5'
          Dst:             ovs_list_init
        - Src:             'lib/netdev-dummy.c:765,5'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/netdev-dummy.c:767,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-dummy.c:768,5'
          Dst:             ovs_list_push_back
        - Src:             'lib/netdev-dummy.c:769,5'
          Dst:             ovs_mutex_unlock
    - functionName:    atomic_count_inc
      functionSourceFile: '/src/openvswitch/lib/ovs-atomic.h'
      linkageType:     InternalLinkage
      functionLinenumber: 451
      functionLinenumberEnd: 456
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dummy_packet_conn_init
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 357
      functionLinenumberEnd: 360
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_list_init
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_list_push_back
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 204
      functionLinenumberEnd: 206
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_list_insert
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/list.h:205,5'
          Dst:             ovs_list_insert
    - functionName:    ovs_list_insert
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 169
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_batch_add
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 889
      functionLinenumberEnd: 894
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_batch_grow
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:891,9'
          Dst:             dp_packet_batch_grow
    - functionName:    dp_packet_set_tso_segsz
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 804
      functionLinenumberEnd: 806
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_l4_checksum_set_unknown
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1354
      functionLinenumberEnd: 1356
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_l4_checksum_set_partial
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1342
      functionLinenumberEnd: 1344
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_l4_checksum_set_bad
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1324
      functionLinenumberEnd: 1327
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_l4_checksum_set_good
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1310
      functionLinenumberEnd: 1313
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_ip_checksum_set_unknown
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1185
      functionLinenumberEnd: 1187
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_ip_checksum_set_partial
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1173
      functionLinenumberEnd: 1175
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_ip_checksum_set_bad
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1156
      functionLinenumberEnd: 1159
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_ip_checksum_set_good
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1142
      functionLinenumberEnd: 1145
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_rxq_dummy_cast
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 228
      functionLinenumberEnd: 230
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - is_dummy_netdev_class
        - netdev_get_class
        - ovs_ignore
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-dummy.c:229,38'
          Dst:             netdev_get_class
        - Src:             'lib/netdev-dummy.c:229,16'
          Dst:             is_dummy_netdev_class
        - Src:             'lib/netdev-dummy.c:229,5'
          Dst:             ovs_ignore
    - functionName:    netdev_dummy_init_queue_stats
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1627
      functionLinenumberEnd: 1634
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    eth_addr_compare_3way
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 261
      functionLinenumberEnd: 262
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:262,12'
          Dst:             memcmp
    - functionName:    eth_addr_equals
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 272
      functionLinenumberEnd: 273
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - eth_addr_compare_3way
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:273,13'
          Dst:             eth_addr_compare_3way
    - functionName:    dp_packet_batch_reset
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 872
      functionLinenumberEnd: 875
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_16aligned_be32
      functionSourceFile: '/src/openvswitch/lib/unaligned.h'
      linkageType:     InternalLinkage
      functionLinenumber: 246
      functionLinenumberEnd: 250
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    put_unaligned_be16
      functionSourceFile: '/src/openvswitch/lib/unaligned.h'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 89
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - unaligned_be16
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/unaligned.h:89,1'
          Dst:             unaligned_be16
    - functionName:    unaligned_be16
      functionSourceFile: '/src/openvswitch/lib/unaligned.h'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 89
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_list_size
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 307
      functionLinenumberEnd: 314
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         5
      ICount:          34
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dummy_packet_stream_send
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 265
      functionLinenumberEnd: 277
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_clone_data_with_headroom
        - dp_packet_push_uninit
        - htons
        - ovs_list_push_back
        - ovs_list_size
        - put_unaligned_be16
        - xmalloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-dummy.c:266,9'
          Dst:             ovs_list_size
        - Src:             'lib/netdev-dummy.c:270,13'
          Dst:             dp_packet_clone_data_with_headroom
        - Src:             'lib/netdev-dummy.c:271,28'
          Dst:             dp_packet_push_uninit
        - Src:             'lib/netdev-dummy.c:271,57'
          Dst:             htons
        - Src:             'lib/netdev-dummy.c:271,9'
          Dst:             put_unaligned_be16
        - Src:             'lib/netdev-dummy.c:273,16'
          Dst:             xmalloc
        - Src:             'lib/netdev-dummy.c:275,9'
          Dst:             ovs_list_push_back
    - functionName:    dp_packet_delete_batch
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1008
      functionLinenumberEnd: 1017
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          65
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - dp_packet_batch_reset
        - dp_packet_batch_size
        - dp_packet_delete
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:1012,9'
          Dst:             dp_packet_batch_size
        - Src:             'lib/dp-packet.h:1013,13'
          Dst:             dp_packet_delete
        - Src:             'lib/dp-packet.h:1015,9'
          Dst:             dp_packet_batch_reset
    - functionName:    dp_packet_batch_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 910
      functionLinenumberEnd: 911
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_delete
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 271
      functionLinenumberEnd: 290
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          54
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - dp_packet_uninit
        - free_afxdp_buf
        - free_dpdk_buf
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:274,13'
          Dst:             free_dpdk_buf
        - Src:             'lib/dp-packet.h:279,13'
          Dst:             free_afxdp_buf
        - Src:             'lib/dp-packet.h:283,9'
          Dst:             dp_packet_uninit
    - functionName:    free_dpdk_buf
      functionSourceFile: '/src/openvswitch/lib/netdev-dpdk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 76
      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:    free_afxdp_buf
      functionSourceFile: '/src/openvswitch/lib/netdev-afxdp.h'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 84
      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:    in6_addr_get_mapped_ipv4
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1231
      functionLinenumberEnd: 1239
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          75
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - get_16aligned_be32
        - htonl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:1234,9'
          Dst:             htonl
        - Src:             'lib/packets.h:1235,16'
          Dst:             get_16aligned_be32
    - functionName:    dummy_packet_conn_send
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 641
      functionLinenumberEnd: 665
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          102
      EdgeCount:       17
      CyclomaticComplexity: 3
      functionsReached:
        - dummy_packet_stream_send
        - dummy_packet_stream_wait
        - pstream_wait
        - reconnect_is_connected
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/netdev-dummy.c:644,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/netdev-dummy.c:649,13'
          Dst:             dummy_packet_stream_send
        - Src:             'lib/netdev-dummy.c:650,13'
          Dst:             pstream_wait
        - Src:             'lib/netdev-dummy.c:655,13'
          Dst:             reconnect_is_connected
        - Src:             'lib/netdev-dummy.c:656,13'
          Dst:             dummy_packet_stream_send
        - Src:             'lib/netdev-dummy.c:657,13'
          Dst:             dummy_packet_stream_wait
    - functionName:    dummy_packet_stream_wait
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 255
      functionLinenumberEnd: 261
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_list_is_empty
        - stream_recv_wait
        - stream_run_wait
        - stream_send_wait
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-dummy.c:256,5'
          Dst:             stream_run_wait
        - Src:             'lib/netdev-dummy.c:257,10'
          Dst:             ovs_list_is_empty
        - Src:             'lib/netdev-dummy.c:258,9'
          Dst:             stream_send_wait
        - Src:             'lib/netdev-dummy.c:260,5'
          Dst:             stream_recv_wait
    - functionName:    ovs_list_is_empty
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 320
      functionLinenumberEnd: 321
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_inner_l4_checksum_partial
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1406
      functionLinenumberEnd: 1408
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_inner_ip_checksum_partial
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1207
      functionLinenumberEnd: 1209
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_l4_checksum_partial
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1333
      functionLinenumberEnd: 1335
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_ip_checksum_partial
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1165
      functionLinenumberEnd: 1167
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_tunnel_geneve
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1094
      functionLinenumberEnd: 1096
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_tunnel_vxlan
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1108
      functionLinenumberEnd: 1110
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_tunnel
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1135
      functionLinenumberEnd: 1136
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_is_eth
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 397
      functionLinenumberEnd: 398
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:398,30'
          Dst:             htonl
    - functionName:    dp_packet_get_tso_segsz
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 798
      functionLinenumberEnd: 799
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dummy_packet_stream_create
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 244
      functionLinenumberEnd: 250
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dummy_packet_stream_init
        - xzalloc_cacheline
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-dummy.c:247,9'
          Dst:             xzalloc_cacheline
        - Src:             'lib/netdev-dummy.c:248,5'
          Dst:             dummy_packet_stream_init
    - functionName:    dummy_packet_stream_init
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 235
      functionLinenumberEnd: 240
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_init
        - ovs_list_init
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-dummy.c:238,5'
          Dst:             dp_packet_init
        - Src:             'lib/netdev-dummy.c:239,5'
          Dst:             ovs_list_init
    - functionName:    netdev_request_reconfigure
      functionSourceFile: '/src/openvswitch/lib/netdev-provider.h'
      linkageType:     InternalLinkage
      functionLinenumber: 128
      functionLinenumberEnd: 130
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - seq_change
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-provider.h:129,5'
          Dst:             seq_change
    - functionName:    dummy_packet_conn_set_config
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 420
      functionLinenumberEnd: 494
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         47
      ICount:          265
      EdgeCount:       56
      CyclomaticComplexity: 11
      functionsReached:
        - dummy_packet_conn_close
        - dummy_packet_stream_create
        - ovs_strerror
        - pstream_get_name
        - pstream_open
        - reconnect_connect_failed
        - reconnect_connected
        - reconnect_connecting
        - reconnect_create
        - reconnect_enable
        - reconnect_set_backoff
        - reconnect_set_name
        - reconnect_set_passive
        - reconnect_set_probe_interval
        - smap_get
        - strcmp
        - stream_close
        - stream_get_name
        - stream_open
        - time_msec
        - vlog
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/netdev-dummy.c:430,5'
          Branch Sides:    []
        - Branch String:   'lib/netdev-dummy.c:478,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/netdev-dummy.c:421,27'
          Dst:             smap_get
        - Src:             'lib/netdev-dummy.c:422,26'
          Dst:             smap_get
        - Src:             'lib/netdev-dummy.c:425,10'
          Dst:             vlog
        - Src:             'lib/netdev-dummy.c:433,21'
          Dst:             pstream_get_name
        - Src:             'lib/netdev-dummy.c:433,14'
          Dst:             strcmp
        - Src:             'lib/netdev-dummy.c:436,9'
          Dst:             dummy_packet_conn_close
        - Src:             'lib/netdev-dummy.c:440,21'
          Dst:             stream_get_name
        - Src:             'lib/netdev-dummy.c:440,14'
          Dst:             strcmp
        - Src:             'lib/netdev-dummy.c:443,9'
          Dst:             dummy_packet_conn_close
        - Src:             'lib/netdev-dummy.c:453,17'
          Dst:             pstream_open
        - Src:             'lib/netdev-dummy.c:455,13'
          Dst:             ovs_strerror
        - Src:             'lib/netdev-dummy.c:455,13'
          Dst:             vlog
        - Src:             'lib/netdev-dummy.c:466,38'
          Dst:             time_msec
        - Src:             'lib/netdev-dummy.c:466,21'
          Dst:             reconnect_create
        - Src:             'lib/netdev-dummy.c:467,9'
          Dst:             reconnect_set_name
        - Src:             'lib/netdev-dummy.c:468,49'
          Dst:             time_msec
        - Src:             'lib/netdev-dummy.c:468,9'
          Dst:             reconnect_set_passive
        - Src:             'lib/netdev-dummy.c:469,37'
          Dst:             time_msec
        - Src:             'lib/netdev-dummy.c:469,9'
          Dst:             reconnect_enable
        - Src:             'lib/netdev-dummy.c:470,9'
          Dst:             reconnect_set_backoff
        - Src:             'lib/netdev-dummy.c:471,9'
          Dst:             reconnect_set_probe_interval
        - Src:             'lib/netdev-dummy.c:475,17'
          Dst:             stream_open
        - Src:             'lib/netdev-dummy.c:476,31'
          Dst:             dummy_packet_stream_create
        - Src:             'lib/netdev-dummy.c:480,44'
          Dst:             time_msec
        - Src:             'lib/netdev-dummy.c:480,13'
          Dst:             reconnect_connected
        - Src:             'lib/netdev-dummy.c:484,45'
          Dst:             time_msec
        - Src:             'lib/netdev-dummy.c:484,13'
          Dst:             reconnect_connecting
        - Src:             'lib/netdev-dummy.c:488,49'
          Dst:             time_msec
        - Src:             'lib/netdev-dummy.c:488,13'
          Dst:             reconnect_connect_failed
        - Src:             'lib/netdev-dummy.c:489,13'
          Dst:             stream_close
    - functionName:    dummy_packet_conn_close
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 383
      functionLinenumberEnd: 415
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          116
      EdgeCount:       13
      CyclomaticComplexity: 2
      functionsReached:
        - dummy_packet_stream_close
        - free_cacheline
        - pstream_close
        - reconnect_destroy
      functionUses:    3
      BranchProfiles:
        - Branch String:   'lib/netdev-dummy.c:388,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/netdev-dummy.c:390,9'
          Dst:             pstream_close
        - Src:             'lib/netdev-dummy.c:392,13'
          Dst:             dummy_packet_stream_close
        - Src:             'lib/netdev-dummy.c:393,13'
          Dst:             free_cacheline
        - Src:             'lib/netdev-dummy.c:401,9'
          Dst:             dummy_packet_stream_close
        - Src:             'lib/netdev-dummy.c:402,9'
          Dst:             free_cacheline
        - Src:             'lib/netdev-dummy.c:404,9'
          Dst:             reconnect_destroy
    - functionName:    dummy_packet_stream_close
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 349
      functionLinenumberEnd: 353
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_uninit
        - pkt_list_delete
        - stream_close
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-dummy.c:350,5'
          Dst:             stream_close
        - Src:             'lib/netdev-dummy.c:351,5'
          Dst:             dp_packet_uninit
        - Src:             'lib/netdev-dummy.c:352,5'
          Dst:             pkt_list_delete
    - functionName:    pkt_list_delete
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1804
      functionLinenumberEnd: 1811
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          48
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - dp_packet_delete
        - ovs_list_is_empty
        - ovs_list_pop_front
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-dummy.c:1807,5'
          Dst:             ovs_list_is_empty
        - Src:             'lib/netdev-dummy.c:1807,5'
          Dst:             ovs_list_pop_front
        - Src:             'lib/netdev-dummy.c:1808,9'
          Dst:             dp_packet_delete
    - functionName:    ovs_list_pop_front
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 261
      functionLinenumberEnd: 265
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_list_remove
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/list.h:264,5'
          Dst:             ovs_list_remove
    - functionName:    ovs_list_remove
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 251
      functionLinenumberEnd: 254
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          25
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dummy_packet_conn_get_config
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 364
      functionLinenumberEnd: 379
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          54
      EdgeCount:       17
      CyclomaticComplexity: 10
      functionsReached:
        - pstream_get_name
        - smap_add
        - stream_get_name
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/netdev-dummy.c:366,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/netdev-dummy.c:368,35'
          Dst:             pstream_get_name
        - Src:             'lib/netdev-dummy.c:368,9'
          Dst:             smap_add
        - Src:             'lib/netdev-dummy.c:372,34'
          Dst:             stream_get_name
        - Src:             'lib/netdev-dummy.c:372,9'
          Dst:             smap_add
    - functionName:    addr_list_delete
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1815
      functionLinenumberEnd: 1821
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          44
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ovs_list_is_empty
        - ovs_list_pop_front
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-dummy.c:1818,5'
          Dst:             ovs_list_is_empty
        - Src:             'lib/netdev-dummy.c:1818,5'
          Dst:             ovs_list_pop_front
    - functionName:    dummy_packet_conn_wait
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 616
      functionLinenumberEnd: 636
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         16
      ICount:          89
      EdgeCount:       17
      CyclomaticComplexity: 3
      functionsReached:
        - dummy_packet_stream_wait
        - pstream_wait
        - reconnect_is_connected
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/netdev-dummy.c:618,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/netdev-dummy.c:620,9'
          Dst:             pstream_wait
        - Src:             'lib/netdev-dummy.c:623,13'
          Dst:             dummy_packet_stream_wait
        - Src:             'lib/netdev-dummy.c:627,13'
          Dst:             reconnect_is_connected
        - Src:             'lib/netdev-dummy.c:628,13'
          Dst:             dummy_packet_stream_wait
    - functionName:    dp_packet_reset_outer_offsets
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 413
      functionLinenumberEnd: 418
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_reset_offload
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1069
      functionLinenumberEnd: 1072
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_reset_offsets
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 424
      functionLinenumberEnd: 428
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_reset_outer_offsets
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:425,5'
          Dst:             dp_packet_reset_outer_offsets
    - functionName:    __packet_set_data
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 780
      functionLinenumberEnd: 782
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_set_data
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 852
      functionLinenumberEnd: 858
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __packet_set_data
        - dp_packet_base
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:854,55'
          Dst:             dp_packet_base
        - Src:             'lib/dp-packet.h:854,9'
          Dst:             __packet_set_data
        - Src:             'lib/dp-packet.h:856,9'
          Dst:             __packet_set_data
    - functionName:    dp_packet_base
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 750
      functionLinenumberEnd: 751
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_l2_pad_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 432
      functionLinenumberEnd: 433
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __packet_data
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 774
      functionLinenumberEnd: 775
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_clear
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 364
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_base
        - dp_packet_reset_offload
        - dp_packet_reset_offsets
        - dp_packet_set_data
        - dp_packet_set_size
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:360,27'
          Dst:             dp_packet_base
        - Src:             'lib/dp-packet.h:360,5'
          Dst:             dp_packet_set_data
        - Src:             'lib/dp-packet.h:361,5'
          Dst:             dp_packet_set_size
        - Src:             'lib/dp-packet.h:362,5'
          Dst:             dp_packet_reset_offsets
        - Src:             'lib/dp-packet.h:363,5'
          Dst:             dp_packet_reset_offload
    - functionName:    dp_packet_set_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 768
      functionLinenumberEnd: 770
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_tail
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 326
      functionLinenumberEnd: 327
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_data
        - dp_packet_size
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:327,21'
          Dst:             dp_packet_data
        - Src:             'lib/dp-packet.h:327,41'
          Dst:             dp_packet_size
    - functionName:    dp_packet_data
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 845
      functionLinenumberEnd: 847
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __packet_data
        - dp_packet_base
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:846,12'
          Dst:             __packet_data
        - Src:             'lib/dp-packet.h:847,23'
          Dst:             dp_packet_base
        - Src:             'lib/dp-packet.h:847,43'
          Dst:             __packet_data
    - functionName:    dp_packet_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 762
      functionLinenumberEnd: 763
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    16
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_unaligned_be16
      functionSourceFile: '/src/openvswitch/lib/unaligned.h'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 89
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - unaligned_be16
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/unaligned.h:89,1'
          Dst:             unaligned_be16
    - functionName:    dp_packet_pull
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 370
      functionLinenumberEnd: 375
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          45
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_data
        - dp_packet_l2_pad_size
        - dp_packet_set_data
        - dp_packet_set_size
        - dp_packet_size
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:371,18'
          Dst:             dp_packet_data
        - Src:             'lib/dp-packet.h:372,16'
          Dst:             dp_packet_size
        - Src:             'lib/dp-packet.h:372,36'
          Dst:             dp_packet_l2_pad_size
        - Src:             'lib/dp-packet.h:372,5'
          Dst:             ovs_ignore
        - Src:             'lib/dp-packet.h:373,36'
          Dst:             dp_packet_data
        - Src:             'lib/dp-packet.h:373,5'
          Dst:             dp_packet_set_data
        - Src:             'lib/dp-packet.h:374,27'
          Dst:             dp_packet_size
        - Src:             'lib/dp-packet.h:374,5'
          Dst:             dp_packet_set_size
    - functionName:    ovs_list_front
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 283
      functionLinenumberEnd: 288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovs_list_is_empty
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/list.h:286,17'
          Dst:             ovs_list_is_empty
        - Src:             './include/openvswitch/list.h:286,5'
          Dst:             ovs_ignore
    - functionName:    dummy_packet_stream_run
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 281
      functionLinenumberEnd: 344
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         41
      ICount:          261
      EdgeCount:       54
      CyclomaticComplexity: 15
      functionsReached:
        - dp_packet_clear
        - dp_packet_clone
        - dp_packet_data
        - dp_packet_delete
        - dp_packet_prealloc_tailroom
        - dp_packet_pull
        - dp_packet_set_size
        - dp_packet_size
        - dp_packet_tail
        - get_unaligned_be16
        - netdev_dummy_queue_packet
        - ntohs
        - ovs_list_front
        - ovs_list_is_empty
        - ovs_list_remove
        - stream_recv
        - stream_run
        - stream_send
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-dummy.c:285,5'
          Dst:             stream_run
        - Src:             'lib/netdev-dummy.c:287,10'
          Dst:             ovs_list_is_empty
        - Src:             'lib/netdev-dummy.c:292,9'
          Dst:             ovs_list_front
        - Src:             'lib/netdev-dummy.c:294,41'
          Dst:             dp_packet_data
        - Src:             'lib/netdev-dummy.c:294,64'
          Dst:             dp_packet_size
        - Src:             'lib/netdev-dummy.c:294,18'
          Dst:             stream_send
        - Src:             'lib/netdev-dummy.c:297,13'
          Dst:             dp_packet_pull
        - Src:             'lib/netdev-dummy.c:298,18'
          Dst:             dp_packet_size
        - Src:             'lib/netdev-dummy.c:299,17'
          Dst:             ovs_list_remove
        - Src:             'lib/netdev-dummy.c:301,17'
          Dst:             dp_packet_delete
        - Src:             'lib/netdev-dummy.c:309,13'
          Dst:             dp_packet_size
        - Src:             'lib/netdev-dummy.c:310,21'
          Dst:             dp_packet_size
        - Src:             'lib/netdev-dummy.c:314,50'
          Dst:             dp_packet_data
        - Src:             'lib/netdev-dummy.c:314,31'
          Dst:             get_unaligned_be16
        - Src:             'lib/netdev-dummy.c:314,25'
          Dst:             ntohs
        - Src:             'lib/netdev-dummy.c:319,39'
          Dst:             dp_packet_size
        - Src:             'lib/netdev-dummy.c:326,9'
          Dst:             dp_packet_prealloc_tailroom
        - Src:             'lib/netdev-dummy.c:327,41'
          Dst:             dp_packet_tail
        - Src:             'lib/netdev-dummy.c:327,18'
          Dst:             stream_recv
        - Src:             'lib/netdev-dummy.c:330,43'
          Dst:             dp_packet_size
        - Src:             'lib/netdev-dummy.c:330,13'
          Dst:             dp_packet_set_size
        - Src:             'lib/netdev-dummy.c:331,32'
          Dst:             dp_packet_size
        - Src:             'lib/netdev-dummy.c:332,17'
          Dst:             dp_packet_pull
        - Src:             'lib/netdev-dummy.c:334,43'
          Dst:             dp_packet_clone
        - Src:             'lib/netdev-dummy.c:333,17'
          Dst:             netdev_dummy_queue_packet
        - Src:             'lib/netdev-dummy.c:335,17'
          Dst:             dp_packet_clear
        - Src:             'lib/netdev-dummy.c:339,24'
          Dst:             dp_packet_size
    - functionName:    netdev_dummy_queue_packet
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1917
      functionLinenumberEnd: 1929
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          56
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - dummy_netdev_simulate_offload
        - netdev_dummy_queue_packet__
        - ovs_pcap_write
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-dummy.c:1919,9'
          Dst:             ovs_pcap_write
        - Src:             'lib/netdev-dummy.c:1922,9'
          Dst:             dummy_netdev_simulate_offload
        - Src:             'lib/netdev-dummy.c:1928,5'
          Dst:             netdev_dummy_queue_packet__
    - functionName:    netdev_dummy_queue_packet__
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1894
      functionLinenumberEnd: 1911
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          113
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - dp_packet_clone
        - dp_packet_delete
        - netdev_dummy_rxq_enqueue
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-dummy.c:1901,48'
          Dst:             dp_packet_clone
        - Src:             'lib/netdev-dummy.c:1901,17'
          Dst:             netdev_dummy_rxq_enqueue
        - Src:             'lib/netdev-dummy.c:1907,9'
          Dst:             netdev_dummy_rxq_enqueue
        - Src:             'lib/netdev-dummy.c:1909,9'
          Dst:             dp_packet_delete
    - functionName:    netdev_dummy_rxq_enqueue
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1881
      functionLinenumberEnd: 1888
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_list_push_back
        - seq_change
        - xmalloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-dummy.c:1882,38'
          Dst:             xmalloc
        - Src:             'lib/netdev-dummy.c:1885,5'
          Dst:             ovs_list_push_back
        - Src:             'lib/netdev-dummy.c:1887,5'
          Dst:             seq_change
    - functionName:    dummy_rconn_run
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 543
      functionLinenumberEnd: 593
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         23
      ICount:          163
      EdgeCount:       24
      CyclomaticComplexity: 3
      functionsReached:
        - dummy_packet_stream_run
        - reconnect_connect_failed
        - reconnect_connected
        - reconnect_connecting
        - reconnect_disconnected
        - reconnect_get_name
        - reconnect_is_connected
        - reconnect_run
        - stream_close
        - stream_connect
        - stream_open
        - time_msec
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/netdev-dummy.c:546,5'
          Branch Sides:    []
        - Branch String:   'lib/netdev-dummy.c:558,13'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/netdev-dummy.c:546,45'
          Dst:             time_msec
        - Src:             'lib/netdev-dummy.c:546,13'
          Dst:             reconnect_run
        - Src:             'lib/netdev-dummy.c:552,25'
          Dst:             stream_connect
        - Src:             'lib/netdev-dummy.c:554,37'
          Dst:             reconnect_get_name
        - Src:             'lib/netdev-dummy.c:554,25'
          Dst:             stream_open
        - Src:             'lib/netdev-dummy.c:560,55'
          Dst:             time_msec
        - Src:             'lib/netdev-dummy.c:560,17'
          Dst:             reconnect_connected
        - Src:             'lib/netdev-dummy.c:564,56'
          Dst:             time_msec
        - Src:             'lib/netdev-dummy.c:564,17'
          Dst:             reconnect_connecting
        - Src:             'lib/netdev-dummy.c:568,60'
          Dst:             time_msec
        - Src:             'lib/netdev-dummy.c:568,17'
          Dst:             reconnect_connect_failed
        - Src:             'lib/netdev-dummy.c:569,17'
          Dst:             stream_close
        - Src:             'lib/netdev-dummy.c:582,9'
          Dst:             reconnect_is_connected
        - Src:             'lib/netdev-dummy.c:585,15'
          Dst:             dummy_packet_stream_run
        - Src:             'lib/netdev-dummy.c:588,54'
          Dst:             time_msec
        - Src:             'lib/netdev-dummy.c:588,13'
          Dst:             reconnect_disconnected
        - Src:             'lib/netdev-dummy.c:589,13'
          Dst:             stream_close
    - functionName:    dummy_pconn_run
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 499
      functionLinenumberEnd: 538
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         25
      ICount:          197
      EdgeCount:       31
      CyclomaticComplexity: 8
      functionsReached:
        - dummy_packet_stream_close
        - dummy_packet_stream_init
        - dummy_packet_stream_run
        - free_cacheline
        - ovs_retval_to_string
        - ovs_strerror
        - pstream_accept
        - pstream_close
        - pstream_get_name
        - stream_get_name
        - vlog
        - xmalloc_cacheline
        - xrealloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-dummy.c:505,13'
          Dst:             pstream_accept
        - Src:             'lib/netdev-dummy.c:509,26'
          Dst:             xrealloc
        - Src:             'lib/netdev-dummy.c:512,13'
          Dst:             xmalloc_cacheline
        - Src:             'lib/netdev-dummy.c:514,9'
          Dst:             dummy_packet_stream_init
        - Src:             'lib/netdev-dummy.c:516,9'
          Dst:             pstream_get_name
        - Src:             'lib/netdev-dummy.c:516,9'
          Dst:             ovs_strerror
        - Src:             'lib/netdev-dummy.c:516,9'
          Dst:             vlog
        - Src:             'lib/netdev-dummy.c:518,9'
          Dst:             pstream_close
        - Src:             'lib/netdev-dummy.c:526,17'
          Dst:             dummy_packet_stream_run
        - Src:             'lib/netdev-dummy.c:528,13'
          Dst:             stream_get_name
        - Src:             'lib/netdev-dummy.c:528,13'
          Dst:             ovs_retval_to_string
        - Src:             'lib/netdev-dummy.c:528,13'
          Dst:             vlog
        - Src:             'lib/netdev-dummy.c:531,13'
          Dst:             dummy_packet_stream_close
        - Src:             'lib/netdev-dummy.c:532,13'
          Dst:             free_cacheline
    - functionName:    dummy_packet_conn_run
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 598
      functionLinenumberEnd: 612
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          41
      EdgeCount:       17
      CyclomaticComplexity: 10
      functionsReached:
        - dummy_pconn_run
        - dummy_rconn_run
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/netdev-dummy.c:599,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/netdev-dummy.c:601,9'
          Dst:             dummy_pconn_run
        - Src:             'lib/netdev-dummy.c:605,9'
          Dst:             dummy_rconn_run
    - functionName:    netdev_dummy_rxq_drain
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1314
      functionLinenumberEnd: 1325
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          40
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - netdev_dummy_cast
        - netdev_rxq_dummy_cast
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - pkt_list_delete
        - seq_change
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-dummy.c:1315,35'
          Dst:             netdev_rxq_dummy_cast
        - Src:             'lib/netdev-dummy.c:1316,35'
          Dst:             netdev_dummy_cast
        - Src:             'lib/netdev-dummy.c:1318,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-dummy.c:1319,5'
          Dst:             pkt_list_delete
        - Src:             'lib/netdev-dummy.c:1321,5'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/netdev-dummy.c:1323,5'
          Dst:             seq_change
    - functionName:    netdev_dummy_rxq_wait
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1298
      functionLinenumberEnd: 1310
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - netdev_dummy_cast
        - netdev_rxq_dummy_cast
        - ovs_list_is_empty
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - poll_immediate_wake_at
        - seq_read
        - seq_wait_at
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-dummy.c:1299,35'
          Dst:             netdev_rxq_dummy_cast
        - Src:             'lib/netdev-dummy.c:1300,35'
          Dst:             netdev_dummy_cast
        - Src:             'lib/netdev-dummy.c:1301,20'
          Dst:             seq_read
        - Src:             'lib/netdev-dummy.c:1303,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-dummy.c:1304,10'
          Dst:             ovs_list_is_empty
        - Src:             'lib/netdev-dummy.c:1305,9'
          Dst:             poll_immediate_wake_at
        - Src:             'lib/netdev-dummy.c:1307,9'
          Dst:             seq_wait_at
        - Src:             'lib/netdev-dummy.c:1309,5'
          Dst:             ovs_mutex_unlock
    - functionName:    netdev_dummy_rxq_recv
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1199
      functionLinenumberEnd: 1294
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         52
      ICount:          388
      EdgeCount:       68
      CyclomaticComplexity: 18
      functionsReached:
        - dp_packet_batch_add
        - dp_packet_batch_reset
        - dp_packet_get_tso_segsz
        - dp_packet_ip_checksum_set_bad
        - dp_packet_ip_checksum_set_good
        - dp_packet_ip_checksum_set_partial
        - dp_packet_ip_checksum_set_unknown
        - dp_packet_l4_checksum_set_bad
        - dp_packet_l4_checksum_set_good
        - dp_packet_l4_checksum_set_partial
        - dp_packet_l4_checksum_set_unknown
        - dp_packet_set_tso_segsz
        - dp_packet_size
        - netdev_dummy_cast
        - netdev_is_pmd
        - netdev_rxq_dummy_cast
        - ovs_list_is_empty
        - ovs_list_pop_front
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - sched_yield
        - userspace_tso_enabled
        - vlog
        - vlog_is_enabled
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-dummy.c:1200,35'
          Dst:             netdev_rxq_dummy_cast
        - Src:             'lib/netdev-dummy.c:1201,35'
          Dst:             netdev_dummy_cast
        - Src:             'lib/netdev-dummy.c:1204,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-dummy.c:1205,10'
          Dst:             ovs_list_is_empty
        - Src:             'lib/netdev-dummy.c:1208,9'
          Dst:             ovs_list_pop_front
        - Src:             'lib/netdev-dummy.c:1215,5'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/netdev-dummy.c:1218,13'
          Dst:             netdev_is_pmd
        - Src:             'lib/netdev-dummy.c:1230,13'
          Dst:             sched_yield
        - Src:             'lib/netdev-dummy.c:1234,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-dummy.c:1237,31'
          Dst:             dp_packet_size
        - Src:             'lib/netdev-dummy.c:1238,48'
          Dst:             dp_packet_size
        - Src:             'lib/netdev-dummy.c:1243,9'
          Dst:             dp_packet_ip_checksum_set_good
        - Src:             'lib/netdev-dummy.c:1245,9'
          Dst:             dp_packet_ip_checksum_set_bad
        - Src:             'lib/netdev-dummy.c:1247,9'
          Dst:             dp_packet_ip_checksum_set_partial
        - Src:             'lib/netdev-dummy.c:1249,9'
          Dst:             dp_packet_ip_checksum_set_unknown
        - Src:             'lib/netdev-dummy.c:1253,9'
          Dst:             dp_packet_l4_checksum_set_good
        - Src:             'lib/netdev-dummy.c:1255,9'
          Dst:             dp_packet_l4_checksum_set_bad
        - Src:             'lib/netdev-dummy.c:1257,9'
          Dst:             dp_packet_l4_checksum_set_partial
        - Src:             'lib/netdev-dummy.c:1259,9'
          Dst:             dp_packet_l4_checksum_set_unknown
        - Src:             'lib/netdev-dummy.c:1262,9'
          Dst:             userspace_tso_enabled
        - Src:             'lib/netdev-dummy.c:1263,9'
          Dst:             dp_packet_set_tso_segsz
        - Src:             'lib/netdev-dummy.c:1266,9'
          Dst:             vlog_is_enabled
        - Src:             'lib/netdev-dummy.c:1276,9'
          Dst:             dp_packet_get_tso_segsz
        - Src:             'lib/netdev-dummy.c:1276,9'
          Dst:             vlog
        - Src:             'lib/netdev-dummy.c:1284,5'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/netdev-dummy.c:1286,5'
          Dst:             dp_packet_batch_reset
        - Src:             'lib/netdev-dummy.c:1287,5'
          Dst:             dp_packet_batch_add
    - functionName:    sched_yield
      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:    netdev_dummy_rxq_dealloc
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1190
      functionLinenumberEnd: 1194
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - netdev_rxq_dummy_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-dummy.c:1191,35'
          Dst:             netdev_rxq_dummy_cast
    - functionName:    netdev_dummy_rxq_destruct
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1177
      functionLinenumberEnd: 1186
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          40
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - netdev_dummy_cast
        - netdev_rxq_dummy_cast
        - ovs_list_remove
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - pkt_list_delete
        - seq_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-dummy.c:1178,35'
          Dst:             netdev_rxq_dummy_cast
        - Src:             'lib/netdev-dummy.c:1179,35'
          Dst:             netdev_dummy_cast
        - Src:             'lib/netdev-dummy.c:1181,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-dummy.c:1182,5'
          Dst:             ovs_list_remove
        - Src:             'lib/netdev-dummy.c:1183,5'
          Dst:             pkt_list_delete
        - Src:             'lib/netdev-dummy.c:1184,5'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/netdev-dummy.c:1185,5'
          Dst:             seq_destroy
    - functionName:    netdev_dummy_rxq_construct
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1161
      functionLinenumberEnd: 1172
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          45
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - netdev_dummy_cast
        - netdev_rxq_dummy_cast
        - ovs_list_init
        - ovs_list_push_back
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - seq_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-dummy.c:1162,35'
          Dst:             netdev_rxq_dummy_cast
        - Src:             'lib/netdev-dummy.c:1163,35'
          Dst:             netdev_dummy_cast
        - Src:             'lib/netdev-dummy.c:1165,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-dummy.c:1166,5'
          Dst:             ovs_list_push_back
        - Src:             'lib/netdev-dummy.c:1167,5'
          Dst:             ovs_list_init
        - Src:             'lib/netdev-dummy.c:1169,15'
          Dst:             seq_create
        - Src:             'lib/netdev-dummy.c:1170,5'
          Dst:             ovs_mutex_unlock
    - functionName:    netdev_dummy_rxq_alloc
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1154
      functionLinenumberEnd: 1156
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - xzalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-dummy.c:1155,35'
          Dst:             xzalloc
    - functionName:    netdev_dummy_update_flags
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1737
      functionLinenumberEnd: 1745
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - netdev_dummy_cast
        - netdev_dummy_update_flags__
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-dummy.c:1738,35'
          Dst:             netdev_dummy_cast
        - Src:             'lib/netdev-dummy.c:1741,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-dummy.c:1742,13'
          Dst:             netdev_dummy_update_flags__
        - Src:             'lib/netdev-dummy.c:1743,5'
          Dst:             ovs_mutex_unlock
    - functionName:    netdev_dummy_update_flags__
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1718
      functionLinenumberEnd: 1731
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          72
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - netdev_change_seq_changed
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-dummy.c:1727,9'
          Dst:             netdev_change_seq_changed
    - functionName:    netdev_change_seq_changed
      functionSourceFile: '/src/openvswitch/lib/netdev-provider.h'
      linkageType:     InternalLinkage
      functionLinenumber: 112
      functionLinenumberEnd: 124
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          58
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - connectivity_seq_get
        - seq_change
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-provider.h:115,16'
          Dst:             connectivity_seq_get
        - Src:             'lib/netdev-provider.h:115,5'
          Dst:             seq_change
    - functionName:    netdev_dummy_get_addr_list
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 892
      functionLinenumberEnd: 925
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          142
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - netdev_dummy_cast
        - ovs_list_size
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-dummy.c:893,35'
          Dst:             netdev_dummy_cast
        - Src:             'lib/netdev-dummy.c:898,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-dummy.c:900,11'
          Dst:             ovs_list_size
        - Src:             'lib/netdev-dummy.c:905,12'
          Dst:             xmalloc
        - Src:             'lib/netdev-dummy.c:906,12'
          Dst:             xmalloc
        - Src:             'lib/netdev-dummy.c:923,5'
          Dst:             ovs_mutex_unlock
    - functionName:    netdev_dummy_dump_queue_stats
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1693
      functionLinenumberEnd: 1697
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - netdev_dummy_init_queue_stats
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-dummy.c:1695,5'
          Dst:             netdev_dummy_init_queue_stats
    - functionName:    netdev_dummy_queue_dump_done
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1682
      functionLinenumberEnd: 1684
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_dummy_queue_dump_next
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1668
      functionLinenumberEnd: 1677
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          40
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_dummy_queue_dump_start
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1656
      functionLinenumberEnd: 1660
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-dummy.c:1657,46'
          Dst:             xmalloc
    - functionName:    netdev_dummy_get_queue_stats
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1640
      functionLinenumberEnd: 1647
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - netdev_dummy_init_queue_stats
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-dummy.c:1642,9'
          Dst:             netdev_dummy_init_queue_stats
    - functionName:    netdev_dummy_get_queue
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1617
      functionLinenumberEnd: 1623
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          26
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_dummy_get_custom_stats
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1561
      functionLinenumberEnd: 1611
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          263
      EdgeCount:       18
      CyclomaticComplexity: 5
      functionsReached:
        - netdev_dummy_cast
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovs_strlcpy
        - snprintf
        - xcalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-dummy.c:1564,32'
          Dst:             netdev_dummy_cast
        - Src:             'lib/netdev-dummy.c:1566,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-dummy.c:1580,30'
          Dst:             xcalloc
        - Src:             'lib/netdev-dummy.c:1586,9'
          Dst:             ovs_strlcpy
        - Src:             'lib/netdev-dummy.c:1596,9'
          Dst:             snprintf
        - Src:             'lib/netdev-dummy.c:1596,9'
          Dst:             snprintf
        - Src:             'lib/netdev-dummy.c:1605,9'
          Dst:             snprintf
        - Src:             'lib/netdev-dummy.c:1605,9'
          Dst:             snprintf
        - Src:             'lib/netdev-dummy.c:1609,5'
          Dst:             ovs_mutex_unlock
    - functionName:    netdev_dummy_get_stats
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1544
      functionLinenumberEnd: 1555
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          53
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - netdev_dummy_cast
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-dummy.c:1545,32'
          Dst:             netdev_dummy_cast
        - Src:             'lib/netdev-dummy.c:1547,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-dummy.c:1553,5'
          Dst:             ovs_mutex_unlock
    - functionName:    netdev_dummy_get_ifindex
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1702
      functionLinenumberEnd: 1710
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - netdev_dummy_cast
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-dummy.c:1703,32'
          Dst:             netdev_dummy_cast
        - Src:             'lib/netdev-dummy.c:1706,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-dummy.c:1708,5'
          Dst:             ovs_mutex_unlock
    - functionName:    netdev_dummy_set_mtu
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1525
      functionLinenumberEnd: 1540
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          68
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - netdev_change_seq_changed
        - netdev_dummy_cast
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-dummy.c:1530,32'
          Dst:             netdev_dummy_cast
        - Src:             'lib/netdev-dummy.c:1532,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-dummy.c:1535,9'
          Dst:             netdev_change_seq_changed
        - Src:             'lib/netdev-dummy.c:1537,5'
          Dst:             ovs_mutex_unlock
    - functionName:    netdev_dummy_get_mtu
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1510
      functionLinenumberEnd: 1517
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - netdev_dummy_cast
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-dummy.c:1511,32'
          Dst:             netdev_dummy_cast
        - Src:             'lib/netdev-dummy.c:1513,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-dummy.c:1515,5'
          Dst:             ovs_mutex_unlock
    - functionName:    netdev_dummy_get_etheraddr
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1498
      functionLinenumberEnd: 1505
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - netdev_dummy_cast
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-dummy.c:1499,32'
          Dst:             netdev_dummy_cast
        - Src:             'lib/netdev-dummy.c:1501,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-dummy.c:1503,5'
          Dst:             ovs_mutex_unlock
    - functionName:    netdev_dummy_set_etheraddr
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1483
      functionLinenumberEnd: 1493
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - eth_addr_equals
        - netdev_change_seq_changed
        - netdev_dummy_cast
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-dummy.c:1484,32'
          Dst:             netdev_dummy_cast
        - Src:             'lib/netdev-dummy.c:1486,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-dummy.c:1487,10'
          Dst:             eth_addr_equals
        - Src:             'lib/netdev-dummy.c:1489,9'
          Dst:             netdev_change_seq_changed
        - Src:             'lib/netdev-dummy.c:1491,5'
          Dst:             ovs_mutex_unlock
    - functionName:    netdev_dummy_send
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1332
      functionLinenumberEnd: 1478
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         95
      ICount:          696
      EdgeCount:       126
      CyclomaticComplexity: 33
      functionsReached:
        - compose_arp
        - dp_packet_batch_size
        - dp_packet_data
        - dp_packet_delete_batch
        - dp_packet_get_tso_segsz
        - dp_packet_inner_ip_checksum_partial
        - dp_packet_inner_l4_checksum_partial
        - dp_packet_ip_checksum_partial
        - dp_packet_is_eth
        - dp_packet_l4_checksum_partial
        - dp_packet_new
        - dp_packet_ol_send_prepare
        - dp_packet_size
        - dp_packet_tunnel
        - dp_packet_tunnel_geneve
        - dp_packet_tunnel_vxlan
        - dp_packet_use_const
        - dummy_packet_conn_send
        - flow_extract
        - htons
        - in6_addr_get_mapped_ipv4
        - netdev_dummy_cast
        - netdev_dummy_queue_packet
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovs_pcap_write
        - userspace_tso_enabled
        - vlog
        - vlog_is_enabled
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-dummy.c:1333,32'
          Dst:             netdev_dummy_cast
        - Src:             'lib/netdev-dummy.c:1337,5'
          Dst:             dp_packet_batch_size
        - Src:             'lib/netdev-dummy.c:1338,30'
          Dst:             dp_packet_data
        - Src:             'lib/netdev-dummy.c:1339,23'
          Dst:             dp_packet_size
        - Src:             'lib/netdev-dummy.c:1343,9'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-dummy.c:1358,18'
          Dst:             userspace_tso_enabled
        - Src:             'lib/netdev-dummy.c:1359,18'
          Dst:             dp_packet_get_tso_segsz
        - Src:             'lib/netdev-dummy.c:1360,9'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/netdev-dummy.c:1362,14'
          Dst:             dp_packet_is_eth
        - Src:             'lib/netdev-dummy.c:1374,13'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-dummy.c:1376,13'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/netdev-dummy.c:1378,34'
          Dst:             htons
        - Src:             'lib/netdev-dummy.c:1387,13'
          Dst:             vlog_is_enabled
        - Src:             'lib/netdev-dummy.c:1410,23'
          Dst:             dp_packet_tunnel
        - Src:             'lib/netdev-dummy.c:1411,24'
          Dst:             dp_packet_tunnel_vxlan
        - Src:             'lib/netdev-dummy.c:1412,24'
          Dst:             dp_packet_tunnel_geneve
        - Src:             'lib/netdev-dummy.c:1414,13'
          Dst:             dp_packet_get_tso_segsz
        - Src:             'lib/netdev-dummy.c:1414,13'
          Dst:             vlog
        - Src:             'lib/netdev-dummy.c:1430,13'
          Dst:             dp_packet_ip_checksum_partial
        - Src:             'lib/netdev-dummy.c:1431,16'
          Dst:             dp_packet_l4_checksum_partial
        - Src:             'lib/netdev-dummy.c:1432,16'
          Dst:             dp_packet_inner_ip_checksum_partial
        - Src:             'lib/netdev-dummy.c:1433,16'
          Dst:             dp_packet_inner_l4_checksum_partial
        - Src:             'lib/netdev-dummy.c:1434,13'
          Dst:             dp_packet_ol_send_prepare
        - Src:             'lib/netdev-dummy.c:1437,9'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-dummy.c:1443,9'
          Dst:             dummy_packet_conn_send
        - Src:             'lib/netdev-dummy.c:1448,32'
          Dst:             in6_addr_get_mapped_ipv4
        - Src:             'lib/netdev-dummy.c:1453,13'
          Dst:             dp_packet_use_const
        - Src:             'lib/netdev-dummy.c:1454,13'
          Dst:             flow_extract
        - Src:             'lib/netdev-dummy.c:1455,33'
          Dst:             htons
        - Src:             'lib/netdev-dummy.c:1458,43'
          Dst:             dp_packet_new
        - Src:             'lib/netdev-dummy.c:1459,17'
          Dst:             compose_arp
        - Src:             'lib/netdev-dummy.c:1461,17'
          Dst:             netdev_dummy_queue_packet
        - Src:             'lib/netdev-dummy.c:1469,13'
          Dst:             dp_packet_use_const
        - Src:             'lib/netdev-dummy.c:1470,13'
          Dst:             ovs_pcap_write
        - Src:             'lib/netdev-dummy.c:1473,9'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/netdev-dummy.c:1476,5'
          Dst:             dp_packet_delete_batch
    - functionName:    netdev_dummy_get_numa_id
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1104
      functionLinenumberEnd: 1111
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - netdev_dummy_cast
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-dummy.c:1105,35'
          Dst:             netdev_dummy_cast
        - Src:             'lib/netdev-dummy.c:1107,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-dummy.c:1109,5'
          Dst:             ovs_mutex_unlock
    - functionName:    netdev_dummy_set_config
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 967
      functionLinenumberEnd: 1099
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         72
      ICount:          557
      EdgeCount:       95
      CyclomaticComplexity: 25
      functionsReached:
        - dummy_packet_conn_set_config
        - netdev_change_seq_changed
        - netdev_dummy_cast
        - netdev_get_name
        - netdev_request_reconfigure
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovs_pcap_close
        - ovs_pcap_open
        - smap_get
        - smap_get_bool
        - smap_get_int
        - userspace_tso_enabled
        - vlog
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-dummy.c:968,35'
          Dst:             netdev_dummy_cast
        - Src:             'lib/netdev-dummy.c:972,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-dummy.c:973,23'
          Dst:             smap_get_int
        - Src:             'lib/netdev-dummy.c:975,5'
          Dst:             dummy_packet_conn_set_config
        - Src:             'lib/netdev-dummy.c:978,9'
          Dst:             ovs_pcap_close
        - Src:             'lib/netdev-dummy.c:981,9'
          Dst:             ovs_pcap_close
        - Src:             'lib/netdev-dummy.c:984,12'
          Dst:             smap_get
        - Src:             'lib/netdev-dummy.c:986,46'
          Dst:             ovs_pcap_open
        - Src:             'lib/netdev-dummy.c:988,32'
          Dst:             smap_get
        - Src:             'lib/netdev-dummy.c:989,31'
          Dst:             smap_get
        - Src:             'lib/netdev-dummy.c:992,32'
          Dst:             ovs_pcap_open
        - Src:             'lib/netdev-dummy.c:995,31'
          Dst:             ovs_pcap_open
        - Src:             'lib/netdev-dummy.c:1000,9'
          Dst:             smap_get_bool
        - Src:             'lib/netdev-dummy.c:1002,9'
          Dst:             smap_get_bool
        - Src:             'lib/netdev-dummy.c:1004,9'
          Dst:             smap_get_bool
        - Src:             'lib/netdev-dummy.c:1005,29'
          Dst:             smap_get_bool
        - Src:             'lib/netdev-dummy.c:1009,13'
          Dst:             smap_get_bool
        - Src:             'lib/netdev-dummy.c:1016,9'
          Dst:             smap_get_bool
        - Src:             'lib/netdev-dummy.c:1018,9'
          Dst:             smap_get_bool
        - Src:             'lib/netdev-dummy.c:1020,9'
          Dst:             smap_get_bool
        - Src:             'lib/netdev-dummy.c:1021,29'
          Dst:             smap_get_bool
        - Src:             'lib/netdev-dummy.c:1026,13'
          Dst:             smap_get_bool
        - Src:             'lib/netdev-dummy.c:1033,33'
          Dst:             smap_get_bool
        - Src:             'lib/netdev-dummy.c:1038,13'
          Dst:             smap_get_bool
        - Src:             'lib/netdev-dummy.c:1044,34'
          Dst:             smap_get_bool
        - Src:             'lib/netdev-dummy.c:1049,13'
          Dst:             smap_get_bool
        - Src:             'lib/netdev-dummy.c:1055,9'
          Dst:             userspace_tso_enabled
        - Src:             'lib/netdev-dummy.c:1056,32'
          Dst:             smap_get_int
        - Src:             'lib/netdev-dummy.c:1063,5'
          Dst:             netdev_change_seq_changed
        - Src:             'lib/netdev-dummy.c:1070,17'
          Dst:             smap_get_int
        - Src:             'lib/netdev-dummy.c:1070,17'
          Dst:             smap_get_int
        - Src:             'lib/netdev-dummy.c:1071,17'
          Dst:             smap_get_int
        - Src:             'lib/netdev-dummy.c:1071,17'
          Dst:             smap_get_int
        - Src:             'lib/netdev-dummy.c:1075,9'
          Dst:             netdev_get_name
        - Src:             'lib/netdev-dummy.c:1075,9'
          Dst:             vlog
        - Src:             'lib/netdev-dummy.c:1087,19'
          Dst:             smap_get_int
        - Src:             'lib/netdev-dummy.c:1094,9'
          Dst:             netdev_request_reconfigure
        - Src:             'lib/netdev-dummy.c:1098,5'
          Dst:             ovs_mutex_unlock
    - functionName:    netdev_dummy_get_config
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 811
      functionLinenumberEnd: 886
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         56
      ICount:          297
      EdgeCount:       74
      CyclomaticComplexity: 20
      functionsReached:
        - dummy_packet_conn_get_config
        - netdev_dummy_cast
        - netdev_is_pmd
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - smap_add_format
        - userspace_tso_enabled
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-dummy.c:812,35'
          Dst:             netdev_dummy_cast
        - Src:             'lib/netdev-dummy.c:814,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-dummy.c:817,9'
          Dst:             smap_add_format
        - Src:             'lib/netdev-dummy.c:820,5'
          Dst:             dummy_packet_conn_get_config
        - Src:             'lib/netdev-dummy.c:826,9'
          Dst:             smap_add_format
        - Src:             'lib/netdev-dummy.c:829,9'
          Dst:             smap_add_format
        - Src:             'lib/netdev-dummy.c:832,9'
          Dst:             smap_add_format
        - Src:             'lib/netdev-dummy.c:835,9'
          Dst:             smap_add_format
        - Src:             'lib/netdev-dummy.c:837,13'
          Dst:             smap_add_format
        - Src:             'lib/netdev-dummy.c:842,9'
          Dst:             smap_add_format
        - Src:             'lib/netdev-dummy.c:845,9'
          Dst:             smap_add_format
        - Src:             'lib/netdev-dummy.c:848,9'
          Dst:             smap_add_format
        - Src:             'lib/netdev-dummy.c:851,9'
          Dst:             smap_add_format
        - Src:             'lib/netdev-dummy.c:853,13'
          Dst:             smap_add_format
        - Src:             'lib/netdev-dummy.c:858,9'
          Dst:             smap_add_format
        - Src:             'lib/netdev-dummy.c:860,13'
          Dst:             smap_add_format
        - Src:             'lib/netdev-dummy.c:865,9'
          Dst:             smap_add_format
        - Src:             'lib/netdev-dummy.c:867,13'
          Dst:             smap_add_format
        - Src:             'lib/netdev-dummy.c:871,33'
          Dst:             userspace_tso_enabled
        - Src:             'lib/netdev-dummy.c:872,9'
          Dst:             smap_add_format
        - Src:             'lib/netdev-dummy.c:876,10'
          Dst:             netdev_is_pmd
        - Src:             'lib/netdev-dummy.c:880,5'
          Dst:             smap_add_format
        - Src:             'lib/netdev-dummy.c:881,5'
          Dst:             smap_add_format
        - Src:             'lib/netdev-dummy.c:882,5'
          Dst:             smap_add_format
        - Src:             'lib/netdev-dummy.c:885,5'
          Dst:             ovs_mutex_unlock
    - functionName:    netdev_dummy_dealloc
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 803
      functionLinenumberEnd: 807
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - netdev_dummy_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-dummy.c:804,35'
          Dst:             netdev_dummy_cast
    - functionName:    netdev_dummy_destruct
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 776
      functionLinenumberEnd: 799
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          95
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - addr_list_delete
        - dummy_packet_conn_close
        - netdev_dummy_cast
        - ovs_list_remove
        - ovs_mutex_destroy
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovs_pcap_close
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-dummy.c:777,35'
          Dst:             netdev_dummy_cast
        - Src:             'lib/netdev-dummy.c:779,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-dummy.c:780,5'
          Dst:             ovs_list_remove
        - Src:             'lib/netdev-dummy.c:781,5'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/netdev-dummy.c:783,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-dummy.c:787,9'
          Dst:             ovs_pcap_close
        - Src:             'lib/netdev-dummy.c:790,9'
          Dst:             ovs_pcap_close
        - Src:             'lib/netdev-dummy.c:792,5'
          Dst:             dummy_packet_conn_close
        - Src:             'lib/netdev-dummy.c:795,5'
          Dst:             addr_list_delete
        - Src:             'lib/netdev-dummy.c:797,5'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/netdev-dummy.c:798,5'
          Dst:             ovs_mutex_destroy
    - functionName:    netdev_dummy_alloc
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 722
      functionLinenumberEnd: 724
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - xzalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-dummy.c:723,35'
          Dst:             xzalloc
    - functionName:    netdev_dummy_wait
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 705
      functionLinenumberEnd: 718
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          70
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - dummy_packet_conn_wait
        - netdev_get_class
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-dummy.c:708,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-dummy.c:710,13'
          Dst:             netdev_get_class
        - Src:             'lib/netdev-dummy.c:713,9'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-dummy.c:714,9'
          Dst:             dummy_packet_conn_wait
        - Src:             'lib/netdev-dummy.c:715,9'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/netdev-dummy.c:717,5'
          Dst:             ovs_mutex_unlock
    - functionName:    netdev_dummy_run
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 687
      functionLinenumberEnd: 701
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          72
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - dummy_netdev_hw_offload_run
        - dummy_packet_conn_run
        - netdev_get_class
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-dummy.c:690,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-dummy.c:692,13'
          Dst:             netdev_get_class
        - Src:             'lib/netdev-dummy.c:695,9'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-dummy.c:696,9'
          Dst:             dummy_packet_conn_run
        - Src:             'lib/netdev-dummy.c:697,9'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/netdev-dummy.c:698,9'
          Dst:             dummy_netdev_hw_offload_run
        - Src:             'lib/netdev-dummy.c:700,5'
          Dst:             ovs_mutex_unlock
    - functionName:    hmap_next__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 401
      functionLinenumberEnd: 410
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          51
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_dummy_add_in6
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 948
      functionLinenumberEnd: 959
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          45
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - netdev_change_seq_changed
        - netdev_dummy_cast
        - ovs_list_push_back
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - xmalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-dummy.c:949,35'
          Dst:             netdev_dummy_cast
        - Src:             'lib/netdev-dummy.c:950,44'
          Dst:             xmalloc
        - Src:             'lib/netdev-dummy.c:952,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-dummy.c:955,5'
          Dst:             ovs_list_push_back
        - Src:             'lib/netdev-dummy.c:956,5'
          Dst:             netdev_change_seq_changed
        - Src:             'lib/netdev-dummy.c:957,5'
          Dst:             ovs_mutex_unlock
    - functionName:    in6_addr_mapped_ipv4
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1215
      functionLinenumberEnd: 1220
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          20
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    in6_addr_set_mapped_ipv4
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1225
      functionLinenumberEnd: 1227
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - in6_addr_mapped_ipv4
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:1226,12'
          Dst:             in6_addr_mapped_ipv4
    - functionName:    netdev_dummy_add_in4
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 931
      functionLinenumberEnd: 942
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          49
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - in6_addr_set_mapped_ipv4
        - netdev_change_seq_changed
        - netdev_dummy_cast
        - ovs_list_push_back
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - xmalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-dummy.c:932,35'
          Dst:             netdev_dummy_cast
        - Src:             'lib/netdev-dummy.c:933,44'
          Dst:             xmalloc
        - Src:             'lib/netdev-dummy.c:935,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-dummy.c:936,5'
          Dst:             in6_addr_set_mapped_ipv4
        - Src:             'lib/netdev-dummy.c:937,5'
          Dst:             in6_addr_set_mapped_ipv4
        - Src:             'lib/netdev-dummy.c:938,5'
          Dst:             ovs_list_push_back
        - Src:             'lib/netdev-dummy.c:939,5'
          Dst:             netdev_change_seq_changed
        - Src:             'lib/netdev-dummy.c:940,5'
          Dst:             ovs_mutex_unlock
    - functionName:    be32_prefix_mask
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 414
      functionLinenumberEnd: 415
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.h:415,12'
          Dst:             htonl
    - functionName:    display_conn_state__
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2079
      functionLinenumberEnd: 2096
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          47
      EdgeCount:       17
      CyclomaticComplexity: 10
      functionsReached:
        - ds_put_cstr
        - ds_put_format
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/netdev-dummy.c:2082,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/netdev-dummy.c:2080,5'
          Dst:             ds_put_format
        - Src:             'lib/netdev-dummy.c:2084,9'
          Dst:             ds_put_cstr
        - Src:             'lib/netdev-dummy.c:2088,9'
          Dst:             ds_put_cstr
        - Src:             'lib/netdev-dummy.c:2093,9'
          Dst:             ds_put_cstr
    - functionName:    dummy_netdev_get_conn_state
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 669
      functionLinenumberEnd: 682
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          43
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - reconnect_is_connected
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-dummy.c:673,13'
          Dst:             reconnect_is_connected
    - functionName:    netdev_dummy_set_admin_state__
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2022
      functionLinenumberEnd: 2030
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - netdev_dummy_update_flags__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-dummy.c:2026,9'
          Dst:             netdev_dummy_update_flags__
        - Src:             'lib/netdev-dummy.c:2028,9'
          Dst:             netdev_dummy_update_flags__
    - functionName:    eth_from_flow_str
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1834
      functionLinenumberEnd: 1877
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          116
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - dp_packet_delete
        - dp_packet_new
        - dp_packet_size
        - flow_compose
        - odp_flow_from_string
        - odp_flow_key_to_flow
        - ofpbuf_init
        - ofpbuf_uninit
        - packet_expand
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-dummy.c:1848,5'
          Dst:             ofpbuf_init
        - Src:             'lib/netdev-dummy.c:1849,13'
          Dst:             odp_flow_from_string
        - Src:             'lib/netdev-dummy.c:1851,9'
          Dst:             ofpbuf_uninit
        - Src:             'lib/netdev-dummy.c:1856,15'
          Dst:             odp_flow_key_to_flow
        - Src:             'lib/netdev-dummy.c:1858,9'
          Dst:             ofpbuf_uninit
        - Src:             'lib/netdev-dummy.c:1862,14'
          Dst:             dp_packet_new
        - Src:             'lib/netdev-dummy.c:1864,9'
          Dst:             flow_compose
        - Src:             'lib/netdev-dummy.c:1865,13'
          Dst:             dp_packet_size
        - Src:             'lib/netdev-dummy.c:1866,13'
          Dst:             packet_expand
        - Src:             'lib/netdev-dummy.c:1867,20'
          Dst:             dp_packet_size
        - Src:             'lib/netdev-dummy.c:1868,13'
          Dst:             dp_packet_delete
        - Src:             'lib/netdev-dummy.c:1872,9'
          Dst:             flow_compose
        - Src:             'lib/netdev-dummy.c:1875,5'
          Dst:             ofpbuf_uninit
    - functionName:    eth_from_packet
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1825
      functionLinenumberEnd: 1828
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - eth_from_hex
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-dummy.c:1827,5'
          Dst:             eth_from_hex
    - functionName:    hmap_next
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 429
      functionLinenumberEnd: 432
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_next__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:432,15'
          Dst:             hmap_next__
    - functionName:    netdev_dummy_override
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2217
      functionLinenumberEnd: 2232
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          75
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - netdev_register_provider
        - netdev_unregister_provider
        - ovs_strerror
        - vlog
        - xmemdup
        - xstrdup
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-dummy.c:2218,10'
          Dst:             netdev_unregister_provider
        - Src:             'lib/netdev-dummy.c:2222,17'
          Dst:             xmemdup
        - Src:             'lib/netdev-dummy.c:2223,23'
          Dst:             xstrdup
        - Src:             'lib/netdev-dummy.c:2224,17'
          Dst:             netdev_register_provider
        - Src:             'lib/netdev-dummy.c:2226,13'
          Dst:             ovs_strerror
        - Src:             'lib/netdev-dummy.c:2226,13'
          Dst:             vlog
    - functionName:    hmap_first
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 416
      functionLinenumberEnd: 417
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:417,12'
          Dst:             hmap_next__
    - functionName:    netdev_dummy_ip6addr
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2180
      functionLinenumberEnd: 2212
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          98
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - ipv6_create_mask
        - ipv6_parse_cidr
        - is_dummy_netdev_class
        - netdev_close
        - netdev_dummy_add_in6
        - netdev_from_name
        - ovs_router_force_insert
        - unixctl_command_reply
        - unixctl_command_reply_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-dummy.c:2181,29'
          Dst:             netdev_from_name
        - Src:             'lib/netdev-dummy.c:2183,19'
          Dst:             is_dummy_netdev_class
        - Src:             'lib/netdev-dummy.c:2188,17'
          Dst:             ipv6_parse_cidr
        - Src:             'lib/netdev-dummy.c:2192,20'
          Dst:             ipv6_create_mask
        - Src:             'lib/netdev-dummy.c:2193,13'
          Dst:             netdev_dummy_add_in6
        - Src:             'lib/netdev-dummy.c:2196,13'
          Dst:             ovs_router_force_insert
        - Src:             'lib/netdev-dummy.c:2199,13'
          Dst:             ovs_router_force_insert
        - Src:             'lib/netdev-dummy.c:2202,13'
          Dst:             unixctl_command_reply
        - Src:             'lib/netdev-dummy.c:2204,13'
          Dst:             unixctl_command_reply_error
        - Src:             'lib/netdev-dummy.c:2208,9'
          Dst:             unixctl_command_reply_error
        - Src:             'lib/netdev-dummy.c:2211,5'
          Dst:             netdev_close
    - functionName:    netdev_dummy_ip4addr
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2143
      functionLinenumberEnd: 2175
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          100
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - be32_prefix_mask
        - in6_addr_set_mapped_ipv4
        - ip_parse_cidr
        - is_dummy_netdev_class
        - netdev_close
        - netdev_dummy_add_in4
        - netdev_from_name
        - ovs_router_force_insert
        - unixctl_command_reply
        - unixctl_command_reply_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-dummy.c:2144,29'
          Dst:             netdev_from_name
        - Src:             'lib/netdev-dummy.c:2146,19'
          Dst:             is_dummy_netdev_class
        - Src:             'lib/netdev-dummy.c:2152,17'
          Dst:             ip_parse_cidr
        - Src:             'lib/netdev-dummy.c:2154,27'
          Dst:             be32_prefix_mask
        - Src:             'lib/netdev-dummy.c:2155,13'
          Dst:             netdev_dummy_add_in4
        - Src:             'lib/netdev-dummy.c:2157,13'
          Dst:             in6_addr_set_mapped_ipv4
        - Src:             'lib/netdev-dummy.c:2159,13'
          Dst:             ovs_router_force_insert
        - Src:             'lib/netdev-dummy.c:2162,13'
          Dst:             ovs_router_force_insert
        - Src:             'lib/netdev-dummy.c:2165,13'
          Dst:             unixctl_command_reply
        - Src:             'lib/netdev-dummy.c:2167,13'
          Dst:             unixctl_command_reply_error
        - Src:             'lib/netdev-dummy.c:2171,9'
          Dst:             unixctl_command_reply_error
        - Src:             'lib/netdev-dummy.c:2174,5'
          Dst:             netdev_close
    - functionName:    netdev_dummy_conn_state
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2101
      functionLinenumberEnd: 2138
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          147
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - display_conn_state__
        - ds_cstr
        - ds_destroy
        - ds_init
        - dummy_netdev_get_conn_state
        - is_dummy_netdev_class
        - netdev_close
        - netdev_dummy_cast
        - netdev_from_name
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - unixctl_command_reply
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-dummy.c:2105,5'
          Dst:             ds_init
        - Src:             'lib/netdev-dummy.c:2109,33'
          Dst:             netdev_from_name
        - Src:             'lib/netdev-dummy.c:2111,23'
          Dst:             is_dummy_netdev_class
        - Src:             'lib/netdev-dummy.c:2112,46'
          Dst:             netdev_dummy_cast
        - Src:             'lib/netdev-dummy.c:2114,13'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-dummy.c:2115,21'
          Dst:             dummy_netdev_get_conn_state
        - Src:             'lib/netdev-dummy.c:2116,13'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/netdev-dummy.c:2118,13'
          Dst:             netdev_close
        - Src:             'lib/netdev-dummy.c:2120,9'
          Dst:             display_conn_state__
        - Src:             'lib/netdev-dummy.c:2124,9'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-dummy.c:2126,13'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-dummy.c:2127,21'
          Dst:             dummy_netdev_get_conn_state
        - Src:             'lib/netdev-dummy.c:2128,13'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/netdev-dummy.c:2130,17'
          Dst:             display_conn_state__
        - Src:             'lib/netdev-dummy.c:2133,9'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/netdev-dummy.c:2136,33'
          Dst:             ds_cstr
        - Src:             'lib/netdev-dummy.c:2136,5'
          Dst:             unixctl_command_reply
        - Src:             'lib/netdev-dummy.c:2137,5'
          Dst:             ds_destroy
    - functionName:    netdev_dummy_set_admin_state
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2035
      functionLinenumberEnd: 2074
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          161
      EdgeCount:       33
      CyclomaticComplexity: 9
      functionsReached:
        - is_dummy_netdev_class
        - netdev_close
        - netdev_dummy_cast
        - netdev_dummy_set_admin_state__
        - netdev_from_name
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - strcasecmp
        - unixctl_command_reply
        - unixctl_command_reply_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-dummy.c:2038,10'
          Dst:             strcasecmp
        - Src:             'lib/netdev-dummy.c:2040,18'
          Dst:             strcasecmp
        - Src:             'lib/netdev-dummy.c:2043,9'
          Dst:             unixctl_command_reply_error
        - Src:             'lib/netdev-dummy.c:2048,33'
          Dst:             netdev_from_name
        - Src:             'lib/netdev-dummy.c:2049,23'
          Dst:             is_dummy_netdev_class
        - Src:             'lib/netdev-dummy.c:2050,46'
          Dst:             netdev_dummy_cast
        - Src:             'lib/netdev-dummy.c:2052,13'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-dummy.c:2053,13'
          Dst:             netdev_dummy_set_admin_state__
        - Src:             'lib/netdev-dummy.c:2054,13'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/netdev-dummy.c:2056,13'
          Dst:             netdev_close
        - Src:             'lib/netdev-dummy.c:2058,13'
          Dst:             unixctl_command_reply_error
        - Src:             'lib/netdev-dummy.c:2059,13'
          Dst:             netdev_close
        - Src:             'lib/netdev-dummy.c:2065,9'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-dummy.c:2067,13'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-dummy.c:2068,13'
          Dst:             netdev_dummy_set_admin_state__
        - Src:             'lib/netdev-dummy.c:2069,13'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/netdev-dummy.c:2071,9'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/netdev-dummy.c:2073,5'
          Dst:             unixctl_command_reply
    - functionName:    netdev_dummy_receive
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1952
      functionLinenumberEnd: 2017
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         36
      ICount:          252
      EdgeCount:       48
      CyclomaticComplexity: 14
      functionsReached:
        - eth_from_flow_str
        - eth_from_packet
        - flow_extract
        - is_dummy_netdev_class
        - netdev_close
        - netdev_dummy_cast
        - netdev_dummy_queue_packet
        - netdev_from_name
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - strcmp
        - strtol
        - unixctl_command_reply
        - unixctl_command_reply_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-dummy.c:1957,14'
          Dst:             netdev_from_name
        - Src:             'lib/netdev-dummy.c:1958,21'
          Dst:             is_dummy_netdev_class
        - Src:             'lib/netdev-dummy.c:1959,9'
          Dst:             unixctl_command_reply_error
        - Src:             'lib/netdev-dummy.c:1962,17'
          Dst:             netdev_dummy_cast
        - Src:             'lib/netdev-dummy.c:1964,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-dummy.c:1966,26'
          Dst:             strcmp
        - Src:             'lib/netdev-dummy.c:1967,18'
          Dst:             strtol
        - Src:             'lib/netdev-dummy.c:1969,13'
          Dst:             unixctl_command_reply_error
        - Src:             'lib/netdev-dummy.c:1980,18'
          Dst:             eth_from_packet
        - Src:             'lib/netdev-dummy.c:1987,35'
          Dst:             strcmp
        - Src:             'lib/netdev-dummy.c:1988,31'
          Dst:             strtol
        - Src:             'lib/netdev-dummy.c:1991,21'
          Dst:             unixctl_command_reply_error
        - Src:             'lib/netdev-dummy.c:1998,22'
          Dst:             eth_from_flow_str
        - Src:             'lib/netdev-dummy.c:2000,17'
          Dst:             unixctl_command_reply_error
        - Src:             'lib/netdev-dummy.c:2005,13'
          Dst:             flow_extract
        - Src:             'lib/netdev-dummy.c:2008,9'
          Dst:             netdev_dummy_queue_packet
        - Src:             'lib/netdev-dummy.c:2011,5'
          Dst:             unixctl_command_reply
        - Src:             'lib/netdev-dummy.c:2014,5'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/netdev-dummy.c:2016,5'
          Dst:             netdev_close
    - 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:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_dummy_register
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2236
      functionLinenumberEnd: 2273
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         22
      ICount:          114
      EdgeCount:       28
      CyclomaticComplexity: 8
      functionsReached:
        - hmap_first
        - hmap_next
        - netdev_dummy_conn_state
        - netdev_dummy_ip4addr
        - netdev_dummy_ip6addr
        - netdev_dummy_override
        - netdev_dummy_receive
        - netdev_dummy_set_admin_state
        - netdev_enumerate_types
        - netdev_register_provider
        - netdev_vport_tunnel_register
        - sset_destroy
        - sset_init
        - strcmp
        - unixctl_command_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-dummy.c:2237,5'
          Dst:             unixctl_command_register
        - Src:             'lib/netdev-dummy.c:2237,5'
          Dst:             netdev_dummy_receive
        - Src:             'lib/netdev-dummy.c:2240,5'
          Dst:             unixctl_command_register
        - Src:             'lib/netdev-dummy.c:2240,5'
          Dst:             netdev_dummy_set_admin_state
        - Src:             'lib/netdev-dummy.c:2243,5'
          Dst:             unixctl_command_register
        - Src:             'lib/netdev-dummy.c:2243,5'
          Dst:             netdev_dummy_conn_state
        - Src:             'lib/netdev-dummy.c:2246,5'
          Dst:             unixctl_command_register
        - Src:             'lib/netdev-dummy.c:2246,5'
          Dst:             netdev_dummy_ip4addr
        - Src:             'lib/netdev-dummy.c:2249,5'
          Dst:             unixctl_command_register
        - Src:             'lib/netdev-dummy.c:2249,5'
          Dst:             netdev_dummy_ip6addr
        - Src:             'lib/netdev-dummy.c:2257,9'
          Dst:             sset_init
        - Src:             'lib/netdev-dummy.c:2258,9'
          Dst:             netdev_enumerate_types
        - Src:             'lib/netdev-dummy.c:2259,9'
          Dst:             hmap_first
        - Src:             'lib/netdev-dummy.c:2259,9'
          Dst:             hmap_first
        - Src:             'lib/netdev-dummy.c:2260,17'
          Dst:             strcmp
        - Src:             'lib/netdev-dummy.c:2261,17'
          Dst:             netdev_dummy_override
        - Src:             'lib/netdev-dummy.c:2259,9'
          Dst:             hmap_next
        - Src:             'lib/netdev-dummy.c:2259,9'
          Dst:             hmap_next
        - Src:             'lib/netdev-dummy.c:2264,9'
          Dst:             sset_destroy
        - Src:             'lib/netdev-dummy.c:2266,9'
          Dst:             netdev_dummy_override
        - Src:             'lib/netdev-dummy.c:2268,5'
          Dst:             netdev_register_provider
        - Src:             'lib/netdev-dummy.c:2269,5'
          Dst:             netdev_register_provider
        - Src:             'lib/netdev-dummy.c:2270,5'
          Dst:             netdev_register_provider
        - Src:             'lib/netdev-dummy.c:2272,5'
          Dst:             netdev_vport_tunnel_register
    - functionName:    netdev_dummy_queue_simulate_offload_packet
      functionSourceFile: '/src/openvswitch/lib/netdev-dummy.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1934
      functionLinenumberEnd: 1947
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          54
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - dp_packet_delete
        - is_dummy_netdev_class
        - netdev_dummy_cast
        - netdev_dummy_queue_packet__
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-dummy.c:1937,21'
          Dst:             is_dummy_netdev_class
        - Src:             'lib/netdev-dummy.c:1938,9'
          Dst:             dp_packet_delete
        - Src:             'lib/netdev-dummy.c:1942,13'
          Dst:             netdev_dummy_cast
        - Src:             'lib/netdev-dummy.c:1944,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-dummy.c:1945,5'
          Dst:             netdev_dummy_queue_packet__
        - Src:             'lib/netdev-dummy.c:1946,5'
          Dst:             ovs_mutex_unlock
    - functionName:    init_this_module_netdev_vport
      functionSourceFile: '/src/openvswitch/lib/netdev-vport.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-vport.c:56,1'
          Dst:             vlog_insert_module
    - functionName:    htonll
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 30
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byte-order.h:30,12'
          Dst:             htonl
        - Src:             'lib/byte-order.h:30,44'
          Dst:             htonl
        - Src:             'lib/byte-order.h:30,62'
          Dst:             htonl
    - functionName:    in6_addr_mapped_ipv4
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1215
      functionLinenumberEnd: 1220
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          20
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    in6_addr_set_mapped_ipv4
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1225
      functionLinenumberEnd: 1227
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - in6_addr_mapped_ipv4
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:1226,12'
          Dst:             in6_addr_mapped_ipv4
    - functionName:    ip_is_multicast
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 670
      functionLinenumberEnd: 671
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:671,18'
          Dst:             htonl
        - Src:             'lib/packets.h:671,40'
          Dst:             htonl
    - functionName:    ipv6_addr_is_multicast
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1209
      functionLinenumberEnd: 1210
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_next__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 401
      functionLinenumberEnd: 410
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          51
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    is_concomitant_vxlan_tunnel_present
      functionSourceFile: '/src/openvswitch/lib/netdev-vport.c'
      linkageType:     InternalLinkage
      functionLinenumber: 551
      functionLinenumberEnd: 605
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         22
      ICount:          186
      EdgeCount:       30
      CyclomaticComplexity: 10
      functionsReached:
        - netdev_get_class
        - netdev_get_type
        - ntohs
        - simap_get
        - strcmp
        - vport_class_cast
        - vport_tunnel_config
        - vxlan_get_port_ext_gbp_str
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-vport.c:552,54'
          Dst:             vport_tunnel_config
        - Src:             'lib/netdev-vport.c:553,51'
          Dst:             netdev_get_class
        - Src:             'lib/netdev-vport.c:553,34'
          Dst:             vport_class_cast
        - Src:             'lib/netdev-vport.c:554,24'
          Dst:             netdev_get_type
        - Src:             'lib/netdev-vport.c:557,9'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:565,13'
          Dst:             ntohs
        - Src:             'lib/netdev-vport.c:568,40'
          Dst:             ntohs
        - Src:             'lib/netdev-vport.c:568,13'
          Dst:             vxlan_get_port_ext_gbp_str
        - Src:             'lib/netdev-vport.c:573,17'
          Dst:             simap_get
        - Src:             'lib/netdev-vport.c:582,36'
          Dst:             ntohs
        - Src:             'lib/netdev-vport.c:582,9'
          Dst:             vxlan_get_port_ext_gbp_str
        - Src:             'lib/netdev-vport.c:587,13'
          Dst:             simap_get
        - Src:             'lib/netdev-vport.c:595,32'
          Dst:             ntohs
        - Src:             'lib/netdev-vport.c:595,5'
          Dst:             vxlan_get_port_ext_gbp_str
        - Src:             'lib/netdev-vport.c:600,9'
          Dst:             simap_get
    - functionName:    vport_tunnel_config
      functionSourceFile: '/src/openvswitch/lib/netdev-vport.c'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 95
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          22
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    vport_class_cast
      functionSourceFile: '/src/openvswitch/lib/netdev-vport.c'
      linkageType:     InternalLinkage
      functionLinenumber: 87
      functionLinenumberEnd: 89
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - is_vport_class
        - ovs_ignore
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-vport.c:88,16'
          Dst:             is_vport_class
        - Src:             'lib/netdev-vport.c:88,5'
          Dst:             ovs_ignore
    - functionName:    vxlan_get_port_ext_gbp_str
      functionSourceFile: '/src/openvswitch/lib/netdev-vport.c'
      linkageType:     InternalLinkage
      functionLinenumber: 498
      functionLinenumberEnd: 502
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - short
        - bool
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - snprintf
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-vport.c:499,5'
          Dst:             snprintf
    - functionName:    is_vport_class
      functionSourceFile: '/src/openvswitch/lib/netdev-vport-private.h'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_vport_construct
      functionSourceFile: '/src/openvswitch/lib/netdev-vport.c'
      linkageType:     InternalLinkage
      functionLinenumber: 196
      functionLinenumberEnd: 235
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         37
      ICount:          256
      EdgeCount:       47
      CyclomaticComplexity: 12
      functionsReached:
        - atoi
        - atomic_count_init
        - eth_addr_random
        - htons
        - netdev_get_class
        - netdev_get_name
        - netdev_get_type
        - netdev_vport_cast
        - netdev_vport_class_get_dpif_port
        - ovs_mutex_init
        - strcmp
        - strlen
        - strncmp
        - update_vxlan_global_cfg
        - xzalloc
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/netdev-vport.c:233,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/netdev-vport.c:197,40'
          Dst:             netdev_get_class
        - Src:             'lib/netdev-vport.c:198,29'
          Dst:             netdev_vport_class_get_dpif_port
        - Src:             'lib/netdev-vport.c:199,32'
          Dst:             netdev_vport_cast
        - Src:             'lib/netdev-vport.c:200,28'
          Dst:             netdev_get_name
        - Src:             'lib/netdev-vport.c:201,24'
          Dst:             netdev_get_type
        - Src:             'lib/netdev-vport.c:204,5'
          Dst:             ovs_mutex_init
        - Src:             'lib/netdev-vport.c:205,5'
          Dst:             atomic_count_init
        - Src:             'lib/netdev-vport.c:206,5'
          Dst:             eth_addr_random
        - Src:             'lib/netdev-vport.c:208,31'
          Dst:             strlen
        - Src:             'lib/netdev-vport.c:208,46'
          Dst:             strlen
        - Src:             'lib/netdev-vport.c:209,36'
          Dst:             strlen
        - Src:             'lib/netdev-vport.c:209,11'
          Dst:             strncmp
        - Src:             'lib/netdev-vport.c:210,20'
          Dst:             strlen
        - Src:             'lib/netdev-vport.c:211,16'
          Dst:             atoi
        - Src:             'lib/netdev-vport.c:214,44'
          Dst:             xzalloc
        - Src:             'lib/netdev-vport.c:219,10'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:220,36'
          Dst:             htons
        - Src:             'lib/netdev-vport.c:220,50'
          Dst:             htons
        - Src:             'lib/netdev-vport.c:221,17'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:222,36'
          Dst:             htons
        - Src:             'lib/netdev-vport.c:222,50'
          Dst:             htons
        - Src:             'lib/netdev-vport.c:223,9'
          Dst:             update_vxlan_global_cfg
        - Src:             'lib/netdev-vport.c:224,17'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:225,36'
          Dst:             htons
        - Src:             'lib/netdev-vport.c:225,50'
          Dst:             htons
        - Src:             'lib/netdev-vport.c:226,17'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:227,29'
          Dst:             htons
    - functionName:    netdev_vport_class_get_dpif_port
      functionSourceFile: '/src/openvswitch/lib/netdev-vport.c'
      linkageType:     InternalLinkage
      functionLinenumber: 125
      functionLinenumberEnd: 126
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - is_vport_class
        - vport_class_cast
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-vport.c:126,12'
          Dst:             is_vport_class
        - Src:             'lib/netdev-vport.c:126,36'
          Dst:             vport_class_cast
    - functionName:    netdev_vport_cast
      functionSourceFile: '/src/openvswitch/lib/netdev-vport-private.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - is_vport_class
        - netdev_get_class
        - ovs_ignore
      functionUses:    15
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-vport-private.h:61,31'
          Dst:             netdev_get_class
        - Src:             'lib/netdev-vport-private.h:61,16'
          Dst:             is_vport_class
        - Src:             'lib/netdev-vport-private.h:61,5'
          Dst:             ovs_ignore
    - functionName:    atomic_count_init
      functionSourceFile: '/src/openvswitch/lib/ovs-atomic.h'
      linkageType:     InternalLinkage
      functionLinenumber: 445
      functionLinenumberEnd: 447
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    eth_addr_random
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 314
      functionLinenumberEnd: 317
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - eth_addr_mark_random
        - random_bytes
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:315,5'
          Dst:             random_bytes
        - Src:             'lib/packets.h:316,5'
          Dst:             eth_addr_mark_random
    - functionName:    update_vxlan_global_cfg
      functionSourceFile: '/src/openvswitch/lib/netdev-vport.c'
      linkageType:     InternalLinkage
      functionLinenumber: 509
      functionLinenumberEnd: 546
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          168
      EdgeCount:       36
      CyclomaticComplexity: 11
      functionsReached:
        - netdev_get_class
        - netdev_get_type
        - ntohs
        - simap_find_and_delete
        - simap_get
        - simap_increase
        - simap_put
        - strcmp
        - vport_class_cast
        - vxlan_get_port_ext_gbp_str
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-vport.c:512,24'
          Dst:             netdev_get_type
        - Src:             'lib/netdev-vport.c:513,51'
          Dst:             netdev_get_class
        - Src:             'lib/netdev-vport.c:513,34'
          Dst:             vport_class_cast
        - Src:             'lib/netdev-vport.c:515,9'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:523,36'
          Dst:             ntohs
        - Src:             'lib/netdev-vport.c:523,9'
          Dst:             vxlan_get_port_ext_gbp_str
        - Src:             'lib/netdev-vport.c:528,17'
          Dst:             simap_get
        - Src:             'lib/netdev-vport.c:531,17'
          Dst:             simap_put
        - Src:             'lib/netdev-vport.c:533,17'
          Dst:             simap_find_and_delete
        - Src:             'lib/netdev-vport.c:539,36'
          Dst:             ntohs
        - Src:             'lib/netdev-vport.c:539,9'
          Dst:             vxlan_get_port_ext_gbp_str
        - Src:             'lib/netdev-vport.c:544,9'
          Dst:             simap_increase
    - functionName:    parse_key
      functionSourceFile: '/src/openvswitch/lib/netdev-vport.c'
      linkageType:     InternalLinkage
      functionLinenumber: 382
      functionLinenumberEnd: 404
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          74
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - htonll
        - smap_get
        - strcmp
        - strtoull
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-vport.c:388,9'
          Dst:             smap_get
        - Src:             'lib/netdev-vport.c:390,13'
          Dst:             smap_get
        - Src:             'lib/netdev-vport.c:398,10'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:402,23'
          Dst:             strtoull
        - Src:             'lib/netdev-vport.c:402,16'
          Dst:             htonll
    - functionName:    hmap_next
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 429
      functionLinenumberEnd: 432
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_next__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:432,15'
          Dst:             hmap_next__
    - functionName:    parse_srv6_segs
      functionSourceFile: '/src/openvswitch/lib/netdev-vport.c'
      linkageType:     InternalLinkage
      functionLinenumber: 439
      functionLinenumberEnd: 464
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          76
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - inet_pton
        - strtok_r
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-vport.c:449,21'
          Dst:             strtok_r
        - Src:             'lib/netdev-vport.c:454,13'
          Dst:             inet_pton
    - functionName:    parse_tunnel_ip
      functionSourceFile: '/src/openvswitch/lib/netdev-vport.c'
      linkageType:     InternalLinkage
      functionLinenumber: 409
      functionLinenumberEnd: 435
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          114
      EdgeCount:       31
      CyclomaticComplexity: 10
      functionsReached:
        - addr_is_ipv6
        - in6_addr_set_mapped_ipv4
        - ip_is_multicast
        - ipv6_addr_is_multicast
        - lookup_ip
        - lookup_ipv6
        - strcmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-vport.c:410,10'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:415,9'
          Dst:             addr_is_ipv6
        - Src:             'lib/netdev-vport.c:416,13'
          Dst:             lookup_ipv6
        - Src:             'lib/netdev-vport.c:419,30'
          Dst:             ipv6_addr_is_multicast
        - Src:             'lib/netdev-vport.c:425,13'
          Dst:             lookup_ip
        - Src:             'lib/netdev-vport.c:428,30'
          Dst:             ip_is_multicast
        - Src:             'lib/netdev-vport.c:431,9'
          Dst:             in6_addr_set_mapped_ipv4
    - functionName:    hmap_first
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 416
      functionLinenumberEnd: 417
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:417,12'
          Dst:             hmap_next__
    - functionName:    default_pt_mode
      functionSourceFile: '/src/openvswitch/lib/netdev-vport.c'
      linkageType:     InternalLinkage
      functionLinenumber: 491
      functionLinenumberEnd: 492
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    tunnel_supported_layers
      functionSourceFile: '/src/openvswitch/lib/netdev-vport.c'
      linkageType:     InternalLinkage
      functionLinenumber: 473
      functionLinenumberEnd: 488
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          87
      EdgeCount:       23
      CyclomaticComplexity: 8
      functionsReached:
        - strcmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-vport.c:474,10'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:476,17'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:479,17'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:481,17'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:483,17'
          Dst:             strcmp
    - functionName:    ntohll
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
        - ntohl
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byte-order.h:36,12'
          Dst:             htonl
        - Src:             'lib/byte-order.h:36,44'
          Dst:             ntohl
        - Src:             'lib/byte-order.h:36,62'
          Dst:             ntohl
    - functionName:    ipv6_addr_equals
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1184
      functionLinenumberEnd: 1186
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          80
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_change_seq_changed
      functionSourceFile: '/src/openvswitch/lib/netdev-provider.h'
      linkageType:     InternalLinkage
      functionLinenumber: 112
      functionLinenumberEnd: 124
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          58
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - connectivity_seq_get
        - seq_change
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-provider.h:115,16'
          Dst:             connectivity_seq_get
        - Src:             'lib/netdev-provider.h:115,5'
          Dst:             seq_change
    - functionName:    tunnel_check_status_change__
      functionSourceFile: '/src/openvswitch/lib/netdev-vport.c'
      linkageType:     InternalLinkage
      functionLinenumber: 292
      functionLinenumberEnd: 321
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          109
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - netdev_close
        - netdev_get_carrier
        - netdev_open
        - ovs_router_lookup
        - ovs_strlcpy
        - strcmp
        - vport_tunnel_config
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-vport.c:293,50'
          Dst:             vport_tunnel_config
        - Src:             'lib/netdev-vport.c:303,9'
          Dst:             ovs_router_lookup
        - Src:             'lib/netdev-vport.c:306,14'
          Dst:             netdev_open
        - Src:             'lib/netdev-vport.c:307,22'
          Dst:             netdev_get_carrier
        - Src:             'lib/netdev-vport.c:308,13'
          Dst:             netdev_close
        - Src:             'lib/netdev-vport.c:312,9'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:314,9'
          Dst:             ovs_strlcpy
    - functionName:    ipv6_addr_is_set
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1205
      functionLinenumberEnd: 1206
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ipv6_addr_equals
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:1206,13'
          Dst:             ipv6_addr_equals
    - functionName:    netdev_vport_route_changed
      functionSourceFile: '/src/openvswitch/lib/netdev-vport.c'
      linkageType:     InternalLinkage
      functionLinenumber: 161
      functionLinenumberEnd: 185
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         15
      ICount:          87
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - ipv6_addr_is_set
        - netdev_change_seq_changed
        - netdev_close
        - netdev_get_tunnel_config
        - netdev_get_vports
        - netdev_vport_cast
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - tunnel_check_status_change__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-vport.c:165,14'
          Dst:             netdev_get_vports
        - Src:             'lib/netdev-vport.c:169,39'
          Dst:             netdev_vport_cast
        - Src:             'lib/netdev-vport.c:171,9'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-vport.c:173,19'
          Dst:             netdev_get_tunnel_config
        - Src:             'lib/netdev-vport.c:174,24'
          Dst:             ipv6_addr_is_set
        - Src:             'lib/netdev-vport.c:175,17'
          Dst:             tunnel_check_status_change__
        - Src:             'lib/netdev-vport.c:176,17'
          Dst:             netdev_change_seq_changed
        - Src:             'lib/netdev-vport.c:179,9'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/netdev-vport.c:181,9'
          Dst:             netdev_close
    - functionName:    set_patch_config
      functionSourceFile: '/src/openvswitch/lib/netdev-vport.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1160
      functionLinenumberEnd: 1192
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         46
      ICount:          216
      EdgeCount:       57
      CyclomaticComplexity: 13
      functionsReached:
        - netdev_change_seq_changed
        - netdev_get_name
        - netdev_vport_cast
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - smap_count
        - smap_get
        - strcmp
        - vlog
        - xasprintf
        - xstrdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-vport.c:1161,32'
          Dst:             netdev_vport_cast
        - Src:             'lib/netdev-vport.c:1162,24'
          Dst:             netdev_get_name
        - Src:             'lib/netdev-vport.c:1165,12'
          Dst:             smap_get
        - Src:             'lib/netdev-vport.c:1167,9'
          Dst:             vlog
        - Src:             'lib/netdev-vport.c:1167,9'
          Dst:             xasprintf
        - Src:             'lib/netdev-vport.c:1172,9'
          Dst:             smap_count
        - Src:             'lib/netdev-vport.c:1173,9'
          Dst:             vlog
        - Src:             'lib/netdev-vport.c:1173,9'
          Dst:             xasprintf
        - Src:             'lib/netdev-vport.c:1178,10'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:1179,9'
          Dst:             vlog
        - Src:             'lib/netdev-vport.c:1179,9'
          Dst:             xasprintf
        - Src:             'lib/netdev-vport.c:1183,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-vport.c:1184,23'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:1186,21'
          Dst:             xstrdup
        - Src:             'lib/netdev-vport.c:1187,9'
          Dst:             netdev_change_seq_changed
        - Src:             'lib/netdev-vport.c:1189,5'
          Dst:             ovs_mutex_unlock
    - functionName:    netdev_vport_patch_register
      functionSourceFile: '/src/openvswitch/lib/netdev-vport.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1385
      functionLinenumberEnd: 1397
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - netdev_register_provider
        - simap_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-vport.c:1395,5'
          Dst:             simap_init
        - Src:             'lib/netdev-vport.c:1396,5'
          Dst:             netdev_register_provider
    - functionName:    netdev_vport_run
      functionSourceFile: '/src/openvswitch/lib/netdev-vport.c'
      linkageType:     InternalLinkage
      functionLinenumber: 354
      functionLinenumberEnd: 363
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - netdev_vport_route_changed
        - route_table_get_change_seq
        - route_table_run
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-vport.c:357,5'
          Dst:             route_table_run
        - Src:             'lib/netdev-vport.c:358,11'
          Dst:             route_table_get_change_seq
        - Src:             'lib/netdev-vport.c:361,9'
          Dst:             netdev_vport_route_changed
    - functionName:    netdev_vport_wait
      functionSourceFile: '/src/openvswitch/lib/netdev-vport.c'
      linkageType:     InternalLinkage
      functionLinenumber: 367
      functionLinenumberEnd: 375
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - poll_immediate_wake_at
        - route_table_get_change_seq
        - route_table_wait
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-vport.c:370,5'
          Dst:             route_table_wait
        - Src:             'lib/netdev-vport.c:371,11'
          Dst:             route_table_get_change_seq
        - Src:             'lib/netdev-vport.c:373,9'
          Dst:             poll_immediate_wake_at
    - functionName:    netdev_vport_alloc
      functionSourceFile: '/src/openvswitch/lib/netdev-vport.c'
      linkageType:     InternalLinkage
      functionLinenumber: 189
      functionLinenumberEnd: 191
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - xzalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-vport.c:190,35'
          Dst:             xzalloc
    - functionName:    netdev_vport_destruct
      functionSourceFile: '/src/openvswitch/lib/netdev-vport.c'
      linkageType:     InternalLinkage
      functionLinenumber: 240
      functionLinenumberEnd: 253
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          88
      EdgeCount:       10
      CyclomaticComplexity: 2
      functionsReached:
        - netdev_get_type
        - netdev_vport_cast
        - ovs_mutex_destroy
        - ovsrcu_postpone__
        - strcmp
        - update_vxlan_global_cfg
        - vport_tunnel_config
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib/netdev-vport.c:249,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/netdev-vport.c:241,35'
          Dst:             netdev_vport_cast
        - Src:             'lib/netdev-vport.c:242,50'
          Dst:             vport_tunnel_config
        - Src:             'lib/netdev-vport.c:243,24'
          Dst:             netdev_get_type
        - Src:             'lib/netdev-vport.c:245,10'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:246,9'
          Dst:             update_vxlan_global_cfg
        - Src:             'lib/netdev-vport.c:250,5'
          Dst:             ovsrcu_postpone__
        - Src:             'lib/netdev-vport.c:252,5'
          Dst:             ovs_mutex_destroy
    - functionName:    netdev_vport_dealloc
      functionSourceFile: '/src/openvswitch/lib/netdev-vport.c'
      linkageType:     InternalLinkage
      functionLinenumber: 257
      functionLinenumberEnd: 260
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - netdev_vport_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-vport.c:258,35'
          Dst:             netdev_vport_cast
    - functionName:    get_patch_config
      functionSourceFile: '/src/openvswitch/lib/netdev-vport.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1146
      functionLinenumberEnd: 1155
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - netdev_vport_cast
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - smap_add
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-vport.c:1147,32'
          Dst:             netdev_vport_cast
        - Src:             'lib/netdev-vport.c:1149,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-vport.c:1151,9'
          Dst:             smap_add
        - Src:             'lib/netdev-vport.c:1153,5'
          Dst:             ovs_mutex_unlock
    - functionName:    netdev_vport_set_etheraddr
      functionSourceFile: '/src/openvswitch/lib/netdev-vport.c'
      linkageType:     InternalLinkage
      functionLinenumber: 264
      functionLinenumberEnd: 272
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          32
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - netdev_change_seq_changed
        - netdev_vport_cast
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-vport.c:265,35'
          Dst:             netdev_vport_cast
        - Src:             'lib/netdev-vport.c:267,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-vport.c:269,5'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/netdev-vport.c:270,5'
          Dst:             netdev_change_seq_changed
    - functionName:    netdev_vport_get_etheraddr
      functionSourceFile: '/src/openvswitch/lib/netdev-vport.c'
      linkageType:     InternalLinkage
      functionLinenumber: 277
      functionLinenumberEnd: 284
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - netdev_vport_cast
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-vport.c:278,35'
          Dst:             netdev_vport_cast
        - Src:             'lib/netdev-vport.c:280,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-vport.c:282,5'
          Dst:             ovs_mutex_unlock
    - functionName:    netdev_vport_get_stats
      functionSourceFile: '/src/openvswitch/lib/netdev-vport.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1196
      functionLinenumberEnd: 1207
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          53
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - netdev_vport_cast
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-vport.c:1197,32'
          Dst:             netdev_vport_cast
        - Src:             'lib/netdev-vport.c:1199,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-vport.c:1205,5'
          Dst:             ovs_mutex_unlock
    - functionName:    netdev_vport_get_pt_mode
      functionSourceFile: '/src/openvswitch/lib/netdev-vport.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1212
      functionLinenumberEnd: 1217
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - netdev_get_tunnel_config
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-vport.c:1215,15'
          Dst:             netdev_get_tunnel_config
    - functionName:    netdev_vport_update_flags
      functionSourceFile: '/src/openvswitch/lib/netdev-vport.c'
      linkageType:     InternalLinkage
      functionLinenumber: 343
      functionLinenumberEnd: 350
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          31
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsthread_once_start
      functionSourceFile: '/src/openvswitch/./include/openvswitch/thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsthread_once_start__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/thread.h:161,12'
          Dst:             ovsthread_once_start__
    - functionName:    tunnel_get_status
      functionSourceFile: '/src/openvswitch/lib/netdev-vport.c'
      linkageType:     InternalLinkage
      functionLinenumber: 325
      functionLinenumberEnd: 335
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - netdev_vport_cast
        - smap_add
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-vport.c:326,35'
          Dst:             netdev_vport_cast
        - Src:             'lib/netdev-vport.c:329,9'
          Dst:             smap_add
        - Src:             'lib/netdev-vport.c:331,9'
          Dst:             smap_add
    - functionName:    netdev_vport_get_ifindex
      functionSourceFile: '/src/openvswitch/lib/netdev-vport.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1225
      functionLinenumberEnd: 1236
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          50
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - linux_get_ifindex
        - netdev_get_dpif_type
        - netdev_vport_get_dpif_port
        - strcmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-vport.c:1227,24'
          Dst:             netdev_vport_get_dpif_port
        - Src:             'lib/netdev-vport.c:1228,29'
          Dst:             netdev_get_dpif_type
        - Src:             'lib/netdev-vport.c:1230,22'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:1235,12'
          Dst:             linux_get_ifindex
    - functionName:    netdev_vport_get_dpif_port
      functionSourceFile: '/src/openvswitch/lib/netdev-vport.c'
      linkageType:     InternalLinkage
      functionLinenumber: 132
      functionLinenumberEnd: 154
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          68
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - netdev_get_class
        - netdev_get_name
        - netdev_get_tunnel_config
        - netdev_vport_class_get_dpif_port
        - netdev_vport_needs_dst_port
        - ntohs
        - ovs_ignore
        - snprintf
        - strlen
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-vport.c:133,40'
          Dst:             netdev_get_class
        - Src:             'lib/netdev-vport.c:134,29'
          Dst:             netdev_vport_class_get_dpif_port
        - Src:             'lib/netdev-vport.c:137,16'
          Dst:             netdev_get_name
        - Src:             'lib/netdev-vport.c:140,9'
          Dst:             netdev_vport_needs_dst_port
        - Src:             'lib/netdev-vport.c:147,20'
          Dst:             strlen
        - Src:             'lib/netdev-vport.c:147,9'
          Dst:             ovs_ignore
        - Src:             'lib/netdev-vport.c:149,24'
          Dst:             netdev_get_tunnel_config
        - Src:             'lib/netdev-vport.c:149,18'
          Dst:             ntohs
        - Src:             'lib/netdev-vport.c:148,9'
          Dst:             snprintf
    - functionName:    netdev_vport_needs_dst_port
      functionSourceFile: '/src/openvswitch/lib/netdev-vport.c'
      linkageType:     InternalLinkage
      functionLinenumber: 114
      functionLinenumberEnd: 120
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          69
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - netdev_get_class
        - netdev_get_type
        - strcmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-vport.c:115,40'
          Dst:             netdev_get_class
        - Src:             'lib/netdev-vport.c:116,24'
          Dst:             netdev_get_type
        - Src:             'lib/netdev-vport.c:119,15'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:119,42'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:120,15'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:120,40'
          Dst:             strcmp
    - functionName:    get_tunnel_config
      functionSourceFile: '/src/openvswitch/lib/netdev-vport.c'
      linkageType:     InternalLinkage
      functionLinenumber: 962
      functionLinenumberEnd: 1090
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         123
      ICount:          635
      EdgeCount:       164
      CyclomaticComplexity: 43
      functionsReached:
        - default_pt_mode
        - ipv6_addr_is_set
        - netdev_get_tunnel_config
        - netdev_get_type
        - ntohll
        - ntohs
        - smap_add
        - smap_add_format
        - smap_add_ipv6
        - strcmp
        - tunnel_supported_layers
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-vport.c:963,50'
          Dst:             netdev_get_tunnel_config
        - Src:             'lib/netdev-vport.c:964,24'
          Dst:             netdev_get_type
        - Src:             'lib/netdev-vport.c:970,9'
          Dst:             ipv6_addr_is_set
        - Src:             'lib/netdev-vport.c:971,9'
          Dst:             smap_add_ipv6
        - Src:             'lib/netdev-vport.c:973,9'
          Dst:             smap_add
        - Src:             'lib/netdev-vport.c:976,9'
          Dst:             ipv6_addr_is_set
        - Src:             'lib/netdev-vport.c:977,9'
          Dst:             smap_add_ipv6
        - Src:             'lib/netdev-vport.c:979,9'
          Dst:             smap_add
        - Src:             'lib/netdev-vport.c:983,9'
          Dst:             smap_add
        - Src:             'lib/netdev-vport.c:986,49'
          Dst:             ntohll
        - Src:             'lib/netdev-vport.c:986,9'
          Dst:             smap_add_format
        - Src:             'lib/netdev-vport.c:989,13'
          Dst:             smap_add
        - Src:             'lib/netdev-vport.c:992,29'
          Dst:             ntohll
        - Src:             'lib/netdev-vport.c:991,13'
          Dst:             smap_add_format
        - Src:             'lib/netdev-vport.c:996,13'
          Dst:             smap_add
        - Src:             'lib/netdev-vport.c:999,29'
          Dst:             ntohll
        - Src:             'lib/netdev-vport.c:998,13'
          Dst:             smap_add_format
        - Src:             'lib/netdev-vport.c:1004,9'
          Dst:             smap_add
        - Src:             'lib/netdev-vport.c:1006,9'
          Dst:             smap_add_format
        - Src:             'lib/netdev-vport.c:1010,9'
          Dst:             smap_add
        - Src:             'lib/netdev-vport.c:1012,9'
          Dst:             smap_add_format
        - Src:             'lib/netdev-vport.c:1016,29'
          Dst:             ntohs
        - Src:             'lib/netdev-vport.c:1018,15'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:1019,15'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:1020,15'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:1021,14'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:1022,13'
          Dst:             smap_add_format
        - Src:             'lib/netdev-vport.c:1027,9'
          Dst:             smap_add
        - Src:             'lib/netdev-vport.c:1029,9'
          Dst:             smap_add
        - Src:             'lib/netdev-vport.c:1033,9'
          Dst:             smap_add
        - Src:             'lib/netdev-vport.c:1036,33'
          Dst:             tunnel_supported_layers
        - Src:             'lib/netdev-vport.c:1037,29'
          Dst:             default_pt_mode
        - Src:             'lib/netdev-vport.c:1038,9'
          Dst:             smap_add
        - Src:             'lib/netdev-vport.c:1045,9'
          Dst:             smap_add
        - Src:             'lib/netdev-vport.c:1049,9'
          Dst:             smap_add_format
        - Src:             'lib/netdev-vport.c:1053,10'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:1053,37'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:1058,13'
          Dst:             smap_add
        - Src:             'lib/netdev-vport.c:1059,13'
          Dst:             smap_add
        - Src:             'lib/netdev-vport.c:1060,13'
          Dst:             smap_add
        - Src:             'lib/netdev-vport.c:1061,13'
          Dst:             smap_add
        - Src:             'lib/netdev-vport.c:1063,13'
          Dst:             smap_add_format
        - Src:             'lib/netdev-vport.c:1067,21'
          Dst:             smap_add
        - Src:             'lib/netdev-vport.c:1069,21'
          Dst:             smap_add_format
        - Src:             'lib/netdev-vport.c:1074,21'
          Dst:             smap_add
        - Src:             'lib/netdev-vport.c:1076,21'
          Dst:             smap_add_format
        - Src:             'lib/netdev-vport.c:1080,21'
          Dst:             smap_add
        - Src:             'lib/netdev-vport.c:1082,21'
          Dst:             smap_add_format
    - functionName:    get_netdev_tunnel_config
      functionSourceFile: '/src/openvswitch/lib/netdev-vport.c'
      linkageType:     InternalLinkage
      functionLinenumber: 100
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - netdev_vport_cast
        - vport_tunnel_config
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-vport.c:101,32'
          Dst:             netdev_vport_cast
        - Src:             'lib/netdev-vport.c:101,12'
          Dst:             vport_tunnel_config
    - functionName:    set_tunnel_config
      functionSourceFile: '/src/openvswitch/lib/netdev-vport.c'
      linkageType:     InternalLinkage
      functionLinenumber: 609
      functionLinenumberEnd: 957
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         264
      ICount:          1470
      EdgeCount:       347
      CyclomaticComplexity: 85
      functionsReached:
        - atoi
        - default_pt_mode
        - ds_chomp
        - ds_cstr
        - ds_destroy
        - ds_put_format
        - ds_steal_cstr
        - hmap_first
        - hmap_next
        - htons
        - ipv6_addr_is_set
        - is_concomitant_vxlan_tunnel_present
        - memcmp
        - netdev_change_seq_changed
        - netdev_get_name
        - netdev_get_type
        - netdev_vport_cast
        - netdev_vport_needs_dst_port
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovsrcu_postpone__
        - parse_key
        - parse_srv6_segs
        - parse_tunnel_ip
        - smap_get
        - str_to_u16
        - strcmp
        - strncmp
        - strstr
        - strtok_r
        - strtol
        - strtoul
        - tunnel_check_status_change__
        - tunnel_supported_layers
        - update_vxlan_global_cfg
        - vlog
        - vport_tunnel_config
        - xmemdup
        - xstrdup
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib/netdev-vport.c:646,13'
          Branch Sides:    []
        - Branch String:   'lib/netdev-vport.c:659,13'
          Branch Sides:    []
        - Branch String:   'lib/netdev-vport.c:793,13'
          Branch Sides:    []
        - Branch String:   'lib/netdev-vport.c:936,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/netdev-vport.c:610,32'
          Dst:             netdev_vport_cast
        - Src:             'lib/netdev-vport.c:612,24'
          Dst:             netdev_get_name
        - Src:             'lib/netdev-vport.c:613,24'
          Dst:             netdev_get_type
        - Src:             'lib/netdev-vport.c:621,16'
          Dst:             strstr
        - Src:             'lib/netdev-vport.c:621,39'
          Dst:             strstr
        - Src:             'lib/netdev-vport.c:622,16'
          Dst:             strstr
        - Src:             'lib/netdev-vport.c:623,15'
          Dst:             strstr
        - Src:             'lib/netdev-vport.c:627,10'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:628,28'
          Dst:             htons
        - Src:             'lib/netdev-vport.c:631,10'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:632,28'
          Dst:             htons
        - Src:             'lib/netdev-vport.c:635,10'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:636,28'
          Dst:             htons
        - Src:             'lib/netdev-vport.c:639,22'
          Dst:             netdev_vport_needs_dst_port
        - Src:             'lib/netdev-vport.c:642,5'
          Dst:             hmap_first
        - Src:             'lib/netdev-vport.c:643,14'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:644,19'
          Dst:             parse_tunnel_ip
        - Src:             'lib/netdev-vport.c:648,17'
          Dst:             ds_put_format
        - Src:             'lib/netdev-vport.c:651,17'
          Dst:             ds_put_format
        - Src:             'lib/netdev-vport.c:656,21'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:657,19'
          Dst:             parse_tunnel_ip
        - Src:             'lib/netdev-vport.c:661,17'
          Dst:             ds_put_format
        - Src:             'lib/netdev-vport.c:664,21'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:665,18'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:670,23'
          Dst:             strtol
        - Src:             'lib/netdev-vport.c:674,21'
          Dst:             ds_put_format
        - Src:             'lib/netdev-vport.c:678,21'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:679,18'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:682,31'
          Dst:             atoi
        - Src:             'lib/netdev-vport.c:684,21'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:685,38'
          Dst:             atoi
        - Src:             'lib/netdev-vport.c:685,32'
          Dst:             htons
        - Src:             'lib/netdev-vport.c:686,21'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:687,18'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:689,25'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:692,21'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:693,18'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:696,21'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:697,18'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:700,21'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:701,21'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:702,21'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:703,21'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:705,21'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:705,51'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:706,25'
          Dst:             xstrdup
        - Src:             'lib/netdev-vport.c:711,19'
          Dst:             strtok_r
        - Src:             'lib/netdev-vport.c:713,22'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:713,48'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:715,29'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:715,55'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:718,21'
          Dst:             ds_put_format
        - Src:             'lib/netdev-vport.c:722,23'
          Dst:             strtok_r
        - Src:             'lib/netdev-vport.c:726,21'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:727,39'
          Dst:             strtoul
        - Src:             'lib/netdev-vport.c:729,21'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:730,18'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:734,38'
          Dst:             strtol
        - Src:             'lib/netdev-vport.c:737,21'
          Dst:             ds_put_format
        - Src:             'lib/netdev-vport.c:743,21'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:744,18'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:751,38'
          Dst:             atoi
        - Src:             'lib/netdev-vport.c:754,21'
          Dst:             ds_put_format
        - Src:             'lib/netdev-vport.c:760,21'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:761,18'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:765,38'
          Dst:             atoi
        - Src:             'lib/netdev-vport.c:768,21'
          Dst:             ds_put_format
        - Src:             'lib/netdev-vport.c:774,21'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:775,18'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:779,39'
          Dst:             strtol
        - Src:             'lib/netdev-vport.c:782,21'
          Dst:             ds_put_format
        - Src:             'lib/netdev-vport.c:788,21'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:789,19'
          Dst:             parse_srv6_segs
        - Src:             'lib/netdev-vport.c:795,17'
          Dst:             ds_put_format
        - Src:             'lib/netdev-vport.c:799,21'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:800,18'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:802,25'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:807,21'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:808,18'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:809,46'
          Dst:             htons
        - Src:             'lib/netdev-vport.c:811,25'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:812,46'
          Dst:             htons
        - Src:             'lib/netdev-vport.c:816,32'
          Dst:             str_to_u16
        - Src:             'lib/netdev-vport.c:821,22'
          Dst:             ds_put_format
        - Src:             'lib/netdev-vport.c:826,46'
          Dst:             htons
        - Src:             'lib/netdev-vport.c:828,21'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:829,21'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:830,21'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:831,21'
          Dst:             strncmp
        - Src:             'lib/netdev-vport.c:838,13'
          Dst:             ds_put_format
        - Src:             'lib/netdev-vport.c:642,5'
          Dst:             hmap_next
        - Src:             'lib/netdev-vport.c:848,23'
          Dst:             strstr
        - Src:             'lib/netdev-vport.c:852,33'
          Dst:             tunnel_supported_layers
        - Src:             'lib/netdev-vport.c:853,30'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:856,31'
          Dst:             smap_get
        - Src:             'lib/netdev-vport.c:858,27'
          Dst:             default_pt_mode
        - Src:             'lib/netdev-vport.c:859,17'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:862,13'
          Dst:             ds_put_format
        - Src:             'lib/netdev-vport.c:868,17'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:871,13'
          Dst:             ds_put_format
        - Src:             'lib/netdev-vport.c:877,17'
          Dst:             strcmp
        - Src:             'lib/netdev-vport.c:880,9'
          Dst:             ds_put_format
        - Src:             'lib/netdev-vport.c:886,10'
          Dst:             ipv6_addr_is_set
        - Src:             'lib/netdev-vport.c:887,9'
          Dst:             ds_put_format
        - Src:             'lib/netdev-vport.c:894,9'
          Dst:             ds_put_format
        - Src:             'lib/netdev-vport.c:902,9'
          Dst:             ds_put_format
        - Src:             'lib/netdev-vport.c:913,22'
          Dst:             parse_key
        - Src:             'lib/netdev-vport.c:917,23'
          Dst:             parse_key
        - Src:             'lib/netdev-vport.c:921,9'
          Dst:             is_concomitant_vxlan_tunnel_present
        - Src:             'lib/netdev-vport.c:922,9'
          Dst:             ds_put_format
        - Src:             'lib/netdev-vport.c:930,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-vport.c:932,20'
          Dst:             vport_tunnel_config
        - Src:             'lib/netdev-vport.c:933,5'
          Dst:             update_vxlan_global_cfg
        - Src:             'lib/netdev-vport.c:935,9'
          Dst:             memcmp
        - Src:             'lib/netdev-vport.c:936,9'
          Dst:             xmemdup
        - Src:             'lib/netdev-vport.c:937,9'
          Dst:             ovsrcu_postpone__
        - Src:             'lib/netdev-vport.c:939,9'
          Dst:             tunnel_check_status_change__
        - Src:             'lib/netdev-vport.c:940,9'
          Dst:             netdev_change_seq_changed
        - Src:             'lib/netdev-vport.c:942,5'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/netdev-vport.c:948,9'
          Dst:             ds_chomp
        - Src:             'lib/netdev-vport.c:949,9'
          Dst:             ds_cstr
        - Src:             'lib/netdev-vport.c:949,9'
          Dst:             vlog
        - Src:             'lib/netdev-vport.c:951,21'
          Dst:             ds_steal_cstr
        - Src:             'lib/netdev-vport.c:955,5'
          Dst:             ds_destroy
    - 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:    16
      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:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_vport_tunnel_register
      functionSourceFile: '/src/openvswitch/lib/netdev-vport.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1265
      functionLinenumberEnd: 1381
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         10
      ICount:          49
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - netdev_register_provider
        - netdev_tnl_egress_port_range
        - ovsthread_once_done
        - ovsthread_once_start
        - simap_init
        - unixctl_command_register
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-vport.c:1368,9'
          Dst:             ovsthread_once_start
        - Src:             'lib/netdev-vport.c:1372,13'
          Dst:             simap_init
        - Src:             'lib/netdev-vport.c:1373,13'
          Dst:             netdev_register_provider
        - Src:             'lib/netdev-vport.c:1376,9'
          Dst:             unixctl_command_register
        - Src:             'lib/netdev-vport.c:1376,9'
          Dst:             netdev_tnl_egress_port_range
        - Src:             'lib/netdev-vport.c:1379,9'
          Dst:             ovsthread_once_done
    - functionName:    netdev_vport_inc_tx
      functionSourceFile: '/src/openvswitch/lib/netdev-vport.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1133
      functionLinenumberEnd: 1142
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          55
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - is_vport_class
        - netdev_get_class
        - netdev_vport_cast
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-vport.c:1134,24'
          Dst:             netdev_get_class
        - Src:             'lib/netdev-vport.c:1134,9'
          Dst:             is_vport_class
        - Src:             'lib/netdev-vport.c:1135,36'
          Dst:             netdev_vport_cast
        - Src:             'lib/netdev-vport.c:1137,9'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-vport.c:1140,9'
          Dst:             ovs_mutex_unlock
    - functionName:    netdev_vport_inc_rx
      functionSourceFile: '/src/openvswitch/lib/netdev-vport.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1119
      functionLinenumberEnd: 1128
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          55
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - is_vport_class
        - netdev_get_class
        - netdev_vport_cast
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-vport.c:1120,24'
          Dst:             netdev_get_class
        - Src:             'lib/netdev-vport.c:1120,9'
          Dst:             is_vport_class
        - Src:             'lib/netdev-vport.c:1121,36'
          Dst:             netdev_vport_cast
        - Src:             'lib/netdev-vport.c:1123,9'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-vport.c:1126,9'
          Dst:             ovs_mutex_unlock
    - functionName:    netdev_vport_patch_peer
      functionSourceFile: '/src/openvswitch/lib/netdev-vport.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1100
      functionLinenumberEnd: 1113
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          52
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - netdev_vport_cast
        - netdev_vport_is_patch
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - xstrdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-vport.c:1103,9'
          Dst:             netdev_vport_is_patch
        - Src:             'lib/netdev-vport.c:1104,39'
          Dst:             netdev_vport_cast
        - Src:             'lib/netdev-vport.c:1106,9'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/netdev-vport.c:1108,20'
          Dst:             xstrdup
        - Src:             'lib/netdev-vport.c:1110,9'
          Dst:             ovs_mutex_unlock
    - functionName:    netdev_vport_is_patch
      functionSourceFile: '/src/openvswitch/lib/netdev-vport.c'
      linkageType:     InternalLinkage
      functionLinenumber: 106
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - netdev_get_class
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-vport.c:107,40'
          Dst:             netdev_get_class
    - functionName:    netdev_vport_is_vport_class
      functionSourceFile: '/src/openvswitch/lib/netdev-vport.c'
      linkageType:     InternalLinkage
      functionLinenumber: 81
      functionLinenumberEnd: 82
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - is_vport_class
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-vport.c:82,12'
          Dst:             is_vport_class
    - functionName:    init_this_module_netlink
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32
      functionLinenumberEnd: 32
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:32,1'
          Dst:             vlog_insert_module
    - functionName:    nl_attr_find_nested
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1003
      functionLinenumberEnd: 1004
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_attr_find__
        - nl_attr_get
        - nl_attr_get_size
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:1004,27'
          Dst:             nl_attr_get
        - Src:             'lib/netlink.c:1004,45'
          Dst:             nl_attr_get_size
        - Src:             'lib/netlink.c:1004,12'
          Dst:             nl_attr_find__
    - functionName:    nl_attr_get
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 648
      functionLinenumberEnd: 650
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    213
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:649,5'
          Dst:             ovs_ignore
    - functionName:    nl_attr_get_size
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 656
      functionLinenumberEnd: 658
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    130
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:657,5'
          Dst:             ovs_ignore
    - functionName:    nl_attr_find__
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 974
      functionLinenumberEnd: 984
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          62
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - nl_attr_is_valid
        - nl_attr_len_pad
        - nl_attr_next
        - nl_attr_type
      functionUses:    13
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:978,5'
          Dst:             nl_attr_is_valid
        - Src:             'lib/netlink.c:979,13'
          Dst:             nl_attr_type
        - Src:             'lib/netlink.c:978,5'
          Dst:             nl_attr_len_pad
        - Src:             'lib/netlink.c:978,5'
          Dst:             nl_attr_next
    - functionName:    nl_attr_is_valid
      functionSourceFile: '/src/openvswitch/lib/netlink.h'
      linkageType:     InternalLinkage
      functionLinenumber: 171
      functionLinenumberEnd: 174
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nl_attr_type
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 641
      functionLinenumberEnd: 642
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    78
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nl_attr_len_pad
      functionSourceFile: '/src/openvswitch/lib/netlink.h'
      linkageType:     InternalLinkage
      functionLinenumber: 179
      functionLinenumberEnd: 182
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          37
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nl_attr_next
      functionSourceFile: '/src/openvswitch/lib/netlink.h'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 165
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nl_attr_find
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 992
      functionLinenumberEnd: 994
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_attr_find__
        - ofpbuf_at
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:993,27'
          Dst:             ofpbuf_at
        - Src:             'lib/netlink.c:993,12'
          Dst:             nl_attr_find__
    - functionName:    ofpbuf_at
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 183
      functionLinenumberEnd: 189
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:185,9'
          Dst:             ovs_ignore
    - functionName:    nl_parse_nested
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 965
      functionLinenumberEnd: 969
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_attr_get_nested
        - nl_policy_parse
      functionUses:    45
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:968,5'
          Dst:             nl_attr_get_nested
        - Src:             'lib/netlink.c:969,12'
          Dst:             nl_policy_parse
    - functionName:    nl_attr_get_nested
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 798
      functionLinenumberEnd: 800
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_attr_get
        - nl_attr_get_size
        - ofpbuf_use_const
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:799,30'
          Dst:             nl_attr_get
        - Src:             'lib/netlink.c:799,48'
          Dst:             nl_attr_get_size
        - Src:             'lib/netlink.c:799,5'
          Dst:             ofpbuf_use_const
    - functionName:    nl_policy_parse
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 916
      functionLinenumberEnd: 956
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         53
      ICount:          285
      EdgeCount:       68
      CyclomaticComplexity: 17
      functionsReached:
        - nl_attr_is_valid
        - nl_attr_len_pad
        - nl_attr_next
        - nl_attr_type
        - nl_attr_validate
        - ofpbuf_at
        - vlog_rate_limit
      functionUses:    22
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:924,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/netlink.c:928,5'
          Dst:             ofpbuf_at
        - Src:             'lib/netlink.c:928,5'
          Dst:             nl_attr_is_valid
        - Src:             'lib/netlink.c:931,25'
          Dst:             nl_attr_type
        - Src:             'lib/netlink.c:934,18'
          Dst:             nl_attr_validate
        - Src:             'lib/netlink.c:938,17'
          Dst:             vlog_rate_limit
        - Src:             'lib/netlink.c:928,5'
          Dst:             nl_attr_len_pad
        - Src:             'lib/netlink.c:928,5'
          Dst:             nl_attr_next
        - Src:             'lib/netlink.c:944,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/netlink.c:951,13'
          Dst:             vlog_rate_limit
    - functionName:    nl_attr_validate
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 862
      functionLinenumberEnd: 903
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         39
      ICount:          215
      EdgeCount:       50
      CyclomaticComplexity: 13
      functionsReached:
        - max_attr_len
        - memchr
        - min_attr_len
        - nl_attr_get_size
        - nl_attr_type
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:863,21'
          Dst:             nl_attr_type
        - Src:             'lib/netlink.c:875,19'
          Dst:             min_attr_len
        - Src:             'lib/netlink.c:879,19'
          Dst:             max_attr_len
        - Src:             'lib/netlink.c:883,11'
          Dst:             nl_attr_get_size
        - Src:             'lib/netlink.c:885,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/netlink.c:893,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/netlink.c:896,13'
          Dst:             memchr
        - Src:             'lib/netlink.c:897,13'
          Dst:             vlog_rate_limit
    - functionName:    min_attr_len
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 819
      functionLinenumberEnd: 836
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         20
      ICount:          94
      EdgeCount:       38
      CyclomaticComplexity: 20
      functionsReached:
        - abort
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/netlink.c:820,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/netlink.c:834,36'
          Dst:             abort
    - functionName:    max_attr_len
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 841
      functionLinenumberEnd: 858
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         20
      ICount:          94
      EdgeCount:       38
      CyclomaticComplexity: 20
      functionsReached:
        - abort
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/netlink.c:842,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/netlink.c:856,36'
          Dst:             abort
    - functionName:    nl_attr_get_ib_addr
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 812
      functionLinenumberEnd: 813
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_attr_get_unspec
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:813,12'
          Dst:             nl_attr_get_unspec
    - functionName:    nl_attr_get_unspec
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 665
      functionLinenumberEnd: 667
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    53
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:666,5'
          Dst:             ovs_ignore
    - functionName:    nl_attr_get_eth_addr
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 805
      functionLinenumberEnd: 806
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_attr_get_unspec
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:806,12'
          Dst:             nl_attr_get_unspec
    - functionName:    nl_attr_get_string
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 789
      functionLinenumberEnd: 792
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memchr
        - nl_attr_get
        - ovs_ignore
      functionUses:    17
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:790,5'
          Dst:             ovs_ignore
        - Src:             'lib/netlink.c:791,23'
          Dst:             nl_attr_get
        - Src:             'lib/netlink.c:791,16'
          Dst:             memchr
        - Src:             'lib/netlink.c:791,5'
          Dst:             ovs_ignore
        - Src:             'lib/netlink.c:792,12'
          Dst:             nl_attr_get
    - functionName:    u32_to_odp
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 220
      functionLinenumberEnd: 221
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nl_attr_get_odp_port
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 780
      functionLinenumberEnd: 781
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_attr_get_u32
        - u32_to_odp
      functionUses:    13
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:781,23'
          Dst:             nl_attr_get_u32
        - Src:             'lib/netlink.c:781,12'
          Dst:             u32_to_odp
    - functionName:    nl_attr_get_u32
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 704
      functionLinenumberEnd: 705
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_attr_get_unspec
      functionUses:    91
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:705,12'
          Dst:             nl_attr_get_unspec
    - functionName:    nl_attr_get_in6_addr
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 771
      functionLinenumberEnd: 772
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_attr_get_unspec
      functionUses:    24
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:772,12'
          Dst:             nl_attr_get_unspec
    - functionName:    get_32aligned_be128
      functionSourceFile: '/src/openvswitch/lib/unaligned.h'
      linkageType:     InternalLinkage
      functionLinenumber: 294
      functionLinenumberEnd: 300
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          33
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nl_attr_get_be128
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 761
      functionLinenumberEnd: 763
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_32aligned_be128
        - nl_attr_get_unspec
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:762,36'
          Dst:             nl_attr_get_unspec
        - Src:             'lib/netlink.c:763,12'
          Dst:             get_32aligned_be128
    - functionName:    get_32aligned_be64
      functionSourceFile: '/src/openvswitch/lib/unaligned.h'
      linkageType:     InternalLinkage
      functionLinenumber: 270
      functionLinenumberEnd: 274
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nl_attr_get_be64
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 751
      functionLinenumberEnd: 753
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_32aligned_be64
        - nl_attr_get_unspec
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:752,35'
          Dst:             nl_attr_get_unspec
        - Src:             'lib/netlink.c:753,12'
          Dst:             get_32aligned_be64
    - functionName:    nl_attr_get_be32
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 742
      functionLinenumberEnd: 743
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_attr_get_unspec
      functionUses:    52
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:743,12'
          Dst:             nl_attr_get_unspec
    - functionName:    nl_attr_get_be16
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 733
      functionLinenumberEnd: 734
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_attr_get_unspec
      functionUses:    64
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:734,12'
          Dst:             nl_attr_get_unspec
    - functionName:    get_32aligned_u128
      functionSourceFile: '/src/openvswitch/lib/unaligned.h'
      linkageType:     InternalLinkage
      functionLinenumber: 223
      functionLinenumberEnd: 229
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          33
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nl_attr_get_u128
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 723
      functionLinenumberEnd: 725
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_32aligned_u128
        - nl_attr_get_unspec
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:724,35'
          Dst:             nl_attr_get_unspec
        - Src:             'lib/netlink.c:725,12'
          Dst:             get_32aligned_u128
    - functionName:    get_32aligned_u64
      functionSourceFile: '/src/openvswitch/lib/unaligned.h'
      linkageType:     InternalLinkage
      functionLinenumber: 208
      functionLinenumberEnd: 209
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nl_attr_get_u64
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 713
      functionLinenumberEnd: 715
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_32aligned_u64
        - nl_attr_get_unspec
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:714,34'
          Dst:             nl_attr_get_unspec
        - Src:             'lib/netlink.c:715,12'
          Dst:             get_32aligned_u64
    - functionName:    nl_attr_get_u16
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 695
      functionLinenumberEnd: 696
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_attr_get_unspec
      functionUses:    28
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:696,12'
          Dst:             nl_attr_get_unspec
    - functionName:    nl_attr_get_u8
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 686
      functionLinenumberEnd: 687
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_attr_get_unspec
      functionUses:    56
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:687,12'
          Dst:             nl_attr_get_unspec
    - functionName:    nl_attr_get_flag
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 674
      functionLinenumberEnd: 675
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofpbuf_clear
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 250
      functionLinenumberEnd: 253
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofpbuf_pull
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 258
      functionLinenumberEnd: 269
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          64
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:259,5'
          Dst:             ovs_ignore
    - functionName:    nl_msg_next
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 608
      functionLinenumberEnd: 623
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          82
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - nl_msg_nlmsghdr
        - ofpbuf_clear
        - ofpbuf_pull
        - ofpbuf_use_const
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:610,37'
          Dst:             nl_msg_nlmsghdr
        - Src:             'lib/netlink.c:613,13'
          Dst:             ofpbuf_use_const
        - Src:             'lib/netlink.c:614,13'
          Dst:             ofpbuf_pull
        - Src:             'lib/netlink.c:619,5'
          Dst:             ofpbuf_clear
    - functionName:    nl_msg_nlmsghdr
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpbuf_at_assert
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:45,12'
          Dst:             ofpbuf_at_assert
    - functionName:    ofpbuf_at_assert
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 195
      functionLinenumberEnd: 198
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:196,5'
          Dst:             ovs_ignore
        - Src:             './include/openvswitch/ofpbuf.h:197,5'
          Dst:             ovs_ignore
    - functionName:    nl_msg_reset_size
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 596
      functionLinenumberEnd: 598
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nl_msg_wrap_nested
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 587
      functionLinenumberEnd: 591
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - short
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpbuf_insert
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:590,5'
          Dst:             ofpbuf_insert
    - functionName:    nl_msg_put_nested
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 576
      functionLinenumberEnd: 580
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - short
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_msg_end_nested
        - nl_msg_put
        - nl_msg_start_nested
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:577,21'
          Dst:             nl_msg_start_nested
        - Src:             'lib/netlink.c:578,5'
          Dst:             nl_msg_put
        - Src:             'lib/netlink.c:579,5'
          Dst:             nl_msg_end_nested
    - functionName:    nl_msg_start_nested
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 520
      functionLinenumberEnd: 523
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_msg_put_unspec_uninit
      functionUses:    113
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:522,5'
          Dst:             nl_msg_put_unspec_uninit
    - functionName:    nl_msg_put
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 199
      functionLinenumberEnd: 201
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_msg_put_uninit
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:200,12'
          Dst:             nl_msg_put_uninit
    - functionName:    nl_msg_end_nested
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 539
      functionLinenumberEnd: 543
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          40
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_attr_oversized
        - ofpbuf_at_assert
        - ovs_ignore
      functionUses:    117
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:540,27'
          Dst:             ofpbuf_at_assert
        - Src:             'lib/netlink.c:541,17'
          Dst:             nl_attr_oversized
        - Src:             'lib/netlink.c:541,5'
          Dst:             ovs_ignore
    - functionName:    nl_attr_oversized
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 631
      functionLinenumberEnd: 632
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    13
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nl_msg_put_uninit
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 208
      functionLinenumberEnd: 214
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          48
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofpbuf_put_uninit
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:210,15'
          Dst:             ofpbuf_put_uninit
    - functionName:    nl_msg_put_unspec_uninit
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 246
      functionLinenumberEnd: 252
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - short
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          41
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_attr_oversized
        - nl_msg_put_uninit
        - ovs_ignore
      functionUses:    18
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:248,26'
          Dst:             nl_msg_put_uninit
        - Src:             'lib/netlink.c:249,17'
          Dst:             nl_attr_oversized
        - Src:             'lib/netlink.c:249,5'
          Dst:             ovs_ignore
    - functionName:    nl_msg_end_non_empty_nested
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 559
      functionLinenumberEnd: 569
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - nl_attr_get_size
        - nl_msg_cancel_nested
        - nl_msg_end_nested
        - ofpbuf_at_assert
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:560,5'
          Dst:             nl_msg_end_nested
        - Src:             'lib/netlink.c:562,27'
          Dst:             ofpbuf_at_assert
        - Src:             'lib/netlink.c:563,10'
          Dst:             nl_attr_get_size
        - Src:             'lib/netlink.c:564,9'
          Dst:             nl_msg_cancel_nested
    - functionName:    nl_msg_cancel_nested
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 549
      functionLinenumberEnd: 551
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nl_msg_start_nested_with_flag
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 531
      functionLinenumberEnd: 532
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_msg_start_nested
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:532,12'
          Dst:             nl_msg_start_nested
    - functionName:    nl_msg_push_string
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 509
      functionLinenumberEnd: 511
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - short
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_msg_push_unspec
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:510,42'
          Dst:             strlen
        - Src:             'lib/netlink.c:510,5'
          Dst:             nl_msg_push_unspec
    - functionName:    nl_msg_push_unspec
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 420
      functionLinenumberEnd: 422
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - short
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_msg_push_unspec_uninit
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:421,12'
          Dst:             nl_msg_push_unspec_uninit
    - functionName:    nl_msg_push_unspec_uninit
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 404
      functionLinenumberEnd: 410
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - short
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          41
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_attr_oversized
        - nl_msg_push_uninit
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:406,26'
          Dst:             nl_msg_push_uninit
        - Src:             'lib/netlink.c:407,17'
          Dst:             nl_attr_oversized
        - Src:             'lib/netlink.c:407,5'
          Dst:             ovs_ignore
    - functionName:    nl_msg_push_uninit
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 231
      functionLinenumberEnd: 237
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          48
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofpbuf_push_uninit
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:233,15'
          Dst:             ofpbuf_push_uninit
    - functionName:    nl_msg_push_be128
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 501
      functionLinenumberEnd: 503
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - short
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_msg_push_unspec
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:502,5'
          Dst:             nl_msg_push_unspec
    - functionName:    nl_msg_push_be64
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 493
      functionLinenumberEnd: 495
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - short
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_msg_push_unspec
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:494,5'
          Dst:             nl_msg_push_unspec
    - functionName:    nl_msg_push_be32
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 485
      functionLinenumberEnd: 487
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - short
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_msg_push_unspec
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:486,5'
          Dst:             nl_msg_push_unspec
    - functionName:    nl_msg_push_be16
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 477
      functionLinenumberEnd: 479
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - short
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_msg_push_unspec
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:478,5'
          Dst:             nl_msg_push_unspec
    - functionName:    nl_msg_push_u128
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 469
      functionLinenumberEnd: 471
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - short
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_msg_push_unspec
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:470,5'
          Dst:             nl_msg_push_unspec
    - functionName:    nl_msg_push_u64
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 461
      functionLinenumberEnd: 463
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - short
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_msg_push_unspec
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:462,5'
          Dst:             nl_msg_push_unspec
    - functionName:    nl_msg_push_u32
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 453
      functionLinenumberEnd: 455
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - short
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_msg_push_unspec
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:454,5'
          Dst:             nl_msg_push_unspec
    - functionName:    nl_msg_push_u16
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 445
      functionLinenumberEnd: 447
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - short
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_msg_push_unspec
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:446,5'
          Dst:             nl_msg_push_unspec
    - functionName:    nl_msg_push_u8
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 437
      functionLinenumberEnd: 439
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - short
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_msg_push_unspec
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:438,5'
          Dst:             nl_msg_push_unspec
    - functionName:    nl_msg_push_flag
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 429
      functionLinenumberEnd: 431
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_msg_push_unspec_uninit
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:430,5'
          Dst:             nl_msg_push_unspec_uninit
    - functionName:    nl_msg_put_string
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 394
      functionLinenumberEnd: 396
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - short
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_msg_put_unspec
        - strlen
      functionUses:    46
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:395,41'
          Dst:             strlen
        - Src:             'lib/netlink.c:395,5'
          Dst:             nl_msg_put_unspec
    - functionName:    nl_msg_put_unspec
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 273
      functionLinenumberEnd: 278
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - short
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_msg_put_unspec_uninit
        - nullable_memcpy
      functionUses:    164
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:276,11'
          Dst:             nl_msg_put_unspec_uninit
        - Src:             'lib/netlink.c:277,5'
          Dst:             nullable_memcpy
    - functionName:    nullable_memcpy
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 188
      functionLinenumberEnd: 192
      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:    nl_msg_put_string__
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 383
      functionLinenumberEnd: 388
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - short
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_msg_put_unspec_uninit
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:384,18'
          Dst:             nl_msg_put_unspec_uninit
    - functionName:    odp_to_u32
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 202
      functionLinenumberEnd: 203
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nl_msg_put_odp_port
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 374
      functionLinenumberEnd: 376
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - short
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_msg_put_u32
        - odp_to_u32
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:375,31'
          Dst:             odp_to_u32
        - Src:             'lib/netlink.c:375,5'
          Dst:             nl_msg_put_u32
    - functionName:    nl_msg_put_u32
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 309
      functionLinenumberEnd: 311
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - short
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_msg_put_unspec
      functionUses:    70
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:310,5'
          Dst:             nl_msg_put_unspec
    - functionName:    nl_msg_put_in6_addr
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 366
      functionLinenumberEnd: 368
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - short
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_msg_put_unspec
      functionUses:    16
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:367,5'
          Dst:             nl_msg_put_unspec
    - functionName:    nl_msg_put_be128
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 357
      functionLinenumberEnd: 359
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - short
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_msg_put_unspec
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:358,5'
          Dst:             nl_msg_put_unspec
    - functionName:    nl_msg_put_be64
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 349
      functionLinenumberEnd: 351
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - short
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_msg_put_unspec
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:350,5'
          Dst:             nl_msg_put_unspec
    - functionName:    nl_msg_put_be32
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 341
      functionLinenumberEnd: 343
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - short
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_msg_put_unspec
      functionUses:    24
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:342,5'
          Dst:             nl_msg_put_unspec
    - functionName:    nl_msg_put_be16
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 333
      functionLinenumberEnd: 335
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - short
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_msg_put_unspec
      functionUses:    43
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:334,5'
          Dst:             nl_msg_put_unspec
    - functionName:    nl_msg_put_u128
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 325
      functionLinenumberEnd: 327
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - short
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_msg_put_unspec
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:326,5'
          Dst:             nl_msg_put_unspec
    - functionName:    nl_msg_put_u64
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 317
      functionLinenumberEnd: 319
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - short
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_msg_put_unspec
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:318,5'
          Dst:             nl_msg_put_unspec
    - functionName:    nl_msg_put_u16
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 301
      functionLinenumberEnd: 303
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - short
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_msg_put_unspec
      functionUses:    19
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:302,5'
          Dst:             nl_msg_put_unspec
    - functionName:    nl_msg_put_u8
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 293
      functionLinenumberEnd: 295
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - short
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_msg_put_unspec
      functionUses:    36
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:294,5'
          Dst:             nl_msg_put_unspec
    - functionName:    nl_msg_put_flag
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 285
      functionLinenumberEnd: 287
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_msg_put_unspec
      functionUses:    39
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:286,5'
          Dst:             nl_msg_put_unspec
    - functionName:    nl_msg_put_unspec_zero
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 261
      functionLinenumberEnd: 264
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - short
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_msg_put_unspec_uninit
      functionUses:    12
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:262,18'
          Dst:             nl_msg_put_unspec_uninit
    - functionName:    nl_msg_push
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 222
      functionLinenumberEnd: 224
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_msg_push_uninit
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:223,12'
          Dst:             nl_msg_push_uninit
    - functionName:    nl_msg_put_genlmsghdr
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 183
      functionLinenumberEnd: 192
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - int
        - int
        - char
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          50
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_msg_put_nlmsghdr
        - nl_msg_put_uninit
        - ovs_ignore
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:186,5'
          Dst:             nl_msg_put_nlmsghdr
        - Src:             'lib/netlink.c:187,5'
          Dst:             ovs_ignore
        - Src:             'lib/netlink.c:188,18'
          Dst:             nl_msg_put_uninit
    - functionName:    nl_msg_put_nlmsghdr
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 145
      functionLinenumberEnd: 157
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          52
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_msg_put_uninit
        - nl_msg_reserve
        - ovs_ignore
      functionUses:    13
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:148,5'
          Dst:             ovs_ignore
        - Src:             'lib/netlink.c:150,5'
          Dst:             nl_msg_reserve
        - Src:             'lib/netlink.c:151,16'
          Dst:             nl_msg_put_uninit
    - functionName:    nl_msg_reserve
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 119
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpbuf_prealloc_tailroom
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:120,5'
          Dst:             ofpbuf_prealloc_tailroom
    - functionName:    nl_parse_ext_ack
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 62
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          63
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - nl_attr_get_string
        - nl_policy_parse
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:68,10'
          Dst:             nl_policy_parse
        - Src:             'lib/netlink.c:69,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/netlink.c:74,19'
          Dst:             nl_attr_get_string
    - functionName:    nl_msg_nlmsgerr
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 85
      functionLinenumberEnd: 113
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         32
      ICount:          174
      EdgeCount:       42
      CyclomaticComplexity: 12
      functionsReached:
        - nl_msg_nlmsghdr
        - nl_parse_ext_ack
        - ofpbuf_at
        - vlog_rate_limit
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:86,28'
          Dst:             nl_msg_nlmsghdr
        - Src:             'lib/netlink.c:89,32'
          Dst:             ofpbuf_at
        - Src:             'lib/netlink.c:92,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/netlink.c:103,17'
          Dst:             nl_parse_ext_ack
    - functionName:    nl_msg_genlmsghdr
      functionSourceFile: '/src/openvswitch/lib/netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpbuf_at
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink.c:55,12'
          Dst:             ofpbuf_at
    - functionName:    netnsid_set_self
      functionSourceFile: '/src/openvswitch/lib/netnsid.c'
      linkageType:     InternalLinkage
      functionLinenumber: 24
      functionLinenumberEnd: 26
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    init_this_module_nx_match
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42
      functionLinenumberEnd: 42
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:42,1'
          Dst:             vlog_insert_module
    - functionName:    hmap_next_with_hash__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 348
      functionLinenumberEnd: 352
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          40
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_next_with_hash
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 395
      functionLinenumberEnd: 396
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next_with_hash__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:396,12'
          Dst:             hmap_next_with_hash__
    - functionName:    hmap_first_with_hash
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 360
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next_with_hash__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:360,12'
          Dst:             hmap_next_with_hash__
    - functionName:    hash_rot
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 32
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhash_add__
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hash_rot
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:71,12'
          Dst:             hash_rot
    - functionName:    mhash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_rot
        - mhash_add__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:78,12'
          Dst:             mhash_add__
        - Src:             'lib/hash.h:79,12'
          Dst:             hash_rot
    - functionName:    hash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 108
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_add
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:109,12'
          Dst:             mhash_add
    - functionName:    mhash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_add64
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 113
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_add
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:114,21'
          Dst:             hash_add
        - Src:             'lib/hash.h:114,12'
          Dst:             hash_add
    - functionName:    hash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:119,12'
          Dst:             mhash_finish
    - functionName:    hash_uint64_basis
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 159
      functionLinenumberEnd: 160
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_add64
        - hash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:160,24'
          Dst:             hash_add64
        - Src:             'lib/hash.h:160,12'
          Dst:             hash_finish
    - functionName:    ovs_list_insert
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 169
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_insert_fast
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 289
      functionLinenumberEnd: 295
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          38
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_list_push_back
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 204
      functionLinenumberEnd: 206
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_list_insert
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/list.h:205,5'
          Dst:             ovs_list_insert
    - functionName:    hash_string
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 403
      functionLinenumberEnd: 404
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_bytes
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:404,26'
          Dst:             strlen
        - Src:             'lib/hash.h:404,12'
          Dst:             hash_bytes
    - functionName:    hmap_insert_at
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 306
      functionLinenumberEnd: 311
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_expand_at
        - hmap_insert_fast
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:307,5'
          Dst:             hmap_insert_fast
        - Src:             './include/openvswitch/hmap.h:309,9'
          Dst:             hmap_expand_at
    - functionName:    ovs_list_init
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsthread_once_start
      functionSourceFile: '/src/openvswitch/./include/openvswitch/thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsthread_once_start__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/thread.h:161,12'
          Dst:             ovsthread_once_start__
    - functionName:    hmap_next_in_bucket
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 381
      functionLinenumberEnd: 382
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_uint64
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 165
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_uint64_basis
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:165,12'
          Dst:             hash_uint64_basis
    - functionName:    hmap_first_in_bucket
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 367
      functionLinenumberEnd: 368
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nxm_make_exact_header
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 165
      functionLinenumberEnd: 168
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          39
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nxm_class
        - nxm_experimenter_len
        - nxm_field
        - nxm_payload_len
        - nxm_vendor
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:166,28'
          Dst:             nxm_payload_len
        - Src:             'lib/nx-match.c:167,34'
          Dst:             nxm_experimenter_len
        - Src:             'lib/nx-match.c:168,12'
          Dst:             nxm_class
        - Src:             'lib/nx-match.c:168,12'
          Dst:             nxm_field
        - Src:             'lib/nx-match.c:168,12'
          Dst:             nxm_vendor
    - functionName:    nxm_payload_len
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 136
      functionLinenumberEnd: 138
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nxm_experimenter_len
        - nxm_length
        - ovs_ignore
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:137,16'
          Dst:             nxm_length
        - Src:             'lib/nx-match.c:137,38'
          Dst:             nxm_experimenter_len
        - Src:             'lib/nx-match.c:137,5'
          Dst:             ovs_ignore
        - Src:             'lib/nx-match.c:138,12'
          Dst:             nxm_length
        - Src:             'lib/nx-match.c:138,33'
          Dst:             nxm_experimenter_len
    - functionName:    nxm_experimenter_len
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 128
      functionLinenumberEnd: 129
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - is_experimenter_oxm
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:129,12'
          Dst:             is_experimenter_oxm
    - functionName:    nxm_class
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 100
      functionLinenumberEnd: 100
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    13
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nxm_field
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    12
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nxm_vendor
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 99
      functionLinenumberEnd: 99
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    is_experimenter_oxm
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 108
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nxm_class
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:109,12'
          Dst:             nxm_class
    - functionName:    nxm_length
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 103
      functionLinenumberEnd: 103
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    14
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nxm_init
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2263
      functionLinenumberEnd: 2281
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         14
      ICount:          85
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - hash_string
        - hash_uint64
        - hmap_init
        - hmap_insert_at
        - nxm_no_len
        - ovs_list_init
        - ovs_list_push_back
        - ovsthread_once_done
        - ovsthread_once_start
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:2265,9'
          Dst:             ovsthread_once_start
        - Src:             'lib/nx-match.c:2266,9'
          Dst:             hmap_init
        - Src:             'lib/nx-match.c:2267,9'
          Dst:             hmap_init
        - Src:             'lib/nx-match.c:2269,13'
          Dst:             ovs_list_init
        - Src:             'lib/nx-match.c:2273,13'
          Dst:             nxm_no_len
        - Src:             'lib/nx-match.c:2273,13'
          Dst:             hash_uint64
        - Src:             'lib/nx-match.c:2273,13'
          Dst:             hmap_insert_at
        - Src:             'lib/nx-match.c:2275,13'
          Dst:             hash_string
        - Src:             'lib/nx-match.c:2275,13'
          Dst:             hmap_insert_at
        - Src:             'lib/nx-match.c:2277,13'
          Dst:             ovs_list_push_back
        - Src:             'lib/nx-match.c:2279,9'
          Dst:             ovsthread_once_done
    - functionName:    nxm_no_len
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 104
      functionLinenumberEnd: 104
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    streq_len
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1629
      functionLinenumberEnd: 1630
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - memcmp
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:1630,12'
          Dst:             strlen
        - Src:             'lib/nx-match.c:1630,35'
          Dst:             memcmp
    - functionName:    parse_nxm_field_name
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1635
      functionLinenumberEnd: 1675
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         30
      ICount:          151
      EdgeCount:       40
      CyclomaticComplexity: 12
      functionsReached:
        - hexits_value
        - is_experimenter_oxm
        - mf_from_id
        - mf_parse_subfield_name
        - nxm_make_wild_header
        - streq_len
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:1639,9'
          Dst:             mf_parse_subfield_name
        - Src:             'lib/nx-match.c:1643,20'
          Dst:             mf_from_id
        - Src:             'lib/nx-match.c:1644,20'
          Dst:             nxm_make_wild_header
        - Src:             'lib/nx-match.c:1648,9'
          Dst:             streq_len
        - Src:             'lib/nx-match.c:1650,16'
          Dst:             streq_len
        - Src:             'lib/nx-match.c:1651,16'
          Dst:             nxm_make_wild_header
        - Src:             'lib/nx-match.c:1660,18'
          Dst:             hexits_value
        - Src:             'lib/nx-match.c:1668,18'
          Dst:             hexits_value
        - Src:             'lib/nx-match.c:1669,19'
          Dst:             is_experimenter_oxm
    - functionName:    mf_parse_subfield_name
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2055
      functionLinenumberEnd: 2061
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          61
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - memcmp
        - nxm_field_by_name
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:2056,30'
          Dst:             memcmp
        - Src:             'lib/nx-match.c:2061,12'
          Dst:             nxm_field_by_name
    - functionName:    mf_from_id
      functionSourceFile: '/src/openvswitch/./include/openvswitch/meta-flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2363
      functionLinenumberEnd: 2366
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/meta-flow.h:2365,5'
          Dst:             ovs_ignore
    - functionName:    nxm_make_wild_header
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 173
      functionLinenumberEnd: 176
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          39
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nxm_class
        - nxm_experimenter_len
        - nxm_field
        - nxm_payload_len
        - nxm_vendor
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:174,28'
          Dst:             nxm_payload_len
        - Src:             'lib/nx-match.c:175,30'
          Dst:             nxm_experimenter_len
        - Src:             'lib/nx-match.c:176,12'
          Dst:             nxm_class
        - Src:             'lib/nx-match.c:176,12'
          Dst:             nxm_field
        - Src:             'lib/nx-match.c:176,12'
          Dst:             nxm_vendor
    - functionName:    nxm_field_by_name
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2318
      functionLinenumberEnd: 2329
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          93
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - hash_bytes
        - hmap_first_with_hash
        - hmap_next_with_hash
        - memcmp
        - nxm_init
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:2321,5'
          Dst:             nxm_init
        - Src:             'lib/nx-match.c:2322,5'
          Dst:             hash_bytes
        - Src:             'lib/nx-match.c:2322,5'
          Dst:             hmap_first_with_hash
        - Src:             'lib/nx-match.c:2324,13'
          Dst:             strlen
        - Src:             'lib/nx-match.c:2324,45'
          Dst:             memcmp
        - Src:             'lib/nx-match.c:2322,5'
          Dst:             hmap_next_with_hash
    - functionName:    raw_ctz
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 261
      functionLinenumberEnd: 267
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          36
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    is_nd
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1119
      functionLinenumberEnd: 1135
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          98
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - htons
        - is_icmpv6
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:1120,9'
          Dst:             is_icmpv6
        - Src:             'lib/flow.h:1124,29'
          Dst:             htons
        - Src:             'lib/flow.h:1131,33'
          Dst:             htons
        - Src:             'lib/flow.h:1132,33'
          Dst:             htons
    - functionName:    is_icmpv6
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1107
      functionLinenumberEnd: 1115
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          53
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - get_dl_type
        - htons
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:1108,9'
          Dst:             get_dl_type
        - Src:             'lib/flow.h:1108,30'
          Dst:             htons
    - functionName:    get_dl_type
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1036
      functionLinenumberEnd: 1044
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          53
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - htonl
        - htons
        - pt_ns
        - pt_ns_type_be
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:1037,30'
          Dst:             htonl
        - Src:             'lib/flow.h:1039,16'
          Dst:             pt_ns
        - Src:             'lib/flow.h:1040,16'
          Dst:             pt_ns_type_be
        - Src:             'lib/flow.h:1042,16'
          Dst:             htons
    - functionName:    pt_ns
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1570
      functionLinenumberEnd: 1571
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:1571,12'
          Dst:             ntohl
    - functionName:    pt_ns_type_be
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1577
      functionLinenumberEnd: 1578
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - be32_to_be16
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:1578,12'
          Dst:             be32_to_be16
    - functionName:    be32_to_be16
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 135
      functionLinenumberEnd: 135
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    is_icmpv4
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1095
      functionLinenumberEnd: 1103
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          53
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - get_dl_type
        - htons
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:1096,9'
          Dst:             get_dl_type
        - Src:             'lib/flow.h:1096,30'
          Dst:             htons
    - functionName:    nxm_put_frag
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 919
      functionLinenumberEnd: 925
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          57
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - nxm_put_8m
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:923,5'
          Dst:             nxm_put_8m
    - functionName:    nxm_put_8m
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 842
      functionLinenumberEnd: 844
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - char
        - int
        - char
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nxm_put
      functionUses:    13
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:843,5'
          Dst:             nxm_put
    - functionName:    nxm_put
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 831
      functionLinenumberEnd: 836
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - char
        - int
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          58
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - is_all_ones
        - is_all_zeros
        - nxm_put__
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:832,10'
          Dst:             is_all_zeros
        - Src:             'lib/nx-match.c:833,24'
          Dst:             is_all_ones
        - Src:             'lib/nx-match.c:834,9'
          Dst:             nxm_put__
    - functionName:    nxm_put__
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 820
      functionLinenumberEnd: 825
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - char
        - int
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          60
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - mf_from_id
        - nxm_put_entry_raw
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:821,5'
          Dst:             nxm_put_entry_raw
        - Src:             'lib/nx-match.c:822,35'
          Dst:             mf_from_id
    - functionName:    nxm_put_entry_raw
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 808
      functionLinenumberEnd: 814
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - char
        - int
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - nx_put_header_len
        - ofpbuf_put
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:809,5'
          Dst:             nx_put_header_len
        - Src:             'lib/nx-match.c:810,5'
          Dst:             ofpbuf_put
        - Src:             'lib/nx-match.c:812,9'
          Dst:             ofpbuf_put
    - functionName:    nx_put_header_len
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1482
      functionLinenumberEnd: 1490
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - char
        - int
        - bool
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          54
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mf_oxm_header
        - nx_put_header__
        - nxm_class
        - nxm_experimenter_len
        - nxm_field
        - nxm_vendor
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:1483,23'
          Dst:             mf_oxm_header
        - Src:             'lib/nx-match.c:1485,14'
          Dst:             nxm_class
        - Src:             'lib/nx-match.c:1485,14'
          Dst:             nxm_field
        - Src:             'lib/nx-match.c:1485,14'
          Dst:             nxm_experimenter_len
        - Src:             'lib/nx-match.c:1485,14'
          Dst:             nxm_vendor
        - Src:             'lib/nx-match.c:1489,5'
          Dst:             nx_put_header__
    - functionName:    mf_oxm_header
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 221
      functionLinenumberEnd: 223
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - char
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - nxm_field_by_mf_id
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:222,33'
          Dst:             nxm_field_by_mf_id
    - functionName:    nx_put_header__
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1455
      functionLinenumberEnd: 1460
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonll
        - nxm_header_len
        - nxm_make_wild_header
        - ofpbuf_put
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:1456,39'
          Dst:             nxm_make_wild_header
        - Src:             'lib/nx-match.c:1457,31'
          Dst:             htonll
        - Src:             'lib/nx-match.c:1459,36'
          Dst:             nxm_header_len
        - Src:             'lib/nx-match.c:1459,5'
          Dst:             ofpbuf_put
    - functionName:    htonll
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 30
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
      functionUses:    12
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byte-order.h:30,12'
          Dst:             htonl
        - Src:             'lib/byte-order.h:30,44'
          Dst:             htonl
        - Src:             'lib/byte-order.h:30,62'
          Dst:             htonl
    - functionName:    nxm_header_len
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 145
      functionLinenumberEnd: 146
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nxm_experimenter_len
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:146,16'
          Dst:             nxm_experimenter_len
    - functionName:    nxm_field_by_mf_id
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2333
      functionLinenumberEnd: 2345
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - char
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          89
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - nxm_init
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:2337,5'
          Dst:             nxm_init
    - functionName:    dl_type_is_ip_any
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1256
      functionLinenumberEnd: 1258
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htons
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:1257,23'
          Dst:             htons
        - Src:             'lib/packets.h:1258,23'
          Dst:             htons
    - functionName:    hton128
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 48
      functionLinenumberEnd: 53
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonll
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byte-order.h:51,19'
          Dst:             htonll
        - Src:             'lib/byte-order.h:52,19'
          Dst:             htonll
    - functionName:    nxm_put_128m
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 895
      functionLinenumberEnd: 897
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - char
        - int
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nxm_put
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:896,5'
          Dst:             nxm_put
    - functionName:    flow_get_xreg
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 143
      functionLinenumberEnd: 144
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          27
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nsh_path_hdr_to_si
      functionSourceFile: '/src/openvswitch/./include/openvswitch/nsh.h'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 360
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohl
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/nsh.h:360,13'
          Dst:             ntohl
    - functionName:    nsh_path_hdr_to_spi
      functionSourceFile: '/src/openvswitch/./include/openvswitch/nsh.h'
      linkageType:     InternalLinkage
      functionLinenumber: 346
      functionLinenumberEnd: 348
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
        - ntohl
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/nsh.h:347,20'
          Dst:             ntohl
        - Src:             './include/openvswitch/nsh.h:348,12'
          Dst:             htonl
    - functionName:    nxm_put_ipv6
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 911
      functionLinenumberEnd: 914
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - char
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nxm_put
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:912,5'
          Dst:             nxm_put
    - functionName:    nxm_put_64m
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 887
      functionLinenumberEnd: 889
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - char
        - int
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nxm_put
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:888,5'
          Dst:             nxm_put
    - functionName:    nxm_put_ip
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 932
      functionLinenumberEnd: 1032
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         63
      ICount:          565
      EdgeCount:       83
      CyclomaticComplexity: 22
      functionsReached:
        - get_dl_type
        - htons
        - is_icmpv4
        - is_icmpv6
        - is_nd
        - ntohs
        - nxm_put_16m
        - nxm_put_32
        - nxm_put_32m
        - nxm_put_8
        - nxm_put_eth_masked
        - nxm_put_frag
        - nxm_put_ipv6
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:934,24'
          Dst:             get_dl_type
        - Src:             'lib/nx-match.c:936,20'
          Dst:             htons
        - Src:             'lib/nx-match.c:937,9'
          Dst:             nxm_put_32m
        - Src:             'lib/nx-match.c:939,9'
          Dst:             nxm_put_32m
        - Src:             'lib/nx-match.c:942,9'
          Dst:             nxm_put_ipv6
        - Src:             'lib/nx-match.c:944,9'
          Dst:             nxm_put_ipv6
        - Src:             'lib/nx-match.c:948,5'
          Dst:             nxm_put_frag
        - Src:             'lib/nx-match.c:952,13'
          Dst:             nxm_put_8
        - Src:             'lib/nx-match.c:955,13'
          Dst:             nxm_put_8
        - Src:             'lib/nx-match.c:961,9'
          Dst:             nxm_put_8
        - Src:             'lib/nx-match.c:966,9'
          Dst:             nxm_put_8
        - Src:             'lib/nx-match.c:969,5'
          Dst:             nxm_put_32m
        - Src:             'lib/nx-match.c:973,9'
          Dst:             nxm_put_8
        - Src:             'lib/nx-match.c:976,13'
          Dst:             nxm_put_16m
        - Src:             'lib/nx-match.c:978,13'
          Dst:             nxm_put_16m
        - Src:             'lib/nx-match.c:980,13'
          Dst:             nxm_put_16m
        - Src:             'lib/nx-match.c:983,13'
          Dst:             nxm_put_16m
        - Src:             'lib/nx-match.c:985,13'
          Dst:             nxm_put_16m
        - Src:             'lib/nx-match.c:988,13'
          Dst:             nxm_put_16m
        - Src:             'lib/nx-match.c:990,13'
          Dst:             nxm_put_16m
        - Src:             'lib/nx-match.c:992,20'
          Dst:             is_icmpv4
        - Src:             'lib/nx-match.c:995,27'
          Dst:             ntohs
        - Src:             'lib/nx-match.c:994,17'
          Dst:             nxm_put_8
        - Src:             'lib/nx-match.c:999,27'
          Dst:             ntohs
        - Src:             'lib/nx-match.c:998,17'
          Dst:             nxm_put_8
        - Src:             'lib/nx-match.c:1001,20'
          Dst:             is_icmpv6
        - Src:             'lib/nx-match.c:1004,27'
          Dst:             ntohs
        - Src:             'lib/nx-match.c:1003,17'
          Dst:             nxm_put_8
        - Src:             'lib/nx-match.c:1008,27'
          Dst:             ntohs
        - Src:             'lib/nx-match.c:1007,17'
          Dst:             nxm_put_8
        - Src:             'lib/nx-match.c:1010,17'
          Dst:             is_nd
        - Src:             'lib/nx-match.c:1012,21'
          Dst:             nxm_put_32
        - Src:             'lib/nx-match.c:1015,17'
          Dst:             nxm_put_ipv6
        - Src:             'lib/nx-match.c:1019,30'
          Dst:             ntohs
        - Src:             'lib/nx-match.c:1018,20'
          Dst:             nxm_put_8
        - Src:             'lib/nx-match.c:1021,37'
          Dst:             htons
        - Src:             'lib/nx-match.c:1022,21'
          Dst:             nxm_put_eth_masked
        - Src:             'lib/nx-match.c:1025,37'
          Dst:             htons
        - Src:             'lib/nx-match.c:1026,21'
          Dst:             nxm_put_eth_masked
    - functionName:    nxm_put_32m
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 872
      functionLinenumberEnd: 874
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - char
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nxm_put
      functionUses:    18
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:873,5'
          Dst:             nxm_put
    - functionName:    nxm_put_8
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 849
      functionLinenumberEnd: 851
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - char
        - int
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nxm_put__
      functionUses:    14
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:850,5'
          Dst:             nxm_put__
    - functionName:    nxm_put_16m
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 857
      functionLinenumberEnd: 859
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - char
        - int
        - short
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nxm_put
      functionUses:    15
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:858,5'
          Dst:             nxm_put
    - functionName:    nxm_put_32
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 879
      functionLinenumberEnd: 881
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - char
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nxm_put__
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:880,5'
          Dst:             nxm_put__
    - functionName:    nxm_put_eth_masked
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 903
      functionLinenumberEnd: 905
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - char
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nxm_put
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:904,5'
          Dst:             nxm_put
    - functionName:    is_ip_any
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1059
      functionLinenumberEnd: 1060
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dl_type_is_ip_any
        - get_dl_type
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:1060,30'
          Dst:             get_dl_type
        - Src:             'lib/flow.h:1060,12'
          Dst:             dl_type_is_ip_any
    - functionName:    mpls_lse_to_label
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 568
      functionLinenumberEnd: 569
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:569,13'
          Dst:             ntohl
    - functionName:    mpls_lse_to_ttl
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 584
      functionLinenumberEnd: 585
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:585,13'
          Dst:             ntohl
    - functionName:    mpls_lse_to_bos
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 624
      functionLinenumberEnd: 625
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:625,24'
          Dst:             htonl
    - functionName:    mpls_lse_to_tc
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 576
      functionLinenumberEnd: 577
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:577,13'
          Dst:             ntohl
    - functionName:    eth_type_mpls
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 423
      functionLinenumberEnd: 425
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htons
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:424,24'
          Dst:             htons
        - Src:             'lib/packets.h:425,21'
          Dst:             htons
    - functionName:    vlan_tci_to_pcp
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 515
      functionLinenumberEnd: 516
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohs
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:516,13'
          Dst:             ntohs
    - functionName:    ofp_to_u16
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 196
      functionLinenumberEnd: 197
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nxm_put_16
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 864
      functionLinenumberEnd: 866
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - char
        - int
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nxm_put__
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:865,5'
          Dst:             nxm_put__
    - functionName:    bitmap_bit__
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 32
      functionLinenumberEnd: 33
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    bitmap_unit__
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 26
      functionLinenumberEnd: 27
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nx_pull_match_entry
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 505
      functionLinenumberEnd: 525
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          134
      EdgeCount:       32
      CyclomaticComplexity: 9
      functionsReached:
        - mf_is_mask_valid
        - mf_is_value_valid
        - nx_pull_entry__
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:509,13'
          Dst:             nx_pull_entry__
        - Src:             'lib/nx-match.c:515,14'
          Dst:             mf_is_mask_valid
        - Src:             'lib/nx-match.c:516,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/nx-match.c:519,14'
          Dst:             mf_is_value_valid
        - Src:             'lib/nx-match.c:520,13'
          Dst:             vlog_rate_limit
    - functionName:    nx_pull_entry__
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 398
      functionLinenumberEnd: 447
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         36
      ICount:          249
      EdgeCount:       47
      CyclomaticComplexity: 13
      functionsReached:
        - copy_entry_value
        - is_mask_consistent
        - nx_pull_header__
        - nxm_class
        - nxm_field
        - nxm_field_bytes
        - nxm_hasmask
        - nxm_length
        - nxm_payload_len
        - nxm_vendor
        - ofpbuf_try_pull
        - vlog_rate_limit
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:405,20'
          Dst:             nx_pull_header__
        - Src:             'lib/nx-match.c:411,19'
          Dst:             nxm_payload_len
        - Src:             'lib/nx-match.c:412,15'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/nx-match.c:414,9'
          Dst:             nxm_vendor
        - Src:             'lib/nx-match.c:414,9'
          Dst:             nxm_class
        - Src:             'lib/nx-match.c:414,9'
          Dst:             nxm_field
        - Src:             'lib/nx-match.c:414,9'
          Dst:             nxm_hasmask
        - Src:             'lib/nx-match.c:414,9'
          Dst:             nxm_length
        - Src:             'lib/nx-match.c:414,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/nx-match.c:420,13'
          Dst:             nxm_field_bytes
        - Src:             'lib/nx-match.c:421,9'
          Dst:             nxm_hasmask
        - Src:             'lib/nx-match.c:422,13'
          Dst:             is_mask_consistent
        - Src:             'lib/nx-match.c:426,5'
          Dst:             copy_entry_value
        - Src:             'lib/nx-match.c:429,13'
          Dst:             nxm_hasmask
        - Src:             'lib/nx-match.c:430,13'
          Dst:             copy_entry_value
        - Src:             'lib/nx-match.c:434,16'
          Dst:             nxm_hasmask
        - Src:             'lib/nx-match.c:435,9'
          Dst:             nxm_vendor
        - Src:             'lib/nx-match.c:435,9'
          Dst:             nxm_class
        - Src:             'lib/nx-match.c:435,9'
          Dst:             nxm_field
        - Src:             'lib/nx-match.c:435,9'
          Dst:             nxm_hasmask
        - Src:             'lib/nx-match.c:435,9'
          Dst:             nxm_length
        - Src:             'lib/nx-match.c:435,9'
          Dst:             vlog_rate_limit
    - functionName:    nx_pull_header__
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 321
      functionLinenumberEnd: 373
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         51
      ICount:          299
      EdgeCount:       66
      CyclomaticComplexity: 17
      functionsReached:
        - get_unaligned_be32
        - get_unaligned_be64
        - is_cookie_pseudoheader
        - is_experimenter_oxm
        - mf_from_oxm_header
        - mf_vl_mff_invalid
        - ntohl
        - ntohll
        - nxm_class
        - nxm_experimenter_len
        - nxm_field
        - nxm_hasmask
        - nxm_header_len
        - nxm_length
        - nxm_vendor
        - ofpbuf_pull
        - vlog_rate_limit
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:326,33'
          Dst:             get_unaligned_be32
        - Src:             'lib/nx-match.c:326,27'
          Dst:             ntohl
        - Src:             'lib/nx-match.c:327,9'
          Dst:             is_experimenter_oxm
        - Src:             'lib/nx-match.c:331,26'
          Dst:             get_unaligned_be64
        - Src:             'lib/nx-match.c:331,19'
          Dst:             ntohll
        - Src:             'lib/nx-match.c:333,9'
          Dst:             nxm_length
        - Src:             'lib/nx-match.c:333,31'
          Dst:             nxm_experimenter_len
        - Src:             'lib/nx-match.c:334,9'
          Dst:             nxm_vendor
        - Src:             'lib/nx-match.c:334,9'
          Dst:             nxm_class
        - Src:             'lib/nx-match.c:334,9'
          Dst:             nxm_field
        - Src:             'lib/nx-match.c:334,9'
          Dst:             nxm_hasmask
        - Src:             'lib/nx-match.c:334,9'
          Dst:             nxm_length
        - Src:             'lib/nx-match.c:334,9'
          Dst:             nxm_length
        - Src:             'lib/nx-match.c:334,9'
          Dst:             nxm_header_len
        - Src:             'lib/nx-match.c:334,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/nx-match.c:340,20'
          Dst:             nxm_header_len
        - Src:             'lib/nx-match.c:340,5'
          Dst:             ofpbuf_pull
        - Src:             'lib/nx-match.c:344,18'
          Dst:             mf_from_oxm_header
        - Src:             'lib/nx-match.c:345,42'
          Dst:             is_cookie_pseudoheader
        - Src:             'lib/nx-match.c:346,13'
          Dst:             nxm_vendor
        - Src:             'lib/nx-match.c:346,13'
          Dst:             nxm_class
        - Src:             'lib/nx-match.c:346,13'
          Dst:             nxm_field
        - Src:             'lib/nx-match.c:346,13'
          Dst:             nxm_hasmask
        - Src:             'lib/nx-match.c:346,13'
          Dst:             nxm_length
        - Src:             'lib/nx-match.c:346,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/nx-match.c:357,20'
          Dst:             mf_vl_mff_invalid
        - Src:             'lib/nx-match.c:365,5'
          Dst:             vlog_rate_limit
    - functionName:    ofpbuf_try_pull
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 275
      functionLinenumberEnd: 276
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofpbuf_pull
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:276,30'
          Dst:             ofpbuf_pull
    - functionName:    nxm_hasmask
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 102
      functionLinenumberEnd: 102
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    17
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nxm_field_bytes
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 282
      functionLinenumberEnd: 284
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - nxm_hasmask
        - nxm_payload_len
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:283,27'
          Dst:             nxm_payload_len
        - Src:             'lib/nx-match.c:284,12'
          Dst:             nxm_hasmask
    - functionName:    is_mask_consistent
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 294
      functionLinenumberEnd: 309
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          103
      EdgeCount:       22
      CyclomaticComplexity: 6
      functionsReached:
        - nxm_class
        - nxm_field
        - nxm_field_bytes
        - nxm_hasmask
        - nxm_length
        - nxm_vendor
        - vlog_rate_limit
        - vlog_should_drop
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:295,26'
          Dst:             nxm_field_bytes
        - Src:             'lib/nx-match.c:300,18'
          Dst:             vlog_should_drop
        - Src:             'lib/nx-match.c:301,17'
          Dst:             nxm_vendor
        - Src:             'lib/nx-match.c:301,17'
          Dst:             nxm_class
        - Src:             'lib/nx-match.c:301,17'
          Dst:             nxm_field
        - Src:             'lib/nx-match.c:301,17'
          Dst:             nxm_hasmask
        - Src:             'lib/nx-match.c:301,17'
          Dst:             nxm_length
        - Src:             'lib/nx-match.c:301,17'
          Dst:             vlog_rate_limit
    - functionName:    copy_entry_value
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 378
      functionLinenumberEnd: 391
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          105
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofpbuf_pull
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 258
      functionLinenumberEnd: 269
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          64
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:259,5'
          Dst:             ovs_ignore
    - functionName:    get_unaligned_be32
      functionSourceFile: '/src/openvswitch/lib/unaligned.h'
      linkageType:     InternalLinkage
      functionLinenumber: 90
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - unaligned_be32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/unaligned.h:90,1'
          Dst:             unaligned_be32
    - functionName:    get_unaligned_be64
      functionSourceFile: '/src/openvswitch/lib/unaligned.h'
      linkageType:     InternalLinkage
      functionLinenumber: 91
      functionLinenumberEnd: 91
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - unaligned_be64
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/unaligned.h:91,1'
          Dst:             unaligned_be64
    - functionName:    ntohll
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
        - ntohl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byte-order.h:36,12'
          Dst:             htonl
        - Src:             'lib/byte-order.h:36,44'
          Dst:             ntohl
        - Src:             'lib/byte-order.h:36,62'
          Dst:             ntohl
    - functionName:    mf_from_oxm_header
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 258
      functionLinenumberEnd: 268
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - size_t
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          64
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - mf_from_id
        - mf_get_vl_mff
        - nxm_field_by_header
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:259,33'
          Dst:             nxm_field_by_header
        - Src:             'lib/nx-match.c:262,38'
          Dst:             mf_from_id
        - Src:             'lib/nx-match.c:263,41'
          Dst:             mf_get_vl_mff
    - functionName:    is_cookie_pseudoheader
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 313
      functionLinenumberEnd: 314
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - nxm_make_wild_header
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:314,49'
          Dst:             nxm_make_wild_header
    - functionName:    nxm_field_by_header
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2286
      functionLinenumberEnd: 2314
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - size_t
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         31
      ICount:          168
      EdgeCount:       41
      CyclomaticComplexity: 12
      functionsReached:
        - hash_uint64
        - hmap_first_in_bucket
        - hmap_next_in_bucket
        - mf_from_id
        - nxm_hasmask
        - nxm_init
        - nxm_length
        - nxm_make_exact_header
        - nxm_no_len
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:2290,5'
          Dst:             nxm_init
        - Src:             'lib/nx-match.c:2291,9'
          Dst:             nxm_hasmask
        - Src:             'lib/nx-match.c:2292,18'
          Dst:             nxm_make_exact_header
        - Src:             'lib/nx-match.c:2295,21'
          Dst:             nxm_no_len
        - Src:             'lib/nx-match.c:2297,5'
          Dst:             hash_uint64
        - Src:             'lib/nx-match.c:2297,5'
          Dst:             hmap_first_in_bucket
        - Src:             'lib/nx-match.c:2299,26'
          Dst:             nxm_length
        - Src:             'lib/nx-match.c:2300,17'
          Dst:             nxm_length
        - Src:             'lib/nx-match.c:2300,39'
          Dst:             nxm_length
        - Src:             'lib/nx-match.c:2304,30'
          Dst:             nxm_no_len
        - Src:             'lib/nx-match.c:2305,17'
          Dst:             nxm_length
        - Src:             'lib/nx-match.c:2305,39'
          Dst:             nxm_length
        - Src:             'lib/nx-match.c:2306,17'
          Dst:             mf_from_id
        - Src:             'lib/nx-match.c:2297,5'
          Dst:             hmap_next_in_bucket
    - functionName:    unaligned_be64
      functionSourceFile: '/src/openvswitch/lib/unaligned.h'
      linkageType:     InternalLinkage
      functionLinenumber: 91
      functionLinenumberEnd: 91
      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:    unaligned_be32
      functionSourceFile: '/src/openvswitch/lib/unaligned.h'
      linkageType:     InternalLinkage
      functionLinenumber: 90
      functionLinenumberEnd: 90
      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:    oxm_maskable_fields
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2236
      functionLinenumberEnd: 2245
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          62
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - bitmap_set1
        - mf_from_id
        - mf_oxm_header
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:2241,13'
          Dst:             mf_oxm_header
        - Src:             'lib/nx-match.c:2241,36'
          Dst:             mf_from_id
        - Src:             'lib/nx-match.c:2242,13'
          Dst:             bitmap_set1
    - functionName:    bitmap_set1
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 96
      functionLinenumberEnd: 98
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - bitmap_bit__
        - bitmap_unit__
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/bitmap.h:97,39'
          Dst:             bitmap_bit__
        - Src:             'lib/bitmap.h:97,6'
          Dst:             bitmap_unit__
    - functionName:    oxm_matchable_fields
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2220
      functionLinenumberEnd: 2229
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          49
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - bitmap_set1
        - mf_oxm_header
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:2225,13'
          Dst:             mf_oxm_header
        - Src:             'lib/nx-match.c:2226,13'
          Dst:             bitmap_set1
    - functionName:    oxm_writable_fields
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2204
      functionLinenumberEnd: 2213
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          60
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - bitmap_set1
        - mf_from_id
        - mf_oxm_header
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:2209,13'
          Dst:             mf_oxm_header
        - Src:             'lib/nx-match.c:2209,36'
          Dst:             mf_from_id
        - Src:             'lib/nx-match.c:2210,13'
          Dst:             bitmap_set1
    - functionName:    oxm_bitmap_to_mf_bitmap
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2181
      functionLinenumberEnd: 2197
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          107
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - bitmap_set1
        - htonll
        - mf_oxm_header
        - nxm_class
        - nxm_field
        - nxm_field_by_header
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:2185,24'
          Dst:             mf_oxm_header
        - Src:             'lib/nx-match.c:2186,31'
          Dst:             nxm_field_by_header
        - Src:             'lib/nx-match.c:2187,30'
          Dst:             nxm_class
        - Src:             'lib/nx-match.c:2188,25'
          Dst:             nxm_field
        - Src:             'lib/nx-match.c:2192,33'
          Dst:             htonll
        - Src:             'lib/nx-match.c:2193,17'
          Dst:             bitmap_set1
    - functionName:    oxm_bitmap_from_mf_bitmap
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2160
      functionLinenumberEnd: 2173
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          89
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - bitmap_scan
        - htonll
        - mf_oxm_header
        - nxm_class
        - nxm_field
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:2164,5'
          Dst:             bitmap_scan
        - Src:             'lib/nx-match.c:2165,24'
          Dst:             mf_oxm_header
        - Src:             'lib/nx-match.c:2166,26'
          Dst:             nxm_class
        - Src:             'lib/nx-match.c:2167,21'
          Dst:             nxm_field
        - Src:             'lib/nx-match.c:2164,5'
          Dst:             bitmap_scan
        - Src:             'lib/nx-match.c:2173,12'
          Dst:             htonll
    - functionName:    bitmap_scan
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 227
      functionLinenumberEnd: 252
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - bool
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          160
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - bitmap_unit__
        - raw_ctz
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/bitmap.h:231,13'
          Dst:             bitmap_unit__
        - Src:             'lib/bitmap.h:246,18'
          Dst:             raw_ctz
    - functionName:    mf_parse_field
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2019
      functionLinenumberEnd: 2029
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          66
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - mf_from_id
        - mf_from_name_len
        - nxm_field_by_name
        - strlen
        - xasprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:2021,17'
          Dst:             strlen
        - Src:             'lib/nx-match.c:2023,9'
          Dst:             nxm_field_by_name
        - Src:             'lib/nx-match.c:2024,20'
          Dst:             mf_from_id
        - Src:             'lib/nx-match.c:2024,40'
          Dst:             mf_from_name_len
        - Src:             'lib/nx-match.c:2026,16'
          Dst:             xasprintf
    - functionName:    nxm_execute_stack_pop
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1986
      functionLinenumberEnd: 2011
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          107
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - mf_is_tunnel_field
        - mf_write_subfield_flow
        - nx_stack_pop
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:1988,23'
          Dst:             nx_stack_pop
        - Src:             'lib/nx-match.c:2000,14'
          Dst:             mf_is_tunnel_field
        - Src:             'lib/nx-match.c:2001,13'
          Dst:             mf_write_subfield_flow
        - Src:             'lib/nx-match.c:2005,9'
          Dst:             mf_write_subfield_flow
    - functionName:    nx_stack_pop
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1952
      functionLinenumberEnd: 1964
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          65
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofpbuf_tail
        - ovs_ignore
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:1959,19'
          Dst:             ofpbuf_tail
        - Src:             'lib/nx-match.c:1961,5'
          Dst:             ovs_ignore
        - Src:             'lib/nx-match.c:1963,12'
          Dst:             ofpbuf_tail
    - functionName:    ofpbuf_tail
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 203
      functionLinenumberEnd: 205
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          56
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:204,5'
          Dst:             ovs_ignore
    - functionName:    nxm_execute_stack_push
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1970
      functionLinenumberEnd: 1980
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          48
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mf_read_subfield
        - mf_write_subfield_flow
        - nx_stack_push
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:1973,5'
          Dst:             mf_write_subfield_flow
        - Src:             'lib/nx-match.c:1977,5'
          Dst:             mf_read_subfield
        - Src:             'lib/nx-match.c:1979,5'
          Dst:             nx_stack_push
    - functionName:    nx_stack_push
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1934
      functionLinenumberEnd: 1937
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpbuf_put
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:1935,5'
          Dst:             ofpbuf_put
        - Src:             'lib/nx-match.c:1936,5'
          Dst:             ofpbuf_put
    - functionName:    nx_stack_push_bottom
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1942
      functionLinenumberEnd: 1945
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpbuf_push
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:1943,5'
          Dst:             ofpbuf_push
        - Src:             'lib/nx-match.c:1944,5'
          Dst:             ofpbuf_push
    - functionName:    nxm_stack_pop_check
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1914
      functionLinenumberEnd: 1915
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mf_check_dst
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:1915,12'
          Dst:             mf_check_dst
    - functionName:    nxm_stack_push_check
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1907
      functionLinenumberEnd: 1908
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mf_check_src
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:1908,12'
          Dst:             mf_check_src
    - functionName:    nxm_format_stack_pop
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1899
      functionLinenumberEnd: 1902
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_format
        - mf_format_subfield
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:1900,5'
          Dst:             ds_put_format
        - Src:             'lib/nx-match.c:1901,5'
          Dst:             mf_format_subfield
    - functionName:    mf_format_subfield
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2036
      functionLinenumberEnd: 2051
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         20
      ICount:          130
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - ds_put_cstr
        - ds_put_format
        - nxm_field_by_mf_id
      functionUses:    20
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:2038,9'
          Dst:             ds_put_cstr
        - Src:             'lib/nx-match.c:2040,37'
          Dst:             nxm_field_by_mf_id
        - Src:             'lib/nx-match.c:2041,9'
          Dst:             ds_put_cstr
        - Src:             'lib/nx-match.c:2045,9'
          Dst:             ds_put_cstr
        - Src:             'lib/nx-match.c:2047,9'
          Dst:             ds_put_format
        - Src:             'lib/nx-match.c:2049,9'
          Dst:             ds_put_format
    - functionName:    nxm_format_stack_push
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1892
      functionLinenumberEnd: 1895
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_format
        - mf_format_subfield
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:1893,5'
          Dst:             ds_put_format
        - Src:             'lib/nx-match.c:1894,5'
          Dst:             mf_format_subfield
    - functionName:    nxm_parse_stack_action
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1875
      functionLinenumberEnd: 1888
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          50
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - mf_parse_subfield__
        - xasprintf
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:1878,13'
          Dst:             mf_parse_subfield__
        - Src:             'lib/nx-match.c:1884,16'
          Dst:             xasprintf
    - functionName:    mf_parse_subfield__
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2076
      functionLinenumberEnd: 2130
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         29
      ICount:          212
      EdgeCount:       38
      CyclomaticComplexity: 11
      functionsReached:
        - mf_from_id
        - mf_from_name_len
        - mf_parse_subfield_name
        - ovs_scan
        - strchr
        - strcspn
        - strncmp
        - xasprintf
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:2087,16'
          Dst:             strcspn
        - Src:             'lib/nx-match.c:2089,9'
          Dst:             mf_parse_subfield_name
        - Src:             'lib/nx-match.c:2090,17'
          Dst:             mf_from_id
        - Src:             'lib/nx-match.c:2090,37'
          Dst:             mf_from_name_len
        - Src:             'lib/nx-match.c:2092,16'
          Dst:             xasprintf
        - Src:             'lib/nx-match.c:2100,14'
          Dst:             strncmp
        - Src:             'lib/nx-match.c:2102,20'
          Dst:             ovs_scan
        - Src:             'lib/nx-match.c:2104,20'
          Dst:             ovs_scan
        - Src:             'lib/nx-match.c:2107,20'
          Dst:             xasprintf
        - Src:             'lib/nx-match.c:2110,13'
          Dst:             strchr
        - Src:             'lib/nx-match.c:2114,16'
          Dst:             xasprintf
        - Src:             'lib/nx-match.c:2117,16'
          Dst:             xasprintf
        - Src:             'lib/nx-match.c:2120,16'
          Dst:             xasprintf
    - functionName:    nxm_reg_load
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1848
      functionLinenumberEnd: 1864
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - bitwise_copy
        - htonll
        - mf_is_tunnel_field
        - mf_write_subfield_flow
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:1851,28'
          Dst:             htonll
        - Src:             'lib/nx-match.c:1855,10'
          Dst:             mf_is_tunnel_field
        - Src:             'lib/nx-match.c:1857,9'
          Dst:             mf_write_subfield_flow
        - Src:             'lib/nx-match.c:1860,5'
          Dst:             bitwise_copy
        - Src:             'lib/nx-match.c:1863,5'
          Dst:             mf_write_subfield_flow
    - functionName:    nxm_reg_move_check
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1832
      functionLinenumberEnd: 1841
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - mf_check_dst
        - mf_check_src
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:1835,13'
          Dst:             mf_check_src
        - Src:             'lib/nx-match.c:1840,12'
          Dst:             mf_check_dst
    - functionName:    nxm_format_reg_move
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1821
      functionLinenumberEnd: 1826
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_format
        - mf_format_subfield
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:1822,5'
          Dst:             ds_put_format
        - Src:             'lib/nx-match.c:1823,5'
          Dst:             mf_format_subfield
        - Src:             'lib/nx-match.c:1824,5'
          Dst:             ds_put_format
        - Src:             'lib/nx-match.c:1825,5'
          Dst:             mf_format_subfield
    - functionName:    mf_parse_subfield
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2143
      functionLinenumberEnd: 2148
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          44
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - mf_parse_subfield__
        - xstrdup
      functionUses:    15
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:2144,19'
          Dst:             mf_parse_subfield__
        - Src:             'lib/nx-match.c:2146,17'
          Dst:             xstrdup
    - functionName:    nxm_parse_reg_move
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1792
      functionLinenumberEnd: 1815
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          100
      EdgeCount:       16
      CyclomaticComplexity: 6
      functionsReached:
        - mf_parse_subfield
        - mf_parse_subfield__
        - strncmp
        - xasprintf
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:1796,13'
          Dst:             mf_parse_subfield__
        - Src:             'lib/nx-match.c:1800,9'
          Dst:             strncmp
        - Src:             'lib/nx-match.c:1801,16'
          Dst:             xasprintf
        - Src:             'lib/nx-match.c:1804,13'
          Dst:             mf_parse_subfield
        - Src:             'lib/nx-match.c:1810,16'
          Dst:             xasprintf
    - functionName:    oxm_match_from_string
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1769
      functionLinenumberEnd: 1782
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          56
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htons
        - nx_match_from_string_raw
        - ofpbuf_at
        - ofpbuf_put_uninit
        - ofpbuf_put_zeros
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:1774,5'
          Dst:             ofpbuf_put_uninit
        - Src:             'lib/nx-match.c:1775,17'
          Dst:             nx_match_from_string_raw
        - Src:             'lib/nx-match.c:1776,5'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/nx-match.c:1778,11'
          Dst:             ofpbuf_at
        - Src:             'lib/nx-match.c:1779,17'
          Dst:             htons
        - Src:             'lib/nx-match.c:1780,19'
          Dst:             htons
    - functionName:    nx_match_from_string_raw
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1681
      functionLinenumberEnd: 1757
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         38
      ICount:          317
      EdgeCount:       44
      CyclomaticComplexity: 8
      functionsReached:
        - htonll
        - mf_from_oxm_header
        - nxm_class
        - nxm_experimenter_len
        - nxm_field
        - nxm_field_bytes
        - nxm_hasmask
        - nxm_header_len
        - nxm_vendor
        - ofpbuf_prealloc_tailroom
        - ofpbuf_put_hex
        - ofpbuf_put_uninit
        - ovs_fatal
        - parse_nxm_field_name
        - strcmp
        - strcspn
        - strspn
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:1685,10'
          Dst:             strcmp
        - Src:             'lib/nx-match.c:1687,9'
          Dst:             ofpbuf_prealloc_tailroom
        - Src:             'lib/nx-match.c:1691,15'
          Dst:             strspn
        - Src:             'lib/nx-match.c:1699,20'
          Dst:             strcspn
        - Src:             'lib/nx-match.c:1701,13'
          Dst:             ovs_fatal
        - Src:             'lib/nx-match.c:1704,18'
          Dst:             parse_nxm_field_name
        - Src:             'lib/nx-match.c:1706,13'
          Dst:             ovs_fatal
        - Src:             'lib/nx-match.c:1711,42'
          Dst:             nxm_header_len
        - Src:             'lib/nx-match.c:1711,21'
          Dst:             ofpbuf_put_uninit
        - Src:             'lib/nx-match.c:1712,13'
          Dst:             ofpbuf_put_hex
        - Src:             'lib/nx-match.c:1713,18'
          Dst:             nxm_field_bytes
        - Src:             'lib/nx-match.c:1714,44'
          Dst:             mf_from_oxm_header
        - Src:             'lib/nx-match.c:1718,32'
          Dst:             nxm_hasmask
        - Src:             'lib/nx-match.c:1719,31'
          Dst:             nxm_experimenter_len
        - Src:             'lib/nx-match.c:1721,30'
          Dst:             nxm_class
        - Src:             'lib/nx-match.c:1721,30'
          Dst:             nxm_field
        - Src:             'lib/nx-match.c:1721,30'
          Dst:             nxm_hasmask
        - Src:             'lib/nx-match.c:1721,30'
          Dst:             nxm_vendor
        - Src:             'lib/nx-match.c:1725,21'
          Dst:             ovs_fatal
        - Src:             'lib/nx-match.c:1730,27'
          Dst:             nxm_field_bytes
        - Src:             'lib/nx-match.c:1729,17'
          Dst:             ovs_fatal
        - Src:             'lib/nx-match.c:1733,21'
          Dst:             htonll
        - Src:             'lib/nx-match.c:1734,39'
          Dst:             nxm_header_len
        - Src:             'lib/nx-match.c:1736,13'
          Dst:             nxm_hasmask
        - Src:             'lib/nx-match.c:1737,18'
          Dst:             strspn
        - Src:             'lib/nx-match.c:1739,17'
          Dst:             ovs_fatal
        - Src:             'lib/nx-match.c:1742,17'
          Dst:             ofpbuf_put_hex
        - Src:             'lib/nx-match.c:1743,22'
          Dst:             nxm_field_bytes
        - Src:             'lib/nx-match.c:1744,17'
          Dst:             ovs_fatal
        - Src:             'lib/nx-match.c:1748,14'
          Dst:             strspn
        - Src:             'lib/nx-match.c:1750,13'
          Dst:             ovs_fatal
        - Src:             'lib/nx-match.c:1691,41'
          Dst:             strspn
    - functionName:    ofpbuf_at
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 183
      functionLinenumberEnd: 189
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:185,9'
          Dst:             ovs_ignore
    - functionName:    nx_match_from_string
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1761
      functionLinenumberEnd: 1764
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nx_match_from_string_raw
        - ofpbuf_put_zeros
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:1762,21'
          Dst:             nx_match_from_string_raw
        - Src:             'lib/nx-match.c:1763,5'
          Dst:             ofpbuf_put_zeros
    - functionName:    nx_format_field_name
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1605
      functionLinenumberEnd: 1607
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - char
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - format_nxm_field_name
        - mf_oxm_header
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:1606,30'
          Dst:             mf_oxm_header
        - Src:             'lib/nx-match.c:1606,5'
          Dst:             format_nxm_field_name
    - functionName:    format_nxm_field_name
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1611
      functionLinenumberEnd: 1625
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          74
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - ds_put_cstr
        - ds_put_format
        - nxm_class
        - nxm_field
        - nxm_field_by_header
        - nxm_hasmask
        - nxm_make_wild_header
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:1612,33'
          Dst:             nxm_field_by_header
        - Src:             'lib/nx-match.c:1614,9'
          Dst:             ds_put_cstr
        - Src:             'lib/nx-match.c:1615,13'
          Dst:             nxm_hasmask
        - Src:             'lib/nx-match.c:1616,13'
          Dst:             ds_put_cstr
        - Src:             'lib/nx-match.c:1619,9'
          Dst:             ds_put_cstr
        - Src:             'lib/nx-match.c:1620,26'
          Dst:             nxm_make_wild_header
        - Src:             'lib/nx-match.c:1621,9'
          Dst:             ds_put_cstr
        - Src:             'lib/nx-match.c:1623,35'
          Dst:             nxm_class
        - Src:             'lib/nx-match.c:1623,54'
          Dst:             nxm_field
        - Src:             'lib/nx-match.c:1623,9'
          Dst:             ds_put_format
    - functionName:    oxm_match_to_string
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1566
      functionLinenumberEnd: 1600
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          101
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - ds_init
        - ds_put_format
        - ds_steal_cstr
        - htons
        - ntohs
        - nx_match_to_string
        - ofpbuf_at
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:1571,5'
          Dst:             ds_init
        - Src:             'lib/nx-match.c:1574,9'
          Dst:             ds_put_format
        - Src:             'lib/nx-match.c:1578,22'
          Dst:             htons
        - Src:             'lib/nx-match.c:1579,57'
          Dst:             ntohs
        - Src:             'lib/nx-match.c:1579,9'
          Dst:             ds_put_format
        - Src:             'lib/nx-match.c:1583,18'
          Dst:             ntohs
        - Src:             'lib/nx-match.c:1585,9'
          Dst:             ds_put_format
        - Src:             'lib/nx-match.c:1590,9'
          Dst:             ds_put_format
        - Src:             'lib/nx-match.c:1595,31'
          Dst:             ofpbuf_at
        - Src:             'lib/nx-match.c:1595,12'
          Dst:             nx_match_to_string
        - Src:             'lib/nx-match.c:1599,12'
          Dst:             ds_steal_cstr
    - functionName:    nx_match_to_string
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1514
      functionLinenumberEnd: 1562
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         35
      ICount:          183
      EdgeCount:       45
      CyclomaticComplexity: 12
      functionsReached:
        - ds_put_char
        - ds_put_cstr
        - ds_put_format
        - ds_steal_cstr
        - format_nxm_field_name
        - nx_pull_entry__
        - nxm_field_bytes
        - nxm_hasmask
        - ofpbuf_const_initializer
        - xstrdup
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:1516,16'
          Dst:             xstrdup
        - Src:             'lib/nx-match.c:1519,23'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/nx-match.c:1528,17'
          Dst:             nx_pull_entry__
        - Src:             'lib/nx-match.c:1532,21'
          Dst:             nxm_field_bytes
        - Src:             'lib/nx-match.c:1532,21'
          Dst:             nxm_field_bytes
        - Src:             'lib/nx-match.c:1535,13'
          Dst:             ds_put_cstr
        - Src:             'lib/nx-match.c:1538,9'
          Dst:             format_nxm_field_name
        - Src:             'lib/nx-match.c:1539,9'
          Dst:             ds_put_char
        - Src:             'lib/nx-match.c:1542,13'
          Dst:             ds_put_format
        - Src:             'lib/nx-match.c:1544,13'
          Dst:             nxm_hasmask
        - Src:             'lib/nx-match.c:1545,13'
          Dst:             ds_put_char
        - Src:             'lib/nx-match.c:1547,17'
          Dst:             ds_put_format
        - Src:             'lib/nx-match.c:1550,9'
          Dst:             ds_put_char
        - Src:             'lib/nx-match.c:1555,13'
          Dst:             ds_put_cstr
        - Src:             'lib/nx-match.c:1558,9'
          Dst:             ds_put_format
        - Src:             'lib/nx-match.c:1561,12'
          Dst:             ds_steal_cstr
    - functionName:    ofpbuf_const_initializer
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 97
      functionLinenumberEnd: 105
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          30
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ds_put_char
      functionSourceFile: '/src/openvswitch/./include/openvswitch/dynamic-string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_char__
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/dynamic-string.h:99,9'
          Dst:             ds_put_char__
    - functionName:    nx_put_entry
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1496
      functionLinenumberEnd: 1506
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          63
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - mf_field_len
        - nxm_put_entry_raw
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:1500,11'
          Dst:             mf_field_len
        - Src:             'lib/nx-match.c:1503,5'
          Dst:             nxm_put_entry_raw
    - functionName:    nx_put_mff_header
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1471
      functionLinenumberEnd: 1477
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - nx_put_header
        - nx_put_header_len
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:1473,9'
          Dst:             nx_put_header_len
        - Src:             'lib/nx-match.c:1475,9'
          Dst:             nx_put_header
    - functionName:    nx_put_header
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1465
      functionLinenumberEnd: 1467
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - char
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mf_oxm_header
        - nx_put_header__
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:1466,24'
          Dst:             mf_oxm_header
        - Src:             'lib/nx-match.c:1466,5'
          Dst:             nx_put_header__
    - functionName:    oxm_put_field_array
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1425
      functionLinenumberEnd: 1450
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          103
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - bitmap_scan
        - mf_field_len
        - mf_from_id
        - nxm_put_entry_raw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:1438,5'
          Dst:             bitmap_scan
        - Src:             'lib/nx-match.c:1439,37'
          Dst:             mf_from_id
        - Src:             'lib/nx-match.c:1444,19'
          Dst:             mf_field_len
        - Src:             'lib/nx-match.c:1445,9'
          Dst:             nxm_put_entry_raw
        - Src:             'lib/nx-match.c:1438,5'
          Dst:             bitmap_scan
    - functionName:    nx_format_mask_tlv
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1377
      functionLinenumberEnd: 1388
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - char
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_char
        - ds_put_format
        - is_all_ones
        - mf_format
        - mf_from_id
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:1378,33'
          Dst:             mf_from_id
        - Src:             'lib/nx-match.c:1380,5'
          Dst:             ds_put_format
        - Src:             'lib/nx-match.c:1382,10'
          Dst:             is_all_ones
        - Src:             'lib/nx-match.c:1383,9'
          Dst:             ds_put_char
        - Src:             'lib/nx-match.c:1384,9'
          Dst:             mf_format
        - Src:             'lib/nx-match.c:1387,5'
          Dst:             ds_put_char
    - functionName:    oxm_format_field_array
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1395
      functionLinenumberEnd: 1411
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          91
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - bitmap_scan
        - ds_chomp
        - mf_from_id
        - nx_format_mask_tlv
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:1399,5'
          Dst:             bitmap_scan
        - Src:             'lib/nx-match.c:1400,37'
          Dst:             mf_from_id
        - Src:             'lib/nx-match.c:1404,9'
          Dst:             nx_format_mask_tlv
        - Src:             'lib/nx-match.c:1399,5'
          Dst:             bitmap_scan
        - Src:             'lib/nx-match.c:1409,9'
          Dst:             ds_chomp
    - functionName:    oxm_put_raw
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1367
      functionLinenumberEnd: 1369
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nx_put_raw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:1368,5'
          Dst:             nx_put_raw
    - functionName:    nx_put_raw
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1050
      functionLinenumberEnd: 1302
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         99
      ICount:          1246
      EdgeCount:       131
      CyclomaticComplexity: 34
      functionsReached:
        - eth_type_mpls
        - flow_get_xreg
        - get_dl_type
        - hton128
        - htonl
        - htonll
        - htons
        - is_ip_any
        - match_has_default_packet_type
        - mpls_lse_to_bos
        - mpls_lse_to_label
        - mpls_lse_to_tc
        - mpls_lse_to_ttl
        - nsh_path_hdr_to_si
        - nsh_path_hdr_to_spi
        - nx_put_header__
        - nxm_put_128m
        - nxm_put_16
        - nxm_put_16m
        - nxm_put_32
        - nxm_put_32m
        - nxm_put_64m
        - nxm_put_8
        - nxm_put_8m
        - nxm_put_entry_raw
        - nxm_put_eth_masked
        - nxm_put_ip
        - nxm_put_ipv6
        - ofp_to_u16
        - ofpbuf_insert
        - ofpbuf_put
        - ofpbuf_use_stack
        - ofputil_dl_type_to_openflow
        - ofputil_port_to_ofp11
        - tun_metadata_to_nx_match
        - vlan_tci_to_pcp
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:1053,24'
          Dst:             get_dl_type
        - Src:             'lib/nx-match.c:1062,41'
          Dst:             match_has_default_packet_type
        - Src:             'lib/nx-match.c:1063,9'
          Dst:             nxm_put_32m
        - Src:             'lib/nx-match.c:1070,21'
          Dst:             htonl
        - Src:             'lib/nx-match.c:1070,43'
          Dst:             htonl
        - Src:             'lib/nx-match.c:1069,9'
          Dst:             nxm_put_32m
        - Src:             'lib/nx-match.c:1074,46'
          Dst:             htonl
        - Src:             'lib/nx-match.c:1074,9'
          Dst:             nxm_put_32
        - Src:             'lib/nx-match.c:1078,44'
          Dst:             htonl
        - Src:             'lib/nx-match.c:1078,9'
          Dst:             nxm_put_32
        - Src:             'lib/nx-match.c:1085,24'
          Dst:             ofputil_port_to_ofp11
        - Src:             'lib/nx-match.c:1084,13'
          Dst:             nxm_put_32
        - Src:             'lib/nx-match.c:1088,30'
          Dst:             ofp_to_u16
        - Src:             'lib/nx-match.c:1088,24'
          Dst:             htons
        - Src:             'lib/nx-match.c:1087,13'
          Dst:             nxm_put_16
        - Src:             'lib/nx-match.c:1093,20'
          Dst:             ofputil_port_to_ofp11
        - Src:             'lib/nx-match.c:1092,9'
          Dst:             nxm_put_32
        - Src:             'lib/nx-match.c:1097,5'
          Dst:             nxm_put_eth_masked
        - Src:             'lib/nx-match.c:1099,5'
          Dst:             nxm_put_eth_masked
        - Src:             'lib/nx-match.c:1102,17'
          Dst:             ofputil_dl_type_to_openflow
        - Src:             'lib/nx-match.c:1101,5'
          Dst:             nxm_put_16m
        - Src:             'lib/nx-match.c:1107,33'
          Dst:             htons
        - Src:             'lib/nx-match.c:1111,21'
          Dst:             htons
        - Src:             'lib/nx-match.c:1112,13'
          Dst:             nxm_put_16
        - Src:             'lib/nx-match.c:1114,13'
          Dst:             nxm_put_16m
        - Src:             'lib/nx-match.c:1117,20'
          Dst:             vlan_tci_to_pcp
        - Src:             'lib/nx-match.c:1119,23'
          Dst:             vlan_tci_to_pcp
        - Src:             'lib/nx-match.c:1118,13'
          Dst:             nxm_put_8
        - Src:             'lib/nx-match.c:1123,9'
          Dst:             nxm_put_16m
        - Src:             'lib/nx-match.c:1128,9'
          Dst:             eth_type_mpls
        - Src:             'lib/nx-match.c:1129,43'
          Dst:             htonl
        - Src:             'lib/nx-match.c:1131,23'
          Dst:             mpls_lse_to_tc
        - Src:             'lib/nx-match.c:1130,13'
          Dst:             nxm_put_8
        - Src:             'lib/nx-match.c:1134,43'
          Dst:             htonl
        - Src:             'lib/nx-match.c:1136,23'
          Dst:             mpls_lse_to_bos
        - Src:             'lib/nx-match.c:1135,13'
          Dst:             nxm_put_8
        - Src:             'lib/nx-match.c:1139,43'
          Dst:             htonl
        - Src:             'lib/nx-match.c:1141,23'
          Dst:             mpls_lse_to_ttl
        - Src:             'lib/nx-match.c:1140,13'
          Dst:             nxm_put_8
        - Src:             'lib/nx-match.c:1144,43'
          Dst:             htonl
        - Src:             'lib/nx-match.c:1146,30'
          Dst:             mpls_lse_to_label
        - Src:             'lib/nx-match.c:1146,24'
          Dst:             htonl
        - Src:             'lib/nx-match.c:1145,13'
          Dst:             nxm_put_32
        - Src:             'lib/nx-match.c:1151,9'
          Dst:             is_ip_any
        - Src:             'lib/nx-match.c:1152,9'
          Dst:             nxm_put_ip
        - Src:             'lib/nx-match.c:1153,27'
          Dst:             htons
        - Src:             'lib/nx-match.c:1154,27'
          Dst:             htons
        - Src:             'lib/nx-match.c:1158,24'
          Dst:             htons
        - Src:             'lib/nx-match.c:1157,13'
          Dst:             nxm_put_16
        - Src:             'lib/nx-match.c:1160,9'
          Dst:             nxm_put_32m
        - Src:             'lib/nx-match.c:1162,9'
          Dst:             nxm_put_32m
        - Src:             'lib/nx-match.c:1164,9'
          Dst:             nxm_put_eth_masked
        - Src:             'lib/nx-match.c:1166,9'
          Dst:             nxm_put_eth_masked
        - Src:             'lib/nx-match.c:1171,5'
          Dst:             nxm_put_64m
        - Src:             'lib/nx-match.c:1176,17'
          Dst:             htons
        - Src:             'lib/nx-match.c:1176,44'
          Dst:             htons
        - Src:             'lib/nx-match.c:1175,5'
          Dst:             nxm_put_16m
        - Src:             'lib/nx-match.c:1177,5'
          Dst:             nxm_put_32m
        - Src:             'lib/nx-match.c:1179,5'
          Dst:             nxm_put_32m
        - Src:             'lib/nx-match.c:1181,5'
          Dst:             nxm_put_ipv6
        - Src:             'lib/nx-match.c:1183,5'
          Dst:             nxm_put_ipv6
        - Src:             'lib/nx-match.c:1185,5'
          Dst:             nxm_put_16m
        - Src:             'lib/nx-match.c:1187,5'
          Dst:             nxm_put_8m
        - Src:             'lib/nx-match.c:1189,5'
          Dst:             tun_metadata_to_nx_match
        - Src:             'lib/nx-match.c:1193,17'
          Dst:             htonl
        - Src:             'lib/nx-match.c:1194,17'
          Dst:             htonl
        - Src:             'lib/nx-match.c:1192,5'
          Dst:             nxm_put_32m
        - Src:             'lib/nx-match.c:1195,5'
          Dst:             nxm_put_8m
        - Src:             'lib/nx-match.c:1197,5'
          Dst:             nxm_put_8m
        - Src:             'lib/nx-match.c:1199,5'
          Dst:             nxm_put_8m
        - Src:             'lib/nx-match.c:1203,5'
          Dst:             nxm_put_8m
        - Src:             'lib/nx-match.c:1205,5'
          Dst:             nxm_put_8m
        - Src:             'lib/nx-match.c:1209,5'
          Dst:             nxm_put_8m
        - Src:             'lib/nx-match.c:1211,5'
          Dst:             nxm_put_8m
        - Src:             'lib/nx-match.c:1213,5'
          Dst:             nxm_put_8m
        - Src:             'lib/nx-match.c:1215,5'
          Dst:             nxm_put_8m
        - Src:             'lib/nx-match.c:1217,16'
          Dst:             nsh_path_hdr_to_spi
        - Src:             'lib/nx-match.c:1218,21'
          Dst:             htonl
        - Src:             'lib/nx-match.c:1222,17'
          Dst:             nsh_path_hdr_to_spi
        - Src:             'lib/nx-match.c:1221,5'
          Dst:             nxm_put_32m
        - Src:             'lib/nx-match.c:1225,17'
          Dst:             nsh_path_hdr_to_si
        - Src:             'lib/nx-match.c:1226,17'
          Dst:             nsh_path_hdr_to_si
        - Src:             'lib/nx-match.c:1224,5'
          Dst:             nxm_put_8m
        - Src:             'lib/nx-match.c:1228,9'
          Dst:             nxm_put_32m
        - Src:             'lib/nx-match.c:1236,25'
          Dst:             htonl
        - Src:             'lib/nx-match.c:1236,47'
          Dst:             htonl
        - Src:             'lib/nx-match.c:1235,13'
          Dst:             nxm_put_32m
        - Src:             'lib/nx-match.c:1241,32'
          Dst:             flow_get_xreg
        - Src:             'lib/nx-match.c:1241,25'
          Dst:             htonll
        - Src:             'lib/nx-match.c:1242,32'
          Dst:             flow_get_xreg
        - Src:             'lib/nx-match.c:1242,25'
          Dst:             htonll
        - Src:             'lib/nx-match.c:1240,13'
          Dst:             nxm_put_64m
        - Src:             'lib/nx-match.c:1247,42'
          Dst:             htonl
        - Src:             'lib/nx-match.c:1248,17'
          Dst:             htonl
        - Src:             'lib/nx-match.c:1247,5'
          Dst:             nxm_put_32m
        - Src:             'lib/nx-match.c:1251,42'
          Dst:             htonl
        - Src:             'lib/nx-match.c:1252,17'
          Dst:             htonl
        - Src:             'lib/nx-match.c:1251,5'
          Dst:             nxm_put_32m
        - Src:             'lib/nx-match.c:1253,41'
          Dst:             htons
        - Src:             'lib/nx-match.c:1254,17'
          Dst:             htons
        - Src:             'lib/nx-match.c:1253,5'
          Dst:             nxm_put_16m
        - Src:             'lib/nx-match.c:1255,41'
          Dst:             htonl
        - Src:             'lib/nx-match.c:1256,17'
          Dst:             htonl
        - Src:             'lib/nx-match.c:1255,5'
          Dst:             nxm_put_32m
        - Src:             'lib/nx-match.c:1257,43'
          Dst:             hton128
        - Src:             'lib/nx-match.c:1258,18'
          Dst:             hton128
        - Src:             'lib/nx-match.c:1257,5'
          Dst:             nxm_put_128m
        - Src:             'lib/nx-match.c:1259,5'
          Dst:             nxm_put_32m
        - Src:             'lib/nx-match.c:1261,5'
          Dst:             nxm_put_ipv6
        - Src:             'lib/nx-match.c:1263,5'
          Dst:             nxm_put_32m
        - Src:             'lib/nx-match.c:1265,5'
          Dst:             nxm_put_ipv6
        - Src:             'lib/nx-match.c:1268,9'
          Dst:             nxm_put_8m
        - Src:             'lib/nx-match.c:1270,9'
          Dst:             nxm_put_16m
        - Src:             'lib/nx-match.c:1272,9'
          Dst:             nxm_put_16m
        - Src:             'lib/nx-match.c:1276,5'
          Dst:             nxm_put_64m
        - Src:             'lib/nx-match.c:1284,9'
          Dst:             nx_put_header__
        - Src:             'lib/nx-match.c:1285,9'
          Dst:             ofpbuf_put
        - Src:             'lib/nx-match.c:1287,13'
          Dst:             ofpbuf_put
        - Src:             'lib/nx-match.c:1291,9'
          Dst:             match_has_default_packet_type
        - Src:             'lib/nx-match.c:1294,9'
          Dst:             ofpbuf_use_stack
        - Src:             'lib/nx-match.c:1295,9'
          Dst:             nxm_put_entry_raw
        - Src:             'lib/nx-match.c:1298,9'
          Dst:             ofpbuf_insert
    - functionName:    oxm_put_match
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1339
      functionLinenumberEnd: 1354
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          67
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonll
        - htons
        - nx_put_raw
        - ofpbuf_at
        - ofpbuf_put_uninit
        - ofpbuf_put_zeros
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:1343,23'
          Dst:             htonll
        - Src:             'lib/nx-match.c:1343,48'
          Dst:             htonll
        - Src:             'lib/nx-match.c:1345,5'
          Dst:             ofpbuf_put_uninit
        - Src:             'lib/nx-match.c:1346,18'
          Dst:             nx_put_raw
        - Src:             'lib/nx-match.c:1348,5'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/nx-match.c:1350,11'
          Dst:             ofpbuf_at
        - Src:             'lib/nx-match.c:1351,17'
          Dst:             htons
        - Src:             'lib/nx-match.c:1352,19'
          Dst:             htons
    - functionName:    nx_put_match
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1318
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nx_put_raw
        - ofpbuf_put_zeros
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:1319,21'
          Dst:             nx_put_raw
        - Src:             'lib/nx-match.c:1321,5'
          Dst:             ofpbuf_put_zeros
    - functionName:    bitmap_is_set
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 90
      functionLinenumberEnd: 91
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - bitmap_bit__
        - bitmap_unit__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/bitmap.h:91,14'
          Dst:             bitmap_unit__
        - Src:             'lib/bitmap.h:91,46'
          Dst:             bitmap_bit__
    - functionName:    oxm_pull_field_array
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 750
      functionLinenumberEnd: 790
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         46
      ICount:          227
      EdgeCount:       57
      CyclomaticComplexity: 13
      functionsReached:
        - bitmap_is_set
        - field_array_set
        - mf_is_mask_valid
        - nx_pull_entry__
        - ofpbuf_const_initializer
        - ofperr_to_string
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:751,23'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/nx-match.c:759,17'
          Dst:             nx_pull_entry__
        - Src:             'lib/nx-match.c:762,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/nx-match.c:764,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/nx-match.c:766,20'
          Dst:             bitmap_is_set
        - Src:             'lib/nx-match.c:767,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/nx-match.c:769,21'
          Dst:             mf_is_mask_valid
        - Src:             'lib/nx-match.c:770,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/nx-match.c:773,13'
          Dst:             field_array_set
        - Src:             'lib/nx-match.c:779,13'
          Dst:             ofperr_to_string
        - Src:             'lib/nx-match.c:779,13'
          Dst:             vlog_rate_limit
    - functionName:    nx_pull_raw
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 535
      functionLinenumberEnd: 597
      functionDepth:   0
      returnType:      int
      argCount:        9
      argTypes:
        - 'N/A'
        - int
        - bool
        - bool
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         56
      ICount:          296
      EdgeCount:       73
      CyclomaticComplexity: 19
      functionsReached:
        - htonll
        - match_add_ethernet_prereq
        - match_init_catchall
        - mf_are_match_prereqs_ok
        - mf_is_all_wild
        - mf_is_pipeline_field
        - mf_set
        - nx_pull_match_entry
        - ofpbuf_const_initializer
        - ofperr_to_string
        - ovs_ignore
        - vlog_rate_limit
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:536,5'
          Dst:             ovs_ignore
        - Src:             'lib/nx-match.c:538,5'
          Dst:             match_init_catchall
        - Src:             'lib/nx-match.c:541,34'
          Dst:             htonll
        - Src:             'lib/nx-match.c:544,23'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/nx-match.c:552,17'
          Dst:             nx_pull_match_entry
        - Src:             'lib/nx-match.c:567,31'
          Dst:             mf_are_match_prereqs_ok
        - Src:             'lib/nx-match.c:569,21'
          Dst:             mf_is_all_wild
        - Src:             'lib/nx-match.c:571,45'
          Dst:             mf_is_pipeline_field
        - Src:             'lib/nx-match.c:576,13'
          Dst:             mf_set
        - Src:             'lib/nx-match.c:578,17'
          Dst:             vlog_rate_limit
        - Src:             'lib/nx-match.c:584,13'
          Dst:             match_add_ethernet_prereq
        - Src:             'lib/nx-match.c:588,13'
          Dst:             ofperr_to_string
        - Src:             'lib/nx-match.c:588,13'
          Dst:             vlog_rate_limit
    - functionName:    oxm_decode_match
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 740
      functionLinenumberEnd: 742
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - bool
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nx_pull_raw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:741,12'
          Dst:             nx_pull_raw
    - functionName:    oxm_pull_match_loose
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 723
      functionLinenumberEnd: 725
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - oxm_pull_match__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:724,12'
          Dst:             oxm_pull_match__
    - functionName:    oxm_pull_match__
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 664
      functionLinenumberEnd: 693
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - bool
        - bool
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          135
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - htons
        - ntohs
        - nx_pull_raw
        - ofpbuf_try_pull
        - vlog_rate_limit
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:673,17'
          Dst:             ntohs
        - Src:             'lib/nx-match.c:678,22'
          Dst:             htons
        - Src:             'lib/nx-match.c:682,9'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/nx-match.c:684,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/nx-match.c:690,12'
          Dst:             nx_pull_raw
    - functionName:    oxm_pull_match
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 712
      functionLinenumberEnd: 714
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - oxm_pull_match__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:713,12'
          Dst:             oxm_pull_match__
    - functionName:    nx_pull_match_loose
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 655
      functionLinenumberEnd: 657
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nx_pull_match__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:656,12'
          Dst:             nx_pull_match__
    - functionName:    nx_pull_match__
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 605
      functionLinenumberEnd: 620
      functionDepth:   0
      returnType:      int
      argCount:        9
      argTypes:
        - 'N/A'
        - int
        - bool
        - bool
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          100
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - nx_pull_raw
        - ofpbuf_try_pull
        - vlog_rate_limit
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:609,13'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/nx-match.c:611,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/nx-match.c:618,12'
          Dst:             nx_pull_raw
    - functionName:    nx_pull_match
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 642
      functionLinenumberEnd: 644
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          38
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nx_pull_match__
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:643,12'
          Dst:             nx_pull_match__
    - functionName:    nx_pull_header
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 487
      functionLinenumberEnd: 497
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          70
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - nx_pull_header__
        - nxm_hasmask
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:491,13'
          Dst:             nx_pull_header__
        - Src:             'lib/nx-match.c:493,29'
          Dst:             nxm_hasmask
        - Src:             'lib/nx-match.c:494,26'
          Dst:             nxm_hasmask
    - functionName:    nx_pull_entry
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 468
      functionLinenumberEnd: 471
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nx_pull_entry__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:471,12'
          Dst:             nx_pull_entry__
    - functionName:    mf_from_nxm_header
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 274
      functionLinenumberEnd: 275
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mf_from_oxm_header
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:275,12'
          Dst:             mf_from_oxm_header
    - functionName:    nxm_header_from_mff
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 245
      functionLinenumberEnd: 252
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          56
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - is_experimenter_oxm
        - mf_oxm_header
        - nxm_no_len
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:246,20'
          Dst:             mf_oxm_header
        - Src:             'lib/nx-match.c:249,15'
          Dst:             nxm_no_len
        - Src:             'lib/nx-match.c:252,12'
          Dst:             is_experimenter_oxm
    - functionName:    mf_nxm_header
      functionSourceFile: '/src/openvswitch/lib/nx-match.c'
      linkageType:     InternalLinkage
      functionLinenumber: 234
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - is_experimenter_oxm
        - mf_oxm_header
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.c:235,20'
          Dst:             mf_oxm_header
        - Src:             'lib/nx-match.c:236,12'
          Dst:             is_experimenter_oxm
    - functionName:    init_this_module_odp_execute
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 43
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:43,1'
          Dst:             vlog_insert_module
    - functionName:    datapath_drop_sample_error_init_coverage
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 44
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:44,1'
          Dst:             coverage_counter_register
    - functionName:    datapath_drop_nsh_decap_error_init_coverage
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:45,1'
          Dst:             coverage_counter_register
    - functionName:    drop_action_of_pipeline_init_coverage
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 46
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:46,1'
          Dst:             coverage_counter_register
    - functionName:    drop_action_bridge_not_found_init_coverage
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 47
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:47,1'
          Dst:             coverage_counter_register
    - functionName:    drop_action_recursion_too_deep_init_coverage
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48
      functionLinenumberEnd: 48
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:48,1'
          Dst:             coverage_counter_register
    - functionName:    drop_action_too_many_resubmit_init_coverage
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 49
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:49,1'
          Dst:             coverage_counter_register
    - functionName:    drop_action_stack_too_deep_init_coverage
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:50,1'
          Dst:             coverage_counter_register
    - functionName:    drop_action_no_recirculation_context_init_coverage
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51
      functionLinenumberEnd: 51
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:51,1'
          Dst:             coverage_counter_register
    - functionName:    drop_action_recirculation_conflict_init_coverage
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:52,1'
          Dst:             coverage_counter_register
    - functionName:    drop_action_too_many_mpls_labels_init_coverage
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 53
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:53,1'
          Dst:             coverage_counter_register
    - functionName:    drop_action_invalid_tunnel_metadata_init_coverage
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:54,1'
          Dst:             coverage_counter_register
    - functionName:    drop_action_unsupported_packet_type_init_coverage
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:55,1'
          Dst:             coverage_counter_register
    - functionName:    drop_action_congestion_init_coverage
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:56,1'
          Dst:             coverage_counter_register
    - functionName:    drop_action_forwarding_disabled_init_coverage
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 57
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:57,1'
          Dst:             coverage_counter_register
    - functionName:    drop_action_tunnel_routing_failed_init_coverage
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58
      functionLinenumberEnd: 58
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:58,1'
          Dst:             coverage_counter_register
    - functionName:    drop_action_tunnel_output_no_ethernet_init_coverage
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 59
      functionLinenumberEnd: 59
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:59,1'
          Dst:             coverage_counter_register
    - functionName:    drop_action_tunnel_neigh_cache_miss_init_coverage
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 60
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:60,1'
          Dst:             coverage_counter_register
    - functionName:    drop_action_tunnel_header_build_failed_init_coverage
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 61
      functionLinenumberEnd: 61
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:61,1'
          Dst:             coverage_counter_register
    - functionName:    drop_action_tunnel_header_build_failed_count
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 61
      functionLinenumberEnd: 61
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_drop_action_tunnel_header_build_failed_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:61,1'
          Dst:             counter_drop_action_tunnel_header_build_failed_get
    - functionName:    counter_drop_action_tunnel_header_build_failed_get
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 61
      functionLinenumberEnd: 61
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_drop_action_tunnel_header_build_failed_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:61,1'
          Dst:             counter_drop_action_tunnel_header_build_failed_get_unsafe
    - functionName:    counter_drop_action_tunnel_header_build_failed_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 61
      functionLinenumberEnd: 61
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    drop_action_tunnel_neigh_cache_miss_count
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 60
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_drop_action_tunnel_neigh_cache_miss_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:60,1'
          Dst:             counter_drop_action_tunnel_neigh_cache_miss_get
    - functionName:    counter_drop_action_tunnel_neigh_cache_miss_get
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 60
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_drop_action_tunnel_neigh_cache_miss_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:60,1'
          Dst:             counter_drop_action_tunnel_neigh_cache_miss_get_unsafe
    - functionName:    counter_drop_action_tunnel_neigh_cache_miss_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 60
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    drop_action_tunnel_output_no_ethernet_count
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 59
      functionLinenumberEnd: 59
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_drop_action_tunnel_output_no_ethernet_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:59,1'
          Dst:             counter_drop_action_tunnel_output_no_ethernet_get
    - functionName:    counter_drop_action_tunnel_output_no_ethernet_get
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 59
      functionLinenumberEnd: 59
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_drop_action_tunnel_output_no_ethernet_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:59,1'
          Dst:             counter_drop_action_tunnel_output_no_ethernet_get_unsafe
    - functionName:    counter_drop_action_tunnel_output_no_ethernet_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 59
      functionLinenumberEnd: 59
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    drop_action_tunnel_routing_failed_count
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58
      functionLinenumberEnd: 58
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_drop_action_tunnel_routing_failed_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:58,1'
          Dst:             counter_drop_action_tunnel_routing_failed_get
    - functionName:    counter_drop_action_tunnel_routing_failed_get
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58
      functionLinenumberEnd: 58
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_drop_action_tunnel_routing_failed_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:58,1'
          Dst:             counter_drop_action_tunnel_routing_failed_get_unsafe
    - functionName:    counter_drop_action_tunnel_routing_failed_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58
      functionLinenumberEnd: 58
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    drop_action_forwarding_disabled_count
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 57
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_drop_action_forwarding_disabled_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:57,1'
          Dst:             counter_drop_action_forwarding_disabled_get
    - functionName:    counter_drop_action_forwarding_disabled_get
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 57
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_drop_action_forwarding_disabled_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:57,1'
          Dst:             counter_drop_action_forwarding_disabled_get_unsafe
    - functionName:    counter_drop_action_forwarding_disabled_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 57
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    drop_action_congestion_count
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_drop_action_congestion_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:56,1'
          Dst:             counter_drop_action_congestion_get
    - functionName:    counter_drop_action_congestion_get
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_drop_action_congestion_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:56,1'
          Dst:             counter_drop_action_congestion_get_unsafe
    - functionName:    counter_drop_action_congestion_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    drop_action_unsupported_packet_type_count
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_drop_action_unsupported_packet_type_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:55,1'
          Dst:             counter_drop_action_unsupported_packet_type_get
    - functionName:    counter_drop_action_unsupported_packet_type_get
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_drop_action_unsupported_packet_type_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:55,1'
          Dst:             counter_drop_action_unsupported_packet_type_get_unsafe
    - functionName:    counter_drop_action_unsupported_packet_type_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    drop_action_invalid_tunnel_metadata_count
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_drop_action_invalid_tunnel_metadata_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:54,1'
          Dst:             counter_drop_action_invalid_tunnel_metadata_get
    - functionName:    counter_drop_action_invalid_tunnel_metadata_get
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_drop_action_invalid_tunnel_metadata_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:54,1'
          Dst:             counter_drop_action_invalid_tunnel_metadata_get_unsafe
    - functionName:    counter_drop_action_invalid_tunnel_metadata_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    drop_action_too_many_mpls_labels_count
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 53
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_drop_action_too_many_mpls_labels_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:53,1'
          Dst:             counter_drop_action_too_many_mpls_labels_get
    - functionName:    counter_drop_action_too_many_mpls_labels_get
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 53
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_drop_action_too_many_mpls_labels_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:53,1'
          Dst:             counter_drop_action_too_many_mpls_labels_get_unsafe
    - functionName:    counter_drop_action_too_many_mpls_labels_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 53
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    drop_action_recirculation_conflict_count
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_drop_action_recirculation_conflict_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:52,1'
          Dst:             counter_drop_action_recirculation_conflict_get
    - functionName:    counter_drop_action_recirculation_conflict_get
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_drop_action_recirculation_conflict_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:52,1'
          Dst:             counter_drop_action_recirculation_conflict_get_unsafe
    - functionName:    counter_drop_action_recirculation_conflict_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    drop_action_no_recirculation_context_count
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51
      functionLinenumberEnd: 51
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_drop_action_no_recirculation_context_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:51,1'
          Dst:             counter_drop_action_no_recirculation_context_get
    - functionName:    counter_drop_action_no_recirculation_context_get
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51
      functionLinenumberEnd: 51
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_drop_action_no_recirculation_context_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:51,1'
          Dst:             counter_drop_action_no_recirculation_context_get_unsafe
    - functionName:    counter_drop_action_no_recirculation_context_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51
      functionLinenumberEnd: 51
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    drop_action_stack_too_deep_count
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_drop_action_stack_too_deep_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:50,1'
          Dst:             counter_drop_action_stack_too_deep_get
    - functionName:    counter_drop_action_stack_too_deep_get
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_drop_action_stack_too_deep_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:50,1'
          Dst:             counter_drop_action_stack_too_deep_get_unsafe
    - functionName:    counter_drop_action_stack_too_deep_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    drop_action_too_many_resubmit_count
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 49
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_drop_action_too_many_resubmit_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:49,1'
          Dst:             counter_drop_action_too_many_resubmit_get
    - functionName:    counter_drop_action_too_many_resubmit_get
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 49
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_drop_action_too_many_resubmit_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:49,1'
          Dst:             counter_drop_action_too_many_resubmit_get_unsafe
    - functionName:    counter_drop_action_too_many_resubmit_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 49
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    drop_action_recursion_too_deep_count
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48
      functionLinenumberEnd: 48
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_drop_action_recursion_too_deep_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:48,1'
          Dst:             counter_drop_action_recursion_too_deep_get
    - functionName:    counter_drop_action_recursion_too_deep_get
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48
      functionLinenumberEnd: 48
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_drop_action_recursion_too_deep_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:48,1'
          Dst:             counter_drop_action_recursion_too_deep_get_unsafe
    - functionName:    counter_drop_action_recursion_too_deep_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48
      functionLinenumberEnd: 48
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    drop_action_bridge_not_found_count
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 47
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_drop_action_bridge_not_found_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:47,1'
          Dst:             counter_drop_action_bridge_not_found_get
    - functionName:    counter_drop_action_bridge_not_found_get
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 47
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_drop_action_bridge_not_found_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:47,1'
          Dst:             counter_drop_action_bridge_not_found_get_unsafe
    - functionName:    counter_drop_action_bridge_not_found_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 47
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    drop_action_of_pipeline_count
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 46
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_drop_action_of_pipeline_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:46,1'
          Dst:             counter_drop_action_of_pipeline_get
    - functionName:    counter_drop_action_of_pipeline_get
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 46
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_drop_action_of_pipeline_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:46,1'
          Dst:             counter_drop_action_of_pipeline_get_unsafe
    - functionName:    counter_drop_action_of_pipeline_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 46
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    datapath_drop_nsh_decap_error_count
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_datapath_drop_nsh_decap_error_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:45,1'
          Dst:             counter_datapath_drop_nsh_decap_error_get
    - functionName:    counter_datapath_drop_nsh_decap_error_get
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_datapath_drop_nsh_decap_error_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:45,1'
          Dst:             counter_datapath_drop_nsh_decap_error_get_unsafe
    - functionName:    counter_datapath_drop_nsh_decap_error_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    datapath_drop_sample_error_count
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 44
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_datapath_drop_sample_error_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:44,1'
          Dst:             counter_datapath_drop_sample_error_get
    - functionName:    counter_datapath_drop_sample_error_get
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 44
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_datapath_drop_sample_error_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:44,1'
          Dst:             counter_datapath_drop_sample_error_get_unsafe
    - functionName:    counter_datapath_drop_sample_error_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 44
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    drop_action_tunnel_header_build_failed_add
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 61
      functionLinenumberEnd: 61
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_drop_action_tunnel_header_build_failed_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:61,1'
          Dst:             counter_drop_action_tunnel_header_build_failed_get
    - functionName:    drop_action_tunnel_neigh_cache_miss_add
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 60
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_drop_action_tunnel_neigh_cache_miss_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:60,1'
          Dst:             counter_drop_action_tunnel_neigh_cache_miss_get
    - functionName:    drop_action_tunnel_output_no_ethernet_add
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 59
      functionLinenumberEnd: 59
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_drop_action_tunnel_output_no_ethernet_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:59,1'
          Dst:             counter_drop_action_tunnel_output_no_ethernet_get
    - functionName:    drop_action_tunnel_routing_failed_add
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58
      functionLinenumberEnd: 58
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_drop_action_tunnel_routing_failed_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:58,1'
          Dst:             counter_drop_action_tunnel_routing_failed_get
    - functionName:    drop_action_forwarding_disabled_add
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 57
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_drop_action_forwarding_disabled_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:57,1'
          Dst:             counter_drop_action_forwarding_disabled_get
    - functionName:    drop_action_congestion_add
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_drop_action_congestion_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:56,1'
          Dst:             counter_drop_action_congestion_get
    - functionName:    drop_action_unsupported_packet_type_add
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_drop_action_unsupported_packet_type_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:55,1'
          Dst:             counter_drop_action_unsupported_packet_type_get
    - functionName:    drop_action_invalid_tunnel_metadata_add
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_drop_action_invalid_tunnel_metadata_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:54,1'
          Dst:             counter_drop_action_invalid_tunnel_metadata_get
    - functionName:    drop_action_too_many_mpls_labels_add
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 53
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_drop_action_too_many_mpls_labels_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:53,1'
          Dst:             counter_drop_action_too_many_mpls_labels_get
    - functionName:    drop_action_recirculation_conflict_add
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_drop_action_recirculation_conflict_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:52,1'
          Dst:             counter_drop_action_recirculation_conflict_get
    - functionName:    drop_action_no_recirculation_context_add
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51
      functionLinenumberEnd: 51
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_drop_action_no_recirculation_context_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:51,1'
          Dst:             counter_drop_action_no_recirculation_context_get
    - functionName:    drop_action_stack_too_deep_add
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_drop_action_stack_too_deep_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:50,1'
          Dst:             counter_drop_action_stack_too_deep_get
    - functionName:    drop_action_too_many_resubmit_add
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 49
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_drop_action_too_many_resubmit_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:49,1'
          Dst:             counter_drop_action_too_many_resubmit_get
    - functionName:    drop_action_recursion_too_deep_add
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48
      functionLinenumberEnd: 48
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_drop_action_recursion_too_deep_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:48,1'
          Dst:             counter_drop_action_recursion_too_deep_get
    - functionName:    drop_action_bridge_not_found_add
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 47
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_drop_action_bridge_not_found_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:47,1'
          Dst:             counter_drop_action_bridge_not_found_get
    - functionName:    drop_action_of_pipeline_add
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 46
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_drop_action_of_pipeline_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:46,1'
          Dst:             counter_drop_action_of_pipeline_get
    - functionName:    dp_packet_inner_l4
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 529
      functionLinenumberEnd: 531
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_data
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:531,23'
          Dst:             dp_packet_data
    - functionName:    dp_packet_data
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 845
      functionLinenumberEnd: 847
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __packet_data
        - dp_packet_base
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:846,12'
          Dst:             __packet_data
        - Src:             'lib/dp-packet.h:847,23'
          Dst:             dp_packet_base
        - Src:             'lib/dp-packet.h:847,43'
          Dst:             __packet_data
    - functionName:    __packet_data
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 774
      functionLinenumberEnd: 775
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_base
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 750
      functionLinenumberEnd: 751
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_inner_l4_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 537
      functionLinenumberEnd: 541
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_inner_l4
        - dp_packet_l2_pad_size
        - dp_packet_tail
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:539,29'
          Dst:             dp_packet_tail
        - Src:             'lib/dp-packet.h:540,29'
          Dst:             dp_packet_inner_l4
        - Src:             'lib/dp-packet.h:541,14'
          Dst:             dp_packet_l2_pad_size
    - functionName:    dp_packet_tail
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 326
      functionLinenumberEnd: 327
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_data
        - dp_packet_size
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:327,21'
          Dst:             dp_packet_data
        - Src:             'lib/dp-packet.h:327,41'
          Dst:             dp_packet_size
    - functionName:    dp_packet_l2_pad_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 432
      functionLinenumberEnd: 433
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 762
      functionLinenumberEnd: 763
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_get_cutlen
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 832
      functionLinenumberEnd: 834
      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:    dp_packet_get_inner_tcp_payload
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 563
      functionLinenumberEnd: 575
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          86
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - dp_packet_inner_l4
        - dp_packet_inner_l4_size
        - ntohs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:564,22'
          Dst:             dp_packet_inner_l4_size
        - Src:             'lib/dp-packet.h:567,34'
          Dst:             dp_packet_inner_l4
        - Src:             'lib/dp-packet.h:568,23'
          Dst:             ntohs
    - functionName:    dp_packet_tunnel
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1135
      functionLinenumberEnd: 1136
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_get_tso_segsz
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 798
      functionLinenumberEnd: 799
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_get_send_len
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 839
      functionLinenumberEnd: 840
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_get_cutlen
        - dp_packet_size
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:840,12'
          Dst:             dp_packet_size
        - Src:             'lib/dp-packet.h:840,32'
          Dst:             dp_packet_get_cutlen
    - functionName:    free_afxdp_buf
      functionSourceFile: '/src/openvswitch/lib/netdev-afxdp.h'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 84
      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:    free_dpdk_buf
      functionSourceFile: '/src/openvswitch/lib/netdev-dpdk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 76
      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:    dp_packet_reset_cutlen
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 811
      functionLinenumberEnd: 813
      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:    dp_packet_headroom
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 344
      functionLinenumberEnd: 345
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_base
        - dp_packet_data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:345,21'
          Dst:             dp_packet_data
        - Src:             'lib/dp-packet.h:345,50'
          Dst:             dp_packet_base
    - functionName:    dp_packet_batch_reset_cutlen
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1035
      functionLinenumberEnd: 1044
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          65
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - dp_packet_batch_size
        - dp_packet_reset_cutlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:1039,9'
          Dst:             dp_packet_batch_size
        - Src:             'lib/dp-packet.h:1040,13'
          Dst:             dp_packet_reset_cutlen
    - functionName:    dp_packet_batch_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 910
      functionLinenumberEnd: 911
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    23
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_batch_clone
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 963
      functionLinenumberEnd: 979
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          96
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - dp_packet_batch_add
        - dp_packet_batch_init
        - dp_packet_batch_size
        - dp_packet_clone_with_headroom
        - dp_packet_headroom
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:966,5'
          Dst:             dp_packet_batch_init
        - Src:             'lib/dp-packet.h:967,5'
          Dst:             dp_packet_batch_size
        - Src:             'lib/dp-packet.h:968,21'
          Dst:             dp_packet_batch_size
        - Src:             'lib/dp-packet.h:972,29'
          Dst:             dp_packet_headroom
        - Src:             'lib/dp-packet.h:975,22'
          Dst:             dp_packet_clone_with_headroom
        - Src:             'lib/dp-packet.h:976,9'
          Dst:             dp_packet_batch_add
    - functionName:    dp_packet_batch_init
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 879
      functionLinenumberEnd: 883
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_batch_reset
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:880,5'
          Dst:             dp_packet_batch_reset
    - functionName:    dp_packet_batch_add
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 889
      functionLinenumberEnd: 894
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_batch_grow
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:891,9'
          Dst:             dp_packet_batch_grow
    - functionName:    dp_packet_batch_reset
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 872
      functionLinenumberEnd: 875
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_batch_destroy
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 999
      functionLinenumberEnd: 1004
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_batch_init_packet
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 929
      functionLinenumberEnd: 933
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_batch_init
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:930,5'
          Dst:             dp_packet_batch_init
    - functionName:    datapath_drop_sample_error_add
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 44
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_datapath_drop_sample_error_get
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:44,1'
          Dst:             counter_datapath_drop_sample_error_get
    - functionName:    mask_ipv6_addr
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 221
      functionLinenumberEnd: 233
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          64
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - get_16aligned_be32
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:225,16'
          Dst:             get_16aligned_be32
    - functionName:    get_16aligned_be32
      functionSourceFile: '/src/openvswitch/lib/unaligned.h'
      linkageType:     InternalLinkage
      functionLinenumber: 246
      functionLinenumberEnd: 250
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_ip_checksum_set_partial
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1173
      functionLinenumberEnd: 1175
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_ip_checksum_valid
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1191
      functionLinenumberEnd: 1192
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    odp_set_nd_ext
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 332
      functionLinenumberEnd: 344
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          72
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - dp_packet_l4
        - packet_set_nd_ext
        - put_16aligned_be32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:333,35'
          Dst:             dp_packet_l4
        - Src:             'lib/odp-execute.c:338,9'
          Dst:             put_16aligned_be32
        - Src:             'lib/odp-execute.c:343,5'
          Dst:             packet_set_nd_ext
    - functionName:    dp_packet_l4
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 475
      functionLinenumberEnd: 477
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_data
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:477,23'
          Dst:             dp_packet_data
    - functionName:    put_16aligned_be32
      functionSourceFile: '/src/openvswitch/lib/unaligned.h'
      linkageType:     InternalLinkage
      functionLinenumber: 257
      functionLinenumberEnd: 265
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          19
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    11
      BranchProfiles:  []
      Callsites:       []
    - functionName:    odp_set_nd
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 349
      functionLinenumberEnd: 387
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          229
      EdgeCount:       38
      CyclomaticComplexity: 11
      functionsReached:
        - dp_packet_get_nd_payload
        - dp_packet_l4
        - dp_packet_l4_size
        - ether_addr_copy_masked
        - mask_ipv6_addr
        - packet_set_nd
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:350,35'
          Dst:             dp_packet_l4
        - Src:             'lib/odp-execute.c:351,44'
          Dst:             dp_packet_get_nd_payload
        - Src:             'lib/odp-execute.c:354,28'
          Dst:             dp_packet_l4_size
        - Src:             'lib/odp-execute.c:364,17'
          Dst:             ether_addr_copy_masked
        - Src:             'lib/odp-execute.c:371,17'
          Dst:             ether_addr_copy_masked
        - Src:             'lib/odp-execute.c:382,23'
          Dst:             mask_ipv6_addr
        - Src:             'lib/odp-execute.c:381,9'
          Dst:             packet_set_nd
    - functionName:    dp_packet_get_nd_payload
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 624
      functionLinenumberEnd: 626
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_l4
        - dp_packet_l4_size
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:625,12'
          Dst:             dp_packet_l4_size
        - Src:             'lib/dp-packet.h:626,25'
          Dst:             dp_packet_l4
    - functionName:    dp_packet_l4_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 502
      functionLinenumberEnd: 505
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_l2_pad_size
        - dp_packet_l4
        - dp_packet_tail
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:504,25'
          Dst:             dp_packet_tail
        - Src:             'lib/dp-packet.h:504,59'
          Dst:             dp_packet_l4
        - Src:             'lib/dp-packet.h:505,11'
          Dst:             dp_packet_l2_pad_size
    - functionName:    ether_addr_copy_masked
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 128
      functionLinenumberEnd: 134
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         5
      ICount:          62
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_l2_5
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 445
      functionLinenumberEnd: 447
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:447,23'
          Dst:             dp_packet_data
    - functionName:    odp_set_sctp
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 285
      functionLinenumberEnd: 293
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          85
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - dp_packet_get_sctp_payload
        - dp_packet_l4
        - packet_set_sctp_port
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:286,30'
          Dst:             dp_packet_l4
        - Src:             'lib/odp-execute.c:288,9'
          Dst:             dp_packet_get_sctp_payload
        - Src:             'lib/odp-execute.c:289,9'
          Dst:             packet_set_sctp_port
    - functionName:    dp_packet_get_sctp_payload
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 610
      functionLinenumberEnd: 612
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_l4
        - dp_packet_l4_size
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:611,12'
          Dst:             dp_packet_l4_size
        - Src:             'lib/dp-packet.h:612,25'
          Dst:             dp_packet_l4
    - functionName:    odp_set_udp
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 272
      functionLinenumberEnd: 280
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          85
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - dp_packet_get_udp_payload
        - dp_packet_l4
        - packet_set_udp_port
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:273,29'
          Dst:             dp_packet_l4
        - Src:             'lib/odp-execute.c:275,9'
          Dst:             dp_packet_get_udp_payload
        - Src:             'lib/odp-execute.c:276,9'
          Dst:             packet_set_udp_port
    - functionName:    dp_packet_get_udp_payload
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 603
      functionLinenumberEnd: 605
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_l4
        - dp_packet_l4_size
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:604,12'
          Dst:             dp_packet_l4_size
        - Src:             'lib/dp-packet.h:605,25'
          Dst:             dp_packet_l4
    - functionName:    odp_set_tcp
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 259
      functionLinenumberEnd: 267
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          85
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - dp_packet_get_tcp_payload
        - dp_packet_l4
        - packet_set_tcp_port
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:260,29'
          Dst:             dp_packet_l4
        - Src:             'lib/odp-execute.c:262,9'
          Dst:             dp_packet_get_tcp_payload
        - Src:             'lib/odp-execute.c:263,9'
          Dst:             packet_set_tcp_port
    - functionName:    dp_packet_get_tcp_payload
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 547
      functionLinenumberEnd: 559
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          86
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - dp_packet_l4
        - dp_packet_l4_size
        - ntohs
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:548,22'
          Dst:             dp_packet_l4_size
        - Src:             'lib/dp-packet.h:551,34'
          Dst:             dp_packet_l4
        - Src:             'lib/dp-packet.h:552,23'
          Dst:             ntohs
    - functionName:    odp_set_ipv6
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 239
      functionLinenumberEnd: 254
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          99
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_l3
        - get_16aligned_be32
        - htonl
        - mask_ipv6_addr
        - ntohl
        - packet_set_ipv6
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:240,40'
          Dst:             dp_packet_l3
        - Src:             'lib/odp-execute.c:242,28'
          Dst:             get_16aligned_be32
        - Src:             'lib/odp-execute.c:242,22'
          Dst:             ntohl
        - Src:             'lib/odp-execute.c:243,23'
          Dst:             get_16aligned_be32
        - Src:             'lib/odp-execute.c:243,59'
          Dst:             htonl
        - Src:             'lib/odp-execute.c:247,9'
          Dst:             mask_ipv6_addr
        - Src:             'lib/odp-execute.c:249,9'
          Dst:             mask_ipv6_addr
        - Src:             'lib/odp-execute.c:245,5'
          Dst:             packet_set_ipv6
    - functionName:    dp_packet_l3
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 461
      functionLinenumberEnd: 463
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_data
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:463,23'
          Dst:             dp_packet_data
    - functionName:    odp_set_ipv4
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 216
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         33
      ICount:          282
      EdgeCount:       43
      CyclomaticComplexity: 12
      functionsReached:
        - dp_packet_ip_checksum_set_partial
        - dp_packet_ip_checksum_valid
        - dp_packet_l3
        - get_16aligned_be32
        - htons
        - ovs_ignore
        - packet_set_ipv4_addr
        - recalc_csum16
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:157,28'
          Dst:             dp_packet_l3
        - Src:             'lib/odp-execute.c:165,5'
          Dst:             ovs_ignore
        - Src:             'lib/odp-execute.c:168,21'
          Dst:             get_16aligned_be32
        - Src:             'lib/odp-execute.c:172,13'
          Dst:             packet_set_ipv4_addr
        - Src:             'lib/odp-execute.c:177,21'
          Dst:             get_16aligned_be32
        - Src:             'lib/odp-execute.c:181,13'
          Dst:             packet_set_ipv4_addr
        - Src:             'lib/odp-execute.c:189,17'
          Dst:             dp_packet_ip_checksum_valid
        - Src:             'lib/odp-execute.c:190,17'
          Dst:             dp_packet_ip_checksum_set_partial
        - Src:             'lib/odp-execute.c:193,45'
          Dst:             htons
        - Src:             'lib/odp-execute.c:194,45'
          Dst:             htons
        - Src:             'lib/odp-execute.c:192,31'
          Dst:             recalc_csum16
        - Src:             'lib/odp-execute.c:205,17'
          Dst:             dp_packet_ip_checksum_valid
        - Src:             'lib/odp-execute.c:206,17'
          Dst:             dp_packet_ip_checksum_set_partial
        - Src:             'lib/odp-execute.c:209,45'
          Dst:             htons
        - Src:             'lib/odp-execute.c:210,45'
          Dst:             htons
        - Src:             'lib/odp-execute.c:208,31'
          Dst:             recalc_csum16
    - functionName:    nsh_16aligned_be32
      functionSourceFile: '/src/openvswitch/./include/openvswitch/nsh.h'
      linkageType:     InternalLinkage
      functionLinenumber: 311
      functionLinenumberEnd: 315
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nsh_path_hdr_set_si
      functionSourceFile: '/src/openvswitch/./include/openvswitch/nsh.h'
      linkageType:     InternalLinkage
      functionLinenumber: 404
      functionLinenumberEnd: 408
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
        - ntohl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/nsh.h:405,22'
          Dst:             ntohl
        - Src:             './include/openvswitch/nsh.h:406,17'
          Dst:             htonl
    - functionName:    nsh_path_hdr_set_spi
      functionSourceFile: '/src/openvswitch/./include/openvswitch/nsh.h'
      linkageType:     InternalLinkage
      functionLinenumber: 395
      functionLinenumberEnd: 400
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
        - ntohl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/nsh.h:396,22'
          Dst:             ntohl
        - Src:             './include/openvswitch/nsh.h:397,22'
          Dst:             ntohl
        - Src:             './include/openvswitch/nsh.h:398,17'
          Dst:             htonl
    - functionName:    nsh_get_path_hdr
      functionSourceFile: '/src/openvswitch/./include/openvswitch/nsh.h'
      linkageType:     InternalLinkage
      functionLinenumber: 326
      functionLinenumberEnd: 327
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nsh_16aligned_be32
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/nsh.h:327,12'
          Dst:             nsh_16aligned_be32
    - functionName:    nsh_path_hdr_to_si
      functionSourceFile: '/src/openvswitch/./include/openvswitch/nsh.h'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 360
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohl
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/nsh.h:360,13'
          Dst:             ntohl
    - functionName:    nsh_path_hdr_to_spi_uint32
      functionSourceFile: '/src/openvswitch/./include/openvswitch/nsh.h'
      linkageType:     InternalLinkage
      functionLinenumber: 353
      functionLinenumberEnd: 354
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohl
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/nsh.h:354,13'
          Dst:             ntohl
    - functionName:    nsh_get_si
      functionSourceFile: '/src/openvswitch/./include/openvswitch/nsh.h'
      linkageType:     InternalLinkage
      functionLinenumber: 339
      functionLinenumberEnd: 341
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nsh_get_path_hdr
        - ntohl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/nsh.h:340,31'
          Dst:             nsh_get_path_hdr
        - Src:             './include/openvswitch/nsh.h:340,25'
          Dst:             ntohl
    - functionName:    nsh_get_spi
      functionSourceFile: '/src/openvswitch/./include/openvswitch/nsh.h'
      linkageType:     InternalLinkage
      functionLinenumber: 332
      functionLinenumberEnd: 334
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
        - nsh_get_path_hdr
        - ntohl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/nsh.h:333,31'
          Dst:             nsh_get_path_hdr
        - Src:             './include/openvswitch/nsh.h:333,25'
          Dst:             ntohl
        - Src:             './include/openvswitch/nsh.h:334,12'
          Dst:             htonl
    - functionName:    nsh_get_ttl
      functionSourceFile: '/src/openvswitch/./include/openvswitch/nsh.h'
      linkageType:     InternalLinkage
      functionLinenumber: 304
      functionLinenumberEnd: 305
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/nsh.h:305,13'
          Dst:             ntohs
    - functionName:    nsh_get_flags
      functionSourceFile: '/src/openvswitch/./include/openvswitch/nsh.h'
      linkageType:     InternalLinkage
      functionLinenumber: 292
      functionLinenumberEnd: 293
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/nsh.h:293,13'
          Dst:             ntohs
    - functionName:    nsh_set_flags_and_ttl
      functionSourceFile: '/src/openvswitch/./include/openvswitch/nsh.h'
      linkageType:     InternalLinkage
      functionLinenumber: 371
      functionLinenumberEnd: 378
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - char
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          41
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htons
        - ntohs
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/nsh.h:372,19'
          Dst:             ntohs
        - Src:             './include/openvswitch/nsh.h:374,11'
          Dst:             htons
    - functionName:    nsh_md_type
      functionSourceFile: '/src/openvswitch/./include/openvswitch/nsh.h'
      linkageType:     InternalLinkage
      functionLinenumber: 280
      functionLinenumberEnd: 281
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_is_eth
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 397
      functionLinenumberEnd: 398
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:398,30'
          Dst:             htonl
    - functionName:    dp_packet_eth
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 405
      functionLinenumberEnd: 407
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          39
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - dp_packet_data
        - dp_packet_is_eth
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:406,13'
          Dst:             dp_packet_is_eth
        - Src:             'lib/dp-packet.h:407,15'
          Dst:             dp_packet_data
    - functionName:    dp_packet_get_icmp_payload
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 617
      functionLinenumberEnd: 619
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_l4
        - dp_packet_l4_size
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:618,12'
          Dst:             dp_packet_l4_size
        - Src:             'lib/dp-packet.h:619,25'
          Dst:             dp_packet_l4
    - functionName:    set_arp
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 304
      functionLinenumberEnd: 327
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          152
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_l3
        - ether_addr_copy_masked
        - get_16aligned_be32
        - ovs_ignore
        - put_16aligned_be32
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:305,34'
          Dst:             dp_packet_l3
        - Src:             'lib/odp-execute.c:307,5'
          Dst:             ovs_ignore
        - Src:             'lib/odp-execute.c:312,9'
          Dst:             put_16aligned_be32
        - Src:             'lib/odp-execute.c:314,9'
          Dst:             put_16aligned_be32
        - Src:             'lib/odp-execute.c:316,27'
          Dst:             get_16aligned_be32
        - Src:             'lib/odp-execute.c:317,27'
          Dst:             get_16aligned_be32
        - Src:             'lib/odp-execute.c:320,9'
          Dst:             ether_addr_copy_masked
        - Src:             'lib/odp-execute.c:321,9'
          Dst:             put_16aligned_be32
        - Src:             'lib/odp-execute.c:323,9'
          Dst:             ether_addr_copy_masked
        - Src:             'lib/odp-execute.c:324,9'
          Dst:             put_16aligned_be32
    - functionName:    odp_set_nsh
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 393
      functionLinenumberEnd: 455
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          278
      EdgeCount:       33
      CyclomaticComplexity: 5
      functionsReached:
        - dp_packet_l3
        - get_16aligned_be32
        - htonl
        - nsh_get_flags
        - nsh_get_path_hdr
        - nsh_get_si
        - nsh_get_spi
        - nsh_get_ttl
        - nsh_md_type
        - nsh_path_hdr_set_si
        - nsh_path_hdr_set_spi
        - nsh_path_hdr_to_si
        - nsh_path_hdr_to_spi_uint32
        - nsh_set_flags_and_ttl
        - ntohl
        - odp_nsh_key_from_attr
        - put_16aligned_be32
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/odp-execute.c:408,9'
          Branch Sides:    []
        - Branch String:   'lib/odp-execute.c:440,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/odp-execute.c:395,27'
          Dst:             dp_packet_l3
        - Src:             'lib/odp-execute.c:396,22'
          Dst:             nsh_md_type
        - Src:             'lib/odp-execute.c:400,9'
          Dst:             odp_nsh_key_from_attr
        - Src:             'lib/odp-execute.c:402,9'
          Dst:             odp_nsh_key_from_attr
        - Src:             'lib/odp-execute.c:406,9'
          Dst:             nsh_set_flags_and_ttl
        - Src:             'lib/odp-execute.c:407,9'
          Dst:             put_16aligned_be32
        - Src:             'lib/odp-execute.c:411,21'
          Dst:             put_16aligned_be32
        - Src:             'lib/odp-execute.c:420,25'
          Dst:             nsh_get_flags
        - Src:             'lib/odp-execute.c:421,23'
          Dst:             nsh_get_ttl
        - Src:             'lib/odp-execute.c:425,9'
          Dst:             nsh_set_flags_and_ttl
        - Src:             'lib/odp-execute.c:427,30'
          Dst:             nsh_get_spi
        - Src:             'lib/odp-execute.c:427,24'
          Dst:             ntohl
        - Src:             'lib/odp-execute.c:428,22'
          Dst:             nsh_get_si
        - Src:             'lib/odp-execute.c:429,29'
          Dst:             nsh_path_hdr_to_spi_uint32
        - Src:             'lib/odp-execute.c:430,27'
          Dst:             nsh_path_hdr_to_si
        - Src:             'lib/odp-execute.c:434,15'
          Dst:             nsh_path_hdr_to_spi_uint32
        - Src:             'lib/odp-execute.c:435,14'
          Dst:             nsh_path_hdr_to_si
        - Src:             'lib/odp-execute.c:436,20'
          Dst:             nsh_get_path_hdr
        - Src:             'lib/odp-execute.c:437,41'
          Dst:             htonl
        - Src:             'lib/odp-execute.c:437,9'
          Dst:             nsh_path_hdr_set_spi
        - Src:             'lib/odp-execute.c:438,9'
          Dst:             nsh_path_hdr_set_si
        - Src:             'lib/odp-execute.c:439,9'
          Dst:             put_16aligned_be32
        - Src:             'lib/odp-execute.c:443,34'
          Dst:             get_16aligned_be32
        - Src:             'lib/odp-execute.c:446,21'
          Dst:             put_16aligned_be32
    - functionName:    odp_eth_set_addrs
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 139
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          84
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - dp_packet_eth
        - ether_addr_copy_masked
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:140,29'
          Dst:             dp_packet_eth
        - Src:             'lib/odp-execute.c:147,13'
          Dst:             ether_addr_copy_masked
        - Src:             'lib/odp-execute.c:148,13'
          Dst:             ether_addr_copy_masked
    - functionName:    odp_set_tunnel_action
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 297
      functionLinenumberEnd: 299
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - odp_tun_key_from_attr
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:298,16'
          Dst:             odp_tun_key_from_attr
        - Src:             'lib/odp-execute.c:298,5'
          Dst:             ovs_ignore
    - functionName:    hash_rot
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 32
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhash_add__
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hash_rot
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:71,12'
          Dst:             hash_rot
    - functionName:    mhash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_rot
        - mhash_add__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:78,12'
          Dst:             mhash_add__
        - Src:             'lib/hash.h:79,12'
          Dst:             hash_rot
    - functionName:    mhash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 108
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_add
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:109,12'
          Dst:             mhash_add
    - functionName:    hash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:119,12'
          Dst:             mhash_finish
    - functionName:    hash_2words
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 153
      functionLinenumberEnd: 154
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_add
        - hash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:154,33'
          Dst:             hash_add
        - Src:             'lib/hash.h:154,24'
          Dst:             hash_add
        - Src:             'lib/hash.h:154,12'
          Dst:             hash_finish
    - functionName:    dp_packet_rss_ptr
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 645
      functionLinenumberEnd: 646
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nl_attr_is_valid
      functionSourceFile: '/src/openvswitch/lib/netlink.h'
      linkageType:     InternalLinkage
      functionLinenumber: 171
      functionLinenumberEnd: 174
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nl_attr_next
      functionSourceFile: '/src/openvswitch/lib/netlink.h'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 165
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nl_attr_len_pad
      functionSourceFile: '/src/openvswitch/lib/netlink.h'
      linkageType:     InternalLinkage
      functionLinenumber: 179
      functionLinenumberEnd: 182
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          37
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_delete_batch
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1008
      functionLinenumberEnd: 1017
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          65
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - dp_packet_batch_reset
        - dp_packet_batch_size
        - dp_packet_delete
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:1012,9'
          Dst:             dp_packet_batch_size
        - Src:             'lib/dp-packet.h:1013,13'
          Dst:             dp_packet_delete
        - Src:             'lib/dp-packet.h:1015,9'
          Dst:             dp_packet_batch_reset
    - functionName:    dp_packet_delete
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 271
      functionLinenumberEnd: 290
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          54
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - dp_packet_uninit
        - free_afxdp_buf
        - free_dpdk_buf
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:274,13'
          Dst:             free_dpdk_buf
        - Src:             'lib/dp-packet.h:279,13'
          Dst:             free_afxdp_buf
        - Src:             'lib/dp-packet.h:283,9'
          Dst:             dp_packet_uninit
    - functionName:    dp_update_drop_action_counter
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 122
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         28
      ICount:          147
      EdgeCount:       28
      CyclomaticComplexity: 2
      functionsReached:
        - drop_action_bridge_not_found_add
        - drop_action_congestion_add
        - drop_action_forwarding_disabled_add
        - drop_action_invalid_tunnel_metadata_add
        - drop_action_no_recirculation_context_add
        - drop_action_of_pipeline_add
        - drop_action_recirculation_conflict_add
        - drop_action_recursion_too_deep_add
        - drop_action_stack_too_deep_add
        - drop_action_too_many_mpls_labels_add
        - drop_action_too_many_resubmit_add
        - drop_action_tunnel_header_build_failed_add
        - drop_action_tunnel_neigh_cache_miss_add
        - drop_action_tunnel_output_no_ethernet_add
        - drop_action_tunnel_routing_failed_add
        - drop_action_unsupported_packet_type_add
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/odp-execute.c:69,4'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/odp-execute.c:71,9'
          Dst:             drop_action_of_pipeline_add
        - Src:             'lib/odp-execute.c:74,9'
          Dst:             drop_action_bridge_not_found_add
        - Src:             'lib/odp-execute.c:77,9'
          Dst:             drop_action_recursion_too_deep_add
        - Src:             'lib/odp-execute.c:80,9'
          Dst:             drop_action_too_many_resubmit_add
        - Src:             'lib/odp-execute.c:83,9'
          Dst:             drop_action_stack_too_deep_add
        - Src:             'lib/odp-execute.c:86,9'
          Dst:             drop_action_no_recirculation_context_add
        - Src:             'lib/odp-execute.c:89,9'
          Dst:             drop_action_recirculation_conflict_add
        - Src:             'lib/odp-execute.c:92,9'
          Dst:             drop_action_too_many_mpls_labels_add
        - Src:             'lib/odp-execute.c:95,9'
          Dst:             drop_action_invalid_tunnel_metadata_add
        - Src:             'lib/odp-execute.c:98,9'
          Dst:             drop_action_unsupported_packet_type_add
        - Src:             'lib/odp-execute.c:101,9'
          Dst:             drop_action_congestion_add
        - Src:             'lib/odp-execute.c:104,9'
          Dst:             drop_action_forwarding_disabled_add
        - Src:             'lib/odp-execute.c:107,9'
          Dst:             drop_action_tunnel_routing_failed_add
        - Src:             'lib/odp-execute.c:110,9'
          Dst:             drop_action_tunnel_output_no_ethernet_add
        - Src:             'lib/odp-execute.c:113,9'
          Dst:             drop_action_tunnel_neigh_cache_miss_add
        - Src:             'lib/odp-execute.c:116,9'
          Dst:             drop_action_tunnel_header_build_failed_add
        - Src:             'lib/odp-execute.c:120,9'
          Dst:             vlog_rate_limit
    - functionName:    odp_execute_check_pkt_len
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 792
      functionLinenumberEnd: 850
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          154
      EdgeCount:       29
      CyclomaticComplexity: 8
      functionsReached:
        - abort
        - dp_packet_batch_destroy
        - dp_packet_batch_init_packet
        - dp_packet_clone
        - dp_packet_data
        - dp_packet_get_inner_tcp_payload
        - dp_packet_get_send_len
        - dp_packet_get_tcp_payload
        - dp_packet_get_tso_segsz
        - dp_packet_l2_pad_size
        - dp_packet_tunnel
        - nl_attr_get
        - nl_attr_get_size
        - nl_attr_get_u16
        - nl_parse_nested
        - odp_execute_actions
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:801,10'
          Dst:             nl_parse_nested
        - Src:             'lib/odp-execute.c:802,9'
          Dst:             abort
        - Src:             'lib/odp-execute.c:807,21'
          Dst:             dp_packet_get_send_len
        - Src:             'lib/odp-execute.c:808,23'
          Dst:             dp_packet_l2_pad_size
        - Src:             'lib/odp-execute.c:810,9'
          Dst:             dp_packet_get_tso_segsz
        - Src:             'lib/odp-execute.c:814,13'
          Dst:             dp_packet_tunnel
        - Src:             'lib/odp-execute.c:815,23'
          Dst:             dp_packet_get_inner_tcp_payload
        - Src:             'lib/odp-execute.c:817,23'
          Dst:             dp_packet_get_tcp_payload
        - Src:             'lib/odp-execute.c:821,51'
          Dst:             dp_packet_data
        - Src:             'lib/odp-execute.c:822,25'
          Dst:             dp_packet_get_tso_segsz
        - Src:             'lib/odp-execute.c:830,16'
          Dst:             nl_attr_get_u16
        - Src:             'lib/odp-execute.c:842,18'
          Dst:             dp_packet_clone
        - Src:             'lib/odp-execute.c:846,5'
          Dst:             dp_packet_batch_init_packet
        - Src:             'lib/odp-execute.c:847,40'
          Dst:             nl_attr_get
        - Src:             'lib/odp-execute.c:847,56'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-execute.c:847,5'
          Dst:             odp_execute_actions
        - Src:             'lib/odp-execute.c:849,5'
          Dst:             dp_packet_batch_destroy
    - functionName:    odp_execute_actions
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 937
      functionLinenumberEnd: 1186
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         198
      ICount:          1101
      EdgeCount:       242
      CyclomaticComplexity: 46
      functionsReached:
        - abort
        - add_mpls
        - conntrack_clear
        - datapath_drop_nsh_decap_error_add
        - dp_packet_batch_add
        - dp_packet_batch_is_empty
        - dp_packet_batch_refill_init
        - dp_packet_batch_size
        - dp_packet_delete
        - dp_packet_delete_batch
        - dp_packet_get_rss_hash
        - dp_packet_rss_valid
        - dp_packet_set_cutlen
        - dp_update_drop_action_counter
        - eth_pop_vlan
        - eth_push_vlan
        - flow_extract
        - flow_hash_5tuple
        - flow_hash_symmetric_l3l4
        - hash_int
        - nl_attr_get
        - nl_attr_get_be16
        - nl_attr_get_unspec
        - nl_attr_len_pad
        - nl_attr_next
        - nl_attr_type
        - nsh_reset_ver_flags_ttl_len
        - odp_execute_check_pkt_len
        - odp_execute_clone
        - odp_execute_masked_set_action
        - odp_execute_sample
        - odp_execute_set_action
        - odp_nsh_hdr_from_attr
        - pop_eth
        - pop_mpls
        - pop_nsh
        - push_eth
        - push_mpls
        - push_nsh
        - requires_datapath_assistance
      functionUses:    6
      BranchProfiles:
        - Branch String:   'lib/odp-execute.c:967,9'
          Branch Sides:    []
        - Branch String:   'lib/odp-execute.c:990,13'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/odp-execute.c:943,20'
          Dst:             nl_attr_type
        - Src:             'lib/odp-execute.c:947,13'
          Dst:             requires_datapath_assistance
        - Src:             'lib/odp-execute.c:955,36'
          Dst:             dp_packet_batch_is_empty
        - Src:             'lib/odp-execute.c:969,13'
          Dst:             dp_packet_batch_size
        - Src:             'lib/odp-execute.c:970,17'
          Dst:             eth_pop_vlan
        - Src:             'lib/odp-execute.c:975,55'
          Dst:             nl_attr_get
        - Src:             'lib/odp-execute.c:977,13'
          Dst:             dp_packet_batch_size
        - Src:             'lib/odp-execute.c:978,17'
          Dst:             eth_push_vlan
        - Src:             'lib/odp-execute.c:984,54'
          Dst:             nl_attr_get
        - Src:             'lib/odp-execute.c:995,17'
          Dst:             dp_packet_batch_size
        - Src:             'lib/odp-execute.c:998,25'
          Dst:             dp_packet_rss_valid
        - Src:             'lib/odp-execute.c:999,32'
          Dst:             dp_packet_get_rss_hash
        - Src:             'lib/odp-execute.c:1000,32'
          Dst:             hash_int
        - Src:             'lib/odp-execute.c:1002,25'
          Dst:             flow_extract
        - Src:             'lib/odp-execute.c:1003,32'
          Dst:             flow_hash_5tuple
        - Src:             'lib/odp-execute.c:1013,17'
          Dst:             dp_packet_batch_size
        - Src:             'lib/odp-execute.c:1014,21'
          Dst:             flow_extract
        - Src:             'lib/odp-execute.c:1015,28'
          Dst:             flow_hash_symmetric_l3l4
        - Src:             'lib/odp-execute.c:1024,17'
          Dst:             abort
        - Src:             'lib/odp-execute.c:1030,55'
          Dst:             nl_attr_get
        - Src:             'lib/odp-execute.c:1032,13'
          Dst:             dp_packet_batch_size
        - Src:             'lib/odp-execute.c:1033,17'
          Dst:             push_mpls
        - Src:             'lib/odp-execute.c:1039,13'
          Dst:             dp_packet_batch_size
        - Src:             'lib/odp-execute.c:1040,34'
          Dst:             nl_attr_get_be16
        - Src:             'lib/odp-execute.c:1040,17'
          Dst:             pop_mpls
        - Src:             'lib/odp-execute.c:1045,13'
          Dst:             dp_packet_batch_size
        - Src:             'lib/odp-execute.c:1046,48'
          Dst:             nl_attr_get
        - Src:             'lib/odp-execute.c:1046,17'
          Dst:             odp_execute_set_action
        - Src:             'lib/odp-execute.c:1051,13'
          Dst:             dp_packet_batch_size
        - Src:             'lib/odp-execute.c:1052,55'
          Dst:             nl_attr_get
        - Src:             'lib/odp-execute.c:1052,17'
          Dst:             odp_execute_masked_set_action
        - Src:             'lib/odp-execute.c:1057,13'
          Dst:             dp_packet_batch_size
        - Src:             'lib/odp-execute.c:1058,17'
          Dst:             odp_execute_sample
        - Src:             'lib/odp-execute.c:1071,25'
          Dst:             nl_attr_get_unspec
        - Src:             'lib/odp-execute.c:1074,13'
          Dst:             dp_packet_batch_size
        - Src:             'lib/odp-execute.c:1075,17'
          Dst:             dp_packet_set_cutlen
        - Src:             'lib/odp-execute.c:1081,13'
          Dst:             odp_execute_clone
        - Src:             'lib/odp-execute.c:1093,53'
          Dst:             nl_attr_get
        - Src:             'lib/odp-execute.c:1095,13'
          Dst:             dp_packet_batch_size
        - Src:             'lib/odp-execute.c:1096,17'
          Dst:             push_eth
        - Src:             'lib/odp-execute.c:1103,13'
          Dst:             dp_packet_batch_size
        - Src:             'lib/odp-execute.c:1104,17'
          Dst:             pop_eth
        - Src:             'lib/odp-execute.c:1111,13'
          Dst:             nsh_reset_ver_flags_ttl_len
        - Src:             'lib/odp-execute.c:1112,35'
          Dst:             nl_attr_get
        - Src:             'lib/odp-execute.c:1112,13'
          Dst:             odp_nsh_hdr_from_attr
        - Src:             'lib/odp-execute.c:1113,13'
          Dst:             dp_packet_batch_size
        - Src:             'lib/odp-execute.c:1114,17'
          Dst:             push_nsh
        - Src:             'lib/odp-execute.c:1120,32'
          Dst:             dp_packet_batch_size
        - Src:             'lib/odp-execute.c:1122,13'
          Dst:             dp_packet_batch_refill_init
        - Src:             'lib/odp-execute.c:1123,21'
          Dst:             pop_nsh
        - Src:             'lib/odp-execute.c:1124,21'
          Dst:             dp_packet_batch_add
        - Src:             'lib/odp-execute.c:1126,21'
          Dst:             datapath_drop_nsh_decap_error_add
        - Src:             'lib/odp-execute.c:1127,21'
          Dst:             dp_packet_delete
        - Src:             'lib/odp-execute.c:1133,13'
          Dst:             dp_packet_batch_size
        - Src:             'lib/odp-execute.c:1134,17'
          Dst:             conntrack_clear
        - Src:             'lib/odp-execute.c:1139,13'
          Dst:             dp_packet_batch_size
        - Src:             'lib/odp-execute.c:1140,17'
          Dst:             odp_execute_check_pkt_len
        - Src:             'lib/odp-execute.c:1152,54'
          Dst:             nl_attr_get
        - Src:             'lib/odp-execute.c:1155,13'
          Dst:             dp_packet_batch_size
        - Src:             'lib/odp-execute.c:1156,17'
          Dst:             add_mpls
        - Src:             'lib/odp-execute.c:1163,51'
          Dst:             nl_attr_get
        - Src:             'lib/odp-execute.c:1166,43'
          Dst:             dp_packet_batch_size
        - Src:             'lib/odp-execute.c:1165,13'
          Dst:             dp_update_drop_action_counter
        - Src:             'lib/odp-execute.c:1167,13'
          Dst:             dp_packet_delete_batch
        - Src:             'lib/odp-execute.c:1181,13'
          Dst:             abort
        - Src:             'lib/odp-execute.c:942,5'
          Dst:             nl_attr_len_pad
        - Src:             'lib/odp-execute.c:942,5'
          Dst:             nl_attr_next
        - Src:             'lib/odp-execute.c:1185,5'
          Dst:             dp_packet_delete_batch
    - functionName:    requires_datapath_assistance
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 854
      functionLinenumberEnd: 918
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         51
      ICount:          242
      EdgeCount:       53
      CyclomaticComplexity: 4
      functionsReached:
        - abort
        - nl_attr_get
        - nl_attr_get_size
        - nl_attr_is_valid
        - nl_attr_len_pad
        - nl_attr_next
        - nl_attr_type
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/odp-execute.c:857,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/odp-execute.c:855,33'
          Dst:             nl_attr_type
        - Src:             'lib/odp-execute.c:897,9'
          Dst:             nl_attr_get
        - Src:             'lib/odp-execute.c:897,9'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-execute.c:897,9'
          Dst:             nl_attr_is_valid
        - Src:             'lib/odp-execute.c:898,17'
          Dst:             nl_attr_type
        - Src:             'lib/odp-execute.c:902,17'
          Dst:             nl_attr_get
        - Src:             'lib/odp-execute.c:902,17'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-execute.c:902,17'
          Dst:             nl_attr_is_valid
        - Src:             'lib/odp-execute.c:903,25'
          Dst:             nl_attr_type
        - Src:             'lib/odp-execute.c:902,17'
          Dst:             nl_attr_len_pad
        - Src:             'lib/odp-execute.c:902,17'
          Dst:             nl_attr_next
        - Src:             'lib/odp-execute.c:897,9'
          Dst:             nl_attr_len_pad
        - Src:             'lib/odp-execute.c:897,9'
          Dst:             nl_attr_next
        - Src:             'lib/odp-execute.c:914,9'
          Dst:             abort
    - functionName:    dp_packet_batch_is_empty
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 937
      functionLinenumberEnd: 938
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_batch_size
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:938,13'
          Dst:             dp_packet_batch_size
    - functionName:    dp_packet_rss_valid
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1063
      functionLinenumberEnd: 1064
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_get_rss_hash
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1050
      functionLinenumberEnd: 1051
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_rss_ptr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:1051,13'
          Dst:             dp_packet_rss_ptr
    - functionName:    hash_int
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 408
      functionLinenumberEnd: 409
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_2words
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:409,12'
          Dst:             hash_2words
    - functionName:    odp_execute_set_action
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 459
      functionLinenumberEnd: 594
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         59
      ICount:          426
      EdgeCount:       63
      CyclomaticComplexity: 6
      functionsReached:
        - abort
        - dp_packet_get_icmp_payload
        - dp_packet_get_nd_payload
        - dp_packet_get_sctp_payload
        - dp_packet_get_tcp_payload
        - dp_packet_get_udp_payload
        - nl_attr_get
        - nl_attr_get_be32
        - nl_attr_get_u32
        - nl_attr_get_unspec
        - nl_attr_type
        - odp_eth_set_addrs
        - odp_set_nsh
        - odp_set_tunnel_action
        - packet_set_icmp
        - packet_set_ipv4
        - packet_set_ipv6
        - packet_set_nd
        - packet_set_nd_ext
        - packet_set_sctp_port
        - packet_set_tcp_port
        - packet_set_udp_port
        - put_16aligned_be32
        - set_arp
        - set_mpls_lse
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/odp-execute.c:465,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/odp-execute.c:460,30'
          Dst:             nl_attr_type
        - Src:             'lib/odp-execute.c:467,28'
          Dst:             nl_attr_get_u32
        - Src:             'lib/odp-execute.c:471,9'
          Dst:             odp_set_tunnel_action
        - Src:             'lib/odp-execute.c:475,24'
          Dst:             nl_attr_get_u32
        - Src:             'lib/odp-execute.c:479,35'
          Dst:             nl_attr_get
        - Src:             'lib/odp-execute.c:479,9'
          Dst:             odp_eth_set_addrs
        - Src:             'lib/odp-execute.c:483,9'
          Dst:             odp_set_nsh
        - Src:             'lib/odp-execute.c:488,20'
          Dst:             nl_attr_get_unspec
        - Src:             'lib/odp-execute.c:489,9'
          Dst:             packet_set_ipv4
        - Src:             'lib/odp-execute.c:495,20'
          Dst:             nl_attr_get_unspec
        - Src:             'lib/odp-execute.c:496,9'
          Dst:             packet_set_ipv6
        - Src:             'lib/odp-execute.c:502,13'
          Dst:             dp_packet_get_tcp_payload
        - Src:             'lib/odp-execute.c:504,19'
          Dst:             nl_attr_get_unspec
        - Src:             'lib/odp-execute.c:506,13'
          Dst:             packet_set_tcp_port
        - Src:             'lib/odp-execute.c:512,13'
          Dst:             dp_packet_get_udp_payload
        - Src:             'lib/odp-execute.c:514,19'
          Dst:             nl_attr_get_unspec
        - Src:             'lib/odp-execute.c:516,13'
          Dst:             packet_set_udp_port
        - Src:             'lib/odp-execute.c:522,13'
          Dst:             dp_packet_get_sctp_payload
        - Src:             'lib/odp-execute.c:524,19'
          Dst:             nl_attr_get_unspec
        - Src:             'lib/odp-execute.c:526,13'
          Dst:             packet_set_sctp_port
        - Src:             'lib/odp-execute.c:532,30'
          Dst:             nl_attr_get_be32
        - Src:             'lib/odp-execute.c:532,9'
          Dst:             set_mpls_lse
        - Src:             'lib/odp-execute.c:536,25'
          Dst:             nl_attr_get
        - Src:             'lib/odp-execute.c:536,9'
          Dst:             set_arp
        - Src:             'lib/odp-execute.c:541,13'
          Dst:             dp_packet_get_icmp_payload
        - Src:             'lib/odp-execute.c:543,19'
          Dst:             nl_attr_get_unspec
        - Src:             'lib/odp-execute.c:545,13'
          Dst:             packet_set_icmp
        - Src:             'lib/odp-execute.c:550,13'
          Dst:             dp_packet_get_nd_payload
        - Src:             'lib/odp-execute.c:552,22'
          Dst:             nl_attr_get_unspec
        - Src:             'lib/odp-execute.c:553,13'
          Dst:             packet_set_nd
        - Src:             'lib/odp-execute.c:559,13'
          Dst:             dp_packet_get_nd_payload
        - Src:             'lib/odp-execute.c:561,20'
          Dst:             nl_attr_get_unspec
        - Src:             'lib/odp-execute.c:563,13'
          Dst:             put_16aligned_be32
        - Src:             'lib/odp-execute.c:564,13'
          Dst:             packet_set_nd_ext
        - Src:             'lib/odp-execute.c:569,23'
          Dst:             nl_attr_get_u32
        - Src:             'lib/odp-execute.c:573,25'
          Dst:             nl_attr_get_u32
        - Src:             'lib/odp-execute.c:592,9'
          Dst:             abort
    - functionName:    odp_execute_masked_set_action
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 599
      functionLinenumberEnd: 705
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         43
      ICount:          327
      EdgeCount:       85
      CyclomaticComplexity: 44
      functionsReached:
        - abort
        - dp_packet_l2_5
        - get_16aligned_be32
        - nl_attr_get
        - nl_attr_get_be32
        - nl_attr_get_u32
        - nl_attr_type
        - odp_eth_set_addrs
        - odp_set_ipv4
        - odp_set_ipv6
        - odp_set_nd
        - odp_set_nd_ext
        - odp_set_nsh
        - odp_set_sctp
        - odp_set_tcp
        - odp_set_udp
        - put_16aligned_be32
        - set_arp
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/odp-execute.c:604,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/odp-execute.c:601,30'
          Dst:             nl_attr_type
        - Src:             'lib/odp-execute.c:606,28'
          Dst:             nl_attr_get_u32
        - Src:             'lib/odp-execute.c:611,24'
          Dst:             nl_attr_get_u32
        - Src:             'lib/odp-execute.c:616,35'
          Dst:             nl_attr_get
        - Src:             'lib/odp-execute.c:616,9'
          Dst:             odp_eth_set_addrs
        - Src:             'lib/odp-execute.c:621,9'
          Dst:             odp_set_nsh
        - Src:             'lib/odp-execute.c:626,30'
          Dst:             nl_attr_get
        - Src:             'lib/odp-execute.c:626,9'
          Dst:             odp_set_ipv4
        - Src:             'lib/odp-execute.c:631,30'
          Dst:             nl_attr_get
        - Src:             'lib/odp-execute.c:631,9'
          Dst:             odp_set_ipv6
        - Src:             'lib/odp-execute.c:636,29'
          Dst:             nl_attr_get
        - Src:             'lib/odp-execute.c:636,9'
          Dst:             odp_set_tcp
        - Src:             'lib/odp-execute.c:641,29'
          Dst:             nl_attr_get
        - Src:             'lib/odp-execute.c:641,9'
          Dst:             odp_set_udp
        - Src:             'lib/odp-execute.c:646,30'
          Dst:             nl_attr_get
        - Src:             'lib/odp-execute.c:646,9'
          Dst:             odp_set_sctp
        - Src:             'lib/odp-execute.c:651,14'
          Dst:             dp_packet_l2_5
        - Src:             'lib/odp-execute.c:653,47'
          Dst:             nl_attr_get_be32
        - Src:             'lib/odp-execute.c:654,35'
          Dst:             get_16aligned_be32
        - Src:             'lib/odp-execute.c:653,13'
          Dst:             put_16aligned_be32
        - Src:             'lib/odp-execute.c:660,25'
          Dst:             nl_attr_get
        - Src:             'lib/odp-execute.c:660,9'
          Dst:             set_arp
        - Src:             'lib/odp-execute.c:665,28'
          Dst:             nl_attr_get
        - Src:             'lib/odp-execute.c:665,9'
          Dst:             odp_set_nd
        - Src:             'lib/odp-execute.c:670,32'
          Dst:             nl_attr_get
        - Src:             'lib/odp-execute.c:670,9'
          Dst:             odp_set_nd_ext
        - Src:             'lib/odp-execute.c:675,23'
          Dst:             nl_attr_get_u32
        - Src:             'lib/odp-execute.c:680,25'
          Dst:             nl_attr_get_u32
        - Src:             'lib/odp-execute.c:703,9'
          Dst:             abort
    - functionName:    odp_execute_sample
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 711
      functionLinenumberEnd: 762
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          149
      EdgeCount:       33
      CyclomaticComplexity: 6
      functionsReached:
        - abort
        - datapath_drop_sample_error_add
        - dp_packet_batch_destroy
        - dp_packet_batch_init_packet
        - dp_packet_clone
        - dp_packet_delete
        - nl_attr_get
        - nl_attr_get_size
        - nl_attr_get_u32
        - nl_attr_len_pad
        - nl_attr_next
        - nl_attr_type
        - odp_execute_actions
        - random_uint32
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/odp-execute.c:720,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/odp-execute.c:717,5'
          Dst:             nl_attr_get
        - Src:             'lib/odp-execute.c:717,5'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-execute.c:718,20'
          Dst:             nl_attr_type
        - Src:             'lib/odp-execute.c:722,17'
          Dst:             random_uint32
        - Src:             'lib/odp-execute.c:722,36'
          Dst:             nl_attr_get_u32
        - Src:             'lib/odp-execute.c:724,21'
          Dst:             datapath_drop_sample_error_add
        - Src:             'lib/odp-execute.c:725,21'
          Dst:             dp_packet_delete
        - Src:             'lib/odp-execute.c:738,13'
          Dst:             abort
        - Src:             'lib/odp-execute.c:717,5'
          Dst:             nl_attr_len_pad
        - Src:             'lib/odp-execute.c:717,5'
          Dst:             nl_attr_next
        - Src:             'lib/odp-execute.c:744,13'
          Dst:             datapath_drop_sample_error_add
        - Src:             'lib/odp-execute.c:745,13'
          Dst:             dp_packet_delete
        - Src:             'lib/odp-execute.c:756,18'
          Dst:             dp_packet_clone
        - Src:             'lib/odp-execute.c:758,5'
          Dst:             dp_packet_batch_init_packet
        - Src:             'lib/odp-execute.c:759,40'
          Dst:             nl_attr_get
        - Src:             'lib/odp-execute.c:760,25'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-execute.c:759,5'
          Dst:             odp_execute_actions
        - Src:             'lib/odp-execute.c:761,5'
          Dst:             dp_packet_batch_destroy
    - functionName:    dp_packet_set_cutlen
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 817
      functionLinenumberEnd: 827
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - dp_packet_size
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:822,20'
          Dst:             dp_packet_size
        - Src:             'lib/dp-packet.h:825,21'
          Dst:             dp_packet_size
    - functionName:    odp_execute_clone
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 768
      functionLinenumberEnd: 786
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_batch_clone
        - dp_packet_batch_destroy
        - dp_packet_batch_reset_cutlen
        - nl_attr_get
        - nl_attr_get_size
        - odp_execute_actions
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:776,9'
          Dst:             dp_packet_batch_clone
        - Src:             'lib/odp-execute.c:777,9'
          Dst:             dp_packet_batch_reset_cutlen
        - Src:             'lib/odp-execute.c:778,57'
          Dst:             nl_attr_get
        - Src:             'lib/odp-execute.c:779,25'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-execute.c:778,9'
          Dst:             odp_execute_actions
        - Src:             'lib/odp-execute.c:780,9'
          Dst:             dp_packet_batch_destroy
        - Src:             'lib/odp-execute.c:783,46'
          Dst:             nl_attr_get
        - Src:             'lib/odp-execute.c:784,29'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-execute.c:783,9'
          Dst:             odp_execute_actions
    - functionName:    nsh_reset_ver_flags_ttl_len
      functionSourceFile: '/src/openvswitch/./include/openvswitch/nsh.h'
      linkageType:     InternalLinkage
      functionLinenumber: 298
      functionLinenumberEnd: 300
      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:    dp_packet_batch_refill_init
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 923
      functionLinenumberEnd: 925
      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:    datapath_drop_nsh_decap_error_add
      functionSourceFile: '/src/openvswitch/lib/odp-execute.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_datapath_drop_nsh_decap_error_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-execute.c:45,1'
          Dst:             counter_datapath_drop_nsh_decap_error_get
    - functionName:    init_this_module_odp_util
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 49
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:49,1'
          Dst:             vlog_insert_module
    - functionName:    put_icmp_key
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8503
      functionLinenumberEnd: 8507
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htons
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:8505,20'
          Dst:             htons
        - Src:             'lib/odp-util.c:8506,20'
          Dst:             htons
    - functionName:    get_icmp_key
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8495
      functionLinenumberEnd: 8499
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohs
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:8497,23'
          Dst:             ntohs
        - Src:             'lib/odp-util.c:8498,23'
          Dst:             ntohs
    - functionName:    is_icmpv4
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1095
      functionLinenumberEnd: 1103
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          53
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - get_dl_type
        - htons
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:1096,9'
          Dst:             get_dl_type
        - Src:             'lib/flow.h:1096,30'
          Dst:             htons
    - functionName:    get_dl_type
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1036
      functionLinenumberEnd: 1044
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          53
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - htonl
        - htons
        - pt_ns
        - pt_ns_type_be
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:1037,30'
          Dst:             htonl
        - Src:             'lib/flow.h:1039,16'
          Dst:             pt_ns
        - Src:             'lib/flow.h:1040,16'
          Dst:             pt_ns_type_be
        - Src:             'lib/flow.h:1042,16'
          Dst:             htons
    - functionName:    pt_ns
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1570
      functionLinenumberEnd: 1571
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohl
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:1571,12'
          Dst:             ntohl
    - functionName:    pt_ns_type_be
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1577
      functionLinenumberEnd: 1578
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - be32_to_be16
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:1578,12'
          Dst:             be32_to_be16
    - functionName:    be32_to_be16
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 135
      functionLinenumberEnd: 135
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    put_nd_key
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8552
      functionLinenumberEnd: 8557
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          23
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_nd_key
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8543
      functionLinenumberEnd: 8548
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          23
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    put_nd_extensions_key
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8572
      functionLinenumberEnd: 8575
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htons
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:8574,23'
          Dst:             htons
    - functionName:    get_nd_extensions_key
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8562
      functionLinenumberEnd: 8567
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohs
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:8566,31'
          Dst:             ntohs
    - functionName:    commit_set_arp_action
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8473
      functionLinenumberEnd: 8491
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - commit
        - get_arp_key
        - or_masks
        - put_arp_key
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:8478,5'
          Dst:             get_arp_key
        - Src:             'lib/odp-util.c:8479,5'
          Dst:             get_arp_key
        - Src:             'lib/odp-util.c:8480,5'
          Dst:             get_arp_key
        - Src:             'lib/odp-util.c:8483,9'
          Dst:             commit
        - Src:             'lib/odp-util.c:8485,9'
          Dst:             put_arp_key
        - Src:             'lib/odp-util.c:8486,9'
          Dst:             or_masks
        - Src:             'lib/odp-util.c:8487,9'
          Dst:             put_arp_key
    - functionName:    get_arp_key
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8448
      functionLinenumberEnd: 8458
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          65
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htons
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:8455,34'
          Dst:             htons
    - functionName:    commit
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8165
      functionLinenumberEnd: 8185
      functionDepth:   0
      returnType:      bool
      argCount:        8
      argTypes:
        - int
        - bool
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          98
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - commit_masked_set_action
        - commit_set_action
        - keycmp_mask
        - odp_mask_is_exact
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:8166,9'
          Dst:             keycmp_mask
        - Src:             'lib/odp-util.c:8167,29'
          Dst:             odp_mask_is_exact
        - Src:             'lib/odp-util.c:8170,13'
          Dst:             commit_masked_set_action
        - Src:             'lib/odp-util.c:8175,13'
          Dst:             commit_set_action
    - functionName:    put_arp_key
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8462
      functionLinenumberEnd: 8468
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          45
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohs
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:8465,22'
          Dst:             ntohs
    - functionName:    or_masks
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8113
      functionLinenumberEnd: 8126
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          68
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - or_bytes
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:8125,9'
          Dst:             or_bytes
    - functionName:    keycmp_mask
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8137
      functionLinenumberEnd: 8157
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          97
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:8150,13'
          Dst:             memcmp
    - functionName:    odp_mask_is_exact
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3620
      functionLinenumberEnd: 3621
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - odp_mask_is_constant__
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:3621,12'
          Dst:             odp_mask_is_constant__
    - functionName:    commit_masked_set_action
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8074
      functionLinenumberEnd: 8079
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - commit_masked_attribute
        - nl_msg_end_nested
        - nl_msg_start_nested
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:8075,21'
          Dst:             nl_msg_start_nested
        - Src:             'lib/odp-util.c:8077,5'
          Dst:             commit_masked_attribute
        - Src:             'lib/odp-util.c:8078,5'
          Dst:             nl_msg_end_nested
    - functionName:    commit_set_action
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8046
      functionLinenumberEnd: 8050
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          32
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_msg_end_nested
        - nl_msg_put_unspec
        - nl_msg_start_nested
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:8047,21'
          Dst:             nl_msg_start_nested
        - Src:             'lib/odp-util.c:8048,5'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:8049,5'
          Dst:             nl_msg_end_nested
    - functionName:    commit_masked_attribute
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8058
      functionLinenumberEnd: 8067
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          70
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - nl_msg_put_unspec_uninit
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:8059,18'
          Dst:             nl_msg_put_unspec_uninit
    - functionName:    odp_mask_is_constant__
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3528
      functionLinenumberEnd: 3596
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         54
      ICount:          298
      EdgeCount:       59
      CyclomaticComplexity: 7
      functionsReached:
        - htonl
        - ipv6_addr_equals
        - is_all_byte
        - ntohs
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/odp-util.c:3536,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/odp-util.c:3568,16'
          Dst:             is_all_byte
        - Src:             'lib/odp-util.c:3571,16'
          Dst:             ntohs
        - Src:             'lib/odp-util.c:3571,49'
          Dst:             ntohs
        - Src:             'lib/odp-util.c:3575,42'
          Dst:             htonl
        - Src:             'lib/odp-util.c:3576,20'
          Dst:             htonl
        - Src:             'lib/odp-util.c:3581,20'
          Dst:             ipv6_addr_equals
        - Src:             'lib/odp-util.c:3582,20'
          Dst:             ipv6_addr_equals
        - Src:             'lib/odp-util.c:3586,16'
          Dst:             is_all_byte
        - Src:             'lib/odp-util.c:3589,16'
          Dst:             is_all_byte
        - Src:             'lib/odp-util.c:3593,16'
          Dst:             is_all_byte
    - functionName:    ipv6_addr_equals
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1184
      functionLinenumberEnd: 1186
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          80
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    commit_set_nd_action
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8581
      functionLinenumberEnd: 8600
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          61
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - commit
        - get_nd_key
        - or_masks
        - put_nd_key
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:8586,5'
          Dst:             get_nd_key
        - Src:             'lib/odp-util.c:8587,5'
          Dst:             get_nd_key
        - Src:             'lib/odp-util.c:8588,5'
          Dst:             get_nd_key
        - Src:             'lib/odp-util.c:8591,9'
          Dst:             commit
        - Src:             'lib/odp-util.c:8593,9'
          Dst:             put_nd_key
        - Src:             'lib/odp-util.c:8594,9'
          Dst:             or_masks
        - Src:             'lib/odp-util.c:8595,9'
          Dst:             put_nd_key
    - functionName:    commit_set_nd_extensions_action
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8607
      functionLinenumberEnd: 8626
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          61
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - commit
        - get_nd_extensions_key
        - or_masks
        - put_nd_extensions_key
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:8612,5'
          Dst:             get_nd_extensions_key
        - Src:             'lib/odp-util.c:8613,5'
          Dst:             get_nd_extensions_key
        - Src:             'lib/odp-util.c:8614,5'
          Dst:             get_nd_extensions_key
        - Src:             'lib/odp-util.c:8617,9'
          Dst:             commit
        - Src:             'lib/odp-util.c:8620,9'
          Dst:             put_nd_extensions_key
        - Src:             'lib/odp-util.c:8621,9'
          Dst:             or_masks
        - Src:             'lib/odp-util.c:8622,9'
          Dst:             put_nd_extensions_key
    - functionName:    commit_set_ipv6_action
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8416
      functionLinenumberEnd: 8444
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          132
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - commit
        - flow_tnl_dst_is_set
        - get_ipv6_key
        - htonl
        - or_masks
        - ovs_ignore
        - put_ipv6_key
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:8422,5'
          Dst:             ovs_ignore
        - Src:             'lib/odp-util.c:8425,5'
          Dst:             get_ipv6_key
        - Src:             'lib/odp-util.c:8426,5'
          Dst:             get_ipv6_key
        - Src:             'lib/odp-util.c:8427,5'
          Dst:             get_ipv6_key
        - Src:             'lib/odp-util.c:8431,24'
          Dst:             htonl
        - Src:             'lib/odp-util.c:8433,9'
          Dst:             flow_tnl_dst_is_set
        - Src:             'lib/odp-util.c:8438,9'
          Dst:             commit
        - Src:             'lib/odp-util.c:8440,9'
          Dst:             put_ipv6_key
        - Src:             'lib/odp-util.c:8441,9'
          Dst:             or_masks
        - Src:             'lib/odp-util.c:8442,9'
          Dst:             put_ipv6_key
    - functionName:    get_ipv6_key
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8390
      functionLinenumberEnd: 8398
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          61
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_to_odp_frag
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:8397,23'
          Dst:             ovs_to_odp_frag
    - functionName:    flow_tnl_dst_is_set
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 51
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ipv6_addr_is_set
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:52,27'
          Dst:             ipv6_addr_is_set
    - functionName:    put_ipv6_key
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8402
      functionLinenumberEnd: 8410
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          61
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - odp_to_ovs_frag
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:8409,21'
          Dst:             odp_to_ovs_frag
    - functionName:    odp_to_ovs_frag
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6968
      functionLinenumberEnd: 6983
      functionDepth:   0
      returnType:      char
      argCount:        2
      argTypes:
        - char
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          87
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - vlog_rate_limit
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:6976,9'
          Dst:             vlog_rate_limit
    - functionName:    ipv6_addr_is_set
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1205
      functionLinenumberEnd: 1206
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ipv6_addr_equals
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:1206,13'
          Dst:             ipv6_addr_equals
    - functionName:    ovs_to_odp_frag
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6425
      functionLinenumberEnd: 6437
      functionDepth:   0
      returnType:      char
      argCount:        2
      argTypes:
        - char
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          52
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    commit_set_ipv4_action
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8359
      functionLinenumberEnd: 8386
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          127
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - commit
        - flow_tnl_dst_is_set
        - get_ipv4_key
        - or_masks
        - ovs_ignore
        - put_ipv4_key
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:8365,5'
          Dst:             ovs_ignore
        - Src:             'lib/odp-util.c:8368,5'
          Dst:             get_ipv4_key
        - Src:             'lib/odp-util.c:8369,5'
          Dst:             get_ipv4_key
        - Src:             'lib/odp-util.c:8370,5'
          Dst:             get_ipv4_key
        - Src:             'lib/odp-util.c:8375,9'
          Dst:             flow_tnl_dst_is_set
        - Src:             'lib/odp-util.c:8380,9'
          Dst:             commit
        - Src:             'lib/odp-util.c:8382,9'
          Dst:             put_ipv4_key
        - Src:             'lib/odp-util.c:8383,9'
          Dst:             or_masks
        - Src:             'lib/odp-util.c:8384,9'
          Dst:             put_ipv4_key
    - functionName:    get_ipv4_key
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8335
      functionLinenumberEnd: 8342
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          57
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_to_odp_frag
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:8341,23'
          Dst:             ovs_to_odp_frag
    - functionName:    put_ipv4_key
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8346
      functionLinenumberEnd: 8353
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          57
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - odp_to_ovs_frag
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:8352,21'
          Dst:             odp_to_ovs_frag
    - functionName:    commit_nsh
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8669
      functionLinenumberEnd: 8727
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - bool
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          187
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - commit_masked_attribute
        - is_all_zeros
        - memcmp
        - nl_msg_end_nested
        - nl_msg_start_nested
        - nsh_key_to_attr
        - odp_mask_is_exact
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:8670,10'
          Dst:             memcmp
        - Src:             'lib/odp-util.c:8677,25'
          Dst:             odp_mask_is_exact
        - Src:             'lib/odp-util.c:8695,19'
          Dst:             nl_msg_start_nested
        - Src:             'lib/odp-util.c:8696,19'
          Dst:             nl_msg_start_nested
        - Src:             'lib/odp-util.c:8698,14'
          Dst:             is_all_zeros
        - Src:             'lib/odp-util.c:8699,13'
          Dst:             commit_masked_attribute
        - Src:             'lib/odp-util.c:8706,17'
          Dst:             is_all_zeros
        - Src:             'lib/odp-util.c:8707,13'
          Dst:             commit_masked_attribute
        - Src:             'lib/odp-util.c:8712,9'
          Dst:             nl_msg_end_nested
        - Src:             'lib/odp-util.c:8713,9'
          Dst:             nl_msg_end_nested
        - Src:             'lib/odp-util.c:8721,19'
          Dst:             nl_msg_start_nested
        - Src:             'lib/odp-util.c:8722,9'
          Dst:             nsh_key_to_attr
        - Src:             'lib/odp-util.c:8723,9'
          Dst:             nl_msg_end_nested
    - functionName:    nsh_key_to_attr
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2355
      functionLinenumberEnd: 2389
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          114
      EdgeCount:       17
      CyclomaticComplexity: 4
      functionsReached:
        - nl_msg_end_nested
        - nl_msg_put_unspec
        - nl_msg_start_nested
      functionUses:    6
      BranchProfiles:
        - Branch String:   'lib/odp-util.c:2372,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/odp-util.c:2365,19'
          Dst:             nl_msg_start_nested
        - Src:             'lib/odp-util.c:2366,5'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:2369,9'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:2374,13'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:2379,17'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:2388,5'
          Dst:             nl_msg_end_nested
    - functionName:    odp_put_pop_nsh_action
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8864
      functionLinenumberEnd: 8866
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_msg_put_flag
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:8865,5'
          Dst:             nl_msg_put_flag
    - functionName:    odp_put_push_nsh_action
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8872
      functionLinenumberEnd: 8893
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          76
      EdgeCount:       9
      CyclomaticComplexity: 2
      functionsReached:
        - nl_msg_end_nested
        - nl_msg_start_nested
        - nsh_key_to_attr
        - ovs_ignore
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/odp-util.c:8876,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/odp-util.c:8879,13'
          Dst:             ovs_ignore
        - Src:             'lib/odp-util.c:8890,21'
          Dst:             nl_msg_start_nested
        - Src:             'lib/odp-util.c:8891,5'
          Dst:             nsh_key_to_attr
        - Src:             'lib/odp-util.c:8892,5'
          Dst:             nl_msg_end_nested
    - functionName:    put_tp_key
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8768
      functionLinenumberEnd: 8771
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          20
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    log_odp_key_attributes
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6938
      functionLinenumberEnd: 6964
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          112
      EdgeCount:       26
      CyclomaticComplexity: 7
      functionsReached:
        - ds_cstr
        - ds_destroy
        - ds_init
        - ds_put_cstr
        - ds_put_format
        - odp_flow_key_format
        - ovs_key_attr_to_string
        - vlog
        - vlog_should_drop
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:6942,9'
          Dst:             vlog_should_drop
        - Src:             'lib/odp-util.c:6946,5'
          Dst:             ds_init
        - Src:             'lib/odp-util.c:6952,27'
          Dst:             ovs_key_attr_to_string
        - Src:             'lib/odp-util.c:6951,13'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:6956,9'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:6959,5'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:6960,5'
          Dst:             odp_flow_key_format
        - Src:             'lib/odp-util.c:6962,5'
          Dst:             ds_cstr
        - Src:             'lib/odp-util.c:6962,5'
          Dst:             vlog
        - Src:             'lib/odp-util.c:6963,5'
          Dst:             ds_destroy
    - functionName:    ovs_key_attr_to_string
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 204
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         39
      ICount:          198
      EdgeCount:       77
      CyclomaticComplexity: 40
      functionsReached:
        - snprintf
      functionUses:    4
      BranchProfiles:
        - Branch String:   'lib/odp-util.c:165,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/odp-util.c:201,9'
          Dst:             snprintf
    - functionName:    odp_flow_key_format
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4960
      functionLinenumberEnd: 4962
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - odp_flow_format
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:4961,5'
          Dst:             odp_flow_format
    - functionName:    odp_flow_format
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4840
      functionLinenumberEnd: 4953
      functionDepth:   0
      returnType:      void
      argCount:        8
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - bool
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         86
      ICount:          425
      EdgeCount:       115
      CyclomaticComplexity: 31
      functionsReached:
        - check_attr_len
        - ds_put_char
        - ds_put_cstr
        - ds_put_format
        - format_odp_key_attr__
        - generate_all_wildcard_mask
        - nl_attr_find__
        - nl_attr_get_be16
        - nl_attr_is_valid
        - nl_attr_len_pad
        - nl_attr_next
        - nl_attr_type
        - ntohs
        - odp_key_attr_len
        - odp_mask_attr_is_wildcard
        - ofpbuf_clear
        - ofpbuf_init
        - ofpbuf_uninit
      functionUses:    13
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:4849,9'
          Dst:             ofpbuf_init
        - Src:             'lib/odp-util.c:4850,9'
          Dst:             nl_attr_is_valid
        - Src:             'lib/odp-util.c:4851,29'
          Dst:             nl_attr_type
        - Src:             'lib/odp-util.c:4853,42'
          Dst:             nl_attr_find__
        - Src:             'lib/odp-util.c:4856,18'
          Dst:             check_attr_len
        - Src:             'lib/odp-util.c:4871,30'
          Dst:             odp_key_attr_len
        - Src:             'lib/odp-util.c:4876,53'
          Dst:             nl_attr_type
        - Src:             'lib/odp-util.c:4876,22'
          Dst:             nl_attr_find__
        - Src:             'lib/odp-util.c:4877,36'
          Dst:             odp_mask_attr_is_wildcard
        - Src:             'lib/odp-util.c:4882,26'
          Dst:             generate_all_wildcard_mask
        - Src:             'lib/odp-util.c:4887,21'
          Dst:             ds_put_char
        - Src:             'lib/odp-util.c:4889,17'
          Dst:             format_odp_key_attr__
        - Src:             'lib/odp-util.c:4917,21'
          Dst:             ds_put_char
        - Src:             'lib/odp-util.c:4919,17'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:4926,13'
          Dst:             ofpbuf_clear
        - Src:             'lib/odp-util.c:4850,9'
          Dst:             nl_attr_len_pad
        - Src:             'lib/odp-util.c:4850,9'
          Dst:             nl_attr_next
        - Src:             'lib/odp-util.c:4928,9'
          Dst:             ofpbuf_uninit
        - Src:             'lib/odp-util.c:4934,17'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:4936,13'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:4938,17'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:4940,13'
          Dst:             ds_put_char
        - Src:             'lib/odp-util.c:4943,39'
          Dst:             nl_attr_find__
        - Src:             'lib/odp-util.c:4947,37'
          Dst:             nl_attr_get_be16
        - Src:             'lib/odp-util.c:4947,31'
          Dst:             ntohs
        - Src:             'lib/odp-util.c:4946,17'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:4951,9'
          Dst:             ds_put_cstr
    - functionName:    nl_attr_is_valid
      functionSourceFile: '/src/openvswitch/lib/netlink.h'
      linkageType:     InternalLinkage
      functionLinenumber: 171
      functionLinenumberEnd: 174
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    15
      BranchProfiles:  []
      Callsites:       []
    - functionName:    check_attr_len
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3870
      functionLinenumberEnd: 3910
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         31
      ICount:          181
      EdgeCount:       41
      CyclomaticComplexity: 12
      functionsReached:
        - ds_put_char
        - ds_put_format
        - format_generic_odp_key
        - nl_attr_get_size
        - nl_attr_type
        - odp_key_attr_len
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:3871,21'
          Dst:             nl_attr_type
        - Src:             'lib/odp-util.c:3879,20'
          Dst:             odp_key_attr_len
        - Src:             'lib/odp-util.c:3884,28'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-util.c:3885,35'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-util.c:3889,17'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:3893,31'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-util.c:3892,17'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:3895,13'
          Dst:             format_generic_odp_key
        - Src:             'lib/odp-util.c:3897,17'
          Dst:             ds_put_char
        - Src:             'lib/odp-util.c:3900,35'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-util.c:3899,21'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:3902,17'
          Dst:             format_generic_odp_key
        - Src:             'lib/odp-util.c:3904,13'
          Dst:             ds_put_char
    - functionName:    odp_key_attr_len
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3042
      functionLinenumberEnd: 3048
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          34
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    odp_mask_attr_is_wildcard
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3606
      functionLinenumberEnd: 3608
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_attr_get
        - nl_attr_get_size
        - nl_attr_type
        - odp_mask_is_constant__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:3607,35'
          Dst:             nl_attr_type
        - Src:             'lib/odp-util.c:3608,35'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:3608,52'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-util.c:3607,12'
          Dst:             odp_mask_is_constant__
    - functionName:    generate_all_wildcard_mask
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4723
      functionLinenumberEnd: 4747
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          129
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - generate_all_wildcard_mask
        - nl_attr_get
        - nl_attr_get_size
        - nl_attr_is_valid
        - nl_attr_len_pad
        - nl_attr_next
        - nl_attr_type
        - nl_msg_end_nested
        - nl_msg_put_unspec_zero
        - nl_msg_start_nested
        - odp_key_attr_len
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:4726,16'
          Dst:             nl_attr_type
        - Src:             'lib/odp-util.c:4727,16'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-util.c:4729,9'
          Dst:             odp_key_attr_len
        - Src:             'lib/odp-util.c:4730,9'
          Dst:             nl_msg_put_unspec_zero
        - Src:             'lib/odp-util.c:4740,23'
          Dst:             nl_msg_start_nested
        - Src:             'lib/odp-util.c:4741,9'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-util.c:4741,9'
          Dst:             nl_attr_is_valid
        - Src:             'lib/odp-util.c:4742,55'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:4742,13'
          Dst:             generate_all_wildcard_mask
        - Src:             'lib/odp-util.c:4741,9'
          Dst:             nl_attr_len_pad
        - Src:             'lib/odp-util.c:4741,9'
          Dst:             nl_attr_next
        - Src:             'lib/odp-util.c:4744,9'
          Dst:             nl_msg_end_nested
    - functionName:    ds_put_char
      functionSourceFile: '/src/openvswitch/./include/openvswitch/dynamic-string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_char__
      functionUses:    50
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/dynamic-string.h:99,9'
          Dst:             ds_put_char__
    - functionName:    format_odp_key_attr__
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4390
      functionLinenumberEnd: 4707
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         280
      ICount:          1758
      EdgeCount:       359
      CyclomaticComplexity: 81
      functionsReached:
        - ds_chomp
        - ds_put_char
        - ds_put_cstr
        - ds_put_format
        - format_be16
        - format_be16x
        - format_be32_masked
        - format_eth
        - format_flags
        - format_flags_masked
        - format_frag
        - format_generic_odp_key
        - format_in6_addr
        - format_ipv4
        - format_ipv6_label
        - format_mpls
        - format_odp_nsh_attr
        - format_odp_tun_attr
        - format_u128
        - format_u8u
        - format_u8x
        - format_vlan_tci
        - htons
        - mask_empty
        - nl_attr_get
        - nl_attr_get_be16
        - nl_attr_get_be32
        - nl_attr_get_odp_port
        - nl_attr_get_size
        - nl_attr_get_u16
        - nl_attr_get_u32
        - nl_attr_type
        - ntohs
        - odp_ct_state_to_string
        - odp_flow_format
        - odp_mask_attr_is_exact
        - odp_portno_name_format
        - ovs_key_attr_to_string
        - packet_tcp_flag_to_string
        - pt_ns
        - pt_ns_type_be
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/odp-util.c:4400,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/odp-util.c:4391,30'
          Dst:             nl_attr_type
        - Src:             'lib/odp-util.c:4395,21'
          Dst:             odp_mask_attr_is_exact
        - Src:             'lib/odp-util.c:4397,21'
          Dst:             ovs_key_attr_to_string
        - Src:             'lib/odp-util.c:4397,5'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:4399,5'
          Dst:             ds_put_char
        - Src:             'lib/odp-util.c:4402,19'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-util.c:4402,43'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-util.c:4403,29'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:4403,45'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-util.c:4404,29'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:4404,46'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-util.c:4403,13'
          Dst:             odp_flow_format
        - Src:             'lib/odp-util.c:4406,20'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-util.c:4407,29'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:4407,45'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-util.c:4407,13'
          Dst:             odp_flow_format
        - Src:             'lib/odp-util.c:4416,39'
          Dst:             nl_attr_get_u32
        - Src:             'lib/odp-util.c:4416,9'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:4418,44'
          Dst:             nl_attr_get_u32
        - Src:             'lib/odp-util.c:4418,13'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:4423,25'
          Dst:             mask_empty
        - Src:             'lib/odp-util.c:4424,43'
          Dst:             nl_attr_get_u32
        - Src:             'lib/odp-util.c:4424,13'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:4426,48'
          Dst:             nl_attr_get_u32
        - Src:             'lib/odp-util.c:4426,17'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:4433,47'
          Dst:             nl_attr_get_u32
        - Src:             'lib/odp-util.c:4433,17'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:4436,35'
          Dst:             mask_empty
        - Src:             'lib/odp-util.c:4436,56'
          Dst:             nl_attr_get_u32
        - Src:             'lib/odp-util.c:4435,21'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:4440,33'
          Dst:             nl_attr_get_u32
        - Src:             'lib/odp-util.c:4441,33'
          Dst:             mask_empty
        - Src:             'lib/odp-util.c:4441,54'
          Dst:             nl_attr_get_u32
        - Src:             'lib/odp-util.c:4439,13'
          Dst:             format_flags_masked
        - Src:             'lib/odp-util.c:4439,13'
          Dst:             odp_ct_state_to_string
        - Src:             'lib/odp-util.c:4444,54'
          Dst:             nl_attr_get_u32
        - Src:             'lib/odp-util.c:4444,13'
          Dst:             format_flags
        - Src:             'lib/odp-util.c:4444,13'
          Dst:             odp_ct_state_to_string
        - Src:             'lib/odp-util.c:4449,25'
          Dst:             mask_empty
        - Src:             'lib/odp-util.c:4450,43'
          Dst:             nl_attr_get_u16
        - Src:             'lib/odp-util.c:4450,13'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:4452,48'
          Dst:             nl_attr_get_u16
        - Src:             'lib/odp-util.c:4452,17'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:4458,43'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:4459,47'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:4461,9'
          Dst:             format_u128
        - Src:             'lib/odp-util.c:4466,51'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:4467,57'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:4469,9'
          Dst:             format_ipv4
        - Src:             'lib/odp-util.c:4470,9'
          Dst:             format_ipv4
        - Src:             'lib/odp-util.c:4471,9'
          Dst:             format_u8u
        - Src:             'lib/odp-util.c:4473,9'
          Dst:             format_be16
        - Src:             'lib/odp-util.c:4475,9'
          Dst:             format_be16
        - Src:             'lib/odp-util.c:4477,9'
          Dst:             ds_chomp
        - Src:             'lib/odp-util.c:4482,51'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:4483,57'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:4485,9'
          Dst:             format_in6_addr
        - Src:             'lib/odp-util.c:4487,9'
          Dst:             format_in6_addr
        - Src:             'lib/odp-util.c:4489,9'
          Dst:             format_u8u
        - Src:             'lib/odp-util.c:4491,9'
          Dst:             format_be16
        - Src:             'lib/odp-util.c:4493,9'
          Dst:             format_be16
        - Src:             'lib/odp-util.c:4495,9'
          Dst:             ds_chomp
        - Src:             'lib/odp-util.c:4500,9'
          Dst:             format_odp_tun_attr
        - Src:             'lib/odp-util.c:4505,50'
          Dst:             nl_attr_get_odp_port
        - Src:             'lib/odp-util.c:4505,13'
          Dst:             odp_portno_name_format
        - Src:             'lib/odp-util.c:4507,42'
          Dst:             nl_attr_get_u32
        - Src:             'lib/odp-util.c:4507,13'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:4509,48'
          Dst:             nl_attr_get_u32
        - Src:             'lib/odp-util.c:4509,17'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:4515,26'
          Dst:             nl_attr_get_be32
        - Src:             'lib/odp-util.c:4516,30'
          Dst:             nl_attr_get_be32
        - Src:             'lib/odp-util.c:4518,29'
          Dst:             pt_ns
        - Src:             'lib/odp-util.c:4518,23'
          Dst:             htons
        - Src:             'lib/odp-util.c:4519,34'
          Dst:             pt_ns
        - Src:             'lib/odp-util.c:4519,28'
          Dst:             htons
        - Src:             'lib/odp-util.c:4520,9'
          Dst:             format_be16
        - Src:             'lib/odp-util.c:4522,28'
          Dst:             pt_ns_type_be
        - Src:             'lib/odp-util.c:4523,33'
          Dst:             pt_ns_type_be
        - Src:             'lib/odp-util.c:4524,9'
          Dst:             format_be16x
        - Src:             'lib/odp-util.c:4526,9'
          Dst:             ds_chomp
        - Src:             'lib/odp-util.c:4531,52'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:4532,46'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:4534,9'
          Dst:             format_eth
        - Src:             'lib/odp-util.c:4535,9'
          Dst:             format_eth
        - Src:             'lib/odp-util.c:4536,9'
          Dst:             ds_chomp
        - Src:             'lib/odp-util.c:4540,29'
          Dst:             nl_attr_get_be16
        - Src:             'lib/odp-util.c:4541,30'
          Dst:             nl_attr_get_be16
        - Src:             'lib/odp-util.c:4540,9'
          Dst:             format_vlan_tci
        - Src:             'lib/odp-util.c:4545,47'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:4547,23'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-util.c:4550,13'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:4554,25'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:4555,25'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-util.c:4558,37'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-util.c:4556,17'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:4562,9'
          Dst:             format_mpls
        - Src:             'lib/odp-util.c:4566,48'
          Dst:             nl_attr_get_be16
        - Src:             'lib/odp-util.c:4566,42'
          Dst:             ntohs
        - Src:             'lib/odp-util.c:4566,9'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:4568,53'
          Dst:             nl_attr_get_be16
        - Src:             'lib/odp-util.c:4568,47'
          Dst:             ntohs
        - Src:             'lib/odp-util.c:4568,13'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:4573,42'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:4574,48'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:4576,9'
          Dst:             format_ipv4
        - Src:             'lib/odp-util.c:4577,9'
          Dst:             format_ipv4
        - Src:             'lib/odp-util.c:4578,9'
          Dst:             format_u8u
        - Src:             'lib/odp-util.c:4580,9'
          Dst:             format_u8x
        - Src:             'lib/odp-util.c:4581,9'
          Dst:             format_u8u
        - Src:             'lib/odp-util.c:4582,9'
          Dst:             format_frag
        - Src:             'lib/odp-util.c:4584,9'
          Dst:             ds_chomp
        - Src:             'lib/odp-util.c:4588,42'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:4589,48'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:4591,9'
          Dst:             format_in6_addr
        - Src:             'lib/odp-util.c:4593,9'
          Dst:             format_in6_addr
        - Src:             'lib/odp-util.c:4595,9'
          Dst:             format_ipv6_label
        - Src:             'lib/odp-util.c:4597,9'
          Dst:             format_u8u
        - Src:             'lib/odp-util.c:4599,9'
          Dst:             format_u8x
        - Src:             'lib/odp-util.c:4601,9'
          Dst:             format_u8u
        - Src:             'lib/odp-util.c:4603,9'
          Dst:             format_frag
        - Src:             'lib/odp-util.c:4605,9'
          Dst:             ds_chomp
        - Src:             'lib/odp-util.c:4612,41'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:4613,47'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:4615,9'
          Dst:             format_be16
        - Src:             'lib/odp-util.c:4616,9'
          Dst:             format_be16
        - Src:             'lib/odp-util.c:4617,9'
          Dst:             ds_chomp
        - Src:             'lib/odp-util.c:4623,39'
          Dst:             nl_attr_get_be16
        - Src:             'lib/odp-util.c:4623,33'
          Dst:             ntohs
        - Src:             'lib/odp-util.c:4624,33'
          Dst:             nl_attr_get_be16
        - Src:             'lib/odp-util.c:4624,33'
          Dst:             ntohs
        - Src:             'lib/odp-util.c:4625,33'
          Dst:             ntohs
        - Src:             'lib/odp-util.c:4622,13'
          Dst:             format_flags_masked
        - Src:             'lib/odp-util.c:4622,13'
          Dst:             packet_tcp_flag_to_string
        - Src:             'lib/odp-util.c:4628,32'
          Dst:             nl_attr_get_be16
        - Src:             'lib/odp-util.c:4628,26'
          Dst:             ntohs
        - Src:             'lib/odp-util.c:4627,13'
          Dst:             format_flags
        - Src:             'lib/odp-util.c:4627,13'
          Dst:             packet_tcp_flag_to_string
        - Src:             'lib/odp-util.c:4633,42'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:4634,48'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:4636,9'
          Dst:             format_u8u
        - Src:             'lib/odp-util.c:4637,9'
          Dst:             format_u8u
        - Src:             'lib/odp-util.c:4638,9'
          Dst:             ds_chomp
        - Src:             'lib/odp-util.c:4642,44'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:4643,50'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:4645,9'
          Dst:             format_u8u
        - Src:             'lib/odp-util.c:4647,9'
          Dst:             format_u8u
        - Src:             'lib/odp-util.c:4649,9'
          Dst:             ds_chomp
        - Src:             'lib/odp-util.c:4653,47'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:4654,41'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:4656,9'
          Dst:             format_ipv4
        - Src:             'lib/odp-util.c:4657,9'
          Dst:             format_ipv4
        - Src:             'lib/odp-util.c:4658,9'
          Dst:             format_be16
        - Src:             'lib/odp-util.c:4659,9'
          Dst:             format_eth
        - Src:             'lib/odp-util.c:4660,9'
          Dst:             format_eth
        - Src:             'lib/odp-util.c:4661,9'
          Dst:             ds_chomp
        - Src:             'lib/odp-util.c:4665,46'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:4666,40'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:4668,9'
          Dst:             format_in6_addr
        - Src:             'lib/odp-util.c:4670,9'
          Dst:             format_eth
        - Src:             'lib/odp-util.c:4671,9'
          Dst:             format_eth
        - Src:             'lib/odp-util.c:4673,9'
          Dst:             ds_chomp
        - Src:             'lib/odp-util.c:4677,57'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:4678,51'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:4681,9'
          Dst:             format_be32_masked
        - Src:             'lib/odp-util.c:4683,9'
          Dst:             ds_put_char
        - Src:             'lib/odp-util.c:4685,9'
          Dst:             format_u8u
        - Src:             'lib/odp-util.c:4688,9'
          Dst:             ds_chomp
        - Src:             'lib/odp-util.c:4692,9'
          Dst:             format_odp_nsh_attr
        - Src:             'lib/odp-util.c:4699,9'
          Dst:             format_generic_odp_key
        - Src:             'lib/odp-util.c:4701,13'
          Dst:             ds_put_char
        - Src:             'lib/odp-util.c:4702,13'
          Dst:             format_generic_odp_key
        - Src:             'lib/odp-util.c:4706,5'
          Dst:             ds_put_char
    - functionName:    ofpbuf_clear
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 250
      functionLinenumberEnd: 253
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nl_attr_len_pad
      functionSourceFile: '/src/openvswitch/lib/netlink.h'
      linkageType:     InternalLinkage
      functionLinenumber: 179
      functionLinenumberEnd: 182
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          37
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    15
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nl_attr_next
      functionSourceFile: '/src/openvswitch/lib/netlink.h'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 165
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    15
      BranchProfiles:  []
      Callsites:       []
    - functionName:    odp_mask_attr_is_exact
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3627
      functionLinenumberEnd: 3629
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_attr_get
        - nl_attr_get_size
        - nl_attr_type
        - odp_mask_is_exact
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:3628,30'
          Dst:             nl_attr_type
        - Src:             'lib/odp-util.c:3629,36'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:3629,53'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-util.c:3629,12'
          Dst:             odp_mask_is_exact
    - functionName:    mask_empty
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4371
      functionLinenumberEnd: 4382
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - is_all_zeros
        - nl_attr_get
        - nl_attr_get_size
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:4378,12'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:4379,9'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-util.c:4381,12'
          Dst:             is_all_zeros
    - functionName:    odp_ct_state_to_string
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4330
      functionLinenumberEnd: 4351
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          57
      EdgeCount:       20
      CyclomaticComplexity: 11
      functionsReached: []
      functionUses:    3
      BranchProfiles:
        - Branch String:   'lib/odp-util.c:4331,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    format_u128
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4753
      functionLinenumberEnd: 4763
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          143
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - ds_put_char
        - ds_put_hex
        - get_32aligned_u128
        - hton128
        - ovs_u128_is_ones
        - ovs_u128_is_zero
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:4754,47'
          Dst:             get_32aligned_u128
        - Src:             'lib/odp-util.c:4754,30'
          Dst:             ovs_u128_is_zero
        - Src:             'lib/odp-util.c:4755,35'
          Dst:             get_32aligned_u128
        - Src:             'lib/odp-util.c:4755,27'
          Dst:             hton128
        - Src:             'lib/odp-util.c:4756,9'
          Dst:             ds_put_hex
        - Src:             'lib/odp-util.c:4757,40'
          Dst:             get_32aligned_u128
        - Src:             'lib/odp-util.c:4757,23'
          Dst:             ovs_u128_is_ones
        - Src:             'lib/odp-util.c:4758,29'
          Dst:             get_32aligned_u128
        - Src:             'lib/odp-util.c:4758,21'
          Dst:             hton128
        - Src:             'lib/odp-util.c:4759,13'
          Dst:             ds_put_char
        - Src:             'lib/odp-util.c:4760,13'
          Dst:             ds_put_hex
    - functionName:    format_ipv4
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3726
      functionLinenumberEnd: 3738
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          130
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - ds_put_char
        - ds_put_format
        - ntohl
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:3732,46'
          Dst:             ntohl
        - Src:             'lib/odp-util.c:3732,46'
          Dst:             ntohl
        - Src:             'lib/odp-util.c:3732,46'
          Dst:             ntohl
        - Src:             'lib/odp-util.c:3732,46'
          Dst:             ntohl
        - Src:             'lib/odp-util.c:3732,9'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:3734,42'
          Dst:             ntohl
        - Src:             'lib/odp-util.c:3734,42'
          Dst:             ntohl
        - Src:             'lib/odp-util.c:3734,42'
          Dst:             ntohl
        - Src:             'lib/odp-util.c:3734,42'
          Dst:             ntohl
        - Src:             'lib/odp-util.c:3734,13'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:3736,9'
          Dst:             ds_put_char
    - functionName:    format_u8u
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3800
      functionLinenumberEnd: 3812
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - char
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          104
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - ds_put_char
        - ds_put_format
      functionUses:    16
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:3806,9'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:3808,13'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:3810,9'
          Dst:             ds_put_char
    - functionName:    format_be16
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3817
      functionLinenumberEnd: 3829
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - short
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          106
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - ds_put_char
        - ds_put_format
        - ntohs
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:3823,47'
          Dst:             ntohs
        - Src:             'lib/odp-util.c:3823,9'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:3825,44'
          Dst:             ntohs
        - Src:             'lib/odp-util.c:3825,13'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:3827,9'
          Dst:             ds_put_char
    - functionName:    format_in6_addr
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3745
      functionLinenumberEnd: 3760
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          102
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - ds_put_char
        - ds_put_format
        - inet_ntop
        - ipv6_mask_is_any
        - ipv6_mask_is_exact
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:3747,31'
          Dst:             ipv6_mask_is_any
        - Src:             'lib/odp-util.c:3750,35'
          Dst:             ipv6_mask_is_exact
        - Src:             'lib/odp-util.c:3752,9'
          Dst:             inet_ntop
        - Src:             'lib/odp-util.c:3753,9'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:3755,13'
          Dst:             inet_ntop
        - Src:             'lib/odp-util.c:3756,13'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:3758,9'
          Dst:             ds_put_char
    - functionName:    format_odp_tun_attr
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4192
      functionLinenumberEnd: 4326
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         81
      ICount:          534
      EdgeCount:       96
      CyclomaticComplexity: 17
      functionsReached:
        - check_attr_len
        - ds_chomp
        - ds_put_cstr
        - format_be16
        - format_be64
        - format_in6_addr
        - format_ipv4
        - format_odp_tun_erspan_opt
        - format_odp_tun_geneve
        - format_odp_tun_gtpu_opt
        - format_odp_tun_vxlan_opt
        - format_tun_flags
        - format_u8u
        - format_u8x
        - format_unknown_key
        - generate_all_wildcard_mask
        - nl_attr_find__
        - nl_attr_get
        - nl_attr_get_be16
        - nl_attr_get_be32
        - nl_attr_get_be64
        - nl_attr_get_in6_addr
        - nl_attr_get_size
        - nl_attr_get_u8
        - nl_attr_is_valid
        - nl_attr_len_pad
        - nl_attr_next
        - nl_attr_type
        - ofpbuf_clear
        - ofpbuf_init
        - ofpbuf_uninit
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/odp-util.c:4219,9'
          Branch Sides:    []
        - Branch String:   'lib/odp-util.c:4308,13'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/odp-util.c:4199,5'
          Dst:             ofpbuf_init
        - Src:             'lib/odp-util.c:4200,5'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:4200,5'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-util.c:4200,5'
          Dst:             nl_attr_is_valid
        - Src:             'lib/odp-util.c:4201,41'
          Dst:             nl_attr_type
        - Src:             'lib/odp-util.c:4205,33'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:4206,33'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-util.c:4205,18'
          Dst:             nl_attr_find__
        - Src:             'lib/odp-util.c:4208,22'
          Dst:             generate_all_wildcard_mask
        - Src:             'lib/odp-util.c:4214,14'
          Dst:             check_attr_len
        - Src:             'lib/odp-util.c:4221,39'
          Dst:             nl_attr_get_be64
        - Src:             'lib/odp-util.c:4222,30'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:4221,13'
          Dst:             format_be64
        - Src:             'lib/odp-util.c:4229,36'
          Dst:             nl_attr_get_be32
        - Src:             'lib/odp-util.c:4230,30'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:4229,13'
          Dst:             format_ipv4
        - Src:             'lib/odp-util.c:4233,36'
          Dst:             nl_attr_get_be32
        - Src:             'lib/odp-util.c:4234,30'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:4233,13'
          Dst:             format_ipv4
        - Src:             'lib/odp-util.c:4238,24'
          Dst:             nl_attr_get_in6_addr
        - Src:             'lib/odp-util.c:4240,34'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:4239,13'
          Dst:             format_in6_addr
        - Src:             'lib/odp-util.c:4245,24'
          Dst:             nl_attr_get_in6_addr
        - Src:             'lib/odp-util.c:4247,34'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:4246,13'
          Dst:             format_in6_addr
        - Src:             'lib/odp-util.c:4251,35'
          Dst:             nl_attr_get_u8
        - Src:             'lib/odp-util.c:4252,29'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:4251,13'
          Dst:             format_u8x
        - Src:             'lib/odp-util.c:4255,35'
          Dst:             nl_attr_get_u8
        - Src:             'lib/odp-util.c:4256,29'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:4255,13'
          Dst:             format_u8u
        - Src:             'lib/odp-util.c:4265,39'
          Dst:             nl_attr_get_be16
        - Src:             'lib/odp-util.c:4266,30'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:4265,13'
          Dst:             format_be16
        - Src:             'lib/odp-util.c:4269,39'
          Dst:             nl_attr_get_be16
        - Src:             'lib/odp-util.c:4270,30'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:4269,13'
          Dst:             format_be16
        - Src:             'lib/odp-util.c:4276,13'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:4277,13'
          Dst:             format_odp_tun_vxlan_opt
        - Src:             'lib/odp-util.c:4278,13'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:4281,13'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:4282,13'
          Dst:             format_odp_tun_geneve
        - Src:             'lib/odp-util.c:4283,13'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:4288,13'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:4289,13'
          Dst:             format_odp_tun_erspan_opt
        - Src:             'lib/odp-util.c:4290,13'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:4293,13'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:4294,13'
          Dst:             format_odp_tun_gtpu_opt
        - Src:             'lib/odp-util.c:4295,13'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:4299,13'
          Dst:             format_unknown_key
        - Src:             'lib/odp-util.c:4301,9'
          Dst:             ofpbuf_clear
        - Src:             'lib/odp-util.c:4200,5'
          Dst:             nl_attr_len_pad
        - Src:             'lib/odp-util.c:4200,5'
          Dst:             nl_attr_next
        - Src:             'lib/odp-util.c:4307,9'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:4307,9'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-util.c:4307,9'
          Dst:             nl_attr_is_valid
        - Src:             'lib/odp-util.c:4308,21'
          Dst:             nl_attr_type
        - Src:             'lib/odp-util.c:4307,9'
          Dst:             nl_attr_len_pad
        - Src:             'lib/odp-util.c:4307,9'
          Dst:             nl_attr_next
        - Src:             'lib/odp-util.c:4322,5'
          Dst:             format_tun_flags
        - Src:             'lib/odp-util.c:4324,5'
          Dst:             ds_chomp
        - Src:             'lib/odp-util.c:4325,5'
          Dst:             ofpbuf_uninit
    - functionName:    odp_portno_name_format
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3675
      functionLinenumberEnd: 3682
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_cstr
        - ds_put_format
        - odp_portno_names_get
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:3676,24'
          Dst:             odp_portno_names_get
        - Src:             'lib/odp-util.c:3678,9'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:3680,9'
          Dst:             ds_put_format
    - functionName:    format_be16x
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3834
      functionLinenumberEnd: 3846
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - short
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          106
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - ds_put_char
        - ds_put_format
        - ntohs
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:3840,48'
          Dst:             ntohs
        - Src:             'lib/odp-util.c:3840,9'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:3842,44'
          Dst:             ntohs
        - Src:             'lib/odp-util.c:3842,13'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:3844,9'
          Dst:             ds_put_char
    - functionName:    format_eth
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3689
      functionLinenumberEnd: 3703
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          140
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - ds_put_char
        - ds_put_format
        - eth_addr_is_zero
        - eth_format_masked
        - eth_mask_is_exact
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:3690,31'
          Dst:             eth_addr_is_zero
        - Src:             'lib/odp-util.c:3693,35'
          Dst:             eth_mask_is_exact
        - Src:             'lib/odp-util.c:3696,13'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:3698,13'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:3699,13'
          Dst:             eth_format_masked
        - Src:             'lib/odp-util.c:3700,13'
          Dst:             ds_put_char
    - functionName:    format_vlan_tci
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 556
      functionLinenumberEnd: 576
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - short
        - short
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          153
      EdgeCount:       37
      CyclomaticComplexity: 11
      functionsReached:
        - ds_chomp
        - ds_put_char
        - ds_put_cstr
        - ds_put_format
        - htons
        - vlan_tci_to_pcp
        - vlan_tci_to_vid
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:557,20'
          Dst:             vlan_tci_to_vid
        - Src:             'lib/odp-util.c:557,44'
          Dst:             vlan_tci_to_vid
        - Src:             'lib/odp-util.c:558,42'
          Dst:             vlan_tci_to_vid
        - Src:             'lib/odp-util.c:558,9'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:559,13'
          Dst:             vlan_tci_to_vid
        - Src:             'lib/odp-util.c:560,45'
          Dst:             vlan_tci_to_vid
        - Src:             'lib/odp-util.c:560,13'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:562,9'
          Dst:             ds_put_char
        - Src:             'lib/odp-util.c:564,20'
          Dst:             vlan_tci_to_pcp
        - Src:             'lib/odp-util.c:564,44'
          Dst:             vlan_tci_to_pcp
        - Src:             'lib/odp-util.c:565,37'
          Dst:             vlan_tci_to_pcp
        - Src:             'lib/odp-util.c:565,9'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:566,13'
          Dst:             vlan_tci_to_pcp
        - Src:             'lib/odp-util.c:567,40'
          Dst:             vlan_tci_to_pcp
        - Src:             'lib/odp-util.c:567,13'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:569,9'
          Dst:             ds_put_char
        - Src:             'lib/odp-util.c:571,17'
          Dst:             htons
        - Src:             'lib/odp-util.c:572,9'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:573,9'
          Dst:             ds_put_char
        - Src:             'lib/odp-util.c:575,5'
          Dst:             ds_chomp
    - functionName:    format_mpls
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 591
      functionLinenumberEnd: 609
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          96
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ds_chomp
        - ds_put_char
        - ds_put_format
        - format_mpls_lse
        - mpls_lse_to_bos
        - mpls_lse_to_label
        - mpls_lse_to_tc
        - mpls_lse_to_ttl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:596,13'
          Dst:             format_mpls_lse
        - Src:             'lib/odp-util.c:601,27'
          Dst:             mpls_lse_to_label
        - Src:             'lib/odp-util.c:601,51'
          Dst:             mpls_lse_to_label
        - Src:             'lib/odp-util.c:602,27'
          Dst:             mpls_lse_to_tc
        - Src:             'lib/odp-util.c:602,48'
          Dst:             mpls_lse_to_tc
        - Src:             'lib/odp-util.c:603,27'
          Dst:             mpls_lse_to_ttl
        - Src:             'lib/odp-util.c:603,49'
          Dst:             mpls_lse_to_ttl
        - Src:             'lib/odp-util.c:604,27'
          Dst:             mpls_lse_to_bos
        - Src:             'lib/odp-util.c:604,49'
          Dst:             mpls_lse_to_bos
        - Src:             'lib/odp-util.c:600,13'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:606,9'
          Dst:             ds_put_char
        - Src:             'lib/odp-util.c:608,5'
          Dst:             ds_chomp
    - functionName:    format_u8x
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3783
      functionLinenumberEnd: 3795
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - char
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          104
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - ds_put_char
        - ds_put_format
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:3789,9'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:3791,13'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:3793,9'
          Dst:             ds_put_char
    - functionName:    format_frag
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4356
      functionLinenumberEnd: 4367
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - char
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          103
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - ds_put_format
        - ovs_frag_type_to_string
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:4362,9'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:4365,43'
          Dst:             ovs_frag_type_to_string
        - Src:             'lib/odp-util.c:4365,9'
          Dst:             ds_put_format
    - functionName:    format_ipv6_label
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3765
      functionLinenumberEnd: 3778
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          106
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - ds_put_char
        - ds_put_format
        - htonl
        - ntohl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:3770,25'
          Dst:             htonl
        - Src:             'lib/odp-util.c:3770,52'
          Dst:             htonl
        - Src:             'lib/odp-util.c:3772,48'
          Dst:             ntohl
        - Src:             'lib/odp-util.c:3772,9'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:3774,44'
          Dst:             ntohl
        - Src:             'lib/odp-util.c:3774,13'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:3776,9'
          Dst:             ds_put_char
    - functionName:    format_be32_masked
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 316
      functionLinenumberEnd: 330
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          72
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - ds_put_char
        - ds_put_format
        - htonl
        - ntohl
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:317,17'
          Dst:             htonl
        - Src:             'lib/odp-util.c:319,13'
          Dst:             ds_put_char
        - Src:             'lib/odp-util.c:321,9'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:323,43'
          Dst:             ntohl
        - Src:             'lib/odp-util.c:323,13'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:326,27'
          Dst:             ntohl
        - Src:             'lib/odp-util.c:326,41'
          Dst:             ntohl
        - Src:             'lib/odp-util.c:325,13'
          Dst:             ds_put_format
    - functionName:    format_odp_nsh_attr
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4119
      functionLinenumberEnd: 4187
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         36
      ICount:          247
      EdgeCount:       43
      CyclomaticComplexity: 9
      functionsReached:
        - check_attr_len
        - format_nsh_key
        - format_nsh_key_mask
        - nl_attr_find__
        - nl_attr_get
        - nl_attr_get_size
        - nl_attr_is_valid
        - nl_attr_len_pad
        - nl_attr_next
        - nl_attr_type
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/odp-util.c:4142,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/odp-util.c:4128,5'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:4128,5'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-util.c:4128,5'
          Dst:             nl_attr_is_valid
        - Src:             'lib/odp-util.c:4129,38'
          Dst:             nl_attr_type
        - Src:             'lib/odp-util.c:4133,33'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:4134,33'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-util.c:4133,18'
          Dst:             nl_attr_find__
        - Src:             'lib/odp-util.c:4137,14'
          Dst:             check_attr_len
        - Src:             'lib/odp-util.c:4146,51'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:4148,24'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:4164,49'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:4166,24'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:4128,5'
          Dst:             nl_attr_len_pad
        - Src:             'lib/odp-util.c:4128,5'
          Dst:             nl_attr_next
        - Src:             'lib/odp-util.c:4183,9'
          Dst:             format_nsh_key_mask
        - Src:             'lib/odp-util.c:4185,9'
          Dst:             format_nsh_key
    - functionName:    format_generic_odp_key
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3052
      functionLinenumberEnd: 3066
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          74
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - ds_put_char
        - ds_put_format
        - nl_attr_get
        - nl_attr_get_size
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:3053,18'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-util.c:3058,18'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:3061,17'
          Dst:             ds_put_char
        - Src:             'lib/odp-util.c:3063,13'
          Dst:             ds_put_format
    - functionName:    format_nsh_key_mask
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 335
      functionLinenumberEnd: 363
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          149
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - format_be32_masked
        - format_nsh_key
        - format_uint8_masked
        - htonl
        - nsh_path_hdr_to_si
        - nsh_path_hdr_to_spi_uint32
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:337,9'
          Dst:             format_nsh_key
        - Src:             'lib/odp-util.c:340,24'
          Dst:             nsh_path_hdr_to_spi_uint32
        - Src:             'lib/odp-util.c:341,29'
          Dst:             nsh_path_hdr_to_spi_uint32
        - Src:             'lib/odp-util.c:345,22'
          Dst:             nsh_path_hdr_to_si
        - Src:             'lib/odp-util.c:346,27'
          Dst:             nsh_path_hdr_to_si
        - Src:             'lib/odp-util.c:348,9'
          Dst:             format_uint8_masked
        - Src:             'lib/odp-util.c:349,9'
          Dst:             format_uint8_masked
        - Src:             'lib/odp-util.c:350,9'
          Dst:             format_uint8_masked
        - Src:             'lib/odp-util.c:351,9'
          Dst:             format_uint8_masked
        - Src:             'lib/odp-util.c:352,47'
          Dst:             htonl
        - Src:             'lib/odp-util.c:352,59'
          Dst:             htonl
        - Src:             'lib/odp-util.c:352,9'
          Dst:             format_be32_masked
        - Src:             'lib/odp-util.c:353,9'
          Dst:             format_uint8_masked
        - Src:             'lib/odp-util.c:354,9'
          Dst:             format_be32_masked
        - Src:             'lib/odp-util.c:356,9'
          Dst:             format_be32_masked
        - Src:             'lib/odp-util.c:358,9'
          Dst:             format_be32_masked
        - Src:             'lib/odp-util.c:360,9'
          Dst:             format_be32_masked
    - functionName:    format_nsh_key
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 272
      functionLinenumberEnd: 293
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          98
      EdgeCount:       12
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_format
        - nsh_path_hdr_to_si
        - nsh_path_hdr_to_spi_uint32
        - ntohl
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/odp-util.c:282,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/odp-util.c:273,5'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:274,5'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:275,5'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:276,5'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:278,19'
          Dst:             nsh_path_hdr_to_spi_uint32
        - Src:             'lib/odp-util.c:277,5'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:280,19'
          Dst:             nsh_path_hdr_to_si
        - Src:             'lib/odp-util.c:279,5'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:285,55'
          Dst:             ntohl
        - Src:             'lib/odp-util.c:285,17'
          Dst:             ds_put_format
    - functionName:    nsh_path_hdr_to_spi_uint32
      functionSourceFile: '/src/openvswitch/./include/openvswitch/nsh.h'
      linkageType:     InternalLinkage
      functionLinenumber: 353
      functionLinenumberEnd: 354
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohl
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/nsh.h:354,13'
          Dst:             ntohl
    - functionName:    nsh_path_hdr_to_si
      functionSourceFile: '/src/openvswitch/./include/openvswitch/nsh.h'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 360
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohl
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/nsh.h:360,13'
          Dst:             ntohl
    - functionName:    format_uint8_masked
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 298
      functionLinenumberEnd: 311
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - char
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          73
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - ds_put_char
        - ds_put_format
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:301,13'
          Dst:             ds_put_char
        - Src:             'lib/odp-util.c:303,9'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:305,13'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:307,13'
          Dst:             ds_put_format
    - functionName:    ovs_frag_type_to_string
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3070
      functionLinenumberEnd: 3082
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          37
      EdgeCount:       14
      CyclomaticComplexity: 8
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/odp-util.c:3071,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    format_mpls_lse
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 580
      functionLinenumberEnd: 586
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_format
        - mpls_lse_to_bos
        - mpls_lse_to_label
        - mpls_lse_to_tc
        - mpls_lse_to_ttl
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:582,19'
          Dst:             mpls_lse_to_label
        - Src:             'lib/odp-util.c:583,19'
          Dst:             mpls_lse_to_tc
        - Src:             'lib/odp-util.c:584,19'
          Dst:             mpls_lse_to_ttl
        - Src:             'lib/odp-util.c:585,19'
          Dst:             mpls_lse_to_bos
        - Src:             'lib/odp-util.c:581,5'
          Dst:             ds_put_format
    - functionName:    mpls_lse_to_label
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 568
      functionLinenumberEnd: 569
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohl
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:569,13'
          Dst:             ntohl
    - functionName:    mpls_lse_to_tc
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 576
      functionLinenumberEnd: 577
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohl
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:577,13'
          Dst:             ntohl
    - functionName:    mpls_lse_to_ttl
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 584
      functionLinenumberEnd: 585
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohl
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:585,13'
          Dst:             ntohl
    - functionName:    mpls_lse_to_bos
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 624
      functionLinenumberEnd: 625
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:625,24'
          Dst:             htonl
    - functionName:    vlan_tci_to_vid
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 507
      functionLinenumberEnd: 508
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohs
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:508,13'
          Dst:             ntohs
    - functionName:    vlan_tci_to_pcp
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 515
      functionLinenumberEnd: 516
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohs
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:516,13'
          Dst:             ntohs
    - functionName:    eth_addr_is_zero
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 246
      functionLinenumberEnd: 247
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          25
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    eth_mask_is_exact
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 255
      functionLinenumberEnd: 256
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htons
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:256,51'
          Dst:             htons
    - functionName:    odp_portno_names_get
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3647
      functionLinenumberEnd: 3659
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          81
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - hash_odp_port
        - hmap_first_in_bucket
        - hmap_next_in_bucket
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:3651,9'
          Dst:             hash_odp_port
        - Src:             'lib/odp-util.c:3651,9'
          Dst:             hmap_first_in_bucket
        - Src:             'lib/odp-util.c:3651,9'
          Dst:             hmap_next_in_bucket
    - functionName:    hash_odp_port
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 238
      functionLinenumberEnd: 239
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_int
        - odp_to_u32
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:239,21'
          Dst:             odp_to_u32
        - Src:             'lib/flow.h:239,12'
          Dst:             hash_int
    - functionName:    hmap_first_in_bucket
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 367
      functionLinenumberEnd: 368
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_next_in_bucket
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 381
      functionLinenumberEnd: 382
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    odp_to_u32
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 202
      functionLinenumberEnd: 203
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_int
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 408
      functionLinenumberEnd: 409
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_2words
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:409,12'
          Dst:             hash_2words
    - functionName:    hash_2words
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 153
      functionLinenumberEnd: 154
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_add
        - hash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:154,33'
          Dst:             hash_add
        - Src:             'lib/hash.h:154,24'
          Dst:             hash_add
        - Src:             'lib/hash.h:154,12'
          Dst:             hash_finish
    - functionName:    hash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 108
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_add
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:109,12'
          Dst:             mhash_add
    - functionName:    hash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:119,12'
          Dst:             mhash_finish
    - functionName:    mhash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_rot
        - mhash_add__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:78,12'
          Dst:             mhash_add__
        - Src:             'lib/hash.h:79,12'
          Dst:             hash_rot
    - functionName:    mhash_add__
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hash_rot
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:71,12'
          Dst:             hash_rot
    - functionName:    hash_rot
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 32
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    format_be64
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3709
      functionLinenumberEnd: 3721
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          99
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - ds_put_char
        - ds_put_format
        - get_32aligned_be64
        - htonll
        - ntohll
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:3710,29'
          Dst:             get_32aligned_be64
        - Src:             'lib/odp-util.c:3710,57'
          Dst:             htonll
        - Src:             'lib/odp-util.c:3715,49'
          Dst:             ntohll
        - Src:             'lib/odp-util.c:3715,9'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:3717,44'
          Dst:             ntohll
        - Src:             'lib/odp-util.c:3717,13'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:3719,9'
          Dst:             ds_put_char
    - functionName:    format_odp_tun_vxlan_opt
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3929
      functionLinenumberEnd: 3982
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          185
      EdgeCount:       33
      CyclomaticComplexity: 8
      functionsReached:
        - check_attr_len
        - ds_chomp
        - ds_put_cstr
        - format_be16
        - format_u8x
        - format_unknown_key
        - generate_all_wildcard_mask
        - nl_attr_find__
        - nl_attr_get
        - nl_attr_get_size
        - nl_attr_get_u32
        - nl_attr_is_valid
        - nl_attr_len_pad
        - nl_attr_next
        - nl_attr_type
        - odp_decode_gbp_raw
        - ofpbuf_clear
        - ofpbuf_init
        - ofpbuf_uninit
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/odp-util.c:3954,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/odp-util.c:3934,5'
          Dst:             ofpbuf_init
        - Src:             'lib/odp-util.c:3935,5'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:3935,5'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-util.c:3935,5'
          Dst:             nl_attr_is_valid
        - Src:             'lib/odp-util.c:3936,25'
          Dst:             nl_attr_type
        - Src:             'lib/odp-util.c:3940,33'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:3941,33'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-util.c:3940,18'
          Dst:             nl_attr_find__
        - Src:             'lib/odp-util.c:3943,22'
          Dst:             generate_all_wildcard_mask
        - Src:             'lib/odp-util.c:3949,14'
          Dst:             check_attr_len
        - Src:             'lib/odp-util.c:3956,28'
          Dst:             nl_attr_get_u32
        - Src:             'lib/odp-util.c:3960,13'
          Dst:             odp_decode_gbp_raw
        - Src:             'lib/odp-util.c:3962,33'
          Dst:             nl_attr_get_u32
        - Src:             'lib/odp-util.c:3963,17'
          Dst:             odp_decode_gbp_raw
        - Src:             'lib/odp-util.c:3966,13'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:3967,13'
          Dst:             format_be16
        - Src:             'lib/odp-util.c:3968,13'
          Dst:             format_u8x
        - Src:             'lib/odp-util.c:3969,13'
          Dst:             ds_chomp
        - Src:             'lib/odp-util.c:3970,13'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:3975,13'
          Dst:             format_unknown_key
        - Src:             'lib/odp-util.c:3977,9'
          Dst:             ofpbuf_clear
        - Src:             'lib/odp-util.c:3935,5'
          Dst:             nl_attr_len_pad
        - Src:             'lib/odp-util.c:3935,5'
          Dst:             nl_attr_next
        - Src:             'lib/odp-util.c:3980,5'
          Dst:             ds_chomp
        - Src:             'lib/odp-util.c:3981,5'
          Dst:             ofpbuf_uninit
    - functionName:    format_odp_tun_geneve
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4101
      functionLinenumberEnd: 4114
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          81
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - ds_put_format
        - format_geneve_opts
        - nl_attr_get
        - nl_attr_get_size
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:4102,20'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-util.c:4103,36'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:4105,37'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:4107,17'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-util.c:4107,43'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-util.c:4109,23'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-util.c:4109,47'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-util.c:4108,9'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:4113,5'
          Dst:             format_geneve_opts
    - functionName:    format_odp_tun_erspan_opt
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3988
      functionLinenumberEnd: 4022
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          207
      EdgeCount:       39
      CyclomaticComplexity: 11
      functionsReached:
        - ds_chomp
        - ds_put_format
        - format_u8u
        - format_u8x
        - nl_attr_get
        - ntohl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:3992,12'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:3993,24'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:4000,5'
          Dst:             format_u8u
        - Src:             'lib/odp-util.c:4005,27'
          Dst:             ntohl
        - Src:             'lib/odp-util.c:4006,27'
          Dst:             ntohl
        - Src:             'lib/odp-util.c:4004,13'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:4008,50'
          Dst:             ntohl
        - Src:             'lib/odp-util.c:4008,13'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:4018,9'
          Dst:             format_u8u
        - Src:             'lib/odp-util.c:4019,9'
          Dst:             format_u8x
        - Src:             'lib/odp-util.c:4021,5'
          Dst:             ds_chomp
    - functionName:    format_odp_tun_gtpu_opt
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4028
      functionLinenumberEnd: 4038
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          84
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - ds_chomp
        - format_u8u
        - format_u8x
        - nl_attr_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:4031,12'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:4032,24'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:4034,5'
          Dst:             format_u8x
        - Src:             'lib/odp-util.c:4035,5'
          Dst:             format_u8u
        - Src:             'lib/odp-util.c:4037,5'
          Dst:             ds_chomp
    - functionName:    format_unknown_key
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3915
      functionLinenumberEnd: 3923
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          49
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - ds_put_char
        - ds_put_cstr
        - ds_put_format
        - format_generic_odp_key
        - nl_attr_type
        - odp_mask_attr_is_exact
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:3916,33'
          Dst:             nl_attr_type
        - Src:             'lib/odp-util.c:3916,5'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:3917,5'
          Dst:             format_generic_odp_key
        - Src:             'lib/odp-util.c:3918,16'
          Dst:             odp_mask_attr_is_exact
        - Src:             'lib/odp-util.c:3919,9'
          Dst:             ds_put_char
        - Src:             'lib/odp-util.c:3920,9'
          Dst:             format_generic_odp_key
        - Src:             'lib/odp-util.c:3922,5'
          Dst:             ds_put_cstr
    - functionName:    format_tun_flags
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3851
      functionLinenumberEnd: 3865
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - short
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          91
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - ds_put_char
        - ds_put_cstr
        - flow_tun_flag_to_string
        - format_flags
        - format_flags_masked
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:3855,9'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:3856,9'
          Dst:             ds_put_char
        - Src:             'lib/odp-util.c:3858,13'
          Dst:             format_flags_masked
        - Src:             'lib/odp-util.c:3858,13'
          Dst:             flow_tun_flag_to_string
        - Src:             'lib/odp-util.c:3861,13'
          Dst:             format_flags
        - Src:             'lib/odp-util.c:3861,13'
          Dst:             flow_tun_flag_to_string
        - Src:             'lib/odp-util.c:3863,9'
          Dst:             ds_put_cstr
    - functionName:    format_geneve_opts
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4046
      functionLinenumberEnd: 4095
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         45
      ICount:          269
      EdgeCount:       60
      CyclomaticComplexity: 17
      functionsReached:
        - ds_chomp
        - ds_put_char
        - ds_put_format
        - ds_put_hex
        - format_be16x
        - format_u8u
        - format_u8x
        - is_all_ones
        - is_all_zeros
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:4052,13'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:4067,13'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:4072,9'
          Dst:             ds_put_char
        - Src:             'lib/odp-util.c:4073,9'
          Dst:             format_be16x
        - Src:             'lib/odp-util.c:4075,9'
          Dst:             format_u8x
        - Src:             'lib/odp-util.c:4076,9'
          Dst:             format_u8u
        - Src:             'lib/odp-util.c:4078,35'
          Dst:             is_all_zeros
        - Src:             'lib/odp-util.c:4079,13'
          Dst:             ds_put_hex
        - Src:             'lib/odp-util.c:4080,26'
          Dst:             is_all_ones
        - Src:             'lib/odp-util.c:4081,17'
          Dst:             ds_put_char
        - Src:             'lib/odp-util.c:4082,17'
          Dst:             ds_put_hex
        - Src:             'lib/odp-util.c:4085,13'
          Dst:             ds_chomp
        - Src:             'lib/odp-util.c:4087,9'
          Dst:             ds_put_char
    - functionName:    odp_decode_gbp_raw
      functionSourceFile: '/src/openvswitch/lib/odp-util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 386
      functionLinenumberEnd: 389
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htons
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.h:387,11'
          Dst:             htons
    - functionName:    get_32aligned_be64
      functionSourceFile: '/src/openvswitch/lib/unaligned.h'
      linkageType:     InternalLinkage
      functionLinenumber: 270
      functionLinenumberEnd: 274
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    htonll
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 30
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byte-order.h:30,12'
          Dst:             htonl
        - Src:             'lib/byte-order.h:30,44'
          Dst:             htonl
        - Src:             'lib/byte-order.h:30,62'
          Dst:             htonl
    - functionName:    ntohll
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
        - ntohl
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byte-order.h:36,12'
          Dst:             htonl
        - Src:             'lib/byte-order.h:36,44'
          Dst:             ntohl
        - Src:             'lib/byte-order.h:36,62'
          Dst:             ntohl
    - functionName:    ipv6_mask_is_any
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1193
      functionLinenumberEnd: 1194
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ipv6_addr_equals
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:1194,12'
          Dst:             ipv6_addr_equals
    - functionName:    ipv6_mask_is_exact
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1197
      functionLinenumberEnd: 1198
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ipv6_addr_equals
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:1198,12'
          Dst:             ipv6_addr_equals
    - functionName:    get_32aligned_u128
      functionSourceFile: '/src/openvswitch/lib/unaligned.h'
      linkageType:     InternalLinkage
      functionLinenumber: 223
      functionLinenumberEnd: 229
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          33
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_u128_is_zero
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 488
      functionLinenumberEnd: 489
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hton128
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 48
      functionLinenumberEnd: 53
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonll
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byte-order.h:51,19'
          Dst:             htonll
        - Src:             'lib/byte-order.h:52,19'
          Dst:             htonll
    - functionName:    ovs_u128_is_ones
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 495
      functionLinenumberEnd: 496
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_u128_equals
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.h:496,12'
          Dst:             ovs_u128_equals
    - functionName:    ovs_u128_equals
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 481
      functionLinenumberEnd: 482
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          37
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    check_expectations
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7057
      functionLinenumberEnd: 7078
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - size_t
        - int
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          76
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - log_odp_key_attributes
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:7064,9'
          Dst:             log_odp_key_attributes
        - Src:             'lib/odp-util.c:7072,9'
          Dst:             log_odp_key_attributes
    - functionName:    parse_l2_5_onward
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7164
      functionLinenumberEnd: 7463
      functionDepth:   0
      returnType:      int
      argCount:        10
      argTypes:
        - 'N/A'
        - size_t
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         255
      ICount:          1465
      EdgeCount:       343
      CyclomaticComplexity: 90
      functionsReached:
        - check_expectations
        - eth_type_mpls
        - htonl
        - htons
        - is_all_zeros
        - is_nd
        - nl_attr_get
        - nl_attr_get_be16
        - nl_attr_get_size
        - ntohs
        - odp_nsh_key_from_attr__
        - odp_parse_error
        - put_arp_key
        - put_ipv4_key
        - put_ipv6_key
        - put_tp_key
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:7171,9'
          Dst:             eth_type_mpls
        - Src:             'lib/odp-util.c:7176,27'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-util.c:7177,40'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:7182,17'
          Dst:             odp_parse_error
        - Src:             'lib/odp-util.c:7187,55'
          Dst:             htons
        - Src:             'lib/odp-util.c:7190,33'
          Dst:             ntohs
        - Src:             'lib/odp-util.c:7188,17'
          Dst:             odp_parse_error
        - Src:             'lib/odp-util.c:7204,45'
          Dst:             htonl
        - Src:             'lib/odp-util.c:7205,25'
          Dst:             odp_parse_error
        - Src:             'lib/odp-util.c:7213,50'
          Dst:             htonl
        - Src:             'lib/odp-util.c:7220,37'
          Dst:             htons
        - Src:             'lib/odp-util.c:7227,24'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:7228,13'
          Dst:             put_ipv4_key
        - Src:             'lib/odp-util.c:7230,17'
          Dst:             odp_parse_error
        - Src:             'lib/odp-util.c:7241,37'
          Dst:             htons
        - Src:             'lib/odp-util.c:7248,24'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:7249,13'
          Dst:             put_ipv6_key
        - Src:             'lib/odp-util.c:7251,17'
          Dst:             odp_parse_error
        - Src:             'lib/odp-util.c:7261,37'
          Dst:             htons
        - Src:             'lib/odp-util.c:7262,37'
          Dst:             htons
        - Src:             'lib/odp-util.c:7269,23'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:7270,48'
          Dst:             htons
        - Src:             'lib/odp-util.c:7273,40'
          Dst:             ntohs
        - Src:             'lib/odp-util.c:7271,17'
          Dst:             odp_parse_error
        - Src:             'lib/odp-util.c:7276,13'
          Dst:             put_arp_key
        - Src:             'lib/odp-util.c:7283,37'
          Dst:             htons
        - Src:             'lib/odp-util.c:7288,17'
          Dst:             odp_nsh_key_from_attr__
        - Src:             'lib/odp-util.c:7294,31'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:7295,29'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-util.c:7303,14'
          Dst:             is_all_zeros
        - Src:             'lib/odp-util.c:7304,30'
          Dst:             htons
        - Src:             'lib/odp-util.c:7307,29'
          Dst:             ntohs
        - Src:             'lib/odp-util.c:7308,29'
          Dst:             ntohs
        - Src:             'lib/odp-util.c:7305,13'
          Dst:             odp_parse_error
        - Src:             'lib/odp-util.c:7317,34'
          Dst:             htons
        - Src:             'lib/odp-util.c:7318,34'
          Dst:             htons
        - Src:             'lib/odp-util.c:7326,23'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:7327,13'
          Dst:             put_tp_key
        - Src:             'lib/odp-util.c:7332,31'
          Dst:             nl_attr_get_be16
        - Src:             'lib/odp-util.c:7335,41'
          Dst:             htons
        - Src:             'lib/odp-util.c:7336,41'
          Dst:             htons
        - Src:             'lib/odp-util.c:7344,23'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:7345,13'
          Dst:             put_tp_key
        - Src:             'lib/odp-util.c:7349,41'
          Dst:             htons
        - Src:             'lib/odp-util.c:7350,41'
          Dst:             htons
        - Src:             'lib/odp-util.c:7358,24'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:7359,13'
          Dst:             put_tp_key
        - Src:             'lib/odp-util.c:7363,40'
          Dst:             htons
        - Src:             'lib/odp-util.c:7371,24'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:7372,28'
          Dst:             htons
        - Src:             'lib/odp-util.c:7373,28'
          Dst:             htons
        - Src:             'lib/odp-util.c:7377,40'
          Dst:             htons
        - Src:             'lib/odp-util.c:7385,26'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:7386,28'
          Dst:             htons
        - Src:             'lib/odp-util.c:7387,28'
          Dst:             htons
        - Src:             'lib/odp-util.c:7389,17'
          Dst:             is_nd
        - Src:             'lib/odp-util.c:7396,30'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:7405,30'
          Dst:             is_all_zeros
        - Src:             'lib/odp-util.c:7406,45'
          Dst:             htons
        - Src:             'lib/odp-util.c:7411,45'
          Dst:             ntohs
        - Src:             'lib/odp-util.c:7407,29'
          Dst:             odp_parse_error
        - Src:             'lib/odp-util.c:7427,25'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:7429,39'
          Dst:             htons
        - Src:             'lib/odp-util.c:7437,30'
          Dst:             is_all_zeros
        - Src:             'lib/odp-util.c:7438,46'
          Dst:             htons
        - Src:             'lib/odp-util.c:7439,46'
          Dst:             htons
        - Src:             'lib/odp-util.c:7452,13'
          Dst:             odp_parse_error
        - Src:             'lib/odp-util.c:7461,25'
          Dst:             check_expectations
    - functionName:    eth_type_mpls
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 423
      functionLinenumberEnd: 425
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htons
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:424,24'
          Dst:             htons
        - Src:             'lib/packets.h:425,21'
          Dst:             htons
    - functionName:    odp_parse_error
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3175
      functionLinenumberEnd: 3193
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          87
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - vlog
        - vlog_should_drop
        - xvasprintf
      functionUses:    21
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:3181,19'
          Dst:             xvasprintf
        - Src:             'lib/odp-util.c:3183,17'
          Dst:             vlog_should_drop
        - Src:             'lib/odp-util.c:3186,23'
          Dst:             xvasprintf
        - Src:             'lib/odp-util.c:3189,9'
          Dst:             vlog
    - functionName:    odp_nsh_key_from_attr__
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3204
      functionLinenumberEnd: 3286
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         47
      ICount:          336
      EdgeCount:       60
      CyclomaticComplexity: 15
      functionsReached:
        - nl_attr_get
        - nl_attr_get_size
        - nl_attr_is_valid
        - nl_attr_len_pad
        - nl_attr_next
        - nl_attr_type
        - odp_key_attr_len
        - odp_parse_error
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/odp-util.c:3234,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/odp-util.c:3215,5'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:3215,5'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-util.c:3215,5'
          Dst:             nl_attr_is_valid
        - Src:             'lib/odp-util.c:3216,25'
          Dst:             nl_attr_type
        - Src:             'lib/odp-util.c:3217,22'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-util.c:3218,28'
          Dst:             odp_key_attr_len
        - Src:             'lib/odp-util.c:3225,17'
          Dst:             odp_parse_error
        - Src:             'lib/odp-util.c:3238,51'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:3255,49'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:3215,5'
          Dst:             nl_attr_len_pad
        - Src:             'lib/odp-util.c:3215,5'
          Dst:             nl_attr_next
        - Src:             'lib/odp-util.c:3279,9'
          Dst:             odp_parse_error
    - functionName:    is_nd
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1119
      functionLinenumberEnd: 1135
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          98
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - htons
        - is_icmpv6
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:1120,9'
          Dst:             is_icmpv6
        - Src:             'lib/flow.h:1124,29'
          Dst:             htons
        - Src:             'lib/flow.h:1131,33'
          Dst:             htons
        - Src:             'lib/flow.h:1132,33'
          Dst:             htons
    - functionName:    is_icmpv6
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1107
      functionLinenumberEnd: 1115
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          53
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - get_dl_type
        - htons
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:1108,9'
          Dst:             get_dl_type
        - Src:             'lib/flow.h:1108,30'
          Dst:             htons
    - functionName:    parse_8021q_onward
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7473
      functionLinenumberEnd: 7570
      functionDepth:   0
      returnType:      int
      argCount:        10
      argTypes:
        - 'N/A'
        - size_t
        - int
        - size_t
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         66
      ICount:          426
      EdgeCount:       88
      CyclomaticComplexity: 24
      functionsReached:
        - check_expectations
        - eth_type_vlan
        - htons
        - nl_attr_get
        - nl_attr_get_be16
        - nl_attr_get_size
        - ntohs
        - odp_parse_error
        - parse_ethertype
        - parse_flow_nlattrs
        - parse_l2_5_onward
        - vlog
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:7486,46'
          Dst:             htons
        - Src:             'lib/odp-util.c:7487,15'
          Dst:             eth_type_vlan
        - Src:             'lib/odp-util.c:7504,19'
          Dst:             check_expectations
        - Src:             'lib/odp-util.c:7510,25'
          Dst:             htons
        - Src:             'lib/odp-util.c:7513,27'
          Dst:             nl_attr_get_be16
        - Src:             'lib/odp-util.c:7514,27'
          Dst:             htons
        - Src:             'lib/odp-util.c:7519,51'
          Dst:             htons
        - Src:             'lib/odp-util.c:7521,51'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-util.c:7525,52'
          Dst:             htons
        - Src:             'lib/odp-util.c:7528,47'
          Dst:             ntohs
        - Src:             'lib/odp-util.c:7526,17'
          Dst:             odp_parse_error
        - Src:             'lib/odp-util.c:7538,33'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:7538,53'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-util.c:7538,14'
          Dst:             parse_flow_nlattrs
        - Src:             'lib/odp-util.c:7548,13'
          Dst:             vlog
        - Src:             'lib/odp-util.c:7553,14'
          Dst:             parse_ethertype
        - Src:             'lib/odp-util.c:7557,25'
          Dst:             parse_l2_5_onward
        - Src:             'lib/odp-util.c:7568,12'
          Dst:             check_expectations
    - functionName:    eth_type_vlan
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 429
      functionLinenumberEnd: 431
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htons
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:430,24'
          Dst:             htons
        - Src:             'lib/packets.h:431,21'
          Dst:             htons
    - functionName:    parse_flow_nlattrs
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7001
      functionLinenumberEnd: 7051
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          169
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - nl_attr_get_size
        - nl_attr_is_valid
        - nl_attr_len_pad
        - nl_attr_next
        - nl_attr_type
        - odp_key_attr_len
        - odp_parse_error
        - ovs_key_attr_to_string
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:7010,5'
          Dst:             nl_attr_is_valid
        - Src:             'lib/odp-util.c:7011,25'
          Dst:             nl_attr_type
        - Src:             'lib/odp-util.c:7012,22'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-util.c:7013,28'
          Dst:             odp_key_attr_len
        - Src:             'lib/odp-util.c:7021,29'
          Dst:             ovs_key_attr_to_string
        - Src:             'lib/odp-util.c:7019,13'
          Dst:             odp_parse_error
        - Src:             'lib/odp-util.c:7035,33'
          Dst:             ovs_key_attr_to_string
        - Src:             'lib/odp-util.c:7033,17'
          Dst:             odp_parse_error
        - Src:             'lib/odp-util.c:7010,5'
          Dst:             nl_attr_len_pad
        - Src:             'lib/odp-util.c:7010,5'
          Dst:             nl_attr_next
        - Src:             'lib/odp-util.c:7045,9'
          Dst:             odp_parse_error
    - functionName:    parse_ethertype
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7096
      functionLinenumberEnd: 7139
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         36
      ICount:          219
      EdgeCount:       48
      CyclomaticComplexity: 14
      functionsReached:
        - htonl
        - htons
        - nl_attr_get_be16
        - ntohs
        - odp_parse_error
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:7101,25'
          Dst:             nl_attr_get_be16
        - Src:             'lib/odp-util.c:7102,25'
          Dst:             ntohs
        - Src:             'lib/odp-util.c:7105,29'
          Dst:             ntohs
        - Src:             'lib/odp-util.c:7103,13'
          Dst:             odp_parse_error
        - Src:             'lib/odp-util.c:7108,24'
          Dst:             ntohs
        - Src:             'lib/odp-util.c:7109,30'
          Dst:             htons
        - Src:             'lib/odp-util.c:7112,29'
          Dst:             ntohs
        - Src:             'lib/odp-util.c:7112,55'
          Dst:             ntohs
        - Src:             'lib/odp-util.c:7110,13'
          Dst:             odp_parse_error
        - Src:             'lib/odp-util.c:7120,33'
          Dst:             htons
        - Src:             'lib/odp-util.c:7122,33'
          Dst:             htons
        - Src:             'lib/odp-util.c:7124,33'
          Dst:             htons
        - Src:             'lib/odp-util.c:7126,33'
          Dst:             htons
        - Src:             'lib/odp-util.c:7128,45'
          Dst:             htonl
        - Src:             'lib/odp-util.c:7130,29'
          Dst:             htons
        - Src:             'lib/odp-util.c:7131,20'
          Dst:             ntohs
        - Src:             'lib/odp-util.c:7133,13'
          Dst:             odp_parse_error
    - functionName:    put_ethernet_key
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8196
      functionLinenumberEnd: 8199
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    odp_encode_gbp_raw
      functionSourceFile: '/src/openvswitch/lib/odp-util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 392
      functionLinenumberEnd: 393
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - char
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.h:393,28'
          Dst:             ntohs
    - functionName:    dl_type_is_ip_any
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1256
      functionLinenumberEnd: 1258
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htons
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:1257,23'
          Dst:             htons
        - Src:             'lib/packets.h:1258,23'
          Dst:             htons
    - functionName:    get_tp_key
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8761
      functionLinenumberEnd: 8764
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          20
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    is_ip_any
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1059
      functionLinenumberEnd: 1060
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dl_type_is_ip_any
        - get_dl_type
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:1060,30'
          Dst:             get_dl_type
        - Src:             'lib/flow.h:1060,12'
          Dst:             dl_type_is_ip_any
    - functionName:    get_ethernet_key
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8189
      functionLinenumberEnd: 8192
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    flow_tnl_src_is_set
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 58
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ipv6_addr_is_set
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:58,27'
          Dst:             ipv6_addr_is_set
    - functionName:    ovs_frag_type_from_string
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4966
      functionLinenumberEnd: 4977
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          59
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - strcasecmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:4967,10'
          Dst:             strcasecmp
        - Src:             'lib/odp-util.c:4969,17'
          Dst:             strcasecmp
        - Src:             'lib/odp-util.c:4971,17'
          Dst:             strcasecmp
    - functionName:    set_be32_bf
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5409
      functionLinenumberEnd: 5418
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - char
        - char
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          61
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
        - ntohl
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:5416,18'
          Dst:             ntohl
        - Src:             'lib/odp-util.c:5416,11'
          Dst:             htonl
    - functionName:    scan_be32_bf
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5423
      functionLinenumberEnd: 5446
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - char
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          100
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - htonl
        - ovs_scan
        - set_be32_bf
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:5427,9'
          Dst:             ovs_scan
        - Src:             'lib/odp-util.c:5430,13'
          Dst:             set_be32_bf
        - Src:             'lib/odp-util.c:5432,21'
          Dst:             ovs_scan
        - Src:             'lib/odp-util.c:5435,26'
          Dst:             set_be32_bf
        - Src:             'lib/odp-util.c:5439,30'
          Dst:             htonl
    - functionName:    set_be16_bf
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5349
      functionLinenumberEnd: 5358
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - char
        - char
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          67
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htons
        - ntohs
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:5356,18'
          Dst:             ntohs
        - Src:             'lib/odp-util.c:5356,11'
          Dst:             htons
    - functionName:    scan_be16_bf
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5363
      functionLinenumberEnd: 5386
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - char
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          104
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - htons
        - ovs_scan
        - set_be16_bf
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:5367,9'
          Dst:             ovs_scan
        - Src:             'lib/odp-util.c:5370,13'
          Dst:             set_be16_bf
        - Src:             'lib/odp-util.c:5372,21'
          Dst:             ovs_scan
        - Src:             'lib/odp-util.c:5375,26'
          Dst:             set_be16_bf
        - Src:             'lib/odp-util.c:5379,30'
          Dst:             htons
    - functionName:    parse_odp_nsh_key_mask_attr
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6007
      functionLinenumberEnd: 6130
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         81
      ICount:          515
      EdgeCount:       113
      CyclomaticComplexity: 34
      functionsReached:
        - nsh_key_to_attr
        - nsh_spi_si_to_path_hdr
        - scan_be32
        - scan_u32
        - scan_u8
        - strncmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:6008,9'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6022,17'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6024,23'
          Dst:             scan_u8
        - Src:             'lib/odp-util.c:6032,17'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6034,23'
          Dst:             scan_u8
        - Src:             'lib/odp-util.c:6042,17'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6044,23'
          Dst:             scan_u8
        - Src:             'lib/odp-util.c:6052,17'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6054,23'
          Dst:             scan_u32
        - Src:             'lib/odp-util.c:6062,17'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6064,23'
          Dst:             scan_u8
        - Src:             'lib/odp-util.c:6072,17'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6074,23'
          Dst:             scan_be32
        - Src:             'lib/odp-util.c:6083,17'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6085,23'
          Dst:             scan_be32
        - Src:             'lib/odp-util.c:6094,17'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6096,23'
          Dst:             scan_be32
        - Src:             'lib/odp-util.c:6105,17'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6107,23'
          Dst:             scan_be32
        - Src:             'lib/odp-util.c:6120,25'
          Dst:             nsh_spi_si_to_path_hdr
        - Src:             'lib/odp-util.c:6121,26'
          Dst:             nsh_spi_si_to_path_hdr
        - Src:             'lib/odp-util.c:6123,9'
          Dst:             nsh_key_to_attr
        - Src:             'lib/odp-util.c:6125,13'
          Dst:             nsh_key_to_attr
    - functionName:    scan_u8
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5074
      functionLinenumberEnd: 5090
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          64
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - ovs_scan
      functionUses:    27
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:5077,9'
          Dst:             ovs_scan
        - Src:             'lib/odp-util.c:5081,17'
          Dst:             ovs_scan
    - functionName:    scan_u32
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5114
      functionLinenumberEnd: 5130
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          64
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - ovs_scan
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:5117,9'
          Dst:             ovs_scan
        - Src:             'lib/odp-util.c:5121,17'
          Dst:             ovs_scan
    - functionName:    scan_be32
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5157
      functionLinenumberEnd: 5176
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          72
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - htonl
        - ovs_scan
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:5161,9'
          Dst:             ovs_scan
        - Src:             'lib/odp-util.c:5164,16'
          Dst:             htonl
        - Src:             'lib/odp-util.c:5166,17'
          Dst:             ovs_scan
        - Src:             'lib/odp-util.c:5168,25'
          Dst:             htonl
    - functionName:    nsh_spi_si_to_path_hdr
      functionSourceFile: '/src/openvswitch/./include/openvswitch/nsh.h'
      linkageType:     InternalLinkage
      functionLinenumber: 365
      functionLinenumberEnd: 366
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/nsh.h:366,12'
          Dst:             htonl
    - functionName:    scan_tcp_flags
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5221
      functionLinenumberEnd: 5235
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          73
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - htons
        - ntohs
        - packet_tcp_flag_to_string
        - parse_odp_flags
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:5226,25'
          Dst:             ntohs
        - Src:             'lib/odp-util.c:5225,9'
          Dst:             parse_odp_flags
        - Src:             'lib/odp-util.c:5225,9'
          Dst:             packet_tcp_flag_to_string
        - Src:             'lib/odp-util.c:5228,16'
          Dst:             htons
        - Src:             'lib/odp-util.c:5230,21'
          Dst:             htons
    - functionName:    parse_odp_flags
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 431
      functionLinenumberEnd: 433
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - parse_flags
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:432,12'
          Dst:             parse_flags
    - functionName:    scan_ipv6_label
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5049
      functionLinenumberEnd: 5070
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          93
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - htonl
        - ovs_scan
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:5053,9'
          Dst:             ovs_scan
        - Src:             'lib/odp-util.c:5057,16'
          Dst:             htonl
        - Src:             'lib/odp-util.c:5059,17'
          Dst:             ovs_scan
        - Src:             'lib/odp-util.c:5062,25'
          Dst:             htonl
        - Src:             'lib/odp-util.c:5064,25'
          Dst:             htonl
    - functionName:    scan_frag
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5289
      functionLinenumberEnd: 5305
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          62
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - ovs_frag_type_from_string
        - ovs_scan
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:5294,9'
          Dst:             ovs_scan
        - Src:             'lib/odp-util.c:5295,12'
          Dst:             ovs_frag_type_from_string
    - functionName:    scan_mpls_bos
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5468
      functionLinenumberEnd: 5469
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - scan_be32_bf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:5469,12'
          Dst:             scan_be32_bf
    - functionName:    scan_mpls_ttl
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5462
      functionLinenumberEnd: 5463
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - scan_be32_bf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:5463,12'
          Dst:             scan_be32_bf
    - functionName:    scan_mpls_tc
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5456
      functionLinenumberEnd: 5457
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - scan_be32_bf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:5457,12'
          Dst:             scan_be32_bf
    - functionName:    scan_mpls_label
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5450
      functionLinenumberEnd: 5451
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - scan_be32_bf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:5451,12'
          Dst:             scan_be32_bf
    - functionName:    scan_cfi
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5402
      functionLinenumberEnd: 5403
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - scan_be16_bf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:5403,12'
          Dst:             scan_be16_bf
    - functionName:    scan_pcp
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5396
      functionLinenumberEnd: 5397
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - scan_be16_bf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:5397,12'
          Dst:             scan_be16_bf
    - functionName:    scan_vid
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5390
      functionLinenumberEnd: 5391
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - scan_be16_bf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:5391,12'
          Dst:             scan_be16_bf
    - functionName:    scan_eth
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4983
      functionLinenumberEnd: 5001
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          98
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - ovs_scan
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:4986,9'
          Dst:             ovs_scan
        - Src:             'lib/odp-util.c:4991,17'
          Dst:             ovs_scan
    - functionName:    scan_port
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5310
      functionLinenumberEnd: 5340
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          114
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - ovs_scan
        - simap_find_len
        - strcspn
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:5313,9'
          Dst:             ovs_scan
        - Src:             'lib/odp-util.c:5317,17'
          Dst:             ovs_scan
        - Src:             'lib/odp-util.c:5328,15'
          Dst:             strcspn
        - Src:             'lib/odp-util.c:5329,16'
          Dst:             simap_find_len
    - functionName:    tun_flags_to_attr
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5753
      functionLinenumberEnd: 5765
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          69
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - nl_msg_put_flag
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:5757,9'
          Dst:             nl_msg_put_flag
        - Src:             'lib/odp-util.c:5760,9'
          Dst:             nl_msg_put_flag
        - Src:             'lib/odp-util.c:5763,9'
          Dst:             nl_msg_put_flag
    - functionName:    scan_tun_flags
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5203
      functionLinenumberEnd: 5217
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          83
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - flow_tun_flag_to_string
        - parse_odp_flags
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:5207,9'
          Dst:             parse_odp_flags
        - Src:             'lib/odp-util.c:5207,9'
          Dst:             flow_tun_flag_to_string
    - functionName:    gtpu_to_attr
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5801
      functionLinenumberEnd: 5806
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_msg_put_unspec
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:5804,5'
          Dst:             nl_msg_put_unspec
    - functionName:    scan_gtpu_metadata
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5519
      functionLinenumberEnd: 5557
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          187
      EdgeCount:       38
      CyclomaticComplexity: 11
      functionsReached:
        - scan_u8
        - strncmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:5525,10'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:5527,15'
          Dst:             scan_u8
        - Src:             'lib/odp-util.c:5538,10'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:5540,15'
          Dst:             scan_u8
        - Src:             'lib/odp-util.c:5547,10'
          Dst:             strncmp
    - functionName:    geneve_to_attr
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5783
      functionLinenumberEnd: 5788
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_msg_put_unspec
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:5786,5'
          Dst:             nl_msg_put_unspec
    - functionName:    vxlan_gbp_to_attr
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5769
      functionLinenumberEnd: 5779
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - nl_msg_end_nested
        - nl_msg_put_u32
        - nl_msg_start_nested
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:5775,26'
          Dst:             nl_msg_start_nested
        - Src:             'lib/odp-util.c:5776,9'
          Dst:             nl_msg_put_u32
        - Src:             'lib/odp-util.c:5777,9'
          Dst:             nl_msg_end_nested
    - functionName:    scan_vxlan_gbp
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5474
      functionLinenumberEnd: 5513
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          189
      EdgeCount:       37
      CyclomaticComplexity: 11
      functionsReached:
        - ntohs
        - scan_be16
        - scan_u8
        - strncmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:5480,10'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:5482,15'
          Dst:             scan_be16
        - Src:             'lib/odp-util.c:5492,10'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:5494,15'
          Dst:             scan_u8
        - Src:             'lib/odp-util.c:5501,10'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:5504,32'
          Dst:             ntohs
        - Src:             'lib/odp-util.c:5506,42'
          Dst:             ntohs
    - functionName:    scan_be16
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5134
      functionLinenumberEnd: 5153
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          72
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - htons
        - ovs_scan
      functionUses:    18
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:5138,9'
          Dst:             ovs_scan
        - Src:             'lib/odp-util.c:5141,16'
          Dst:             htons
        - Src:             'lib/odp-util.c:5143,17'
          Dst:             ovs_scan
        - Src:             'lib/odp-util.c:5145,25'
          Dst:             htons
    - functionName:    erspan_to_attr
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5792
      functionLinenumberEnd: 5797
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_msg_put_unspec
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:5795,5'
          Dst:             nl_msg_put_unspec
    - functionName:    scan_erspan_metadata
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5563
      functionLinenumberEnd: 5638
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         59
      ICount:          403
      EdgeCount:       79
      CyclomaticComplexity: 22
      functionsReached:
        - htonl
        - scan_u32
        - scan_u8
        - strncmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:5570,10'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:5572,15'
          Dst:             scan_u8
        - Src:             'lib/odp-util.c:5584,14'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:5586,19'
          Dst:             scan_u32
        - Src:             'lib/odp-util.c:5593,14'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:5596,28'
          Dst:             htonl
        - Src:             'lib/odp-util.c:5598,33'
          Dst:             htonl
        - Src:             'lib/odp-util.c:5604,14'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:5606,19'
          Dst:             scan_u8
        - Src:             'lib/odp-util.c:5615,14'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:5617,19'
          Dst:             scan_u8
        - Src:             'lib/odp-util.c:5624,14'
          Dst:             strncmp
    - functionName:    scan_be64
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5180
      functionLinenumberEnd: 5199
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          72
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - htonll
        - ovs_scan
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:5184,9'
          Dst:             ovs_scan
        - Src:             'lib/odp-util.c:5187,16'
          Dst:             htonll
        - Src:             'lib/odp-util.c:5189,17'
          Dst:             ovs_scan
        - Src:             'lib/odp-util.c:5191,25'
          Dst:             htonll
    - functionName:    scan_in6_addr
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5026
      functionLinenumberEnd: 5045
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          87
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - inet_pton
        - ovs_scan
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:5030,9'
          Dst:             ovs_scan
        - Src:             'lib/odp-util.c:5031,12'
          Dst:             inet_pton
        - Src:             'lib/odp-util.c:5035,17'
          Dst:             ovs_scan
        - Src:             'lib/odp-util.c:5036,20'
          Dst:             inet_pton
    - functionName:    scan_ipv4
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5005
      functionLinenumberEnd: 5022
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          82
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - ovs_scan
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:5008,9'
          Dst:             ovs_scan
        - Src:             'lib/odp-util.c:5012,17'
          Dst:             ovs_scan
    - functionName:    scan_u16
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5094
      functionLinenumberEnd: 5110
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          64
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - ovs_scan
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:5097,9'
          Dst:             ovs_scan
        - Src:             'lib/odp-util.c:5101,17'
          Dst:             ovs_scan
    - functionName:    scan_ct_state
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5269
      functionLinenumberEnd: 5285
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          67
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - odp_ct_state_to_string
        - ovs_to_odp_ct_state
        - parse_flags
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:5274,21'
          Dst:             ovs_to_odp_ct_state
        - Src:             'lib/odp-util.c:5273,9'
          Dst:             parse_flags
        - Src:             'lib/odp-util.c:5273,9'
          Dst:             odp_ct_state_to_string
    - functionName:    ovs_to_odp_ct_state
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5239
      functionLinenumberEnd: 5249
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ''
      BBCount:         25
      ICount:          145
      EdgeCount:       32
      CyclomaticComplexity: 9
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    parse_odp_key_mask_attr__
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6154
      functionLinenumberEnd: 6349
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         1129
      ICount:          7111
      EdgeCount:       1561
      CyclomaticComplexity: 434
      functionsReached:
        - htons
        - nl_attr_oversized
        - nl_msg_end_nested
        - nl_msg_put_unspec
        - nl_msg_start_nested
        - parse_odp_key_mask_attr
        - parse_odp_nsh_key_mask_attr
        - scan_be16
        - scan_be32
        - scan_be64
        - scan_cfi
        - scan_ct_state
        - scan_erspan_metadata
        - scan_eth
        - scan_frag
        - scan_geneve
        - scan_gtpu_metadata
        - scan_in6_addr
        - scan_ipv4
        - scan_ipv6_label
        - scan_mpls_bos
        - scan_mpls_label
        - scan_mpls_tc
        - scan_mpls_ttl
        - scan_pcp
        - scan_port
        - scan_tcp_flags
        - scan_tun_flags
        - scan_u128
        - scan_u16
        - scan_u32
        - scan_u8
        - scan_vid
        - scan_vxlan_gbp
        - strncmp
        - strspn
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:6155,5'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6155,5'
          Dst:             scan_u32
        - Src:             'lib/odp-util.c:6155,5'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6155,5'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6156,5'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6156,5'
          Dst:             scan_u32
        - Src:             'lib/odp-util.c:6156,5'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6156,5'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6157,5'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6157,5'
          Dst:             scan_u32
        - Src:             'lib/odp-util.c:6157,5'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6157,5'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6159,5'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6159,5'
          Dst:             scan_u32
        - Src:             'lib/odp-util.c:6159,5'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6159,5'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6161,5'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6161,5'
          Dst:             scan_ct_state
        - Src:             'lib/odp-util.c:6161,5'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6161,5'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6162,5'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6162,5'
          Dst:             scan_u16
        - Src:             'lib/odp-util.c:6162,5'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6162,5'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6163,5'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6163,5'
          Dst:             scan_u32
        - Src:             'lib/odp-util.c:6163,5'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6163,5'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6164,5'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6164,5'
          Dst:             scan_u128
        - Src:             'lib/odp-util.c:6164,5'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6164,5'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6166,5'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6167,9'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6167,9'
          Dst:             scan_ipv4
        - Src:             'lib/odp-util.c:6168,9'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6168,9'
          Dst:             scan_ipv4
        - Src:             'lib/odp-util.c:6169,9'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6169,9'
          Dst:             scan_u8
        - Src:             'lib/odp-util.c:6170,9'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6170,9'
          Dst:             scan_be16
        - Src:             'lib/odp-util.c:6171,9'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6171,9'
          Dst:             scan_be16
        - Src:             'lib/odp-util.c:6172,7'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6172,7'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6174,5'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6175,9'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6175,9'
          Dst:             scan_in6_addr
        - Src:             'lib/odp-util.c:6176,9'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6176,9'
          Dst:             scan_in6_addr
        - Src:             'lib/odp-util.c:6177,9'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6177,9'
          Dst:             scan_u8
        - Src:             'lib/odp-util.c:6178,9'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6178,9'
          Dst:             scan_be16
        - Src:             'lib/odp-util.c:6179,9'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6179,9'
          Dst:             scan_be16
        - Src:             'lib/odp-util.c:6180,7'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6180,7'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6182,5'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6182,5'
          Dst:             nl_msg_start_nested
        - Src:             'lib/odp-util.c:6182,5'
          Dst:             nl_msg_start_nested
        - Src:             'lib/odp-util.c:6183,9'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6183,9'
          Dst:             scan_be64
        - Src:             'lib/odp-util.c:6183,9'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6183,9'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6184,9'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6184,9'
          Dst:             scan_ipv4
        - Src:             'lib/odp-util.c:6184,9'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6184,9'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6185,9'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6185,9'
          Dst:             scan_ipv4
        - Src:             'lib/odp-util.c:6185,9'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6185,9'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6186,9'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6186,9'
          Dst:             scan_in6_addr
        - Src:             'lib/odp-util.c:6186,9'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6186,9'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6187,9'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6187,9'
          Dst:             scan_in6_addr
        - Src:             'lib/odp-util.c:6187,9'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6187,9'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6188,9'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6188,9'
          Dst:             scan_u8
        - Src:             'lib/odp-util.c:6188,9'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6188,9'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6189,9'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6189,9'
          Dst:             scan_u8
        - Src:             'lib/odp-util.c:6189,9'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6189,9'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6190,9'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6190,9'
          Dst:             scan_be16
        - Src:             'lib/odp-util.c:6190,9'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6190,9'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6191,9'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6191,9'
          Dst:             scan_be16
        - Src:             'lib/odp-util.c:6191,9'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6191,9'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6192,9'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6192,9'
          Dst:             scan_erspan_metadata
        - Src:             'lib/odp-util.c:6192,9'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6192,9'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6194,9'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6194,9'
          Dst:             scan_vxlan_gbp
        - Src:             'lib/odp-util.c:6194,9'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6194,9'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6195,9'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6195,9'
          Dst:             scan_geneve
        - Src:             'lib/odp-util.c:6195,9'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6195,9'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6197,9'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6197,9'
          Dst:             scan_gtpu_metadata
        - Src:             'lib/odp-util.c:6197,9'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6197,9'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6199,9'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6199,9'
          Dst:             scan_tun_flags
        - Src:             'lib/odp-util.c:6199,9'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6199,9'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6200,7'
          Dst:             nl_attr_oversized
        - Src:             'lib/odp-util.c:6200,7'
          Dst:             nl_msg_end_nested
        - Src:             'lib/odp-util.c:6200,7'
          Dst:             nl_msg_end_nested
        - Src:             'lib/odp-util.c:6202,5'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6202,5'
          Dst:             scan_port
        - Src:             'lib/odp-util.c:6202,5'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6202,5'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6204,5'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6205,9'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6205,9'
          Dst:             scan_eth
        - Src:             'lib/odp-util.c:6206,9'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6206,9'
          Dst:             scan_eth
        - Src:             'lib/odp-util.c:6207,7'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6207,7'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6209,5'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6209,5'
          Dst:             htons
        - Src:             'lib/odp-util.c:6209,5'
          Dst:             htons
        - Src:             'lib/odp-util.c:6211,9'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6211,9'
          Dst:             scan_vid
        - Src:             'lib/odp-util.c:6212,9'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6212,9'
          Dst:             scan_pcp
        - Src:             'lib/odp-util.c:6213,9'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6213,9'
          Dst:             scan_cfi
        - Src:             'lib/odp-util.c:6214,7'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6214,7'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6216,5'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6216,5'
          Dst:             scan_be16
        - Src:             'lib/odp-util.c:6216,5'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6216,5'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6218,5'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6219,9'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6219,9'
          Dst:             scan_mpls_label
        - Src:             'lib/odp-util.c:6220,9'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6220,9'
          Dst:             scan_mpls_tc
        - Src:             'lib/odp-util.c:6221,9'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6221,9'
          Dst:             scan_mpls_ttl
        - Src:             'lib/odp-util.c:6222,9'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6222,9'
          Dst:             scan_mpls_bos
        - Src:             'lib/odp-util.c:6223,7'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6223,7'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6225,5'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6226,9'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6226,9'
          Dst:             scan_ipv4
        - Src:             'lib/odp-util.c:6227,9'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6227,9'
          Dst:             scan_ipv4
        - Src:             'lib/odp-util.c:6228,9'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6228,9'
          Dst:             scan_u8
        - Src:             'lib/odp-util.c:6229,9'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6229,9'
          Dst:             scan_u8
        - Src:             'lib/odp-util.c:6230,9'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6230,9'
          Dst:             scan_u8
        - Src:             'lib/odp-util.c:6231,9'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6231,9'
          Dst:             scan_frag
        - Src:             'lib/odp-util.c:6232,7'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6232,7'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6234,5'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6235,9'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6235,9'
          Dst:             scan_in6_addr
        - Src:             'lib/odp-util.c:6236,9'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6236,9'
          Dst:             scan_in6_addr
        - Src:             'lib/odp-util.c:6237,9'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6237,9'
          Dst:             scan_ipv6_label
        - Src:             'lib/odp-util.c:6238,9'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6238,9'
          Dst:             scan_u8
        - Src:             'lib/odp-util.c:6239,9'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6239,9'
          Dst:             scan_u8
        - Src:             'lib/odp-util.c:6240,9'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6240,9'
          Dst:             scan_u8
        - Src:             'lib/odp-util.c:6241,9'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6241,9'
          Dst:             scan_frag
        - Src:             'lib/odp-util.c:6242,7'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6242,7'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6244,5'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6245,9'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6245,9'
          Dst:             scan_be16
        - Src:             'lib/odp-util.c:6246,9'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6246,9'
          Dst:             scan_be16
        - Src:             'lib/odp-util.c:6247,7'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6247,7'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6249,5'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6249,5'
          Dst:             scan_tcp_flags
        - Src:             'lib/odp-util.c:6249,5'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6249,5'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6251,5'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6252,9'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6252,9'
          Dst:             scan_be16
        - Src:             'lib/odp-util.c:6253,9'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6253,9'
          Dst:             scan_be16
        - Src:             'lib/odp-util.c:6254,7'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6254,7'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6256,5'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6257,9'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6257,9'
          Dst:             scan_be16
        - Src:             'lib/odp-util.c:6258,9'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6258,9'
          Dst:             scan_be16
        - Src:             'lib/odp-util.c:6259,7'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6259,7'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6261,5'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6262,9'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6262,9'
          Dst:             scan_u8
        - Src:             'lib/odp-util.c:6263,9'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6263,9'
          Dst:             scan_u8
        - Src:             'lib/odp-util.c:6264,7'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6264,7'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6266,5'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6267,9'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6267,9'
          Dst:             scan_u8
        - Src:             'lib/odp-util.c:6268,9'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6268,9'
          Dst:             scan_u8
        - Src:             'lib/odp-util.c:6269,7'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6269,7'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6271,5'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6272,9'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6272,9'
          Dst:             scan_ipv4
        - Src:             'lib/odp-util.c:6273,9'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6273,9'
          Dst:             scan_ipv4
        - Src:             'lib/odp-util.c:6274,9'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6274,9'
          Dst:             scan_be16
        - Src:             'lib/odp-util.c:6275,9'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6275,9'
          Dst:             scan_eth
        - Src:             'lib/odp-util.c:6276,9'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6276,9'
          Dst:             scan_eth
        - Src:             'lib/odp-util.c:6277,7'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6277,7'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6279,5'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6280,9'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6280,9'
          Dst:             scan_in6_addr
        - Src:             'lib/odp-util.c:6281,9'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6281,9'
          Dst:             scan_eth
        - Src:             'lib/odp-util.c:6282,9'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6282,9'
          Dst:             scan_eth
        - Src:             'lib/odp-util.c:6283,7'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6283,7'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6285,5'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6286,9'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6286,9'
          Dst:             scan_be32
        - Src:             'lib/odp-util.c:6287,9'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6287,9'
          Dst:             scan_u8
        - Src:             'lib/odp-util.c:6288,7'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6288,7'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6294,5'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6295,9'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6295,9'
          Dst:             scan_be16
        - Src:             'lib/odp-util.c:6296,9'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6296,9'
          Dst:             scan_be16
        - Src:             'lib/odp-util.c:6297,7'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6297,7'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6300,15'
          Dst:             parse_odp_nsh_key_mask_attr
        - Src:             'lib/odp-util.c:6308,10'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:6312,17'
          Dst:             nl_msg_start_nested
        - Src:             'lib/odp-util.c:6314,26'
          Dst:             nl_msg_start_nested
        - Src:             'lib/odp-util.c:6321,18'
          Dst:             strspn
        - Src:             'lib/odp-util.c:6328,22'
          Dst:             parse_odp_key_mask_attr
        - Src:             'lib/odp-util.c:6333,17'
          Dst:             nl_attr_oversized
        - Src:             'lib/odp-util.c:6340,9'
          Dst:             nl_msg_end_nested
        - Src:             'lib/odp-util.c:6342,13'
          Dst:             nl_msg_end_nested
    - functionName:    scan_u128
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4773
      functionLinenumberEnd: 4802
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          112
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - ntoh128
        - ovs_scan
        - parse_int_string
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:4778,10'
          Dst:             parse_int_string
        - Src:             'lib/odp-util.c:4779,18'
          Dst:             ntoh128
        - Src:             'lib/odp-util.c:4784,17'
          Dst:             ovs_scan
        - Src:             'lib/odp-util.c:4788,25'
          Dst:             parse_int_string
        - Src:             'lib/odp-util.c:4793,25'
          Dst:             ntoh128
    - functionName:    scan_geneve
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5642
      functionLinenumberEnd: 5749
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         86
      ICount:          538
      EdgeCount:       116
      CyclomaticComplexity: 32
      functionsReached:
        - parse_int_string
        - scan_be16
        - scan_u8
        - strncmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:5655,14'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:5657,19'
          Dst:             scan_be16
        - Src:             'lib/odp-util.c:5670,14'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:5672,19'
          Dst:             scan_u8
        - Src:             'lib/odp-util.c:5684,14'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:5687,19'
          Dst:             scan_u8
        - Src:             'lib/odp-util.c:5707,17'
          Dst:             parse_int_string
        - Src:             'lib/odp-util.c:5715,21'
          Dst:             parse_int_string
    - functionName:    parse_odp_key_mask_attr
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6135
      functionLinenumberEnd: 6148
      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:
        - parse_odp_key_mask_attr__
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:6143,18'
          Dst:             parse_odp_key_mask_attr__
    - functionName:    ntoh128
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 58
      functionLinenumberEnd: 63
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohll
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byte-order.h:61,18'
          Dst:             ntohll
        - Src:             'lib/byte-order.h:62,18'
          Dst:             ntohll
    - functionName:    hmap_remove
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 317
      functionLinenumberEnd: 324
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          48
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_insert_fast
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 289
      functionLinenumberEnd: 295
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          38
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_hwid
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1386
      functionLinenumberEnd: 1389
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          36
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_sid
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1375
      functionLinenumberEnd: 1378
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          35
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    scan_ct_nat_range
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2052
      functionLinenumberEnd: 2091
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         44
      ICount:          218
      EdgeCount:       58
      CyclomaticComplexity: 16
      functionsReached:
        - inet_pton
        - ovs_scan_len
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:2053,9'
          Dst:             ovs_scan_len
        - Src:             'lib/odp-util.c:2057,13'
          Dst:             ovs_scan_len
        - Src:             'lib/odp-util.c:2059,17'
          Dst:             ovs_scan_len
        - Src:             'lib/odp-util.c:2060,22'
          Dst:             ovs_scan_len
        - Src:             'lib/odp-util.c:2065,21'
          Dst:             ovs_scan_len
        - Src:             'lib/odp-util.c:2066,24'
          Dst:             ovs_scan_len
        - Src:             'lib/odp-util.c:2067,23'
          Dst:             inet_pton
        - Src:             'lib/odp-util.c:2070,17'
          Dst:             ovs_scan_len
        - Src:             'lib/odp-util.c:2071,22'
          Dst:             ovs_scan_len
        - Src:             'lib/odp-util.c:2072,25'
          Dst:             ovs_scan_len
        - Src:             'lib/odp-util.c:2073,24'
          Dst:             inet_pton
        - Src:             'lib/odp-util.c:2082,13'
          Dst:             ovs_scan_len
        - Src:             'lib/odp-util.c:2083,17'
          Dst:             ovs_scan_len
        - Src:             'lib/odp-util.c:2084,22'
          Dst:             ovs_scan_len
    - functionName:    nl_msg_put_ct_nat
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2164
      functionLinenumberEnd: 2199
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         33
      ICount:          190
      EdgeCount:       43
      CyclomaticComplexity: 12
      functionsReached:
        - memcmp
        - nl_msg_end_nested
        - nl_msg_put_flag
        - nl_msg_put_u16
        - nl_msg_put_unspec
        - nl_msg_start_nested
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:2165,20'
          Dst:             nl_msg_start_nested
        - Src:             'lib/odp-util.c:2168,9'
          Dst:             nl_msg_put_flag
        - Src:             'lib/odp-util.c:2170,9'
          Dst:             nl_msg_put_flag
        - Src:             'lib/odp-util.c:2175,9'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:2177,13'
          Dst:             memcmp
        - Src:             'lib/odp-util.c:2178,13'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:2182,13'
          Dst:             nl_msg_put_u16
        - Src:             'lib/odp-util.c:2184,17'
          Dst:             nl_msg_put_u16
        - Src:             'lib/odp-util.c:2188,13'
          Dst:             nl_msg_put_flag
        - Src:             'lib/odp-util.c:2191,13'
          Dst:             nl_msg_put_flag
        - Src:             'lib/odp-util.c:2194,13'
          Dst:             nl_msg_put_flag
        - Src:             'lib/odp-util.c:2198,5'
          Dst:             nl_msg_end_nested
    - functionName:    scan_ct_nat
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2095
      functionLinenumberEnd: 2160
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         52
      ICount:          286
      EdgeCount:       72
      CyclomaticComplexity: 22
      functionsReached:
        - memcmp
        - ovs_scan_len
        - scan_ct_nat_range
        - strchr
        - strspn
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:2098,9'
          Dst:             ovs_scan_len
        - Src:             'lib/odp-util.c:2101,13'
          Dst:             ovs_scan_len
        - Src:             'lib/odp-util.c:2105,19'
          Dst:             strchr
        - Src:             'lib/odp-util.c:2112,22'
          Dst:             strspn
        - Src:             'lib/odp-util.c:2113,21'
          Dst:             ovs_scan_len
        - Src:             'lib/odp-util.c:2114,31'
          Dst:             scan_ct_nat_range
        - Src:             'lib/odp-util.c:2121,21'
          Dst:             ovs_scan_len
        - Src:             'lib/odp-util.c:2122,31'
          Dst:             scan_ct_nat_range
        - Src:             'lib/odp-util.c:2129,21'
          Dst:             ovs_scan_len
        - Src:             'lib/odp-util.c:2133,21'
          Dst:             ovs_scan_len
        - Src:             'lib/odp-util.c:2137,21'
          Dst:             ovs_scan_len
        - Src:             'lib/odp-util.c:2148,18'
          Dst:             memcmp
        - Src:             'lib/odp-util.c:2149,18'
          Dst:             memcmp
    - functionName:    put_32aligned_be64
      functionSourceFile: '/src/openvswitch/lib/unaligned.h'
      linkageType:     InternalLinkage
      functionLinenumber: 281
      functionLinenumberEnd: 289
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          19
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    u32_to_odp
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 220
      functionLinenumberEnd: 221
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_parse_tnl_push
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1702
      functionLinenumberEnd: 2029
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         120
      ICount:          1058
      EdgeCount:       167
      CyclomaticComplexity: 49
      functionsReached:
        - csum
        - htonl
        - htons
        - inet_pton
        - ovs_scan_len
        - put_16aligned_be32
        - scan_geneve
        - set_hwid
        - set_sid
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:1720,10'
          Dst:             ovs_scan_len
        - Src:             'lib/odp-util.c:1727,10'
          Dst:             ovs_scan_len
        - Src:             'lib/odp-util.c:1735,10'
          Dst:             ovs_scan_len
        - Src:             'lib/odp-util.c:1739,10'
          Dst:             ovs_scan_len
        - Src:             'lib/odp-util.c:1742,21'
          Dst:             htons
        - Src:             'lib/odp-util.c:1744,26'
          Dst:             htons
        - Src:             'lib/odp-util.c:1748,14'
          Dst:             ovs_scan_len
        - Src:             'lib/odp-util.c:1756,9'
          Dst:             put_16aligned_be32
        - Src:             'lib/odp-util.c:1757,9'
          Dst:             put_16aligned_be32
        - Src:             'lib/odp-util.c:1758,27'
          Dst:             htons
        - Src:             'lib/odp-util.c:1761,23'
          Dst:             csum
        - Src:             'lib/odp-util.c:1768,14'
          Dst:             ovs_scan_len
        - Src:             'lib/odp-util.c:1774,16'
          Dst:             inet_pton
        - Src:             'lib/odp-util.c:1775,16'
          Dst:             inet_pton
        - Src:             'lib/odp-util.c:1778,44'
          Dst:             htonl
        - Src:             'lib/odp-util.c:1779,28'
          Dst:             htonl
        - Src:             'lib/odp-util.c:1779,50'
          Dst:             htonl
        - Src:             'lib/odp-util.c:1778,9'
          Dst:             put_16aligned_be32
        - Src:             'lib/odp-util.c:1789,9'
          Dst:             ovs_scan_len
        - Src:             'lib/odp-util.c:1793,24'
          Dst:             htons
        - Src:             'lib/odp-util.c:1794,24'
          Dst:             htons
        - Src:             'lib/odp-util.c:1796,25'
          Dst:             htons
        - Src:             'lib/odp-util.c:1798,13'
          Dst:             ovs_scan_len
        - Src:             'lib/odp-util.c:1802,48'
          Dst:             htonl
        - Src:             'lib/odp-util.c:1802,13'
          Dst:             put_16aligned_be32
        - Src:             'lib/odp-util.c:1803,46'
          Dst:             htonl
        - Src:             'lib/odp-util.c:1803,13'
          Dst:             put_16aligned_be32
        - Src:             'lib/odp-util.c:1807,20'
          Dst:             ovs_scan_len
        - Src:             'lib/odp-util.c:1814,17'
          Dst:             ovs_scan_len
        - Src:             'lib/odp-util.c:1817,17'
          Dst:             ovs_scan_len
        - Src:             'lib/odp-util.c:1820,18'
          Dst:             ovs_scan_len
        - Src:             'lib/odp-util.c:1823,17'
          Dst:             ovs_scan_len
        - Src:             'lib/odp-util.c:1828,23'
          Dst:             scan_geneve
        - Src:             'lib/odp-util.c:1839,18'
          Dst:             ovs_scan_len
        - Src:             'lib/odp-util.c:1843,31'
          Dst:             htons
        - Src:             'lib/odp-util.c:1844,43'
          Dst:             htonl
        - Src:             'lib/odp-util.c:1844,13'
          Dst:             put_16aligned_be32
        - Src:             'lib/odp-util.c:1849,16'
          Dst:             ovs_scan_len
        - Src:             'lib/odp-util.c:1852,30'
          Dst:             htons
        - Src:             'lib/odp-util.c:1857,23'
          Dst:             htons
        - Src:             'lib/odp-util.c:1858,26'
          Dst:             htons
        - Src:             'lib/odp-util.c:1861,27'
          Dst:             htons
        - Src:             'lib/odp-util.c:1863,18'
          Dst:             ovs_scan_len
        - Src:             'lib/odp-util.c:1868,38'
          Dst:             htons
        - Src:             'lib/odp-util.c:1871,27'
          Dst:             htons
        - Src:             'lib/odp-util.c:1874,18'
          Dst:             ovs_scan_len
        - Src:             'lib/odp-util.c:1878,41'
          Dst:             htonl
        - Src:             'lib/odp-util.c:1878,13'
          Dst:             put_16aligned_be32
        - Src:             'lib/odp-util.c:1881,27'
          Dst:             htons
        - Src:             'lib/odp-util.c:1884,18'
          Dst:             ovs_scan_len
        - Src:             'lib/odp-util.c:1887,41'
          Dst:             htonl
        - Src:             'lib/odp-util.c:1887,13'
          Dst:             put_16aligned_be32
        - Src:             'lib/odp-util.c:1891,14'
          Dst:             ovs_scan_len
        - Src:             'lib/odp-util.c:1897,16'
          Dst:             ovs_scan_len
        - Src:             'lib/odp-util.c:1903,30'
          Dst:             htons
        - Src:             'lib/odp-util.c:1909,23'
          Dst:             htons
        - Src:             'lib/odp-util.c:1910,26'
          Dst:             htons
        - Src:             'lib/odp-util.c:1913,9'
          Dst:             set_sid
        - Src:             'lib/odp-util.c:1914,35'
          Dst:             htonl
        - Src:             'lib/odp-util.c:1914,9'
          Dst:             put_16aligned_be32
        - Src:             'lib/odp-util.c:1916,14'
          Dst:             ovs_scan_len
        - Src:             'lib/odp-util.c:1922,16'
          Dst:             ovs_scan_len
        - Src:             'lib/odp-util.c:1928,30'
          Dst:             htons
        - Src:             'lib/odp-util.c:1934,23'
          Dst:             htons
        - Src:             'lib/odp-util.c:1935,26'
          Dst:             htons
        - Src:             'lib/odp-util.c:1938,9'
          Dst:             set_sid
        - Src:             'lib/odp-util.c:1939,9'
          Dst:             set_hwid
        - Src:             'lib/odp-util.c:1942,14'
          Dst:             ovs_scan_len
        - Src:             'lib/odp-util.c:1949,16'
          Dst:             ovs_scan_len
        - Src:             'lib/odp-util.c:1956,41'
          Dst:             htonl
        - Src:             'lib/odp-util.c:1956,9'
          Dst:             put_16aligned_be32
        - Src:             'lib/odp-util.c:1960,16'
          Dst:             ovs_scan_len
        - Src:             'lib/odp-util.c:1983,14'
          Dst:             ovs_scan_len
        - Src:             'lib/odp-util.c:1990,16'
          Dst:             ovs_scan_len
        - Src:             'lib/odp-util.c:1991,19'
          Dst:             inet_pton
        - Src:             'lib/odp-util.c:2004,14'
          Dst:             ovs_scan_len
        - Src:             'lib/odp-util.c:2024,10'
          Dst:             ovs_scan_len
    - functionName:    put_16aligned_be32
      functionSourceFile: '/src/openvswitch/lib/unaligned.h'
      linkageType:     InternalLinkage
      functionLinenumber: 257
      functionLinenumberEnd: 265
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          19
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    11
      BranchProfiles:  []
      Callsites:       []
    - functionName:    parse_odp_psample_action
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2506
      functionLinenumberEnd: 2546
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         26
      ICount:          141
      EdgeCount:       35
      CyclomaticComplexity: 11
      functionsReached:
        - odp_put_psample_action
        - ofpbuf_put_hex
        - ofpbuf_uninit
        - ofpbuf_use_stub
        - ovs_scan_len
        - strspn
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:2514,10'
          Dst:             ovs_scan_len
        - Src:             'lib/odp-util.c:2519,14'
          Dst:             strspn
        - Src:             'lib/odp-util.c:2521,27'
          Dst:             ovs_scan_len
        - Src:             'lib/odp-util.c:2527,13'
          Dst:             ovs_scan_len
        - Src:             'lib/odp-util.c:2530,13'
          Dst:             ofpbuf_use_stub
        - Src:             'lib/odp-util.c:2531,13'
          Dst:             ofpbuf_put_hex
        - Src:             'lib/odp-util.c:2532,13'
          Dst:             ofpbuf_uninit
        - Src:             'lib/odp-util.c:2543,5'
          Dst:             odp_put_psample_action
    - functionName:    odp_put_psample_action
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8026
      functionLinenumberEnd: 8038
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          56
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - nl_msg_end_nested
        - nl_msg_put_u32
        - nl_msg_put_unspec
        - nl_msg_start_nested_with_flag
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:8027,21'
          Dst:             nl_msg_start_nested_with_flag
        - Src:             'lib/odp-util.c:8030,5'
          Dst:             nl_msg_put_u32
        - Src:             'lib/odp-util.c:8032,9'
          Dst:             ovs_ignore
        - Src:             'lib/odp-util.c:8033,9'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:8037,5'
          Dst:             nl_msg_end_nested
    - functionName:    parse_conntrack_action
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2203
      functionLinenumberEnd: 2349
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         76
      ICount:          440
      EdgeCount:       104
      CyclomaticComplexity: 30
      functionsReached:
        - nl_msg_end_nested
        - nl_msg_put_ct_nat
        - nl_msg_put_flag
        - nl_msg_put_string__
        - nl_msg_put_u16
        - nl_msg_put_unspec
        - nl_msg_start_nested
        - ovs_scan
        - ovs_u128_is_zero
        - scan_ct_nat
        - scan_u128
        - strchr
        - strcspn
        - strspn
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:2206,9'
          Dst:             ovs_scan
        - Src:             'lib/odp-util.c:2231,13'
          Dst:             ovs_scan
        - Src:             'lib/odp-util.c:2234,19'
          Dst:             strchr
        - Src:             'lib/odp-util.c:2242,22'
          Dst:             strspn
        - Src:             'lib/odp-util.c:2243,21'
          Dst:             ovs_scan
        - Src:             'lib/odp-util.c:2248,21'
          Dst:             ovs_scan
        - Src:             'lib/odp-util.c:2253,21'
          Dst:             ovs_scan
        - Src:             'lib/odp-util.c:2257,21'
          Dst:             ovs_scan
        - Src:             'lib/odp-util.c:2260,25'
          Dst:             ovs_scan
        - Src:             'lib/odp-util.c:2267,21'
          Dst:             ovs_scan
        - Src:             'lib/odp-util.c:2271,30'
          Dst:             scan_u128
        - Src:             'lib/odp-util.c:2278,21'
          Dst:             ovs_scan
        - Src:             'lib/odp-util.c:2280,34'
          Dst:             strcspn
        - Src:             'lib/odp-util.c:2288,21'
          Dst:             ovs_scan
        - Src:             'lib/odp-util.c:2290,35'
          Dst:             strcspn
        - Src:             'lib/odp-util.c:2299,21'
          Dst:             scan_ct_nat
        - Src:             'lib/odp-util.c:2317,17'
          Dst:             nl_msg_start_nested
        - Src:             'lib/odp-util.c:2319,13'
          Dst:             nl_msg_put_flag
        - Src:             'lib/odp-util.c:2321,13'
          Dst:             nl_msg_put_flag
        - Src:             'lib/odp-util.c:2324,13'
          Dst:             nl_msg_put_u16
        - Src:             'lib/odp-util.c:2327,13'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:2330,14'
          Dst:             ovs_u128_is_zero
        - Src:             'lib/odp-util.c:2331,13'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:2335,13'
          Dst:             nl_msg_put_string__
        - Src:             'lib/odp-util.c:2339,13'
          Dst:             nl_msg_put_string__
        - Src:             'lib/odp-util.c:2343,13'
          Dst:             nl_msg_put_ct_nat
        - Src:             'lib/odp-util.c:2345,9'
          Dst:             nl_msg_end_nested
    - functionName:    parse_odp_push_nsh_action
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2394
      functionLinenumberEnd: 2501
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         51
      ICount:          297
      EdgeCount:       68
      CyclomaticComplexity: 19
      functionsReached:
        - htonl
        - nl_msg_end_nested
        - nl_msg_start_nested
        - nsh_key_to_attr
        - nsh_spi_si_to_path_hdr
        - ofpbuf_put_hex
        - ofpbuf_put_zeros
        - ofpbuf_uninit
        - ofpbuf_use_stub
        - ovs_scan_len
        - strspn
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/odp-util.c:2430,13'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/odp-util.c:2404,10'
          Dst:             ovs_scan_len
        - Src:             'lib/odp-util.c:2414,20'
          Dst:             nsh_spi_si_to_path_hdr
        - Src:             'lib/odp-util.c:2418,14'
          Dst:             strspn
        - Src:             'lib/odp-util.c:2423,13'
          Dst:             ovs_scan_len
        - Src:             'lib/odp-util.c:2426,13'
          Dst:             ovs_scan_len
        - Src:             'lib/odp-util.c:2429,13'
          Dst:             ovs_scan_len
        - Src:             'lib/odp-util.c:2444,13'
          Dst:             ovs_scan_len
        - Src:             'lib/odp-util.c:2447,13'
          Dst:             ovs_scan_len
        - Src:             'lib/odp-util.c:2450,13'
          Dst:             ovs_scan_len
        - Src:             'lib/odp-util.c:2454,17'
          Dst:             ovs_scan_len
        - Src:             'lib/odp-util.c:2455,34'
          Dst:             htonl
        - Src:             'lib/odp-util.c:2458,17'
          Dst:             ovs_scan_len
        - Src:             'lib/odp-util.c:2459,34'
          Dst:             htonl
        - Src:             'lib/odp-util.c:2462,17'
          Dst:             ovs_scan_len
        - Src:             'lib/odp-util.c:2463,34'
          Dst:             htonl
        - Src:             'lib/odp-util.c:2466,17'
          Dst:             ovs_scan_len
        - Src:             'lib/odp-util.c:2467,34'
          Dst:             htonl
        - Src:             'lib/odp-util.c:2475,17'
          Dst:             ovs_scan_len
        - Src:             'lib/odp-util.c:2477,17'
          Dst:             ofpbuf_use_stub
        - Src:             'lib/odp-util.c:2478,17'
          Dst:             ofpbuf_put_hex
        - Src:             'lib/odp-util.c:2482,21'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/odp-util.c:2485,17'
          Dst:             ofpbuf_uninit
        - Src:             'lib/odp-util.c:2495,24'
          Dst:             nsh_spi_si_to_path_hdr
        - Src:             'lib/odp-util.c:2496,25'
          Dst:             nl_msg_start_nested
        - Src:             'lib/odp-util.c:2497,9'
          Dst:             nsh_key_to_attr
        - Src:             'lib/odp-util.c:2498,9'
          Dst:             nl_msg_end_nested
    - functionName:    parse_action_list
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2551
      functionLinenumberEnd: 2571
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          89
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - nl_attr_oversized
        - parse_odp_action
        - strspn
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:2557,14'
          Dst:             strspn
        - Src:             'lib/odp-util.c:2561,18'
          Dst:             parse_odp_action
        - Src:             'lib/odp-util.c:2564,20'
          Dst:             nl_attr_oversized
    - functionName:    parse_odp_action
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2577
      functionLinenumberEnd: 2590
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - parse_odp_action__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:2585,18'
          Dst:             parse_odp_action__
    - functionName:    parse_odp_action__
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2597
      functionLinenumberEnd: 2927
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         112
      ICount:          906
      EdgeCount:       159
      CyclomaticComplexity: 49
      functionsReached:
        - __isoc99_sscanf
        - htonl
        - htons
        - is_all_ones
        - nl_attr_get_size
        - nl_msg_end_nested
        - nl_msg_put_flag
        - nl_msg_put_u16
        - nl_msg_put_u32
        - nl_msg_put_unspec
        - nl_msg_put_unspec_uninit
        - nl_msg_start_nested
        - odp_put_tnl_push_action
        - ofpbuf_at_assert
        - ofpbuf_put
        - ofpbuf_put_zeros
        - ofpbuf_uninit
        - ovs_parse_tnl_push
        - ovs_scan
        - parse_action_list
        - parse_conntrack_action
        - parse_odp_key_mask_attr
        - parse_odp_psample_action
        - parse_odp_push_nsh_action
        - parse_odp_userspace_action
        - simap_find_len
        - strcspn
        - strncasecmp
        - strncmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:2602,13'
          Dst:             ovs_scan
        - Src:             'lib/odp-util.c:2603,13'
          Dst:             nl_msg_put_u32
        - Src:             'lib/odp-util.c:2612,13'
          Dst:             ovs_scan
        - Src:             'lib/odp-util.c:2613,13'
          Dst:             nl_msg_put_u32
        - Src:             'lib/odp-util.c:2622,13'
          Dst:             ovs_scan
        - Src:             'lib/odp-util.c:2625,21'
          Dst:             nl_msg_put_unspec_uninit
        - Src:             'lib/odp-util.c:2633,19'
          Dst:             strcspn
        - Src:             'lib/odp-util.c:2636,16'
          Dst:             simap_find_len
        - Src:             'lib/odp-util.c:2638,13'
          Dst:             nl_msg_put_u32
        - Src:             'lib/odp-util.c:2647,13'
          Dst:             ovs_scan
        - Src:             'lib/odp-util.c:2648,13'
          Dst:             nl_msg_put_u32
        - Src:             'lib/odp-util.c:2653,10'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:2654,16'
          Dst:             parse_odp_userspace_action
        - Src:             'lib/odp-util.c:2657,10'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:2665,21'
          Dst:             nl_msg_start_nested
        - Src:             'lib/odp-util.c:2666,18'
          Dst:             parse_odp_key_mask_attr
        - Src:             'lib/odp-util.c:2668,13'
          Dst:             ofpbuf_uninit
        - Src:             'lib/odp-util.c:2672,13'
          Dst:             ofpbuf_uninit
        - Src:             'lib/odp-util.c:2676,18'
          Dst:             ofpbuf_at_assert
        - Src:             'lib/odp-util.c:2679,16'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-util.c:2680,21'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-util.c:2682,18'
          Dst:             is_all_ones
        - Src:             'lib/odp-util.c:2688,17'
          Dst:             ofpbuf_put
        - Src:             'lib/odp-util.c:2691,26'
          Dst:             ofpbuf_at_assert
        - Src:             'lib/odp-util.c:2696,17'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/odp-util.c:2700,9'
          Dst:             ofpbuf_uninit
        - Src:             'lib/odp-util.c:2702,9'
          Dst:             nl_msg_end_nested
        - Src:             'lib/odp-util.c:2713,13'
          Dst:             ovs_scan
        - Src:             'lib/odp-util.c:2714,16'
          Dst:             ovs_scan
        - Src:             'lib/odp-util.c:2716,16'
          Dst:             ovs_scan
        - Src:             'lib/odp-util.c:2718,16'
          Dst:             ovs_scan
        - Src:             'lib/odp-util.c:2724,30'
          Dst:             htons
        - Src:             'lib/odp-util.c:2725,29'
          Dst:             htons
        - Src:             'lib/odp-util.c:2728,13'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:2735,10'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:2736,9'
          Dst:             nl_msg_put_flag
        - Src:             'lib/odp-util.c:2744,13'
          Dst:             __isoc99_sscanf
        - Src:             'lib/odp-util.c:2745,13'
          Dst:             nl_msg_put_u32
        - Src:             'lib/odp-util.c:2754,13'
          Dst:             ovs_scan
        - Src:             'lib/odp-util.c:2760,26'
          Dst:             nl_msg_start_nested
        - Src:             'lib/odp-util.c:2761,13'
          Dst:             nl_msg_put_u32
        - Src:             'lib/odp-util.c:2766,27'
          Dst:             nl_msg_start_nested
        - Src:             'lib/odp-util.c:2768,26'
          Dst:             parse_action_list
        - Src:             'lib/odp-util.c:2775,13'
          Dst:             nl_msg_end_nested
        - Src:             'lib/odp-util.c:2776,13'
          Dst:             nl_msg_end_nested
        - Src:             'lib/odp-util.c:2783,14'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:2787,27'
          Dst:             nl_msg_start_nested
        - Src:             'lib/odp-util.c:2788,26'
          Dst:             parse_action_list
        - Src:             'lib/odp-util.c:2793,13'
          Dst:             nl_msg_end_nested
        - Src:             'lib/odp-util.c:2799,14'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:2800,26'
          Dst:             parse_odp_push_nsh_action
        - Src:             'lib/odp-util.c:2810,13'
          Dst:             ovs_scan
        - Src:             'lib/odp-util.c:2811,13'
          Dst:             nl_msg_put_flag
        - Src:             'lib/odp-util.c:2820,13'
          Dst:             ovs_scan
        - Src:             'lib/odp-util.c:2821,13'
          Dst:             nl_msg_put_u32
        - Src:             'lib/odp-util.c:2827,14'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:2828,13'
          Dst:             nl_msg_put_flag
        - Src:             'lib/odp-util.c:2836,13'
          Dst:             ovs_scan
        - Src:             'lib/odp-util.c:2838,23'
          Dst:             nl_msg_start_nested
        - Src:             'lib/odp-util.c:2840,13'
          Dst:             nl_msg_put_u16
        - Src:             'lib/odp-util.c:2841,27'
          Dst:             nl_msg_start_nested
        - Src:             'lib/odp-util.c:2845,18'
          Dst:             strncasecmp
        - Src:             'lib/odp-util.c:2848,26'
          Dst:             parse_action_list
        - Src:             'lib/odp-util.c:2855,13'
          Dst:             nl_msg_end_nested
        - Src:             'lib/odp-util.c:2857,18'
          Dst:             ovs_scan
        - Src:             'lib/odp-util.c:2862,27'
          Dst:             nl_msg_start_nested
        - Src:             'lib/odp-util.c:2864,18'
          Dst:             strncasecmp
        - Src:             'lib/odp-util.c:2867,26'
          Dst:             parse_action_list
        - Src:             'lib/odp-util.c:2873,13'
          Dst:             nl_msg_end_nested
        - Src:             'lib/odp-util.c:2874,13'
          Dst:             nl_msg_end_nested
        - Src:             'lib/odp-util.c:2882,18'
          Dst:             parse_conntrack_action
        - Src:             'lib/odp-util.c:2894,13'
          Dst:             ovs_scan
        - Src:             'lib/odp-util.c:2897,35'
          Dst:             htons
        - Src:             'lib/odp-util.c:2898,29'
          Dst:             htonl
        - Src:             'lib/odp-util.c:2903,13'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:2909,10'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:2910,16'
          Dst:             parse_odp_psample_action
        - Src:             'lib/odp-util.c:2917,13'
          Dst:             ovs_parse_tnl_push
        - Src:             'lib/odp-util.c:2919,13'
          Dst:             odp_put_tnl_push_action
    - functionName:    parse_odp_userspace_action
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1494
      functionLinenumberEnd: 1698
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         61
      ICount:          639
      EdgeCount:       82
      CyclomaticComplexity: 23
      functionsReached:
        - htonll
        - htons
        - nl_msg_put_flag
        - nl_msg_put_unspec
        - odp_put_userspace_action
        - ofpbuf_init
        - ofpbuf_put_hex
        - ofpbuf_uninit
        - ovs_scan
        - parse_odp_flags
        - put_32aligned_be64
        - slow_path_reason_to_string
        - strncmp
        - u32_to_odp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:1505,10'
          Dst:             ovs_scan
        - Src:             'lib/odp-util.c:1509,5'
          Dst:             ofpbuf_init
        - Src:             'lib/odp-util.c:1532,13'
          Dst:             ovs_scan
        - Src:             'lib/odp-util.c:1546,37'
          Dst:             htons
        - Src:             'lib/odp-util.c:1548,20'
          Dst:             ovs_scan
        - Src:             'lib/odp-util.c:1556,19'
          Dst:             parse_odp_flags
        - Src:             'lib/odp-util.c:1556,19'
          Dst:             slow_path_reason_to_string
        - Src:             'lib/odp-util.c:1563,20'
          Dst:             ovs_scan
        - Src:             'lib/odp-util.c:1580,50'
          Dst:             u32_to_odp
        - Src:             'lib/odp-util.c:1582,17'
          Dst:             ovs_scan
        - Src:             'lib/odp-util.c:1585,24'
          Dst:             ovs_scan
        - Src:             'lib/odp-util.c:1596,20'
          Dst:             ovs_scan
        - Src:             'lib/odp-util.c:1602,44'
          Dst:             u32_to_odp
        - Src:             'lib/odp-util.c:1603,20'
          Dst:             ovs_scan
        - Src:             'lib/odp-util.c:1621,32'
          Dst:             htonll
        - Src:             'lib/odp-util.c:1620,13'
          Dst:             put_32aligned_be64
        - Src:             'lib/odp-util.c:1624,19'
          Dst:             ovs_scan
        - Src:             'lib/odp-util.c:1628,19'
          Dst:             ofpbuf_put_hex
        - Src:             'lib/odp-util.c:1641,13'
          Dst:             ovs_scan
        - Src:             'lib/odp-util.c:1649,13'
          Dst:             ovs_scan
        - Src:             'lib/odp-util.c:1651,19'
          Dst:             odp_put_userspace_action
        - Src:             'lib/odp-util.c:1659,19'
          Dst:             odp_put_userspace_action
        - Src:             'lib/odp-util.c:1674,13'
          Dst:             ovs_scan
        - Src:             'lib/odp-util.c:1680,13'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:1688,10'
          Dst:             strncmp
        - Src:             'lib/odp-util.c:1689,9'
          Dst:             nl_msg_put_flag
        - Src:             'lib/odp-util.c:1696,5'
          Dst:             ofpbuf_uninit
    - functionName:    ofpbuf_at_assert
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 195
      functionLinenumberEnd: 198
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:196,5'
          Dst:             ovs_ignore
        - Src:             './include/openvswitch/ofpbuf.h:197,5'
          Dst:             ovs_ignore
    - functionName:    __isoc99_sscanf
      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:    odp_put_tnl_push_action
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8016
      functionLinenumberEnd: 8021
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_msg_put_unspec
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:8020,5'
          Dst:             nl_msg_put_unspec
    - functionName:    slow_path_reason_to_string
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 406
      functionLinenumberEnd: 414
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          52
      EdgeCount:       18
      CyclomaticComplexity: 10
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/odp-util.c:407,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    odp_put_userspace_action
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7932
      functionLinenumberEnd: 7977
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - int
        - 'N/A'
        - size_t
        - int
        - bool
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          139
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - nl_attr_oversized
        - nl_msg_end_nested
        - nl_msg_put_flag
        - nl_msg_put_odp_port
        - nl_msg_put_u32
        - nl_msg_put_unspec_zero
        - nl_msg_start_nested
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:7936,14'
          Dst:             nl_msg_start_nested
        - Src:             'lib/odp-util.c:7937,5'
          Dst:             nl_msg_put_u32
        - Src:             'lib/odp-util.c:7939,13'
          Dst:             nl_attr_oversized
        - Src:             'lib/odp-util.c:7954,16'
          Dst:             nl_msg_put_unspec_zero
        - Src:             'lib/odp-util.c:7961,9'
          Dst:             nl_msg_put_odp_port
        - Src:             'lib/odp-util.c:7965,9'
          Dst:             nl_msg_put_flag
        - Src:             'lib/odp-util.c:7967,9'
          Dst:             nl_attr_oversized
        - Src:             'lib/odp-util.c:7970,5'
          Dst:             nl_msg_end_nested
    - functionName:    nsh_16aligned_be32
      functionSourceFile: '/src/openvswitch/./include/openvswitch/nsh.h'
      linkageType:     InternalLinkage
      functionLinenumber: 311
      functionLinenumberEnd: 315
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nsh_get_path_hdr
      functionSourceFile: '/src/openvswitch/./include/openvswitch/nsh.h'
      linkageType:     InternalLinkage
      functionLinenumber: 326
      functionLinenumberEnd: 327
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nsh_16aligned_be32
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/nsh.h:327,12'
          Dst:             nsh_16aligned_be32
    - functionName:    nsh_get_ttl
      functionSourceFile: '/src/openvswitch/./include/openvswitch/nsh.h'
      linkageType:     InternalLinkage
      functionLinenumber: 304
      functionLinenumberEnd: 305
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/nsh.h:305,13'
          Dst:             ntohs
    - functionName:    nsh_get_flags
      functionSourceFile: '/src/openvswitch/./include/openvswitch/nsh.h'
      linkageType:     InternalLinkage
      functionLinenumber: 292
      functionLinenumberEnd: 293
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/nsh.h:293,13'
          Dst:             ntohs
    - functionName:    nsh_get_si
      functionSourceFile: '/src/openvswitch/./include/openvswitch/nsh.h'
      linkageType:     InternalLinkage
      functionLinenumber: 339
      functionLinenumberEnd: 341
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nsh_get_path_hdr
        - ntohl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/nsh.h:340,31'
          Dst:             nsh_get_path_hdr
        - Src:             './include/openvswitch/nsh.h:340,25'
          Dst:             ntohl
    - functionName:    nsh_get_spi
      functionSourceFile: '/src/openvswitch/./include/openvswitch/nsh.h'
      linkageType:     InternalLinkage
      functionLinenumber: 332
      functionLinenumberEnd: 334
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
        - nsh_get_path_hdr
        - ntohl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/nsh.h:333,31'
          Dst:             nsh_get_path_hdr
        - Src:             './include/openvswitch/nsh.h:333,25'
          Dst:             ntohl
        - Src:             './include/openvswitch/nsh.h:334,12'
          Dst:             htonl
    - functionName:    nsh_hdr_len
      functionSourceFile: '/src/openvswitch/./include/openvswitch/nsh.h'
      linkageType:     InternalLinkage
      functionLinenumber: 273
      functionLinenumberEnd: 275
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/nsh.h:274,14'
          Dst:             ntohs
    - functionName:    format_odp_ct_nat
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 946
      functionLinenumberEnd: 1070
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         159
      ICount:          749
      EdgeCount:       218
      CyclomaticComplexity: 61
      functionsReached:
        - ds_chomp
        - ds_put_char
        - ds_put_cstr
        - ds_put_format
        - ipv6_format_addr_bracket
        - ipv6_mask_is_any
        - memcmp
        - nl_attr_get
        - nl_attr_get_be32
        - nl_attr_get_size
        - nl_attr_get_u16
        - nl_parse_nested
        - ntohl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:953,10'
          Dst:             nl_parse_nested
        - Src:             'lib/odp-util.c:954,9'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:963,9'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:968,9'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:973,9'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:979,9'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:984,14'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-util.c:985,14'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-util.c:987,17'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-util.c:988,20'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-util.c:989,9'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:994,11'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-util.c:996,11'
          Dst:             nl_attr_get_be32
        - Src:             'lib/odp-util.c:998,11'
          Dst:             nl_attr_get_be32
        - Src:             'lib/odp-util.c:1001,35'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:1004,35'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:1008,11'
          Dst:             nl_attr_get_u16
        - Src:             'lib/odp-util.c:1010,11'
          Dst:             nl_attr_get_u16
        - Src:             'lib/odp-util.c:1013,23'
          Dst:             ntohl
        - Src:             'lib/odp-util.c:1013,39'
          Dst:             ntohl
        - Src:             'lib/odp-util.c:1015,17'
          Dst:             ipv6_mask_is_any
        - Src:             'lib/odp-util.c:1016,16'
          Dst:             memcmp
        - Src:             'lib/odp-util.c:1018,9'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:1022,5'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:1024,9'
          Dst:             ds_put_char
        - Src:             'lib/odp-util.c:1026,13'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:1028,13'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:1032,13'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:1035,43'
          Dst:             ntohl
        - Src:             'lib/odp-util.c:1035,43'
          Dst:             ntohl
        - Src:             'lib/odp-util.c:1035,43'
          Dst:             ntohl
        - Src:             'lib/odp-util.c:1035,43'
          Dst:             ntohl
        - Src:             'lib/odp-util.c:1035,17'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:1038,50'
          Dst:             ntohl
        - Src:             'lib/odp-util.c:1038,50'
          Dst:             ntohl
        - Src:             'lib/odp-util.c:1038,50'
          Dst:             ntohl
        - Src:             'lib/odp-util.c:1038,50'
          Dst:             ntohl
        - Src:             'lib/odp-util.c:1038,21'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:1041,17'
          Dst:             ipv6_format_addr_bracket
        - Src:             'lib/odp-util.c:1043,22'
          Dst:             ipv6_mask_is_any
        - Src:             'lib/odp-util.c:1044,21'
          Dst:             memcmp
        - Src:             'lib/odp-util.c:1045,21'
          Dst:             ds_put_char
        - Src:             'lib/odp-util.c:1046,21'
          Dst:             ipv6_format_addr_bracket
        - Src:             'lib/odp-util.c:1050,17'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:1053,21'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:1057,9'
          Dst:             ds_put_char
        - Src:             'lib/odp-util.c:1059,13'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:1062,13'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:1065,13'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:1067,9'
          Dst:             ds_chomp
        - Src:             'lib/odp-util.c:1068,9'
          Dst:             ds_put_char
    - functionName:    get_hwid
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1381
      functionLinenumberEnd: 1382
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_sid
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1370
      functionLinenumberEnd: 1371
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          20
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    format_udp_tnl_push_header
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 636
      functionLinenumberEnd: 647
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          55
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_cstr
        - ds_put_format
        - ntohs
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:638,9'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:643,19'
          Dst:             ntohs
        - Src:             'lib/odp-util.c:643,40'
          Dst:             ntohs
        - Src:             'lib/odp-util.c:644,19'
          Dst:             ntohs
        - Src:             'lib/odp-util.c:642,5'
          Dst:             ds_put_format
    - functionName:    get_16aligned_be32
      functionSourceFile: '/src/openvswitch/lib/unaligned.h'
      linkageType:     InternalLinkage
      functionLinenumber: 246
      functionLinenumberEnd: 250
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    17
      BranchProfiles:  []
      Callsites:       []
    - functionName:    format_odp_tnl_push_header
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 651
      functionLinenumberEnd: 909
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         96
      ICount:          977
      EdgeCount:       132
      CyclomaticComplexity: 38
      functionsReached:
        - ds_put_char
        - ds_put_cstr
        - ds_put_format
        - format_geneve_opts
        - format_udp_tnl_push_header
        - get_16aligned_be32
        - get_hwid
        - get_sid
        - htons
        - ipv6_format_addr
        - ntohl
        - ntohs
        - vlog
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:661,9'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:672,5'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:674,5'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:675,5'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:676,5'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:677,51'
          Dst:             ntohs
        - Src:             'lib/odp-util.c:677,5'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:679,26'
          Dst:             htons
        - Src:             'lib/odp-util.c:684,13'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:690,23'
          Dst:             get_16aligned_be32
        - Src:             'lib/odp-util.c:690,23'
          Dst:             ntohl
        - Src:             'lib/odp-util.c:690,23'
          Dst:             get_16aligned_be32
        - Src:             'lib/odp-util.c:690,23'
          Dst:             ntohl
        - Src:             'lib/odp-util.c:690,23'
          Dst:             get_16aligned_be32
        - Src:             'lib/odp-util.c:690,23'
          Dst:             ntohl
        - Src:             'lib/odp-util.c:690,23'
          Dst:             get_16aligned_be32
        - Src:             'lib/odp-util.c:690,23'
          Dst:             ntohl
        - Src:             'lib/odp-util.c:691,23'
          Dst:             get_16aligned_be32
        - Src:             'lib/odp-util.c:691,23'
          Dst:             ntohl
        - Src:             'lib/odp-util.c:691,23'
          Dst:             get_16aligned_be32
        - Src:             'lib/odp-util.c:691,23'
          Dst:             ntohl
        - Src:             'lib/odp-util.c:691,23'
          Dst:             get_16aligned_be32
        - Src:             'lib/odp-util.c:691,23'
          Dst:             ntohl
        - Src:             'lib/odp-util.c:691,23'
          Dst:             get_16aligned_be32
        - Src:             'lib/odp-util.c:691,23'
          Dst:             ntohl
        - Src:             'lib/odp-util.c:694,23'
          Dst:             ntohs
        - Src:             'lib/odp-util.c:688,9'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:702,36'
          Dst:             get_16aligned_be32
        - Src:             'lib/odp-util.c:702,30'
          Dst:             ntohl
        - Src:             'lib/odp-util.c:705,13'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:709,9'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:710,9'
          Dst:             ipv6_format_addr
        - Src:             'lib/odp-util.c:711,9'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:712,9'
          Dst:             ipv6_format_addr
        - Src:             'lib/odp-util.c:713,9'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:726,15'
          Dst:             format_udp_tnl_push_header
        - Src:             'lib/odp-util.c:733,13'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:738,29'
          Dst:             get_16aligned_be32
        - Src:             'lib/odp-util.c:738,23'
          Dst:             ntohl
        - Src:             'lib/odp-util.c:739,29'
          Dst:             get_16aligned_be32
        - Src:             'lib/odp-util.c:739,23'
          Dst:             ntohl
        - Src:             'lib/odp-util.c:737,9'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:743,15'
          Dst:             format_udp_tnl_push_header
        - Src:             'lib/odp-util.c:750,13'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:757,29'
          Dst:             get_16aligned_be32
        - Src:             'lib/odp-util.c:757,23'
          Dst:             ntohl
        - Src:             'lib/odp-util.c:754,9'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:762,17'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:766,13'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:767,13'
          Dst:             format_geneve_opts
        - Src:             'lib/odp-util.c:769,13'
          Dst:             ds_put_char
        - Src:             'lib/odp-util.c:772,9'
          Dst:             ds_put_char
        - Src:             'lib/odp-util.c:781,13'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:789,9'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:790,9'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:791,9'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:793,13'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:798,13'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:799,13'
          Dst:             ipv6_format_addr
        - Src:             'lib/odp-util.c:801,9'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:809,13'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:814,28'
          Dst:             ntohs
        - Src:             'lib/odp-util.c:814,48'
          Dst:             ntohs
        - Src:             'lib/odp-util.c:813,9'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:817,27'
          Dst:             htons
        - Src:             'lib/odp-util.c:819,17'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:825,27'
          Dst:             ntohs
        - Src:             'lib/odp-util.c:824,13'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:828,27'
          Dst:             htons
        - Src:             'lib/odp-util.c:830,17'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:836,33'
          Dst:             get_16aligned_be32
        - Src:             'lib/odp-util.c:836,27'
          Dst:             ntohl
        - Src:             'lib/odp-util.c:835,13'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:839,27'
          Dst:             htons
        - Src:             'lib/odp-util.c:841,17'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:846,33'
          Dst:             get_16aligned_be32
        - Src:             'lib/odp-util.c:846,27'
          Dst:             ntohl
        - Src:             'lib/odp-util.c:845,13'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:849,9'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:857,13'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:869,17'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:873,27'
          Dst:             get_sid
        - Src:             'lib/odp-util.c:873,48'
          Dst:             get_16aligned_be32
        - Src:             'lib/odp-util.c:873,42'
          Dst:             ntohl
        - Src:             'lib/odp-util.c:872,13'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:879,17'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:884,27'
          Dst:             get_sid
        - Src:             'lib/odp-util.c:884,52'
          Dst:             get_hwid
        - Src:             'lib/odp-util.c:882,13'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:886,13'
          Dst:             vlog
        - Src:             'lib/odp-util.c:891,16'
          Dst:             format_udp_tnl_push_header
        - Src:             'lib/odp-util.c:898,13'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:905,29'
          Dst:             get_16aligned_be32
        - Src:             'lib/odp-util.c:905,23'
          Dst:             ntohl
        - Src:             'lib/odp-util.c:902,9'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:908,5'
          Dst:             ds_put_format
    - functionName:    format_odp_psample_action
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1270
      functionLinenumberEnd: 1288
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          87
      EdgeCount:       11
      CyclomaticComplexity: 2
      functionsReached:
        - ds_chomp
        - ds_put_char
        - ds_put_cstr
        - ds_put_format
        - ds_put_hex
        - nl_attr_get
        - nl_attr_get_size
        - nl_attr_get_u32
        - nl_attr_is_valid
        - nl_attr_len_pad
        - nl_attr_next
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/odp-util.c:1276,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/odp-util.c:1274,5'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:1275,5'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:1275,5'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-util.c:1275,5'
          Dst:             nl_attr_is_valid
        - Src:             'lib/odp-util.c:1278,51'
          Dst:             nl_attr_get_u32
        - Src:             'lib/odp-util.c:1278,13'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:1281,13'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:1282,28'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:1282,44'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-util.c:1282,13'
          Dst:             ds_put_hex
        - Src:             'lib/odp-util.c:1275,5'
          Dst:             nl_attr_len_pad
        - Src:             'lib/odp-util.c:1275,5'
          Dst:             nl_attr_next
        - Src:             'lib/odp-util.c:1286,5'
          Dst:             ds_chomp
        - Src:             'lib/odp-util.c:1287,5'
          Dst:             ds_put_char
    - functionName:    format_dec_ttl_action
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1252
      functionLinenumberEnd: 1266
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          73
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ds_put_cstr
        - ds_put_format
        - format_odp_actions
        - nl_attr_get
        - nl_attr_get_size
        - nl_attr_is_valid
        - nl_attr_len_pad
        - nl_attr_next
        - nl_attr_type
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:1256,5'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:1257,5'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:1257,5'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-util.c:1257,5'
          Dst:             nl_attr_is_valid
        - Src:             'lib/odp-util.c:1259,13'
          Dst:             nl_attr_type
        - Src:             'lib/odp-util.c:1260,35'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:1261,31'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-util.c:1260,12'
          Dst:             format_odp_actions
        - Src:             'lib/odp-util.c:1257,5'
          Dst:             nl_attr_len_pad
        - Src:             'lib/odp-util.c:1257,5'
          Dst:             nl_attr_next
        - Src:             'lib/odp-util.c:1265,5'
          Dst:             ds_put_format
    - functionName:    format_odp_actions
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1463
      functionLinenumberEnd: 1489
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          135
      EdgeCount:       29
      CyclomaticComplexity: 8
      functionsReached:
        - ds_put_char
        - ds_put_cstr
        - ds_put_format
        - format_odp_action
        - nl_attr_is_valid
        - nl_attr_len_pad
        - nl_attr_next
      functionUses:    13
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:1468,9'
          Dst:             nl_attr_is_valid
        - Src:             'lib/odp-util.c:1470,17'
          Dst:             ds_put_char
        - Src:             'lib/odp-util.c:1472,13'
          Dst:             format_odp_action
        - Src:             'lib/odp-util.c:1468,9'
          Dst:             nl_attr_len_pad
        - Src:             'lib/odp-util.c:1468,9'
          Dst:             nl_attr_next
        - Src:             'lib/odp-util.c:1478,17'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:1480,13'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:1482,17'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:1484,13'
          Dst:             ds_put_char
        - Src:             'lib/odp-util.c:1487,9'
          Dst:             ds_put_cstr
    - functionName:    format_odp_action
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1293
      functionLinenumberEnd: 1458
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         50
      ICount:          534
      EdgeCount:       54
      CyclomaticComplexity: 6
      functionsReached:
        - ds_put_char
        - ds_put_cstr
        - ds_put_format
        - format_dec_ttl_action
        - format_generic_odp_action
        - format_mpls_lse
        - format_odp_check_pkt_len_action
        - format_odp_clone_action
        - format_odp_conntrack_action
        - format_odp_hash_action
        - format_odp_key_attr
        - format_odp_psample_action
        - format_odp_push_nsh_action
        - format_odp_recirc_action
        - format_odp_sample_action
        - format_odp_set_nsh
        - format_odp_tnl_push_action
        - format_odp_userspace_action
        - format_vlan_tci
        - htons
        - nl_attr_get
        - nl_attr_get_be16
        - nl_attr_get_odp_port
        - nl_attr_get_size
        - nl_attr_get_u32
        - nl_attr_get_unspec
        - nl_attr_type
        - nsh_reset_ver_flags_ttl_len
        - ntohs
        - odp_action_len
        - odp_nsh_hdr_from_attr
        - odp_portno_name_format
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/odp-util.c:1307,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/odp-util.c:1295,33'
          Dst:             nl_attr_type
        - Src:             'lib/odp-util.c:1298,35'
          Dst:             nl_attr_type
        - Src:             'lib/odp-util.c:1298,20'
          Dst:             odp_action_len
        - Src:             'lib/odp-util.c:1300,9'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-util.c:1302,23'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-util.c:1301,9'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:1303,9'
          Dst:             format_generic_odp_action
        - Src:             'lib/odp-util.c:1309,47'
          Dst:             nl_attr_get_u32
        - Src:             'lib/odp-util.c:1309,9'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:1312,46'
          Dst:             nl_attr_get_odp_port
        - Src:             'lib/odp-util.c:1312,9'
          Dst:             odp_portno_name_format
        - Src:             'lib/odp-util.c:1315,51'
          Dst:             nl_attr_get_u32
        - Src:             'lib/odp-util.c:1315,9'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:1319,24'
          Dst:             nl_attr_get_unspec
        - Src:             'lib/odp-util.c:1321,9'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:1325,9'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:1326,46'
          Dst:             nl_attr_get_odp_port
        - Src:             'lib/odp-util.c:1326,9'
          Dst:             odp_portno_name_format
        - Src:             'lib/odp-util.c:1327,9'
          Dst:             ds_put_char
        - Src:             'lib/odp-util.c:1330,9'
          Dst:             format_odp_tnl_push_action
        - Src:             'lib/odp-util.c:1333,9'
          Dst:             format_odp_userspace_action
        - Src:             'lib/odp-util.c:1336,38'
          Dst:             nl_attr_get_u32
        - Src:             'lib/odp-util.c:1336,9'
          Dst:             format_odp_recirc_action
        - Src:             'lib/odp-util.c:1339,36'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:1339,9'
          Dst:             format_odp_hash_action
        - Src:             'lib/odp-util.c:1342,13'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:1344,13'
          Dst:             nl_attr_type
        - Src:             'lib/odp-util.c:1345,13'
          Dst:             format_odp_set_nsh
        - Src:             'lib/odp-util.c:1348,16'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-util.c:1349,9'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:1358,47'
          Dst:             nl_attr_type
        - Src:             'lib/odp-util.c:1362,13'
          Dst:             format_odp_key_attr
        - Src:             'lib/odp-util.c:1364,13'
          Dst:             format_odp_key_attr
        - Src:             'lib/odp-util.c:1366,9'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:1369,9'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:1370,29'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:1370,9'
          Dst:             format_odp_key_attr
        - Src:             'lib/odp-util.c:1371,9'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:1374,49'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:1375,9'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:1381,9'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:1384,51'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:1385,9'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:1386,32'
          Dst:             htons
        - Src:             'lib/odp-util.c:1387,54'
          Dst:             ntohs
        - Src:             'lib/odp-util.c:1387,13'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:1389,9'
          Dst:             format_vlan_tci
        - Src:             'lib/odp-util.c:1390,9'
          Dst:             ds_put_char
        - Src:             'lib/odp-util.c:1394,9'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:1397,51'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:1398,9'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:1399,9'
          Dst:             format_mpls_lse
        - Src:             'lib/odp-util.c:1400,53'
          Dst:             ntohs
        - Src:             'lib/odp-util.c:1400,9'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:1404,30'
          Dst:             nl_attr_get_be16
        - Src:             'lib/odp-util.c:1405,61'
          Dst:             ntohs
        - Src:             'lib/odp-util.c:1405,9'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:1409,9'
          Dst:             format_odp_sample_action
        - Src:             'lib/odp-util.c:1412,9'
          Dst:             format_odp_conntrack_action
        - Src:             'lib/odp-util.c:1415,9'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:1418,9'
          Dst:             format_odp_clone_action
        - Src:             'lib/odp-util.c:1423,9'
          Dst:             nsh_reset_ver_flags_ttl_len
        - Src:             'lib/odp-util.c:1424,31'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:1424,9'
          Dst:             odp_nsh_hdr_from_attr
        - Src:             'lib/odp-util.c:1425,9'
          Dst:             format_odp_push_nsh_action
        - Src:             'lib/odp-util.c:1429,9'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:1432,9'
          Dst:             format_odp_check_pkt_len_action
        - Src:             'lib/odp-util.c:1435,50'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:1437,9'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:1438,9'
          Dst:             format_mpls_lse
        - Src:             'lib/odp-util.c:1440,23'
          Dst:             ntohs
        - Src:             'lib/odp-util.c:1439,9'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:1444,9'
          Dst:             format_dec_ttl_action
        - Src:             'lib/odp-util.c:1447,9'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:1450,9'
          Dst:             format_odp_psample_action
        - Src:             'lib/odp-util.c:1455,9'
          Dst:             format_generic_odp_action
    - functionName:    odp_action_len
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 115
      functionLinenumberEnd: 156
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         36
      ICount:          178
      EdgeCount:       71
      CyclomaticComplexity: 37
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/odp-util.c:120,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    format_generic_odp_action
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 208
      functionLinenumberEnd: 223
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          74
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ds_put_char
        - ds_put_format
        - nl_attr_get
        - nl_attr_get_size
        - nl_attr_type
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:209,18'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-util.c:211,35'
          Dst:             nl_attr_type
        - Src:             'lib/odp-util.c:211,5'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:216,18'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:218,13'
          Dst:             ds_put_char
        - Src:             'lib/odp-util.c:219,13'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:221,9'
          Dst:             ds_put_char
    - functionName:    format_odp_tnl_push_action
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 914
      functionLinenumberEnd: 926
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          44
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_cstr
        - ds_put_format
        - format_odp_tnl_push_header
        - nl_attr_get
        - odp_portno_name_format
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:917,43'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:919,5'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:920,5'
          Dst:             odp_portno_name_format
        - Src:             'lib/odp-util.c:921,5'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:922,5'
          Dst:             format_odp_tnl_push_header
        - Src:             'lib/odp-util.c:923,5'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:924,5'
          Dst:             odp_portno_name_format
        - Src:             'lib/odp-util.c:925,5'
          Dst:             ds_put_cstr
    - functionName:    format_odp_userspace_action
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 439
      functionLinenumberEnd: 552
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         46
      ICount:          325
      EdgeCount:       60
      CyclomaticComplexity: 16
      functionsReached:
        - ds_put_char
        - ds_put_cstr
        - ds_put_format
        - format_flags
        - get_32aligned_be64
        - nl_attr_get
        - nl_attr_get_odp_port
        - nl_attr_get_size
        - nl_attr_get_u32
        - nl_parse_nested
        - ntohll
        - odp_portno_name_format
        - slow_path_reason_to_string
        - vlan_tci_to_pcp
        - vlan_tci_to_vid
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:453,10'
          Dst:             nl_parse_nested
        - Src:             'lib/odp-util.c:454,9'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:459,19'
          Dst:             nl_attr_get_u32
        - Src:             'lib/odp-util.c:458,5'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:464,35'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:465,31'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-util.c:477,31'
          Dst:             vlan_tci_to_vid
        - Src:             'lib/odp-util.c:478,31'
          Dst:             vlan_tci_to_pcp
        - Src:             'lib/odp-util.c:475,17'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:481,17'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:482,17'
          Dst:             format_flags
        - Src:             'lib/odp-util.c:482,17'
          Dst:             slow_path_reason_to_string
        - Src:             'lib/odp-util.c:484,17'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:486,17'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:495,17'
          Dst:             odp_portno_name_format
        - Src:             'lib/odp-util.c:498,21'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:500,21'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:502,17'
          Dst:             ds_put_char
        - Src:             'lib/odp-util.c:504,17'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:505,17'
          Dst:             odp_portno_name_format
        - Src:             'lib/odp-util.c:507,17'
          Dst:             ds_put_char
        - Src:             'lib/odp-util.c:520,38'
          Dst:             get_32aligned_be64
        - Src:             'lib/odp-util.c:520,31'
          Dst:             ntohll
        - Src:             'lib/odp-util.c:509,17'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:524,17'
          Dst:             ds_put_char
        - Src:             'lib/odp-util.c:532,13'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:534,17'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:536,13'
          Dst:             ds_put_char
        - Src:             'lib/odp-util.c:541,9'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:546,9'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:548,32'
          Dst:             nl_attr_get_odp_port
        - Src:             'lib/odp-util.c:547,9'
          Dst:             odp_portno_name_format
        - Src:             'lib/odp-util.c:551,5'
          Dst:             ds_put_char
    - functionName:    format_odp_recirc_action
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 613
      functionLinenumberEnd: 615
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_format
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:614,5'
          Dst:             ds_put_format
    - functionName:    format_odp_hash_action
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 619
      functionLinenumberEnd: 631
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          59
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ds_put_format
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:620,5'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:623,9'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:625,9'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:627,9'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:630,5'
          Dst:             ds_put_format
    - functionName:    format_odp_set_nsh
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1160
      functionLinenumberEnd: 1210
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         24
      ICount:          165
      EdgeCount:       27
      CyclomaticComplexity: 5
      functionsReached:
        - ds_put_cstr
        - format_nsh_key_mask
        - nl_attr_get
        - nl_attr_get_size
        - nl_attr_is_valid
        - nl_attr_len_pad
        - nl_attr_next
        - nl_attr_type
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/odp-util.c:1182,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/odp-util.c:1169,5'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:1169,5'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-util.c:1169,5'
          Dst:             nl_attr_is_valid
        - Src:             'lib/odp-util.c:1170,38'
          Dst:             nl_attr_type
        - Src:             'lib/odp-util.c:1171,22'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-util.c:1186,51'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:1193,49'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:1169,5'
          Dst:             nl_attr_len_pad
        - Src:             'lib/odp-util.c:1169,5'
          Dst:             nl_attr_next
        - Src:             'lib/odp-util.c:1207,5'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:1208,5'
          Dst:             format_nsh_key_mask
        - Src:             'lib/odp-util.c:1209,5'
          Dst:             ds_put_cstr
    - functionName:    format_odp_key_attr
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4713
      functionLinenumberEnd: 4718
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - check_attr_len
        - format_odp_key_attr__
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:4714,9'
          Dst:             check_attr_len
        - Src:             'lib/odp-util.c:4716,9'
          Dst:             format_odp_key_attr__
    - functionName:    format_odp_sample_action
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 228
      functionLinenumberEnd: 255
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          66
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_cstr
        - ds_put_format
        - format_odp_actions
        - nl_attr_get
        - nl_attr_get_size
        - nl_attr_get_u32
        - nl_parse_nested
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:238,5'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:240,10'
          Dst:             nl_parse_nested
        - Src:             'lib/odp-util.c:241,9'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:245,27'
          Dst:             nl_attr_get_u32
        - Src:             'lib/odp-util.c:248,5'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:250,5'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:251,16'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:252,11'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-util.c:253,5'
          Dst:             format_odp_actions
        - Src:             'lib/odp-util.c:254,5'
          Dst:             ds_put_format
    - functionName:    format_odp_conntrack_action
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1089
      functionLinenumberEnd: 1149
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         62
      ICount:          336
      EdgeCount:       84
      CyclomaticComplexity: 24
      functionsReached:
        - ds_chomp
        - ds_put_char
        - ds_put_cstr
        - ds_put_format
        - format_odp_ct_nat
        - format_u128
        - nl_attr_get
        - nl_attr_get_u16
        - nl_parse_nested
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:1101,10'
          Dst:             nl_parse_nested
        - Src:             'lib/odp-util.c:1102,9'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:1108,34'
          Dst:             nl_attr_get_u16
        - Src:             'lib/odp-util.c:1109,34'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:1110,37'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:1111,38'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:1113,17'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:1116,5'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:1118,9'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:1120,13'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:1123,13'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:1126,13'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:1129,13'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:1133,13'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:1134,13'
          Dst:             format_u128
        - Src:             'lib/odp-util.c:1135,13'
          Dst:             ds_put_char
        - Src:             'lib/odp-util.c:1138,13'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:1141,13'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:1144,13'
          Dst:             format_odp_ct_nat
        - Src:             'lib/odp-util.c:1146,9'
          Dst:             ds_chomp
        - Src:             'lib/odp-util.c:1147,9'
          Dst:             ds_put_cstr
    - functionName:    format_odp_clone_action
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 260
      functionLinenumberEnd: 268
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          38
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_cstr
        - ds_put_format
        - format_odp_actions
        - nl_attr_get
        - nl_attr_get_size
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:261,37'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:262,15'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-util.c:264,5'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:265,5'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:266,5'
          Dst:             format_odp_actions
        - Src:             'lib/odp-util.c:267,5'
          Dst:             ds_put_format
    - functionName:    nsh_reset_ver_flags_ttl_len
      functionSourceFile: '/src/openvswitch/./include/openvswitch/nsh.h'
      linkageType:     InternalLinkage
      functionLinenumber: 298
      functionLinenumberEnd: 300
      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:    odp_nsh_hdr_from_attr
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3087
      functionLinenumberEnd: 3163
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         38
      ICount:          281
      EdgeCount:       48
      CyclomaticComplexity: 12
      functionsReached:
        - nl_attr_get
        - nl_attr_get_size
        - nl_attr_is_valid
        - nl_attr_len_pad
        - nl_attr_next
        - nl_attr_type
        - nsh_set_flags_ttl_len
        - odp_key_attr_len
        - put_16aligned_be32
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/odp-util.c:3109,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/odp-util.c:3099,5'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:3099,5'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-util.c:3099,5'
          Dst:             nl_attr_is_valid
        - Src:             'lib/odp-util.c:3100,25'
          Dst:             nl_attr_type
        - Src:             'lib/odp-util.c:3101,22'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-util.c:3102,28'
          Dst:             odp_key_attr_len
        - Src:             'lib/odp-util.c:3111,51'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:3114,13'
          Dst:             put_16aligned_be32
        - Src:             'lib/odp-util.c:3120,49'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:3123,21'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-util.c:3133,34'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:3135,21'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-util.c:3099,5'
          Dst:             nl_attr_len_pad
        - Src:             'lib/odp-util.c:3099,5'
          Dst:             nl_attr_next
        - Src:             'lib/odp-util.c:3160,5'
          Dst:             nsh_set_flags_ttl_len
    - functionName:    format_odp_push_nsh_action
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 368
      functionLinenumberEnd: 402
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          131
      EdgeCount:       11
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_cstr
        - ds_put_format
        - ds_put_hex
        - get_16aligned_be32
        - nsh_get_flags
        - nsh_get_si
        - nsh_get_spi
        - nsh_get_ttl
        - nsh_hdr_len
        - ntohl
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/odp-util.c:382,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/odp-util.c:369,20'
          Dst:             nsh_hdr_len
        - Src:             'lib/odp-util.c:370,26'
          Dst:             nsh_get_spi
        - Src:             'lib/odp-util.c:370,20'
          Dst:             ntohl
        - Src:             'lib/odp-util.c:371,18'
          Dst:             nsh_get_si
        - Src:             'lib/odp-util.c:372,21'
          Dst:             nsh_get_flags
        - Src:             'lib/odp-util.c:373,19'
          Dst:             nsh_get_ttl
        - Src:             'lib/odp-util.c:375,5'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:376,5'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:377,5'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:378,5'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:379,5'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:380,5'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:381,5'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:387,33'
          Dst:             get_16aligned_be32
        - Src:             'lib/odp-util.c:387,27'
          Dst:             ntohl
        - Src:             'lib/odp-util.c:386,13'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:393,9'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:394,9'
          Dst:             ds_put_hex
        - Src:             'lib/odp-util.c:398,9'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:401,5'
          Dst:             ds_put_format
    - functionName:    format_odp_check_pkt_len_action
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1215
      functionLinenumberEnd: 1247
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          87
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - ds_put_cstr
        - ds_put_format
        - format_odp_actions
        - nl_attr_get
        - nl_attr_get_size
        - nl_attr_get_u16
        - nl_parse_nested
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:1223,5'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:1224,10'
          Dst:             nl_parse_nested
        - Src:             'lib/odp-util.c:1225,9'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:1231,9'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:1235,24'
          Dst:             nl_attr_get_u16
        - Src:             'lib/odp-util.c:1236,5'
          Dst:             ds_put_format
        - Src:             'lib/odp-util.c:1239,28'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:1239,47'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-util.c:1239,5'
          Dst:             format_odp_actions
        - Src:             'lib/odp-util.c:1242,5'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:1244,28'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:1244,47'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-util.c:1244,5'
          Dst:             format_odp_actions
        - Src:             'lib/odp-util.c:1246,5'
          Dst:             ds_put_cstr
    - functionName:    nsh_set_flags_ttl_len
      functionSourceFile: '/src/openvswitch/./include/openvswitch/nsh.h'
      linkageType:     InternalLinkage
      functionLinenumber: 383
      functionLinenumberEnd: 391
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - char
        - char
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          49
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htons
        - ntohs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/nsh.h:384,19'
          Dst:             ntohs
        - Src:             './include/openvswitch/nsh.h:386,11'
          Dst:             htons
    - functionName:    odp_vxlan_tun_opts_from_attr
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9020
      functionLinenumberEnd: 9041
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          73
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - nl_attr_get_u32
        - nl_parse_nested
        - odp_decode_gbp_raw
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:9026,10'
          Dst:             nl_parse_nested
        - Src:             'lib/odp-util.c:9031,28'
          Dst:             nl_attr_get_u32
        - Src:             'lib/odp-util.c:9033,9'
          Dst:             odp_decode_gbp_raw
    - functionName:    commit_set_pkt_mark_action
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8843
      functionLinenumberEnd: 8860
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          65
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - commit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:8854,9'
          Dst:             commit
    - functionName:    commit_set_priority_action
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8820
      functionLinenumberEnd: 8836
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          65
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - commit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:8831,9'
          Dst:             commit
    - functionName:    commit_vlan_action
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8233
      functionLinenumberEnd: 8253
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          96
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - flow_count_vlan_headers
        - flow_skip_common_vlan_headers
        - nl_msg_put_flag
        - nl_msg_put_unspec
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:8234,18'
          Dst:             flow_count_vlan_headers
        - Src:             'lib/odp-util.c:8235,18'
          Dst:             flow_count_vlan_headers
        - Src:             'lib/odp-util.c:8236,5'
          Dst:             flow_skip_common_vlan_headers
        - Src:             'lib/odp-util.c:8240,9'
          Dst:             nl_msg_put_flag
        - Src:             'lib/odp-util.c:8249,9'
          Dst:             nl_msg_put_unspec
    - functionName:    commit_set_icmp_action
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8512
      functionLinenumberEnd: 8539
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          80
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - commit
        - get_icmp_key
        - is_icmpv4
        - is_icmpv6
        - or_masks
        - put_icmp_key
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:8518,9'
          Dst:             is_icmpv4
        - Src:             'lib/odp-util.c:8520,16'
          Dst:             is_icmpv6
        - Src:             'lib/odp-util.c:8526,5'
          Dst:             get_icmp_key
        - Src:             'lib/odp-util.c:8527,5'
          Dst:             get_icmp_key
        - Src:             'lib/odp-util.c:8528,5'
          Dst:             get_icmp_key
        - Src:             'lib/odp-util.c:8531,9'
          Dst:             commit
        - Src:             'lib/odp-util.c:8533,9'
          Dst:             put_icmp_key
        - Src:             'lib/odp-util.c:8534,9'
          Dst:             or_masks
        - Src:             'lib/odp-util.c:8535,9'
          Dst:             put_icmp_key
    - functionName:    commit_set_port_action
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8777
      functionLinenumberEnd: 8813
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          118
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - commit
        - get_tp_key
        - is_ip_any
        - or_masks
        - put_tp_key
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:8788,10'
          Dst:             is_ip_any
        - Src:             'lib/odp-util.c:8802,5'
          Dst:             get_tp_key
        - Src:             'lib/odp-util.c:8803,5'
          Dst:             get_tp_key
        - Src:             'lib/odp-util.c:8804,5'
          Dst:             get_tp_key
        - Src:             'lib/odp-util.c:8807,9'
          Dst:             commit
        - Src:             'lib/odp-util.c:8809,9'
          Dst:             put_tp_key
        - Src:             'lib/odp-util.c:8810,9'
          Dst:             or_masks
        - Src:             'lib/odp-util.c:8811,9'
          Dst:             put_tp_key
    - functionName:    commit_set_nw_action
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8632
      functionLinenumberEnd: 8663
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          113
      EdgeCount:       14
      CyclomaticComplexity: 3
      functionsReached:
        - commit_set_arp_action
        - commit_set_ipv4_action
        - commit_set_ipv6_action
        - commit_set_nd_action
        - commit_set_nd_extensions_action
        - ntohs
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/odp-util.c:8640,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/odp-util.c:8640,13'
          Dst:             ntohs
        - Src:             'lib/odp-util.c:8642,9'
          Dst:             commit_set_ipv4_action
        - Src:             'lib/odp-util.c:8646,9'
          Dst:             commit_set_ipv6_action
        - Src:             'lib/odp-util.c:8650,22'
          Dst:             commit_set_nd_extensions_action
        - Src:             'lib/odp-util.c:8652,23'
          Dst:             commit_set_nd_action
        - Src:             'lib/odp-util.c:8659,16'
          Dst:             commit_set_arp_action
    - functionName:    commit_set_nsh_action
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8734
      functionLinenumberEnd: 8753
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          103
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - commit_nsh
        - htons
        - or_bytes
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:8737,26'
          Dst:             htons
        - Src:             'lib/odp-util.c:8742,5'
          Dst:             ovs_ignore
        - Src:             'lib/odp-util.c:8749,9'
          Dst:             commit_nsh
        - Src:             'lib/odp-util.c:8751,9'
          Dst:             or_bytes
    - functionName:    commit_mpls_action
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8259
      functionLinenumberEnd: 8331
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          213
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - commit_set_action
        - eth_type_mpls
        - flow_count_common_mpls_labels
        - flow_count_mpls_labels
        - flow_pop_mpls
        - flow_push_mpls
        - flow_set_mpls_lse
        - htons
        - nl_msg_put_be16
        - nl_msg_put_unspec_zero
        - ovs_ignore
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:8260,18'
          Dst:             flow_count_mpls_labels
        - Src:             'lib/odp-util.c:8261,18'
          Dst:             flow_count_mpls_labels
        - Src:             'lib/odp-util.c:8262,20'
          Dst:             flow_count_common_mpls_labels
        - Src:             'lib/odp-util.c:8274,13'
          Dst:             commit_set_action
        - Src:             'lib/odp-util.c:8276,13'
          Dst:             flow_set_mpls_lse
        - Src:             'lib/odp-util.c:8292,19'
          Dst:             eth_type_mpls
        - Src:             'lib/odp-util.c:8293,27'
          Dst:             htons
        - Src:             'lib/odp-util.c:8297,13'
          Dst:             nl_msg_put_be16
        - Src:             'lib/odp-util.c:8298,24'
          Dst:             flow_pop_mpls
        - Src:             'lib/odp-util.c:8298,13'
          Dst:             ovs_ignore
        - Src:             'lib/odp-util.c:8310,21'
          Dst:             nl_msg_put_unspec_zero
        - Src:             'lib/odp-util.c:8318,21'
          Dst:             nl_msg_put_unspec_zero
        - Src:             'lib/odp-util.c:8327,9'
          Dst:             flow_push_mpls
        - Src:             'lib/odp-util.c:8328,9'
          Dst:             flow_set_mpls_lse
    - functionName:    commit_set_ether_action
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8206
      functionLinenumberEnd: 8228
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          80
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - commit
        - get_ethernet_key
        - htonl
        - or_masks
        - put_ethernet_key
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:8211,30'
          Dst:             htonl
        - Src:             'lib/odp-util.c:8212,35'
          Dst:             htonl
        - Src:             'lib/odp-util.c:8216,5'
          Dst:             get_ethernet_key
        - Src:             'lib/odp-util.c:8217,5'
          Dst:             get_ethernet_key
        - Src:             'lib/odp-util.c:8218,5'
          Dst:             get_ethernet_key
        - Src:             'lib/odp-util.c:8221,9'
          Dst:             commit
        - Src:             'lib/odp-util.c:8224,9'
          Dst:             put_ethernet_key
        - Src:             'lib/odp-util.c:8225,9'
          Dst:             or_masks
        - Src:             'lib/odp-util.c:8226,9'
          Dst:             put_ethernet_key
    - functionName:    commit_encap_decap_action
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8902
      functionLinenumberEnd: 8963
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         31
      ICount:          208
      EdgeCount:       32
      CyclomaticComplexity: 3
      functionsReached:
        - abort
        - commit_mpls_action
        - htonl
        - ntohl
        - odp_put_pop_eth_action
        - odp_put_pop_nsh_action
        - odp_put_push_eth_action
        - odp_put_push_nsh_action
        - pt_ns
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/odp-util.c:8904,9'
          Branch Sides:    []
        - Branch String:   'lib/odp-util.c:8945,13'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/odp-util.c:8904,17'
          Dst:             ntohl
        - Src:             'lib/odp-util.c:8907,13'
          Dst:             odp_put_push_eth_action
        - Src:             'lib/odp-util.c:8916,13'
          Dst:             odp_put_push_nsh_action
        - Src:             'lib/odp-util.c:8925,13'
          Dst:             commit_mpls_action
        - Src:             'lib/odp-util.c:8931,13'
          Dst:             abort
        - Src:             'lib/odp-util.c:8935,13'
          Dst:             pt_ns
        - Src:             'lib/odp-util.c:8936,39'
          Dst:             htonl
        - Src:             'lib/odp-util.c:8938,13'
          Dst:             odp_put_pop_eth_action
        - Src:             'lib/odp-util.c:8945,21'
          Dst:             ntohl
        - Src:             'lib/odp-util.c:8948,17'
          Dst:             odp_put_pop_nsh_action
        - Src:             'lib/odp-util.c:8952,17'
          Dst:             commit_mpls_action
        - Src:             'lib/odp-util.c:8957,17'
          Dst:             abort
    - functionName:    odp_put_push_eth_action
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7989
      functionLinenumberEnd: 8002
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          51
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - nl_msg_put_unspec
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:8000,5'
          Dst:             nl_msg_put_unspec
    - functionName:    odp_put_pop_eth_action
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7981
      functionLinenumberEnd: 7983
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_msg_put_flag
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:7982,5'
          Dst:             nl_msg_put_flag
    - functionName:    commit_odp_actions
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8985
      functionLinenumberEnd: 9014
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
        - bool
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          155
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - commit_encap_decap_action
        - commit_mpls_action
        - commit_set_ether_action
        - commit_set_icmp_action
        - commit_set_nsh_action
        - commit_set_nw_action
        - commit_set_pkt_mark_action
        - commit_set_port_action
        - commit_set_priority_action
        - commit_vlan_action
        - eth_type_mpls
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:8994,5'
          Dst:             commit_encap_decap_action
        - Src:             'lib/odp-util.c:8996,5'
          Dst:             commit_set_ether_action
        - Src:             'lib/odp-util.c:8999,9'
          Dst:             eth_type_mpls
        - Src:             'lib/odp-util.c:8999,42'
          Dst:             eth_type_mpls
        - Src:             'lib/odp-util.c:9000,9'
          Dst:             commit_mpls_action
        - Src:             'lib/odp-util.c:9003,5'
          Dst:             commit_set_nsh_action
        - Src:             'lib/odp-util.c:9004,13'
          Dst:             commit_set_nw_action
        - Src:             'lib/odp-util.c:9005,5'
          Dst:             commit_set_port_action
        - Src:             'lib/odp-util.c:9006,13'
          Dst:             commit_set_icmp_action
        - Src:             'lib/odp-util.c:9008,9'
          Dst:             commit_mpls_action
        - Src:             'lib/odp-util.c:9010,5'
          Dst:             commit_vlan_action
        - Src:             'lib/odp-util.c:9011,5'
          Dst:             commit_set_priority_action
        - Src:             'lib/odp-util.c:9012,5'
          Dst:             commit_set_pkt_mark_action
    - functionName:    commit_odp_tunnel_action
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8090
      functionLinenumberEnd: 8100
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          53
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - flow_tnl_dst_is_set
        - memcmp
        - odp_put_tunnel_action
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:8093,9'
          Dst:             flow_tnl_dst_is_set
        - Src:             'lib/odp-util.c:8094,14'
          Dst:             memcmp
        - Src:             'lib/odp-util.c:8098,9'
          Dst:             odp_put_tunnel_action
    - functionName:    odp_put_tunnel_action
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8007
      functionLinenumberEnd: 8011
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_msg_end_nested
        - nl_msg_start_nested
        - tun_key_to_attr
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:8008,21'
          Dst:             nl_msg_start_nested
        - Src:             'lib/odp-util.c:8009,5'
          Dst:             tun_key_to_attr
        - Src:             'lib/odp-util.c:8010,5'
          Dst:             nl_msg_end_nested
    - functionName:    tun_key_to_attr
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3436
      functionLinenumberEnd: 3523
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         82
      ICount:          505
      EdgeCount:       110
      CyclomaticComplexity: 30
      functionsReached:
        - htonl
        - ipv6_addr_is_set
        - nl_msg_end_nested
        - nl_msg_put_be16
        - nl_msg_put_be32
        - nl_msg_put_be64
        - nl_msg_put_flag
        - nl_msg_put_in6_addr
        - nl_msg_put_u32
        - nl_msg_put_u8
        - nl_msg_put_unspec
        - nl_msg_put_unspec_zero
        - nl_msg_start_nested
        - odp_encode_gbp_raw
        - set_hwid
        - strcmp
        - tun_metadata_to_geneve_nlattr
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:3439,19'
          Dst:             nl_msg_start_nested
        - Src:             'lib/odp-util.c:3443,9'
          Dst:             nl_msg_put_be64
        - Src:             'lib/odp-util.c:3446,9'
          Dst:             nl_msg_put_be32
        - Src:             'lib/odp-util.c:3449,9'
          Dst:             nl_msg_put_be32
        - Src:             'lib/odp-util.c:3451,9'
          Dst:             ipv6_addr_is_set
        - Src:             'lib/odp-util.c:3452,9'
          Dst:             nl_msg_put_in6_addr
        - Src:             'lib/odp-util.c:3454,9'
          Dst:             ipv6_addr_is_set
        - Src:             'lib/odp-util.c:3455,9'
          Dst:             nl_msg_put_in6_addr
        - Src:             'lib/odp-util.c:3458,9'
          Dst:             nl_msg_put_u8
        - Src:             'lib/odp-util.c:3460,5'
          Dst:             nl_msg_put_u8
        - Src:             'lib/odp-util.c:3462,9'
          Dst:             nl_msg_put_flag
        - Src:             'lib/odp-util.c:3465,9'
          Dst:             nl_msg_put_flag
        - Src:             'lib/odp-util.c:3468,9'
          Dst:             nl_msg_put_be16
        - Src:             'lib/odp-util.c:3471,9'
          Dst:             nl_msg_put_be16
        - Src:             'lib/odp-util.c:3474,9'
          Dst:             nl_msg_put_flag
        - Src:             'lib/odp-util.c:3482,24'
          Dst:             strcmp
        - Src:             'lib/odp-util.c:3487,26'
          Dst:             nl_msg_start_nested
        - Src:             'lib/odp-util.c:3488,19'
          Dst:             odp_encode_gbp_raw
        - Src:             'lib/odp-util.c:3489,9'
          Dst:             nl_msg_put_u32
        - Src:             'lib/odp-util.c:3490,9'
          Dst:             nl_msg_end_nested
        - Src:             'lib/odp-util.c:3493,23'
          Dst:             strcmp
        - Src:             'lib/odp-util.c:3494,9'
          Dst:             tun_metadata_to_geneve_nlattr
        - Src:             'lib/odp-util.c:3497,24'
          Dst:             strcmp
        - Src:             'lib/odp-util.c:3498,10'
          Dst:             strcmp
        - Src:             'lib/odp-util.c:3502,16'
          Dst:             nl_msg_put_unspec_zero
        - Src:             'lib/odp-util.c:3506,29'
          Dst:             htonl
        - Src:             'lib/odp-util.c:3509,13'
          Dst:             set_hwid
        - Src:             'lib/odp-util.c:3513,24'
          Dst:             strcmp
        - Src:             'lib/odp-util.c:3519,9'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:3522,5'
          Dst:             nl_msg_end_nested
    - functionName:    odp_key_fitness_to_string
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7903
      functionLinenumberEnd: 7916
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          37
      EdgeCount:       12
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    3
      BranchProfiles:
        - Branch String:   'lib/odp-util.c:7904,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    parse_key_and_mask_to_match
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7850
      functionLinenumberEnd: 7898
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          135
      EdgeCount:       30
      CyclomaticComplexity: 8
      functionsReached:
        - ds_cstr
        - ds_destroy
        - ds_init
        - odp_flow_format
        - odp_flow_key_to_flow__
        - odp_flow_key_to_mask__
        - odp_key_fitness_to_string
        - vlog
        - vlog_should_drop
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:7853,15'
          Dst:             odp_flow_key_to_flow__
        - Src:             'lib/odp-util.c:7864,14'
          Dst:             vlog_should_drop
        - Src:             'lib/odp-util.c:7867,13'
          Dst:             ds_init
        - Src:             'lib/odp-util.c:7868,13'
          Dst:             odp_flow_format
        - Src:             'lib/odp-util.c:7869,13'
          Dst:             ds_cstr
        - Src:             'lib/odp-util.c:7869,13'
          Dst:             odp_key_fitness_to_string
        - Src:             'lib/odp-util.c:7869,13'
          Dst:             vlog
        - Src:             'lib/odp-util.c:7871,13'
          Dst:             ds_destroy
        - Src:             'lib/odp-util.c:7877,15'
          Dst:             odp_flow_key_to_mask__
        - Src:             'lib/odp-util.c:7883,14'
          Dst:             vlog_should_drop
        - Src:             'lib/odp-util.c:7886,13'
          Dst:             ds_init
        - Src:             'lib/odp-util.c:7887,13'
          Dst:             odp_flow_format
        - Src:             'lib/odp-util.c:7889,13'
          Dst:             ds_cstr
        - Src:             'lib/odp-util.c:7889,13'
          Dst:             odp_key_fitness_to_string
        - Src:             'lib/odp-util.c:7889,13'
          Dst:             vlog
        - Src:             'lib/odp-util.c:7891,13'
          Dst:             ds_destroy
    - functionName:    odp_flow_key_to_flow__
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7576
      functionLinenumberEnd: 7773
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         122
      ICount:          809
      EdgeCount:       161
      CyclomaticComplexity: 41
      functionsReached:
        - ds_cstr
        - ds_destroy
        - ds_put_cstr
        - eth_type_vlan
        - flow_format
        - htonl
        - htons
        - nl_attr_get
        - nl_attr_get_be16
        - nl_attr_get_be32
        - nl_attr_get_odp_port
        - nl_attr_get_u128
        - nl_attr_get_u16
        - nl_attr_get_u32
        - ntohs
        - odp_flow_key_format
        - odp_to_ovs_ct_state
        - odp_tun_key_from_attr__
        - parse_8021q_onward
        - parse_ethertype
        - parse_flow_nlattrs
        - parse_l2_5_onward
        - pt_ns
        - pt_ns_type_be
        - put_ethernet_key
        - vlog
        - vlog_should_drop
        - xasprintf
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:7596,10'
          Dst:             parse_flow_nlattrs
        - Src:             'lib/odp-util.c:7605,9'
          Dst:             vlog
        - Src:             'lib/odp-util.c:7612,27'
          Dst:             nl_attr_get_u32
        - Src:             'lib/odp-util.c:7620,25'
          Dst:             nl_attr_get_u32
        - Src:             'lib/odp-util.c:7624,30'
          Dst:             nl_attr_get_u32
        - Src:             'lib/odp-util.c:7629,26'
          Dst:             nl_attr_get_u32
        - Src:             'lib/odp-util.c:7634,30'
          Dst:             nl_attr_get_u32
        - Src:             'lib/odp-util.c:7636,26'
          Dst:             odp_to_ovs_ct_state
        - Src:             'lib/odp-util.c:7640,25'
          Dst:             nl_attr_get_u16
        - Src:             'lib/odp-util.c:7644,25'
          Dst:             nl_attr_get_u32
        - Src:             'lib/odp-util.c:7648,26'
          Dst:             nl_attr_get_u128
        - Src:             'lib/odp-util.c:7652,50'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:7661,50'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:7674,15'
          Dst:             odp_tun_key_from_attr__
        - Src:             'lib/odp-util.c:7685,15'
          Dst:             nl_attr_get_odp_port
        - Src:             'lib/odp-util.c:7693,15'
          Dst:             nl_attr_get_be32
        - Src:             'lib/odp-util.c:7695,13'
          Dst:             pt_ns
        - Src:             'lib/odp-util.c:7696,29'
          Dst:             pt_ns_type_be
        - Src:             'lib/odp-util.c:7699,29'
          Dst:             htonl
        - Src:             'lib/odp-util.c:7706,19'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:7707,9'
          Dst:             put_ethernet_key
        - Src:             'lib/odp-util.c:7709,33'
          Dst:             htonl
        - Src:             'lib/odp-util.c:7714,30'
          Dst:             nl_attr_get_be16
        - Src:             'lib/odp-util.c:7716,33'
          Dst:             ntohs
        - Src:             'lib/odp-util.c:7716,33'
          Dst:             htonl
        - Src:             'lib/odp-util.c:7723,10'
          Dst:             parse_ethertype
        - Src:             'lib/odp-util.c:7729,37'
          Dst:             htons
        - Src:             'lib/odp-util.c:7730,11'
          Dst:             eth_type_vlan
        - Src:             'lib/odp-util.c:7731,19'
          Dst:             parse_8021q_onward
        - Src:             'lib/odp-util.c:7738,35'
          Dst:             htons
        - Src:             'lib/odp-util.c:7739,34'
          Dst:             htons
        - Src:             'lib/odp-util.c:7741,38'
          Dst:             nl_attr_get_be16
        - Src:             'lib/odp-util.c:7746,19'
          Dst:             parse_l2_5_onward
        - Src:             'lib/odp-util.c:7753,49'
          Dst:             vlog_should_drop
        - Src:             'lib/odp-util.c:7756,13'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:7757,13'
          Dst:             odp_flow_key_format
        - Src:             'lib/odp-util.c:7758,13'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:7759,13'
          Dst:             flow_format
        - Src:             'lib/odp-util.c:7761,13'
          Dst:             ds_put_cstr
        - Src:             'lib/odp-util.c:7762,13'
          Dst:             odp_flow_key_format
        - Src:             'lib/odp-util.c:7766,54'
          Dst:             ds_cstr
        - Src:             'lib/odp-util.c:7766,23'
          Dst:             xasprintf
        - Src:             'lib/odp-util.c:7769,13'
          Dst:             ds_cstr
        - Src:             'lib/odp-util.c:7769,13'
          Dst:             vlog
        - Src:             'lib/odp-util.c:7771,9'
          Dst:             ds_destroy
    - functionName:    odp_flow_key_to_mask__
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7816
      functionLinenumberEnd: 7832
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          62
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - flow_wildcards_init_for_packet
        - odp_flow_key_to_flow__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:7818,16'
          Dst:             odp_flow_key_to_flow__
        - Src:             'lib/odp-util.c:7828,9'
          Dst:             flow_wildcards_init_for_packet
    - functionName:    odp_to_ovs_ct_state
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5254
      functionLinenumberEnd: 5264
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         25
      ICount:          138
      EdgeCount:       32
      CyclomaticComplexity: 9
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    odp_tun_key_from_attr__
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3306
      functionLinenumberEnd: 3415
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         48
      ICount:          403
      EdgeCount:       56
      CyclomaticComplexity: 10
      functionsReached:
        - get_hwid
        - nl_attr_get
        - nl_attr_get_be16
        - nl_attr_get_be32
        - nl_attr_get_be64
        - nl_attr_get_in6_addr
        - nl_attr_get_size
        - nl_attr_get_u8
        - nl_attr_is_valid
        - nl_attr_len_pad
        - nl_attr_next
        - nl_attr_type
        - ntohl
        - odp_key_attr_len
        - odp_parse_error
        - odp_vxlan_tun_opts_from_attr
        - tun_metadata_from_geneve_nlattr
        - vlog
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/odp-util.c:3326,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/odp-util.c:3313,5'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:3313,5'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-util.c:3313,5'
          Dst:             nl_attr_is_valid
        - Src:             'lib/odp-util.c:3314,25'
          Dst:             nl_attr_type
        - Src:             'lib/odp-util.c:3315,22'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-util.c:3316,28'
          Dst:             odp_key_attr_len
        - Src:             'lib/odp-util.c:3320,13'
          Dst:             odp_parse_error
        - Src:             'lib/odp-util.c:3328,27'
          Dst:             nl_attr_get_be64
        - Src:             'lib/odp-util.c:3332,27'
          Dst:             nl_attr_get_be32
        - Src:             'lib/odp-util.c:3335,27'
          Dst:             nl_attr_get_be32
        - Src:             'lib/odp-util.c:3338,29'
          Dst:             nl_attr_get_in6_addr
        - Src:             'lib/odp-util.c:3341,29'
          Dst:             nl_attr_get_in6_addr
        - Src:             'lib/odp-util.c:3344,27'
          Dst:             nl_attr_get_u8
        - Src:             'lib/odp-util.c:3347,27'
          Dst:             nl_attr_get_u8
        - Src:             'lib/odp-util.c:3357,27'
          Dst:             nl_attr_get_be16
        - Src:             'lib/odp-util.c:3360,27'
          Dst:             nl_attr_get_be16
        - Src:             'lib/odp-util.c:3366,17'
          Dst:             odp_vxlan_tun_opts_from_attr
        - Src:             'lib/odp-util.c:3369,17'
          Dst:             odp_parse_error
        - Src:             'lib/odp-util.c:3375,13'
          Dst:             tun_metadata_from_geneve_nlattr
        - Src:             'lib/odp-util.c:3378,50'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:3382,35'
          Dst:             ntohl
        - Src:             'lib/odp-util.c:3385,36'
          Dst:             get_hwid
        - Src:             'lib/odp-util.c:3387,17'
          Dst:             vlog
        - Src:             'lib/odp-util.c:3392,48'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:3313,5'
          Dst:             nl_attr_len_pad
        - Src:             'lib/odp-util.c:3313,5'
          Dst:             nl_attr_next
        - Src:             'lib/odp-util.c:3408,9'
          Dst:             odp_parse_error
    - functionName:    odp_flow_key_to_mask
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7838
      functionLinenumberEnd: 7840
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - odp_flow_key_to_mask__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:7839,12'
          Dst:             odp_flow_key_to_mask__
    - functionName:    odp_flow_key_to_flow
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7798
      functionLinenumberEnd: 7799
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - odp_flow_key_to_flow__
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:7799,12'
          Dst:             odp_flow_key_to_flow__
    - functionName:    ovsthread_once_start
      functionSourceFile: '/src/openvswitch/./include/openvswitch/thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsthread_once_start__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/thread.h:161,12'
          Dst:             ovsthread_once_start__
    - functionName:    odp_flow_key_hash
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6922
      functionLinenumberEnd: 6932
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hash_bytes128
        - ovsthread_once_done
        - ovsthread_once_start
        - random_uint32
        - uuid_set_bits_v4
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:6926,9'
          Dst:             ovsthread_once_start
        - Src:             'lib/odp-util.c:6927,18'
          Dst:             random_uint32
        - Src:             'lib/odp-util.c:6928,9'
          Dst:             ovsthread_once_done
        - Src:             'lib/odp-util.c:6930,5'
          Dst:             hash_bytes128
        - Src:             'lib/odp-util.c:6931,5'
          Dst:             uuid_set_bits_v4
    - functionName:    pkt_metadata_init
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 165
      functionLinenumberEnd: 183
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          34
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    odp_key_to_dp_packet
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6806
      functionLinenumberEnd: 6916
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         66
      ICount:          408
      EdgeCount:       73
      CyclomaticComplexity: 9
      functionsReached:
        - htonl
        - nl_attr_get
        - nl_attr_get_be16
        - nl_attr_get_odp_port
        - nl_attr_get_size
        - nl_attr_get_u128
        - nl_attr_get_u16
        - nl_attr_get_u32
        - nl_attr_is_valid
        - nl_attr_len_pad
        - nl_attr_next
        - nl_attr_type
        - ntohs
        - odp_key_attr_len
        - odp_to_ovs_ct_state
        - odp_tun_key_from_attr
        - pkt_metadata_init
        - vlog_rate_limit
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib/odp-util.c:6826,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/odp-util.c:6810,28'
          Dst:             htonl
        - Src:             'lib/odp-util.c:6814,5'
          Dst:             pkt_metadata_init
        - Src:             'lib/odp-util.c:6816,5'
          Dst:             nl_attr_is_valid
        - Src:             'lib/odp-util.c:6817,34'
          Dst:             nl_attr_type
        - Src:             'lib/odp-util.c:6818,22'
          Dst:             nl_attr_get_size
        - Src:             'lib/odp-util.c:6819,28'
          Dst:             odp_key_attr_len
        - Src:             'lib/odp-util.c:6828,29'
          Dst:             nl_attr_get_u32
        - Src:             'lib/odp-util.c:6831,27'
          Dst:             nl_attr_get_u32
        - Src:             'lib/odp-util.c:6834,32'
          Dst:             nl_attr_get_u32
        - Src:             'lib/odp-util.c:6837,28'
          Dst:             nl_attr_get_u32
        - Src:             'lib/odp-util.c:6840,48'
          Dst:             nl_attr_get_u32
        - Src:             'lib/odp-util.c:6840,28'
          Dst:             odp_to_ovs_ct_state
        - Src:             'lib/odp-util.c:6843,27'
          Dst:             nl_attr_get_u16
        - Src:             'lib/odp-util.c:6846,27'
          Dst:             nl_attr_get_u32
        - Src:             'lib/odp-util.c:6849,28'
          Dst:             nl_attr_get_u128
        - Src:             'lib/odp-util.c:6853,54'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:6859,54'
          Dst:             nl_attr_get
        - Src:             'lib/odp-util.c:6868,19'
          Dst:             odp_tun_key_from_attr
        - Src:             'lib/odp-util.c:6875,36'
          Dst:             nl_attr_get_odp_port
        - Src:             'lib/odp-util.c:6879,27'
          Dst:             htonl
        - Src:             'lib/odp-util.c:6882,25'
          Dst:             nl_attr_get_be16
        - Src:             'lib/odp-util.c:6816,5'
          Dst:             nl_attr_len_pad
        - Src:             'lib/odp-util.c:6816,5'
          Dst:             nl_attr_next
        - Src:             'lib/odp-util.c:6908,24'
          Dst:             htonl
        - Src:             'lib/odp-util.c:6909,31'
          Dst:             htonl
        - Src:             'lib/odp-util.c:6910,31'
          Dst:             htonl
        - Src:             'lib/odp-util.c:6911,31'
          Dst:             ntohs
        - Src:             'lib/odp-util.c:6911,31'
          Dst:             htonl
        - Src:             'lib/odp-util.c:6914,9'
          Dst:             vlog_rate_limit
    - functionName:    odp_tun_key_from_attr
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3424
      functionLinenumberEnd: 3429
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - odp_tun_key_from_attr__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:3429,12'
          Dst:             odp_tun_key_from_attr__
    - functionName:    odp_key_from_dp_packet
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6746
      functionLinenumberEnd: 6800
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         36
      ICount:          249
      EdgeCount:       47
      CyclomaticComplexity: 13
      functionsReached:
        - flow_tnl_dst_is_set
        - nl_msg_put_be16
        - nl_msg_put_odp_port
        - nl_msg_put_u16
        - nl_msg_put_u32
        - nl_msg_put_unspec
        - ovs_to_odp_ct_state
        - ovs_u128_is_zero
        - pt_ns
        - pt_ns_type_be
        - tun_key_to_attr
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:6749,5'
          Dst:             nl_msg_put_u32
        - Src:             'lib/odp-util.c:6752,9'
          Dst:             nl_msg_put_u32
        - Src:             'lib/odp-util.c:6755,9'
          Dst:             flow_tnl_dst_is_set
        - Src:             'lib/odp-util.c:6756,9'
          Dst:             tun_key_to_attr
        - Src:             'lib/odp-util.c:6759,5'
          Dst:             nl_msg_put_u32
        - Src:             'lib/odp-util.c:6763,24'
          Dst:             ovs_to_odp_ct_state
        - Src:             'lib/odp-util.c:6762,9'
          Dst:             nl_msg_put_u32
        - Src:             'lib/odp-util.c:6765,13'
          Dst:             nl_msg_put_u16
        - Src:             'lib/odp-util.c:6768,13'
          Dst:             nl_msg_put_u32
        - Src:             'lib/odp-util.c:6770,14'
          Dst:             ovs_u128_is_zero
        - Src:             'lib/odp-util.c:6771,13'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6776,17'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6782,17'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6792,9'
          Dst:             nl_msg_put_odp_port
        - Src:             'lib/odp-util.c:6796,9'
          Dst:             pt_ns
        - Src:             'lib/odp-util.c:6798,25'
          Dst:             pt_ns_type_be
        - Src:             'lib/odp-util.c:6797,9'
          Dst:             nl_msg_put_be16
    - functionName:    odp_flow_key_from_mask
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6739
      functionLinenumberEnd: 6741
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - odp_flow_key_from_flow__
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:6740,5'
          Dst:             odp_flow_key_from_flow__
    - functionName:    odp_flow_key_from_flow__
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6467
      functionLinenumberEnd: 6718
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         167
      ICount:          1113
      EdgeCount:       223
      CyclomaticComplexity: 58
      functionsReached:
        - eth_type_mpls
        - eth_type_vlan
        - flow_count_mpls_labels
        - flow_tnl_dst_is_set
        - flow_tnl_src_is_set
        - get_arp_key
        - get_ethernet_key
        - get_ipv4_key
        - get_ipv6_key
        - get_tp_key
        - htonl
        - htons
        - is_ip_any
        - is_nd
        - nl_msg_end_nested
        - nl_msg_put_be16
        - nl_msg_put_be32
        - nl_msg_put_odp_port
        - nl_msg_put_u16
        - nl_msg_put_u32
        - nl_msg_put_unspec
        - nl_msg_put_unspec_uninit
        - nl_msg_put_unspec_zero
        - nl_msg_start_nested
        - nsh_key_to_attr
        - ntohs
        - ovs_to_odp_ct_state
        - tun_key_to_attr
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:6481,9'
          Dst:             nl_msg_put_u32
        - Src:             'lib/odp-util.c:6482,9'
          Dst:             nl_msg_put_u32
        - Src:             'lib/odp-util.c:6485,5'
          Dst:             nl_msg_put_u32
        - Src:             'lib/odp-util.c:6487,9'
          Dst:             flow_tnl_dst_is_set
        - Src:             'lib/odp-util.c:6488,9'
          Dst:             flow_tnl_src_is_set
        - Src:             'lib/odp-util.c:6489,9'
          Dst:             tun_key_to_attr
        - Src:             'lib/odp-util.c:6496,9'
          Dst:             nl_msg_put_odp_port
        - Src:             'lib/odp-util.c:6499,5'
          Dst:             nl_msg_put_u32
        - Src:             'lib/odp-util.c:6503,24'
          Dst:             ovs_to_odp_ct_state
        - Src:             'lib/odp-util.c:6502,9'
          Dst:             nl_msg_put_u32
        - Src:             'lib/odp-util.c:6506,9'
          Dst:             nl_msg_put_u16
        - Src:             'lib/odp-util.c:6509,9'
          Dst:             nl_msg_put_u32
        - Src:             'lib/odp-util.c:6512,9'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/odp-util.c:6517,33'
          Dst:             htons
        - Src:             'lib/odp-util.c:6521,18'
          Dst:             nl_msg_put_unspec_zero
        - Src:             'lib/odp-util.c:6529,40'
          Dst:             htons
        - Src:             'lib/odp-util.c:6533,18'
          Dst:             nl_msg_put_unspec_zero
        - Src:             'lib/odp-util.c:6543,5'
          Dst:             nl_msg_put_be32
        - Src:             'lib/odp-util.c:6552,30'
          Dst:             htonl
        - Src:             'lib/odp-util.c:6553,19'
          Dst:             nl_msg_put_unspec_uninit
        - Src:             'lib/odp-util.c:6555,9'
          Dst:             get_ethernet_key
        - Src:             'lib/odp-util.c:6560,44'
          Dst:             htons
        - Src:             'lib/odp-util.c:6561,21'
          Dst:             eth_type_vlan
        - Src:             'lib/odp-util.c:6570,17'
          Dst:             nl_msg_put_be16
        - Src:             'lib/odp-util.c:6572,17'
          Dst:             nl_msg_put_be16
        - Src:             'lib/odp-util.c:6574,13'
          Dst:             nl_msg_put_be16
        - Src:             'lib/odp-util.c:6575,29'
          Dst:             nl_msg_start_nested
        - Src:             'lib/odp-util.c:6576,44'
          Dst:             htons
        - Src:             'lib/odp-util.c:6582,9'
          Dst:             ntohs
        - Src:             'lib/odp-util.c:6595,13'
          Dst:             nl_msg_put_be16
        - Src:             'lib/odp-util.c:6600,5'
          Dst:             nl_msg_put_be16
        - Src:             'lib/odp-util.c:6602,9'
          Dst:             eth_type_vlan
        - Src:             'lib/odp-util.c:6606,26'
          Dst:             htons
        - Src:             'lib/odp-util.c:6609,20'
          Dst:             nl_msg_put_unspec_uninit
        - Src:             'lib/odp-util.c:6611,9'
          Dst:             get_ipv4_key
        - Src:             'lib/odp-util.c:6612,33'
          Dst:             htons
        - Src:             'lib/odp-util.c:6615,20'
          Dst:             nl_msg_put_unspec_uninit
        - Src:             'lib/odp-util.c:6617,9'
          Dst:             get_ipv6_key
        - Src:             'lib/odp-util.c:6618,33'
          Dst:             htons
        - Src:             'lib/odp-util.c:6619,33'
          Dst:             htons
        - Src:             'lib/odp-util.c:6622,19'
          Dst:             nl_msg_put_unspec_uninit
        - Src:             'lib/odp-util.c:6624,9'
          Dst:             get_arp_key
        - Src:             'lib/odp-util.c:6625,16'
          Dst:             eth_type_mpls
        - Src:             'lib/odp-util.c:6629,13'
          Dst:             flow_count_mpls_labels
        - Src:             'lib/odp-util.c:6633,20'
          Dst:             nl_msg_put_unspec_uninit
        - Src:             'lib/odp-util.c:6638,33'
          Dst:             htons
        - Src:             'lib/odp-util.c:6639,9'
          Dst:             nsh_key_to_attr
        - Src:             'lib/odp-util.c:6642,9'
          Dst:             is_ip_any
        - Src:             'lib/odp-util.c:6646,23'
          Dst:             nl_msg_put_unspec_uninit
        - Src:             'lib/odp-util.c:6648,13'
          Dst:             get_tp_key
        - Src:             'lib/odp-util.c:6650,17'
          Dst:             nl_msg_put_be16
        - Src:             'lib/odp-util.c:6655,23'
          Dst:             nl_msg_put_unspec_uninit
        - Src:             'lib/odp-util.c:6657,13'
          Dst:             get_tp_key
        - Src:             'lib/odp-util.c:6661,24'
          Dst:             nl_msg_put_unspec_uninit
        - Src:             'lib/odp-util.c:6663,13'
          Dst:             get_tp_key
        - Src:             'lib/odp-util.c:6664,37'
          Dst:             htons
        - Src:             'lib/odp-util.c:6668,24'
          Dst:             nl_msg_put_unspec_uninit
        - Src:             'lib/odp-util.c:6670,35'
          Dst:             ntohs
        - Src:             'lib/odp-util.c:6671,35'
          Dst:             ntohs
        - Src:             'lib/odp-util.c:6672,37'
          Dst:             htons
        - Src:             'lib/odp-util.c:6676,26'
          Dst:             nl_msg_put_unspec_uninit
        - Src:             'lib/odp-util.c:6678,39'
          Dst:             ntohs
        - Src:             'lib/odp-util.c:6679,39'
          Dst:             ntohs
        - Src:             'lib/odp-util.c:6681,17'
          Dst:             is_nd
        - Src:             'lib/odp-util.c:6685,53'
          Dst:             htons
        - Src:             'lib/odp-util.c:6687,26'
          Dst:             nl_msg_put_unspec_uninit
        - Src:             'lib/odp-util.c:6701,38'
          Dst:             nl_msg_put_unspec_zero
        - Src:             'lib/odp-util.c:6705,55'
          Dst:             ntohs
        - Src:             'lib/odp-util.c:6715,13'
          Dst:             nl_msg_end_nested
    - functionName:    odp_flow_key_from_flow
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6727
      functionLinenumberEnd: 6729
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - odp_flow_key_from_flow__
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:6728,5'
          Dst:             odp_flow_key_from_flow__
    - functionName:    odp_flow_from_string
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6369
      functionLinenumberEnd: 6421
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         35
      ICount:          216
      EdgeCount:       46
      CyclomaticComplexity: 13
      functionsReached:
        - nl_attr_oversized
        - odp_ufid_from_string
        - parse_odp_key_mask_attr
        - strspn
        - xasprintf
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:6381,14'
          Dst:             strspn
        - Src:             'lib/odp-util.c:6388,18'
          Dst:             odp_ufid_from_string
        - Src:             'lib/odp-util.c:6391,27'
          Dst:             xasprintf
        - Src:             'lib/odp-util.c:6400,18'
          Dst:             parse_odp_key_mask_attr
        - Src:             'lib/odp-util.c:6403,17'
          Dst:             nl_attr_oversized
        - Src:             'lib/odp-util.c:6405,32'
          Dst:             nl_attr_oversized
        - Src:             'lib/odp-util.c:6412,27'
          Dst:             xasprintf
    - functionName:    odp_ufid_from_string
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4806
      functionLinenumberEnd: 4821
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          54
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - ovs_scan
        - uuid_from_string_prefix
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:4809,9'
          Dst:             ovs_scan
        - Src:             'lib/odp-util.c:4812,14'
          Dst:             uuid_from_string_prefix
    - functionName:    odp_format_ufid
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4825
      functionLinenumberEnd: 4827
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          45
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_format
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:4826,5'
          Dst:             ds_put_format
    - functionName:    hmap_pop_helper__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 226
      functionLinenumberEnd: 238
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          66
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - hmap_remove
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:232,13'
          Dst:             hmap_remove
    - functionName:    odp_portno_names_destroy
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3663
      functionLinenumberEnd: 3670
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          52
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - hmap_pop_helper__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:3666,5'
          Dst:             hmap_pop_helper__
    - functionName:    hmap_insert_at
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 306
      functionLinenumberEnd: 311
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_expand_at
        - hmap_insert_fast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:307,5'
          Dst:             hmap_insert_fast
        - Src:             './include/openvswitch/hmap.h:309,9'
          Dst:             hmap_expand_at
    - functionName:    odp_portno_names_set
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3635
      functionLinenumberEnd: 3643
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_odp_port
        - hmap_insert_at
        - xmalloc
        - xstrdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:3638,24'
          Dst:             xmalloc
        - Src:             'lib/odp-util.c:3640,30'
          Dst:             xstrdup
        - Src:             'lib/odp-util.c:3641,5'
          Dst:             hash_odp_port
        - Src:             'lib/odp-util.c:3641,5'
          Dst:             hmap_insert_at
    - functionName:    odp_nsh_key_from_attr
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3295
      functionLinenumberEnd: 3296
      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:
        - odp_nsh_key_from_attr__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:3296,12'
          Dst:             odp_nsh_key_from_attr__
    - functionName:    odp_actions_from_string
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2937
      functionLinenumberEnd: 2972
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          131
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - nl_attr_oversized
        - nl_msg_put_u32
        - parse_odp_action
        - strcasecmp
        - strchr
        - strspn
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.c:2940,10'
          Dst:             strcasecmp
        - Src:             'lib/odp-util.c:2941,9'
          Dst:             nl_msg_put_u32
        - Src:             'lib/odp-util.c:2953,14'
          Dst:             strspn
        - Src:             'lib/odp-util.c:2958,18'
          Dst:             parse_odp_action
        - Src:             'lib/odp-util.c:2960,28'
          Dst:             nl_attr_oversized
        - Src:             'lib/odp-util.c:2964,28'
          Dst:             strchr
    - functionName:    slow_path_reason_to_explanation
      functionSourceFile: '/src/openvswitch/lib/odp-util.c'
      linkageType:     InternalLinkage
      functionLinenumber: 418
      functionLinenumberEnd: 426
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          52
      EdgeCount:       18
      CyclomaticComplexity: 10
      functionsReached: []
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib/odp-util.c:419,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    init_this_module_ofp_actions
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 46
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:46,1'
          Dst:             vlog_insert_module
    - functionName:    str_to_nat_range
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7366
      functionLinenumberEnd: 7420
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         54
      ICount:          377
      EdgeCount:       73
      CyclomaticComplexity: 21
      functionsReached:
        - inet_pton
        - memcmp
        - ntohl
        - ovs_scan_len
        - strlen
        - xasprintf
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:7371,9'
          Dst:             ovs_scan_len
        - Src:             'lib/ofp-actions.c:7377,18'
          Dst:             ovs_scan_len
        - Src:             'lib/ofp-actions.c:7379,21'
          Dst:             ntohl
        - Src:             'lib/ofp-actions.c:7380,23'
          Dst:             ntohl
        - Src:             'lib/ofp-actions.c:7384,17'
          Dst:             ovs_scan_len
        - Src:             'lib/ofp-actions.c:7385,20'
          Dst:             ovs_scan_len
        - Src:             'lib/ofp-actions.c:7386,19'
          Dst:             inet_pton
        - Src:             'lib/ofp-actions.c:7391,19'
          Dst:             ovs_scan_len
        - Src:             'lib/ofp-actions.c:7392,22'
          Dst:             ovs_scan_len
        - Src:             'lib/ofp-actions.c:7393,20'
          Dst:             inet_pton
        - Src:             'lib/ofp-actions.c:7394,20'
          Dst:             memcmp
        - Src:             'lib/ofp-actions.c:7402,14'
          Dst:             ovs_scan_len
        - Src:             'lib/ofp-actions.c:7407,18'
          Dst:             ovs_scan_len
        - Src:             'lib/ofp-actions.c:7413,9'
          Dst:             strlen
        - Src:             'lib/ofp-actions.c:7414,16'
          Dst:             xasprintf
        - Src:             'lib/ofp-actions.c:7419,12'
          Dst:             xasprintf
    - functionName:    parse_ed_props
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4545
      functionLinenumberEnd: 4563
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - short
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          78
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - ofputil_parse_key_value
        - parse_ed_prop_type
        - parse_ed_prop_value
        - xasprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:4549,12'
          Dst:             ofputil_parse_key_value
        - Src:             'lib/ofp-actions.c:4550,14'
          Dst:             parse_ed_prop_type
        - Src:             'lib/ofp-actions.c:4551,20'
          Dst:             xasprintf
        - Src:             'lib/ofp-actions.c:4554,20'
          Dst:             xasprintf
        - Src:             'lib/ofp-actions.c:4556,15'
          Dst:             parse_ed_prop_value
    - functionName:    parse_encap_header
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4528
      functionLinenumberEnd: 4541
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          75
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - htonl
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:4529,9'
          Dst:             strcmp
        - Src:             'lib/ofp-actions.c:4530,24'
          Dst:             htonl
        - Src:             'lib/ofp-actions.c:4531,16'
          Dst:             strcmp
        - Src:             'lib/ofp-actions.c:4532,24'
          Dst:             htonl
        - Src:             'lib/ofp-actions.c:4533,16'
          Dst:             strcmp
        - Src:             'lib/ofp-actions.c:4534,24'
          Dst:             htonl
        - Src:             'lib/ofp-actions.c:4535,16'
          Dst:             strcmp
        - Src:             'lib/ofp-actions.c:4536,24'
          Dst:             htonl
    - functionName:    parse_noargs_dec_ttl
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3689
      functionLinenumberEnd: 3698
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          40
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_finish_DEC_TTL
        - ofpact_put_DEC_TTL
        - ofpbuf_put
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:3693,5'
          Dst:             ofpact_put_DEC_TTL
        - Src:             'lib/ofp-actions.c:3694,5'
          Dst:             ofpbuf_put
        - Src:             'lib/ofp-actions.c:3697,5'
          Dst:             ofpact_finish_DEC_TTL
    - functionName:    ofpact_put_DEC_TTL
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_put
    - functionName:    ofpact_finish_DEC_TTL
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_finish
        - ovs_ignore
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ovs_ignore
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_finish
    - functionName:    ofpact_finish
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9535
      functionLinenumberEnd: 9544
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          63
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofpbuf_padto
        - ofpbuf_tail
        - ovs_ignore
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:9538,5'
          Dst:             ovs_ignore
        - Src:             'lib/ofp-actions.c:9539,20'
          Dst:             ofpbuf_tail
        - Src:             'lib/ofp-actions.c:9540,5'
          Dst:             ovs_ignore
        - Src:             'lib/ofp-actions.c:9542,5'
          Dst:             ofpbuf_padto
    - functionName:    ofpbuf_tail
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 203
      functionLinenumberEnd: 205
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          56
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ovs_ignore
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:204,5'
          Dst:             ovs_ignore
    - functionName:    ofpact_put
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9505
      functionLinenumberEnd: 9511
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - char
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_init
        - ofpbuf_put_uninit
      functionUses:    64
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:9508,23'
          Dst:             ofpbuf_put_uninit
        - Src:             'lib/ofp-actions.c:9510,5'
          Dst:             ofpact_init
    - functionName:    ofpact_init
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9517
      functionLinenumberEnd: 9522
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - char
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          25
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_field_split_str
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3195
      functionLinenumberEnd: 3218
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          88
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - strlen
        - strstr
        - xasprintf
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:3204,17'
          Dst:             strstr
        - Src:             'lib/ofp-actions.c:3206,16'
          Dst:             xasprintf
        - Src:             'lib/ofp-actions.c:3213,9'
          Dst:             strlen
        - Src:             'lib/ofp-actions.c:3214,16'
          Dst:             xasprintf
    - functionName:    set_field_parse__
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3227
      functionLinenumberEnd: 3262
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          110
      EdgeCount:       19
      CyclomaticComplexity: 7
      functionsReached:
        - mf_from_name
        - mf_is_value_valid
        - mf_parse
        - ofpact_put_set_field
        - set_field_split_str
        - xasprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:3235,13'
          Dst:             set_field_split_str
        - Src:             'lib/ofp-actions.c:3240,10'
          Dst:             mf_from_name
        - Src:             'lib/ofp-actions.c:3242,16'
          Dst:             xasprintf
        - Src:             'lib/ofp-actions.c:3245,16'
          Dst:             xasprintf
        - Src:             'lib/ofp-actions.c:3249,13'
          Dst:             mf_parse
        - Src:             'lib/ofp-actions.c:3254,10'
          Dst:             mf_is_value_valid
        - Src:             'lib/ofp-actions.c:3255,16'
          Dst:             xasprintf
        - Src:             'lib/ofp-actions.c:3260,5'
          Dst:             ofpact_put_set_field
    - functionName:    ofpact_put_set_field
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3385
      functionLinenumberEnd: 3413
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          115
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ofpact_finish_SET_FIELD
        - ofpact_put_SET_FIELD
        - ofpbuf_put_zeros
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:3392,35'
          Dst:             ofpact_put_SET_FIELD
        - Src:             'lib/ofp-actions.c:3396,5'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-actions.c:3411,5'
          Dst:             ofpact_finish_SET_FIELD
    - functionName:    ofpact_put_SET_FIELD
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_put
    - functionName:    ofpact_finish_SET_FIELD
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_finish
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ovs_ignore
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_finish
    - functionName:    ofpbuf_oversized
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 291
      functionLinenumberEnd: 292
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpbuf_tail
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:292,20'
          Dst:             ofpbuf_tail
    - functionName:    parse_truncate_subfield
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 630
      functionLinenumberEnd: 666
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          150
      EdgeCount:       36
      CyclomaticComplexity: 11
      functionsReached:
        - ofp_to_u16
        - ofputil_parse_key_value
        - ofputil_port_from_string
        - str_to_u32
        - strcmp
        - xasprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:634,12'
          Dst:             ofputil_parse_key_value
        - Src:             'lib/ofp-actions.c:635,14'
          Dst:             strcmp
        - Src:             'lib/ofp-actions.c:636,18'
          Dst:             ofputil_port_from_string
        - Src:             'lib/ofp-actions.c:638,24'
          Dst:             xasprintf
        - Src:             'lib/ofp-actions.c:641,17'
          Dst:             ofp_to_u16
        - Src:             'lib/ofp-actions.c:641,50'
          Dst:             ofp_to_u16
        - Src:             'lib/ofp-actions.c:644,24'
          Dst:             xasprintf
        - Src:             'lib/ofp-actions.c:647,21'
          Dst:             strcmp
        - Src:             'lib/ofp-actions.c:650,19'
          Dst:             str_to_u32
        - Src:             'lib/ofp-actions.c:656,24'
          Dst:             xasprintf
        - Src:             'lib/ofp-actions.c:661,20'
          Dst:             xasprintf
    - functionName:    ofp_to_u16
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 196
      functionLinenumberEnd: 197
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    18
      BranchProfiles:  []
      Callsites:       []
    - functionName:    parse_GOTO_TABLE
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7939
      functionLinenumberEnd: 7945
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofpact_put_GOTO_TABLE
        - ofputil_table_from_string
        - xasprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:7940,37'
          Dst:             ofpact_put_GOTO_TABLE
        - Src:             'lib/ofp-actions.c:7941,10'
          Dst:             ofputil_table_from_string
        - Src:             'lib/ofp-actions.c:7942,16'
          Dst:             xasprintf
    - functionName:    ofpact_put_GOTO_TABLE
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_put
    - functionName:    parse_WRITE_METADATA
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7758
      functionLinenumberEnd: 7778
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          74
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ofpact_put_WRITE_METADATA
        - str_to_be64
        - strchr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:7760,18'
          Dst:             strchr
        - Src:             'lib/ofp-actions.c:7764,10'
          Dst:             ofpact_put_WRITE_METADATA
        - Src:             'lib/ofp-actions.c:7769,17'
          Dst:             str_to_be64
        - Src:             'lib/ofp-actions.c:7777,12'
          Dst:             str_to_be64
    - functionName:    ofpact_put_WRITE_METADATA
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_put
    - functionName:    parse_WRITE_ACTIONS
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7658
      functionLinenumberEnd: 7683
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          57
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put
        - ofpacts_parse
        - ofpacts_pull
        - ofpbuf_pull
        - ofpbuf_push_uninit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:7659,18'
          Dst:             ofpacts_pull
        - Src:             'lib/ofp-actions.c:7664,5'
          Dst:             ofpact_put
        - Src:             'lib/ofp-actions.c:7665,5'
          Dst:             ofpbuf_pull
        - Src:             'lib/ofp-actions.c:7674,13'
          Dst:             ofpacts_parse
        - Src:             'lib/ofp-actions.c:7677,10'
          Dst:             ofpbuf_push_uninit
        - Src:             'lib/ofp-actions.c:7681,5'
          Dst:             ofpbuf_push_uninit
    - functionName:    ofpacts_pull
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 536
      functionLinenumberEnd: 542
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpbuf_pull
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:540,5'
          Dst:             ofpbuf_pull
    - functionName:    ofpbuf_pull
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 258
      functionLinenumberEnd: 269
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          64
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
      functionUses:    18
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:259,5'
          Dst:             ovs_ignore
    - functionName:    ofpacts_parse
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9659
      functionLinenumberEnd: 9671
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          79
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ofpacts_parse__
        - ofpbuf_truncate
        - xstrdup
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:9661,16'
          Dst:             xstrdup
        - Src:             'lib/ofp-actions.c:9665,19'
          Dst:             ofpacts_parse__
        - Src:             'lib/ofp-actions.c:9667,9'
          Dst:             ofpbuf_truncate
    - functionName:    ofpacts_parse__
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9586
      functionLinenumberEnd: 9654
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         56
      ICount:          310
      EdgeCount:       75
      CyclomaticComplexity: 21
      functionsReached:
        - ofpact_parse
        - ofpact_put_OUTPUT
        - ofpact_type_from_name
        - ofpacts_verify
        - ofputil_parse_key_value
        - ofputil_port_from_string
        - parse_SET_IP_TTL
        - parse_bundle_load
        - parse_pop_vlan
        - parse_reg_load
        - parse_set_tunnel
        - parse_set_vlan_pcp
        - parse_set_vlan_vid
        - strcasecmp
        - xasprintf
        - xstrdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:9593,12'
          Dst:             ofputil_parse_key_value
        - Src:             'lib/ofp-actions.c:9597,13'
          Dst:             ofpact_type_from_name
        - Src:             'lib/ofp-actions.c:9598,21'
          Dst:             ofpact_parse
        - Src:             'lib/ofp-actions.c:9606,21'
          Dst:             strcasecmp
        - Src:             'lib/ofp-actions.c:9607,21'
          Dst:             parse_set_vlan_vid
        - Src:             'lib/ofp-actions.c:9608,21'
          Dst:             strcasecmp
        - Src:             'lib/ofp-actions.c:9609,21'
          Dst:             parse_set_vlan_pcp
        - Src:             'lib/ofp-actions.c:9610,21'
          Dst:             strcasecmp
        - Src:             'lib/ofp-actions.c:9611,21'
          Dst:             parse_SET_IP_TTL
        - Src:             'lib/ofp-actions.c:9612,21'
          Dst:             strcasecmp
        - Src:             'lib/ofp-actions.c:9613,21'
          Dst:             parse_pop_vlan
        - Src:             'lib/ofp-actions.c:9614,21'
          Dst:             strcasecmp
        - Src:             'lib/ofp-actions.c:9615,21'
          Dst:             parse_set_tunnel
        - Src:             'lib/ofp-actions.c:9616,21'
          Dst:             strcasecmp
        - Src:             'lib/ofp-actions.c:9617,21'
          Dst:             parse_reg_load
        - Src:             'lib/ofp-actions.c:9618,21'
          Dst:             strcasecmp
        - Src:             'lib/ofp-actions.c:9619,21'
          Dst:             parse_bundle_load
        - Src:             'lib/ofp-actions.c:9620,21'
          Dst:             strcasecmp
        - Src:             'lib/ofp-actions.c:9622,21'
          Dst:             strcasecmp
        - Src:             'lib/ofp-actions.c:9623,20'
          Dst:             xstrdup
        - Src:             'lib/ofp-actions.c:9624,20'
          Dst:             ofputil_port_from_string
        - Src:             'lib/ofp-actions.c:9625,13'
          Dst:             ofpact_put_OUTPUT
        - Src:             'lib/ofp-actions.c:9627,20'
          Dst:             xasprintf
        - Src:             'lib/ofp-actions.c:9633,20'
          Dst:             xasprintf
        - Src:             'lib/ofp-actions.c:9638,16'
          Dst:             xstrdup
        - Src:             'lib/ofp-actions.c:9643,5'
          Dst:             ofpacts_verify
    - functionName:    ofpbuf_truncate
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 297
      functionLinenumberEnd: 300
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:298,5'
          Dst:             ovs_ignore
    - functionName:    ofpact_type_from_name
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9564
      functionLinenumberEnd: 9574
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         122
      ICount:          730
      EdgeCount:       181
      CyclomaticComplexity: 61
      functionsReached:
        - strcasecmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:9570,5'
          Dst:             strcasecmp
        - Src:             'lib/ofp-actions.c:9570,5'
          Dst:             strcasecmp
        - Src:             'lib/ofp-actions.c:9570,5'
          Dst:             strcasecmp
        - Src:             'lib/ofp-actions.c:9570,5'
          Dst:             strcasecmp
        - Src:             'lib/ofp-actions.c:9570,5'
          Dst:             strcasecmp
        - Src:             'lib/ofp-actions.c:9570,5'
          Dst:             strcasecmp
        - Src:             'lib/ofp-actions.c:9570,5'
          Dst:             strcasecmp
        - Src:             'lib/ofp-actions.c:9570,5'
          Dst:             strcasecmp
        - Src:             'lib/ofp-actions.c:9570,5'
          Dst:             strcasecmp
        - Src:             'lib/ofp-actions.c:9570,5'
          Dst:             strcasecmp
        - Src:             'lib/ofp-actions.c:9570,5'
          Dst:             strcasecmp
        - Src:             'lib/ofp-actions.c:9570,5'
          Dst:             strcasecmp
        - Src:             'lib/ofp-actions.c:9570,5'
          Dst:             strcasecmp
        - Src:             'lib/ofp-actions.c:9570,5'
          Dst:             strcasecmp
        - Src:             'lib/ofp-actions.c:9570,5'
          Dst:             strcasecmp
        - Src:             'lib/ofp-actions.c:9570,5'
          Dst:             strcasecmp
        - Src:             'lib/ofp-actions.c:9570,5'
          Dst:             strcasecmp
        - Src:             'lib/ofp-actions.c:9570,5'
          Dst:             strcasecmp
        - Src:             'lib/ofp-actions.c:9570,5'
          Dst:             strcasecmp
        - Src:             'lib/ofp-actions.c:9570,5'
          Dst:             strcasecmp
        - Src:             'lib/ofp-actions.c:9570,5'
          Dst:             strcasecmp
        - Src:             'lib/ofp-actions.c:9570,5'
          Dst:             strcasecmp
        - Src:             'lib/ofp-actions.c:9570,5'
          Dst:             strcasecmp
        - Src:             'lib/ofp-actions.c:9570,5'
          Dst:             strcasecmp
        - Src:             'lib/ofp-actions.c:9570,5'
          Dst:             strcasecmp
        - Src:             'lib/ofp-actions.c:9570,5'
          Dst:             strcasecmp
        - Src:             'lib/ofp-actions.c:9570,5'
          Dst:             strcasecmp
        - Src:             'lib/ofp-actions.c:9570,5'
          Dst:             strcasecmp
        - Src:             'lib/ofp-actions.c:9570,5'
          Dst:             strcasecmp
        - Src:             'lib/ofp-actions.c:9570,5'
          Dst:             strcasecmp
        - Src:             'lib/ofp-actions.c:9570,5'
          Dst:             strcasecmp
        - Src:             'lib/ofp-actions.c:9570,5'
          Dst:             strcasecmp
        - Src:             'lib/ofp-actions.c:9570,5'
          Dst:             strcasecmp
        - Src:             'lib/ofp-actions.c:9570,5'
          Dst:             strcasecmp
        - Src:             'lib/ofp-actions.c:9570,5'
          Dst:             strcasecmp
        - Src:             'lib/ofp-actions.c:9570,5'
          Dst:             strcasecmp
        - Src:             'lib/ofp-actions.c:9570,5'
          Dst:             strcasecmp
        - Src:             'lib/ofp-actions.c:9570,5'
          Dst:             strcasecmp
        - Src:             'lib/ofp-actions.c:9570,5'
          Dst:             strcasecmp
        - Src:             'lib/ofp-actions.c:9570,5'
          Dst:             strcasecmp
        - Src:             'lib/ofp-actions.c:9570,5'
          Dst:             strcasecmp
        - Src:             'lib/ofp-actions.c:9570,5'
          Dst:             strcasecmp
        - Src:             'lib/ofp-actions.c:9570,5'
          Dst:             strcasecmp
        - Src:             'lib/ofp-actions.c:9570,5'
          Dst:             strcasecmp
        - Src:             'lib/ofp-actions.c:9570,5'
          Dst:             strcasecmp
        - Src:             'lib/ofp-actions.c:9570,5'
          Dst:             strcasecmp
        - Src:             'lib/ofp-actions.c:9570,5'
          Dst:             strcasecmp
        - Src:             'lib/ofp-actions.c:9570,5'
          Dst:             strcasecmp
        - Src:             'lib/ofp-actions.c:9570,5'
          Dst:             strcasecmp
        - Src:             'lib/ofp-actions.c:9570,5'
          Dst:             strcasecmp
        - Src:             'lib/ofp-actions.c:9570,5'
          Dst:             strcasecmp
        - Src:             'lib/ofp-actions.c:9570,5'
          Dst:             strcasecmp
        - Src:             'lib/ofp-actions.c:9570,5'
          Dst:             strcasecmp
        - Src:             'lib/ofp-actions.c:9570,5'
          Dst:             strcasecmp
        - Src:             'lib/ofp-actions.c:9570,5'
          Dst:             strcasecmp
        - Src:             'lib/ofp-actions.c:9570,5'
          Dst:             strcasecmp
        - Src:             'lib/ofp-actions.c:9570,5'
          Dst:             strcasecmp
        - Src:             'lib/ofp-actions.c:9570,5'
          Dst:             strcasecmp
        - Src:             'lib/ofp-actions.c:9570,5'
          Dst:             strcasecmp
    - functionName:    ofpact_parse
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9550
      functionLinenumberEnd: 9560
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - char
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         64
      ICount:          501
      EdgeCount:       126
      CyclomaticComplexity: 64
      functionsReached:
        - abort
        - parse_BUNDLE
        - parse_CHECK_PKT_LARGER
        - parse_CLEAR_ACTIONS
        - parse_CLONE
        - parse_CONJUNCTION
        - parse_CONTROLLER
        - parse_CT
        - parse_CT_CLEAR
        - parse_DEBUG_RECIRC
        - parse_DEBUG_SLOW
        - parse_DECAP
        - parse_DEC_MPLS_TTL
        - parse_DEC_NSH_TTL
        - parse_DEC_TTL
        - parse_DELETE_FIELD
        - parse_ENCAP
        - parse_ENQUEUE
        - parse_EXIT
        - parse_FIN_TIMEOUT
        - parse_GOTO_TABLE
        - parse_GROUP
        - parse_LEARN
        - parse_METER
        - parse_MULTIPATH
        - parse_NAT
        - parse_NOTE
        - parse_OUTPUT
        - parse_OUTPUT_REG
        - parse_OUTPUT_TRUNC
        - parse_POP_MPLS
        - parse_POP_QUEUE
        - parse_PUSH_MPLS
        - parse_PUSH_VLAN
        - parse_REG_MOVE
        - parse_RESUBMIT
        - parse_SAMPLE
        - parse_SET_ETH_DST
        - parse_SET_ETH_SRC
        - parse_SET_FIELD
        - parse_SET_IPV4_DST
        - parse_SET_IPV4_SRC
        - parse_SET_IP_DSCP
        - parse_SET_IP_ECN
        - parse_SET_IP_TTL
        - parse_SET_L4_DST_PORT
        - parse_SET_L4_SRC_PORT
        - parse_SET_MPLS_LABEL
        - parse_SET_MPLS_TC
        - parse_SET_MPLS_TTL
        - parse_SET_QUEUE
        - parse_SET_TUNNEL
        - parse_SET_VLAN_PCP
        - parse_SET_VLAN_VID
        - parse_STACK_POP
        - parse_STACK_PUSH
        - parse_STRIP_VLAN
        - parse_UNROLL_XLATE
        - parse_WRITE_ACTIONS
        - parse_WRITE_METADATA
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-actions.c:9551,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-actions.c:9555,9'
          Dst:             parse_OUTPUT
        - Src:             'lib/ofp-actions.c:9555,9'
          Dst:             parse_GROUP
        - Src:             'lib/ofp-actions.c:9555,9'
          Dst:             parse_CONTROLLER
        - Src:             'lib/ofp-actions.c:9555,9'
          Dst:             parse_ENQUEUE
        - Src:             'lib/ofp-actions.c:9555,9'
          Dst:             parse_OUTPUT_REG
        - Src:             'lib/ofp-actions.c:9555,9'
          Dst:             parse_BUNDLE
        - Src:             'lib/ofp-actions.c:9555,9'
          Dst:             parse_SET_FIELD
        - Src:             'lib/ofp-actions.c:9555,9'
          Dst:             parse_SET_VLAN_VID
        - Src:             'lib/ofp-actions.c:9555,9'
          Dst:             parse_SET_VLAN_PCP
        - Src:             'lib/ofp-actions.c:9555,9'
          Dst:             parse_STRIP_VLAN
        - Src:             'lib/ofp-actions.c:9555,9'
          Dst:             parse_PUSH_VLAN
        - Src:             'lib/ofp-actions.c:9555,9'
          Dst:             parse_SET_ETH_SRC
        - Src:             'lib/ofp-actions.c:9555,9'
          Dst:             parse_SET_ETH_DST
        - Src:             'lib/ofp-actions.c:9555,9'
          Dst:             parse_SET_IPV4_SRC
        - Src:             'lib/ofp-actions.c:9555,9'
          Dst:             parse_SET_IPV4_DST
        - Src:             'lib/ofp-actions.c:9555,9'
          Dst:             parse_SET_IP_DSCP
        - Src:             'lib/ofp-actions.c:9555,9'
          Dst:             parse_SET_IP_ECN
        - Src:             'lib/ofp-actions.c:9555,9'
          Dst:             parse_SET_IP_TTL
        - Src:             'lib/ofp-actions.c:9555,9'
          Dst:             parse_SET_L4_SRC_PORT
        - Src:             'lib/ofp-actions.c:9555,9'
          Dst:             parse_SET_L4_DST_PORT
        - Src:             'lib/ofp-actions.c:9555,9'
          Dst:             parse_REG_MOVE
        - Src:             'lib/ofp-actions.c:9555,9'
          Dst:             parse_STACK_PUSH
        - Src:             'lib/ofp-actions.c:9555,9'
          Dst:             parse_STACK_POP
        - Src:             'lib/ofp-actions.c:9555,9'
          Dst:             parse_DEC_TTL
        - Src:             'lib/ofp-actions.c:9555,9'
          Dst:             parse_SET_MPLS_LABEL
        - Src:             'lib/ofp-actions.c:9555,9'
          Dst:             parse_SET_MPLS_TC
        - Src:             'lib/ofp-actions.c:9555,9'
          Dst:             parse_SET_MPLS_TTL
        - Src:             'lib/ofp-actions.c:9555,9'
          Dst:             parse_DEC_MPLS_TTL
        - Src:             'lib/ofp-actions.c:9555,9'
          Dst:             parse_PUSH_MPLS
        - Src:             'lib/ofp-actions.c:9555,9'
          Dst:             parse_POP_MPLS
        - Src:             'lib/ofp-actions.c:9555,9'
          Dst:             parse_DEC_NSH_TTL
        - Src:             'lib/ofp-actions.c:9555,9'
          Dst:             parse_DELETE_FIELD
        - Src:             'lib/ofp-actions.c:9555,9'
          Dst:             parse_ENCAP
        - Src:             'lib/ofp-actions.c:9555,9'
          Dst:             parse_DECAP
        - Src:             'lib/ofp-actions.c:9555,9'
          Dst:             parse_SET_TUNNEL
        - Src:             'lib/ofp-actions.c:9555,9'
          Dst:             parse_SET_QUEUE
        - Src:             'lib/ofp-actions.c:9555,9'
          Dst:             parse_POP_QUEUE
        - Src:             'lib/ofp-actions.c:9555,9'
          Dst:             parse_FIN_TIMEOUT
        - Src:             'lib/ofp-actions.c:9555,9'
          Dst:             parse_RESUBMIT
        - Src:             'lib/ofp-actions.c:9555,9'
          Dst:             parse_LEARN
        - Src:             'lib/ofp-actions.c:9555,9'
          Dst:             parse_CONJUNCTION
        - Src:             'lib/ofp-actions.c:9555,9'
          Dst:             parse_MULTIPATH
        - Src:             'lib/ofp-actions.c:9555,9'
          Dst:             parse_NOTE
        - Src:             'lib/ofp-actions.c:9555,9'
          Dst:             parse_EXIT
        - Src:             'lib/ofp-actions.c:9555,9'
          Dst:             parse_SAMPLE
        - Src:             'lib/ofp-actions.c:9555,9'
          Dst:             parse_UNROLL_XLATE
        - Src:             'lib/ofp-actions.c:9555,9'
          Dst:             parse_CT
        - Src:             'lib/ofp-actions.c:9555,9'
          Dst:             parse_CT_CLEAR
        - Src:             'lib/ofp-actions.c:9555,9'
          Dst:             parse_NAT
        - Src:             'lib/ofp-actions.c:9555,9'
          Dst:             parse_OUTPUT_TRUNC
        - Src:             'lib/ofp-actions.c:9555,9'
          Dst:             parse_CLONE
        - Src:             'lib/ofp-actions.c:9555,9'
          Dst:             parse_CHECK_PKT_LARGER
        - Src:             'lib/ofp-actions.c:9555,9'
          Dst:             parse_DEBUG_RECIRC
        - Src:             'lib/ofp-actions.c:9555,9'
          Dst:             parse_DEBUG_SLOW
        - Src:             'lib/ofp-actions.c:9555,9'
          Dst:             parse_METER
        - Src:             'lib/ofp-actions.c:9555,9'
          Dst:             parse_CLEAR_ACTIONS
        - Src:             'lib/ofp-actions.c:9555,9'
          Dst:             parse_WRITE_ACTIONS
        - Src:             'lib/ofp-actions.c:9555,9'
          Dst:             parse_WRITE_METADATA
        - Src:             'lib/ofp-actions.c:9555,9'
          Dst:             parse_GOTO_TABLE
        - Src:             'lib/ofp-actions.c:9558,9'
          Dst:             abort
    - functionName:    parse_set_vlan_vid
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1613
      functionLinenumberEnd: 1630
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          70
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - ofpact_put_SET_VLAN_VID
        - str_to_u16
        - xasprintf
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:1618,13'
          Dst:             str_to_u16
        - Src:             'lib/ofp-actions.c:1624,16'
          Dst:             xasprintf
        - Src:             'lib/ofp-actions.c:1626,16'
          Dst:             ofpact_put_SET_VLAN_VID
    - functionName:    parse_set_vlan_pcp
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1721
      functionLinenumberEnd: 1738
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          70
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - ofpact_put_SET_VLAN_PCP
        - str_to_u8
        - xasprintf
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:1726,13'
          Dst:             str_to_u8
        - Src:             'lib/ofp-actions.c:1732,16'
          Dst:             xasprintf
        - Src:             'lib/ofp-actions.c:1734,16'
          Dst:             ofpact_put_SET_VLAN_PCP
    - functionName:    parse_SET_IP_TTL
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2271
      functionLinenumberEnd: 2282
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofpact_put_SET_IP_TTL
        - str_to_u8
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:2275,13'
          Dst:             str_to_u8
        - Src:             'lib/ofp-actions.c:2280,5'
          Dst:             ofpact_put_SET_IP_TTL
    - functionName:    parse_pop_vlan
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1808
      functionLinenumberEnd: 1810
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_STRIP_VLAN
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:1809,5'
          Dst:             ofpact_put_STRIP_VLAN
    - functionName:    parse_set_tunnel
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4150
      functionLinenumberEnd: 4155
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_SET_TUNNEL
        - str_to_u64
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:4153,14'
          Dst:             ofpact_put_SET_TUNNEL
        - Src:             'lib/ofp-actions.c:4155,12'
          Dst:             str_to_u64
    - functionName:    parse_reg_load
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3280
      functionLinenumberEnd: 3321
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          148
      EdgeCount:       16
      CyclomaticComplexity: 6
      functionsReached:
        - bitwise_copy
        - bitwise_is_all_zeros
        - bitwise_one
        - ds_cstr
        - ds_destroy
        - ds_init
        - mf_format
        - mf_parse_subfield
        - ofpact_put_reg_load
        - parse_int_string
        - set_field_split_str
        - xasprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:3286,13'
          Dst:             set_field_split_str
        - Src:             'lib/ofp-actions.c:3291,13'
          Dst:             mf_parse_subfield
        - Src:             'lib/ofp-actions.c:3296,9'
          Dst:             parse_int_string
        - Src:             'lib/ofp-actions.c:3298,16'
          Dst:             xasprintf
        - Src:             'lib/ofp-actions.c:3301,10'
          Dst:             bitwise_is_all_zeros
        - Src:             'lib/ofp-actions.c:3305,9'
          Dst:             ds_init
        - Src:             'lib/ofp-actions.c:3306,9'
          Dst:             mf_format
        - Src:             'lib/ofp-actions.c:3308,32'
          Dst:             ds_cstr
        - Src:             'lib/ofp-actions.c:3307,17'
          Dst:             xasprintf
        - Src:             'lib/ofp-actions.c:3309,9'
          Dst:             ds_destroy
        - Src:             'lib/ofp-actions.c:3313,35'
          Dst:             ofpact_put_reg_load
        - Src:             'lib/ofp-actions.c:3316,5'
          Dst:             bitwise_copy
        - Src:             'lib/ofp-actions.c:3318,5'
          Dst:             bitwise_one
    - functionName:    parse_bundle_load
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1538
      functionLinenumberEnd: 1539
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - bundle_parse_load
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:1539,12'
          Dst:             bundle_parse_load
    - functionName:    ofpact_put_OUTPUT
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_put
    - functionName:    ofpacts_verify
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9006
      functionLinenumberEnd: 9068
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - int
        - int
        - char
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         41
      ICount:          245
      EdgeCount:       55
      CyclomaticComplexity: 16
      functionsReached:
        - ofpact_end
        - ofpact_name
        - ofpact_next
        - ofpacts_verify_nested
        - ovs_instruction_name_from_type
        - ovs_instruction_type_from_ofpact_type
        - verify_error
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:9011,5'
          Dst:             ofpact_end
        - Src:             'lib/ofp-actions.c:9016,13'
          Dst:             ofpact_end
        - Src:             'lib/ofp-actions.c:9021,43'
          Dst:             ofpact_name
        - Src:             'lib/ofp-actions.c:9018,21'
          Dst:             verify_error
        - Src:             'lib/ofp-actions.c:9016,13'
          Dst:             ofpact_next
        - Src:             'lib/ofp-actions.c:9028,17'
          Dst:             ofpacts_verify_nested
        - Src:             'lib/ofp-actions.c:9033,16'
          Dst:             ovs_instruction_type_from_ofpact_type
        - Src:             'lib/ofp-actions.c:9038,32'
          Dst:             ovs_instruction_name_from_type
        - Src:             'lib/ofp-actions.c:9039,37'
          Dst:             ovs_instruction_name_from_type
        - Src:             'lib/ofp-actions.c:9042,17'
          Dst:             verify_error
        - Src:             'lib/ofp-actions.c:9045,17'
          Dst:             verify_error
        - Src:             'lib/ofp-actions.c:9053,32'
          Dst:             ovs_instruction_name_from_type
        - Src:             'lib/ofp-actions.c:9056,17'
          Dst:             verify_error
        - Src:             'lib/ofp-actions.c:9059,17'
          Dst:             verify_error
        - Src:             'lib/ofp-actions.c:9011,5'
          Dst:             ofpact_next
    - functionName:    ofpact_end
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 221
      functionLinenumberEnd: 223
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          23
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    14
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofpact_name
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9713
      functionLinenumberEnd: 9720
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ''
      BBCount:         62
      ICount:          313
      EdgeCount:       122
      CyclomaticComplexity: 62
      functionsReached: []
      functionUses:    5
      BranchProfiles:
        - Branch String:   'lib/ofp-actions.c:9714,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    verify_error
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8916
      functionLinenumberEnd: 8928
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          61
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - vlog
        - xvasprintf
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:8919,19'
          Dst:             xvasprintf
        - Src:             'lib/ofp-actions.c:8925,9'
          Dst:             vlog
    - functionName:    ofpact_next
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 212
      functionLinenumberEnd: 213
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    14
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofpacts_verify_nested
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8949
      functionLinenumberEnd: 8987
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - char
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         33
      ICount:          184
      EdgeCount:       45
      CyclomaticComplexity: 14
      functionsReached:
        - field_requires_ct
        - ofpact_get_mf_dst
        - ofpact_name
        - ovs_ignore
        - unsupported_nesting
        - verify_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:8950,36'
          Dst:             ofpact_get_mf_dst
        - Src:             'lib/ofp-actions.c:8952,18'
          Dst:             field_requires_ct
        - Src:             'lib/ofp-actions.c:8953,9'
          Dst:             verify_error
        - Src:             'lib/ofp-actions.c:8958,13'
          Dst:             verify_error
        - Src:             'lib/ofp-actions.c:8966,9'
          Dst:             ovs_ignore
        - Src:             'lib/ofp-actions.c:8972,24'
          Dst:             unsupported_nesting
        - Src:             'lib/ofp-actions.c:8973,25'
          Dst:             field_requires_ct
        - Src:             'lib/ofp-actions.c:8976,39'
          Dst:             ofpact_name
        - Src:             'lib/ofp-actions.c:8974,17'
          Dst:             verify_error
        - Src:             'lib/ofp-actions.c:8982,20'
          Dst:             unsupported_nesting
    - functionName:    ovs_instruction_type_from_ofpact_type
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8382
      functionLinenumberEnd: 8453
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - char
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         64
      ICount:          268
      EdgeCount:       126
      CyclomaticComplexity: 64
      functionsReached: []
      functionUses:    3
      BranchProfiles:
        - Branch String:   'lib/ofp-actions.c:8383,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    ovs_instruction_name_from_type
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8363
      functionLinenumberEnd: 8364
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          25
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofpact_get_mf_dst
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8898
      functionLinenumberEnd: 8912
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          55
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    field_requires_ct
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8941
      functionLinenumberEnd: 8942
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          24
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    unsupported_nesting
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8933
      functionLinenumberEnd: 8936
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - char
        - char
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_name
        - verify_error
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:8935,18'
          Dst:             ofpact_name
        - Src:             'lib/ofp-actions.c:8935,45'
          Dst:             ofpact_name
        - Src:             'lib/ofp-actions.c:8934,5'
          Dst:             verify_error
    - functionName:    ofpact_put_reg_load
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3424
      functionLinenumberEnd: 3429
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          32
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_set_field
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:3425,35'
          Dst:             ofpact_put_set_field
    - functionName:    ofpact_put_SET_TUNNEL
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_put
    - functionName:    ofpact_put_STRIP_VLAN
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_put
    - functionName:    ofpact_put_SET_IP_TTL
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_put
    - functionName:    ofpact_put_SET_VLAN_PCP
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_put
    - functionName:    ofpact_put_SET_VLAN_VID
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_put
    - functionName:    parse_OUTPUT
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 670
      functionLinenumberEnd: 699
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          120
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - mf_parse_subfield
        - ofpact_put_OUTPUT
        - ofpact_put_OUTPUT_REG
        - ofpact_put_OUTPUT_TRUNC
        - ofputil_port_from_string
        - parse_truncate_subfield
        - strstr
        - xasprintf
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:671,9'
          Dst:             strstr
        - Src:             'lib/ofp-actions.c:671,32'
          Dst:             strstr
        - Src:             'lib/ofp-actions.c:674,24'
          Dst:             ofpact_put_OUTPUT_TRUNC
        - Src:             'lib/ofp-actions.c:675,16'
          Dst:             parse_truncate_subfield
        - Src:             'lib/ofp-actions.c:679,9'
          Dst:             ofputil_port_from_string
        - Src:             'lib/ofp-actions.c:680,40'
          Dst:             ofpact_put_OUTPUT
        - Src:             'lib/ofp-actions.c:687,19'
          Dst:             mf_parse_subfield
        - Src:             'lib/ofp-actions.c:691,22'
          Dst:             ofpact_put_OUTPUT_REG
        - Src:             'lib/ofp-actions.c:698,12'
          Dst:             xasprintf
    - functionName:    parse_GROUP
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 741
      functionLinenumberEnd: 742
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_GROUP
        - str_to_u32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:742,29'
          Dst:             ofpact_put_GROUP
        - Src:             'lib/ofp-actions.c:742,12'
          Dst:             str_to_u32
    - functionName:    parse_CONTROLLER
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 938
      functionLinenumberEnd: 1024
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         60
      ICount:          363
      EdgeCount:       82
      CyclomaticComplexity: 24
      functionsReached:
        - ofpact_finish_CONTROLLER
        - ofpact_put_CONTROLLER
        - ofpact_put_OUTPUT
        - ofpbuf_oversized
        - ofpbuf_put_hex
        - ofputil_packet_in_reason_from_string
        - ofputil_parse_key_value
        - str_to_u16
        - str_to_u32
        - strcmp
        - strlen
        - strspn
        - xasprintf
        - xstrdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:948,16'
          Dst:             strspn
        - Src:             'lib/ofp-actions.c:948,45'
          Dst:             strlen
        - Src:             'lib/ofp-actions.c:949,23'
          Dst:             str_to_u16
        - Src:             'lib/ofp-actions.c:956,16'
          Dst:             ofputil_parse_key_value
        - Src:             'lib/ofp-actions.c:957,18'
          Dst:             strcmp
        - Src:             'lib/ofp-actions.c:958,22'
          Dst:             ofputil_packet_in_reason_from_string
        - Src:             'lib/ofp-actions.c:959,28'
          Dst:             xasprintf
        - Src:             'lib/ofp-actions.c:961,25'
          Dst:             strcmp
        - Src:             'lib/ofp-actions.c:962,31'
          Dst:             str_to_u16
        - Src:             'lib/ofp-actions.c:966,25'
          Dst:             strcmp
        - Src:             'lib/ofp-actions.c:967,31'
          Dst:             str_to_u16
        - Src:             'lib/ofp-actions.c:971,25'
          Dst:             strcmp
        - Src:             'lib/ofp-actions.c:973,25'
          Dst:             strcmp
        - Src:             'lib/ofp-actions.c:975,25'
          Dst:             strcmp
        - Src:             'lib/ofp-actions.c:976,31'
          Dst:             str_to_u32
        - Src:             'lib/ofp-actions.c:981,24'
          Dst:             xasprintf
        - Src:             'lib/ofp-actions.c:991,18'
          Dst:             ofpact_put_OUTPUT
        - Src:             'lib/ofp-actions.c:997,22'
          Dst:             ofpact_put_CONTROLLER
        - Src:             'lib/ofp-actions.c:1006,31'
          Dst:             ofpbuf_put_hex
        - Src:             'lib/ofp-actions.c:1008,24'
          Dst:             xstrdup
        - Src:             'lib/ofp-actions.c:1016,13'
          Dst:             ofpbuf_oversized
        - Src:             'lib/ofp-actions.c:1017,20'
          Dst:             xasprintf
        - Src:             'lib/ofp-actions.c:1020,9'
          Dst:             ofpact_finish_CONTROLLER
    - functionName:    parse_ENQUEUE
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1131
      functionLinenumberEnd: 1147
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          75
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - ofpact_put_ENQUEUE
        - ofputil_port_from_string
        - str_to_u32
        - strtok_r
        - xasprintf
        - xstrdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:1133,18'
          Dst:             strtok_r
        - Src:             'lib/ofp-actions.c:1134,19'
          Dst:             strtok_r
        - Src:             'lib/ofp-actions.c:1138,16'
          Dst:             xstrdup
        - Src:             'lib/ofp-actions.c:1142,15'
          Dst:             ofpact_put_ENQUEUE
        - Src:             'lib/ofp-actions.c:1143,10'
          Dst:             ofputil_port_from_string
        - Src:             'lib/ofp-actions.c:1144,16'
          Dst:             xasprintf
        - Src:             'lib/ofp-actions.c:1146,12'
          Dst:             str_to_u32
    - functionName:    parse_OUTPUT_REG
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1311
      functionLinenumberEnd: 1312
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - parse_OUTPUT
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:1312,12'
          Dst:             parse_OUTPUT
    - functionName:    parse_BUNDLE
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1532
      functionLinenumberEnd: 1533
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - bundle_parse
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:1533,12'
          Dst:             bundle_parse
    - functionName:    parse_SET_FIELD
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3271
      functionLinenumberEnd: 3275
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - set_field_parse__
        - xstrdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:3272,18'
          Dst:             xstrdup
        - Src:             'lib/ofp-actions.c:3273,19'
          Dst:             set_field_parse__
    - functionName:    parse_SET_VLAN_VID
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1634
      functionLinenumberEnd: 1635
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - parse_set_vlan_vid
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:1635,12'
          Dst:             parse_set_vlan_vid
    - functionName:    parse_SET_VLAN_PCP
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1742
      functionLinenumberEnd: 1743
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - parse_set_vlan_pcp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:1743,12'
          Dst:             parse_set_vlan_pcp
    - functionName:    parse_STRIP_VLAN
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1801
      functionLinenumberEnd: 1803
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_STRIP_VLAN
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:1802,5'
          Dst:             ofpact_put_STRIP_VLAN
    - functionName:    parse_PUSH_VLAN
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1864
      functionLinenumberEnd: 1881
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          65
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - eth_type_vlan
        - htons
        - ofpact_put_PUSH_VLAN
        - str_to_u16
        - xasprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:1870,13'
          Dst:             str_to_u16
        - Src:             'lib/ofp-actions.c:1875,24'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:1875,10'
          Dst:             eth_type_vlan
        - Src:             'lib/ofp-actions.c:1876,16'
          Dst:             xasprintf
        - Src:             'lib/ofp-actions.c:1878,17'
          Dst:             ofpact_put_PUSH_VLAN
        - Src:             'lib/ofp-actions.c:1879,28'
          Dst:             htons
    - functionName:    parse_SET_ETH_SRC
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1969
      functionLinenumberEnd: 1970
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_SET_ETH_SRC
        - str_to_mac
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:1970,29'
          Dst:             ofpact_put_SET_ETH_SRC
        - Src:             'lib/ofp-actions.c:1970,12'
          Dst:             str_to_mac
    - functionName:    parse_SET_ETH_DST
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1975
      functionLinenumberEnd: 1976
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_SET_ETH_DST
        - str_to_mac
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:1976,29'
          Dst:             ofpact_put_SET_ETH_DST
        - Src:             'lib/ofp-actions.c:1976,12'
          Dst:             str_to_mac
    - functionName:    parse_SET_IPV4_SRC
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2061
      functionLinenumberEnd: 2062
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_SET_IPV4_SRC
        - str_to_ip
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:2062,28'
          Dst:             ofpact_put_SET_IPV4_SRC
        - Src:             'lib/ofp-actions.c:2062,12'
          Dst:             str_to_ip
    - functionName:    parse_SET_IPV4_DST
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2067
      functionLinenumberEnd: 2068
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_SET_IPV4_DST
        - str_to_ip
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:2068,28'
          Dst:             ofpact_put_SET_IPV4_DST
        - Src:             'lib/ofp-actions.c:2068,12'
          Dst:             str_to_ip
    - functionName:    parse_SET_IP_DSCP
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2140
      functionLinenumberEnd: 2154
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          57
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - ofpact_put_SET_IP_DSCP
        - str_to_u8
        - xasprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:2144,13'
          Dst:             str_to_u8
        - Src:             'lib/ofp-actions.c:2150,16'
          Dst:             xasprintf
        - Src:             'lib/ofp-actions.c:2152,5'
          Dst:             ofpact_put_SET_IP_DSCP
    - functionName:    parse_SET_IP_ECN
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2213
      functionLinenumberEnd: 2227
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          57
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - ofpact_put_SET_IP_ECN
        - str_to_u8
        - xasprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:2217,13'
          Dst:             str_to_u8
        - Src:             'lib/ofp-actions.c:2223,16'
          Dst:             xasprintf
        - Src:             'lib/ofp-actions.c:2225,5'
          Dst:             ofpact_put_SET_IP_ECN
    - functionName:    parse_SET_L4_SRC_PORT
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2362
      functionLinenumberEnd: 2364
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_SET_L4_SRC_PORT
        - str_to_u16
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:2364,24'
          Dst:             ofpact_put_SET_L4_SRC_PORT
        - Src:             'lib/ofp-actions.c:2363,12'
          Dst:             str_to_u16
    - functionName:    parse_SET_L4_DST_PORT
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2369
      functionLinenumberEnd: 2371
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_SET_L4_DST_PORT
        - str_to_u16
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:2371,24'
          Dst:             ofpact_put_SET_L4_DST_PORT
        - Src:             'lib/ofp-actions.c:2370,12'
          Dst:             str_to_u16
    - functionName:    parse_REG_MOVE
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2707
      functionLinenumberEnd: 2709
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nxm_parse_reg_move
        - ofpact_put_REG_MOVE
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:2708,36'
          Dst:             ofpact_put_REG_MOVE
        - Src:             'lib/ofp-actions.c:2709,12'
          Dst:             nxm_parse_reg_move
    - functionName:    parse_STACK_PUSH
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3545
      functionLinenumberEnd: 3546
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nxm_parse_stack_action
        - ofpact_put_STACK_PUSH
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:3546,35'
          Dst:             ofpact_put_STACK_PUSH
        - Src:             'lib/ofp-actions.c:3546,12'
          Dst:             nxm_parse_stack_action
    - functionName:    parse_STACK_POP
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3551
      functionLinenumberEnd: 3552
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nxm_parse_stack_action
        - ofpact_put_STACK_POP
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:3552,35'
          Dst:             ofpact_put_STACK_POP
        - Src:             'lib/ofp-actions.c:3552,12'
          Dst:             nxm_parse_stack_action
    - functionName:    parse_DEC_TTL
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3702
      functionLinenumberEnd: 3731
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          110
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - atoi
        - ofpact_finish_DEC_TTL
        - ofpact_put_DEC_TTL
        - ofpbuf_oversized
        - ofpbuf_put
        - parse_noargs_dec_ttl
        - strtok_r
        - xasprintf
        - xstrdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:3704,9'
          Dst:             parse_noargs_dec_ttl
        - Src:             'lib/ofp-actions.c:3709,15'
          Dst:             ofpact_put_DEC_TTL
        - Src:             'lib/ofp-actions.c:3711,21'
          Dst:             strtok_r
        - Src:             'lib/ofp-actions.c:3713,27'
          Dst:             atoi
        - Src:             'lib/ofp-actions.c:3715,13'
          Dst:             ofpbuf_put
        - Src:             'lib/ofp-actions.c:3712,21'
          Dst:             strtok_r
        - Src:             'lib/ofp-actions.c:3720,20'
          Dst:             xstrdup
        - Src:             'lib/ofp-actions.c:3724,13'
          Dst:             ofpbuf_oversized
        - Src:             'lib/ofp-actions.c:3725,20'
          Dst:             xasprintf
        - Src:             'lib/ofp-actions.c:3728,9'
          Dst:             ofpact_finish_DEC_TTL
    - functionName:    parse_SET_MPLS_LABEL
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3784
      functionLinenumberEnd: 3804
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          72
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - htonl
        - ofpact_put_SET_MPLS_LABEL
        - str_to_u32
        - xasprintf
        - xstrdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:3786,11'
          Dst:             ofpact_put_SET_MPLS_LABEL
        - Src:             'lib/ofp-actions.c:3791,16'
          Dst:             xstrdup
        - Src:             'lib/ofp-actions.c:3794,13'
          Dst:             str_to_u32
        - Src:             'lib/ofp-actions.c:3800,16'
          Dst:             xasprintf
        - Src:             'lib/ofp-actions.c:3802,25'
          Dst:             htonl
    - functionName:    parse_SET_MPLS_TC
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3856
      functionLinenumberEnd: 3875
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          72
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - ofpact_put_SET_MPLS_TC
        - str_to_u8
        - xasprintf
        - xstrdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:3857,38'
          Dst:             ofpact_put_SET_MPLS_TC
        - Src:             'lib/ofp-actions.c:3862,16'
          Dst:             xstrdup
        - Src:             'lib/ofp-actions.c:3865,13'
          Dst:             str_to_u8
        - Src:             'lib/ofp-actions.c:3871,16'
          Dst:             xasprintf
    - functionName:    parse_SET_MPLS_TTL
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3918
      functionLinenumberEnd: 3933
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          59
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - ofpact_put_SET_MPLS_TTL
        - str_to_u8
        - xstrdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:3919,40'
          Dst:             ofpact_put_SET_MPLS_TTL
        - Src:             'lib/ofp-actions.c:3924,16'
          Dst:             xstrdup
        - Src:             'lib/ofp-actions.c:3927,13'
          Dst:             str_to_u8
    - functionName:    parse_DEC_MPLS_TTL
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3969
      functionLinenumberEnd: 3971
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_DEC_MPLS_TTL
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:3970,5'
          Dst:             ofpact_put_DEC_MPLS_TTL
    - functionName:    parse_PUSH_MPLS
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4015
      functionLinenumberEnd: 4023
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htons
        - ofpact_put_PUSH_MPLS
        - str_to_u16
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:4019,13'
          Dst:             str_to_u16
        - Src:             'lib/ofp-actions.c:4021,56'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:4021,9'
          Dst:             ofpact_put_PUSH_MPLS
    - functionName:    parse_POP_MPLS
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4073
      functionLinenumberEnd: 4081
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htons
        - ofpact_put_POP_MPLS
        - str_to_u16
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:4077,13'
          Dst:             str_to_u16
        - Src:             'lib/ofp-actions.c:4079,55'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:4079,9'
          Dst:             ofpact_put_POP_MPLS
    - functionName:    parse_DEC_NSH_TTL
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4814
      functionLinenumberEnd: 4816
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_DEC_NSH_TTL
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:4815,5'
          Dst:             ofpact_put_DEC_NSH_TTL
    - functionName:    parse_DELETE_FIELD
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4237
      functionLinenumberEnd: 4241
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mf_parse_field
        - ofpact_put_DELETE_FIELD
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:4240,20'
          Dst:             ofpact_put_DELETE_FIELD
        - Src:             'lib/ofp-actions.c:4241,12'
          Dst:             mf_parse_field
    - functionName:    parse_ENCAP
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4571
      functionLinenumberEnd: 4608
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          122
      EdgeCount:       19
      CyclomaticComplexity: 7
      functionsReached:
        - ofpact_finish_ENCAP
        - ofpact_put_ENCAP
        - ofpbuf_oversized
        - ofputil_parse_key_value
        - parse_ed_prop_class
        - parse_ed_props
        - parse_encap_header
        - xasprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:4580,13'
          Dst:             ofpact_put_ENCAP
        - Src:             'lib/ofp-actions.c:4584,10'
          Dst:             ofputil_parse_key_value
        - Src:             'lib/ofp-actions.c:4585,16'
          Dst:             xasprintf
        - Src:             'lib/ofp-actions.c:4587,10'
          Dst:             parse_encap_header
        - Src:             'lib/ofp-actions.c:4588,16'
          Dst:             xasprintf
        - Src:             'lib/ofp-actions.c:4590,10'
          Dst:             parse_ed_prop_class
        - Src:             'lib/ofp-actions.c:4591,16'
          Dst:             xasprintf
        - Src:             'lib/ofp-actions.c:4594,13'
          Dst:             parse_ed_props
        - Src:             'lib/ofp-actions.c:4602,9'
          Dst:             ofpbuf_oversized
        - Src:             'lib/ofp-actions.c:4603,16'
          Dst:             xasprintf
        - Src:             'lib/ofp-actions.c:4606,5'
          Dst:             ofpact_finish_ENCAP
    - functionName:    parse_DECAP
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4724
      functionLinenumberEnd: 4763
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         26
      ICount:          146
      EdgeCount:       35
      CyclomaticComplexity: 11
      functionsReached:
        - htonl
        - ofpact_put_DECAP
        - ofputil_parse_key_value
        - str_to_u16
        - strcmp
        - xasprintf
        - xstrdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:4730,13'
          Dst:             ofpact_put_DECAP
        - Src:             'lib/ofp-actions.c:4732,27'
          Dst:             htonl
        - Src:             'lib/ofp-actions.c:4735,9'
          Dst:             ofputil_parse_key_value
        - Src:             'lib/ofp-actions.c:4736,13'
          Dst:             strcmp
        - Src:             'lib/ofp-actions.c:4738,18'
          Dst:             ofputil_parse_key_value
        - Src:             'lib/ofp-actions.c:4739,20'
          Dst:             strcmp
        - Src:             'lib/ofp-actions.c:4740,24'
          Dst:             xstrdup
        - Src:             'lib/ofp-actions.c:4742,21'
          Dst:             str_to_u16
        - Src:             'lib/ofp-actions.c:4747,24'
          Dst:             xasprintf
        - Src:             'lib/ofp-actions.c:4749,18'
          Dst:             ofputil_parse_key_value
        - Src:             'lib/ofp-actions.c:4750,20'
          Dst:             strcmp
        - Src:             'lib/ofp-actions.c:4751,24'
          Dst:             xstrdup
        - Src:             'lib/ofp-actions.c:4753,21'
          Dst:             str_to_u16
        - Src:             'lib/ofp-actions.c:4757,35'
          Dst:             htonl
        - Src:             'lib/ofp-actions.c:4759,20'
          Dst:             xasprintf
    - functionName:    parse_SET_TUNNEL
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4160
      functionLinenumberEnd: 4161
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - parse_set_tunnel
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:4161,12'
          Dst:             parse_set_tunnel
    - functionName:    parse_SET_QUEUE
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4284
      functionLinenumberEnd: 4285
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_SET_QUEUE
        - str_to_u32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:4285,29'
          Dst:             ofpact_put_SET_QUEUE
        - Src:             'lib/ofp-actions.c:4285,12'
          Dst:             str_to_u32
    - functionName:    parse_POP_QUEUE
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4322
      functionLinenumberEnd: 4324
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_POP_QUEUE
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:4323,5'
          Dst:             ofpact_put_POP_QUEUE
    - functionName:    parse_FIN_TIMEOUT
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4400
      functionLinenumberEnd: 4421
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          87
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - ofpact_put_FIN_TIMEOUT
        - ofputil_parse_key_value
        - str_to_u16
        - strcmp
        - xasprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:4401,38'
          Dst:             ofpact_put_FIN_TIMEOUT
        - Src:             'lib/ofp-actions.c:4404,12'
          Dst:             ofputil_parse_key_value
        - Src:             'lib/ofp-actions.c:4407,14'
          Dst:             strcmp
        - Src:             'lib/ofp-actions.c:4408,22'
          Dst:             str_to_u16
        - Src:             'lib/ofp-actions.c:4409,21'
          Dst:             strcmp
        - Src:             'lib/ofp-actions.c:4410,21'
          Dst:             str_to_u16
        - Src:             'lib/ofp-actions.c:4412,21'
          Dst:             xasprintf
    - functionName:    parse_RESUBMIT
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4982
      functionLinenumberEnd: 5023
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         33
      ICount:          192
      EdgeCount:       44
      CyclomaticComplexity: 13
      functionsReached:
        - ofpact_put_RESUBMIT
        - ofputil_port_from_string
        - ofputil_table_from_string
        - strcmp
        - strsep
        - xasprintf
        - xstrdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:4986,16'
          Dst:             ofpact_put_RESUBMIT
        - Src:             'lib/ofp-actions.c:4988,17'
          Dst:             strsep
        - Src:             'lib/ofp-actions.c:4990,14'
          Dst:             ofputil_port_from_string
        - Src:             'lib/ofp-actions.c:4992,20'
          Dst:             xasprintf
        - Src:             'lib/ofp-actions.c:4998,15'
          Dst:             strsep
        - Src:             'lib/ofp-actions.c:5000,14'
          Dst:             ofputil_table_from_string
        - Src:             'lib/ofp-actions.c:5002,20'
          Dst:             xasprintf
        - Src:             'lib/ofp-actions.c:5008,12'
          Dst:             strsep
        - Src:             'lib/ofp-actions.c:5010,13'
          Dst:             strcmp
        - Src:             'lib/ofp-actions.c:5011,20'
          Dst:             xasprintf
        - Src:             'lib/ofp-actions.c:5019,16'
          Dst:             xstrdup
    - functionName:    parse_LEARN
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5632
      functionLinenumberEnd: 5633
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - learn_parse
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:5633,12'
          Dst:             learn_parse
    - functionName:    parse_CONJUNCTION
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5710
      functionLinenumberEnd: 5734
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         20
      ICount:          106
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - add_conjunction
        - ovs_scan
        - strlen
        - xstrdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:5716,10'
          Dst:             ovs_scan
        - Src:             'lib/ofp-actions.c:5717,57'
          Dst:             strlen
        - Src:             'lib/ofp-actions.c:5718,16'
          Dst:             xstrdup
        - Src:             'lib/ofp-actions.c:5722,16'
          Dst:             xstrdup
        - Src:             'lib/ofp-actions.c:5724,16'
          Dst:             xstrdup
        - Src:             'lib/ofp-actions.c:5726,16'
          Dst:             xstrdup
        - Src:             'lib/ofp-actions.c:5728,16'
          Dst:             xstrdup
        - Src:             'lib/ofp-actions.c:5732,5'
          Dst:             add_conjunction
    - functionName:    parse_MULTIPATH
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5859
      functionLinenumberEnd: 5860
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - multipath_parse
        - ofpact_put_MULTIPATH
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:5860,28'
          Dst:             ofpact_put_MULTIPATH
        - Src:             'lib/ofp-actions.c:5860,12'
          Dst:             multipath_parse
    - functionName:    parse_NOTE
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5929
      functionLinenumberEnd: 5946
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          87
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - ofpact_finish_NOTE
        - ofpact_put_NOTE
        - ofpbuf_at_assert
        - ofpbuf_oversized
        - ofpbuf_put_hex
        - xasprintf
        - xstrdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:5931,5'
          Dst:             ofpact_put_NOTE
        - Src:             'lib/ofp-actions.c:5932,11'
          Dst:             ofpbuf_put_hex
        - Src:             'lib/ofp-actions.c:5934,16'
          Dst:             xstrdup
        - Src:             'lib/ofp-actions.c:5936,32'
          Dst:             ofpbuf_at_assert
        - Src:             'lib/ofp-actions.c:5940,9'
          Dst:             ofpbuf_oversized
        - Src:             'lib/ofp-actions.c:5941,16'
          Dst:             xasprintf
        - Src:             'lib/ofp-actions.c:5944,5'
          Dst:             ofpact_finish_NOTE
    - functionName:    parse_EXIT
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5981
      functionLinenumberEnd: 5983
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_EXIT
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:5982,5'
          Dst:             ofpact_put_EXIT
    - functionName:    parse_SAMPLE
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6454
      functionLinenumberEnd: 6522
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         54
      ICount:          306
      EdgeCount:       73
      CyclomaticComplexity: 21
      functionsReached:
        - mf_parse_subfield
        - ofpact_put_SAMPLE
        - ofputil_parse_key_value
        - ofputil_port_from_string
        - str_to_u16
        - str_to_u32
        - strcmp
        - xasprintf
        - xstrdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:6455,32'
          Dst:             ofpact_put_SAMPLE
        - Src:             'lib/ofp-actions.c:6460,12'
          Dst:             ofputil_parse_key_value
        - Src:             'lib/ofp-actions.c:6463,14'
          Dst:             strcmp
        - Src:             'lib/ofp-actions.c:6464,21'
          Dst:             str_to_u16
        - Src:             'lib/ofp-actions.c:6466,25'
          Dst:             xasprintf
        - Src:             'lib/ofp-actions.c:6468,21'
          Dst:             strcmp
        - Src:             'lib/ofp-actions.c:6469,21'
          Dst:             str_to_u32
        - Src:             'lib/ofp-actions.c:6470,21'
          Dst:             strcmp
        - Src:             'lib/ofp-actions.c:6471,21'
          Dst:             str_to_u32
        - Src:             'lib/ofp-actions.c:6475,25'
          Dst:             mf_parse_subfield
        - Src:             'lib/ofp-actions.c:6480,28'
          Dst:             xasprintf
        - Src:             'lib/ofp-actions.c:6485,21'
          Dst:             strcmp
        - Src:             'lib/ofp-actions.c:6486,21'
          Dst:             str_to_u32
        - Src:             'lib/ofp-actions.c:6490,25'
          Dst:             mf_parse_subfield
        - Src:             'lib/ofp-actions.c:6495,28'
          Dst:             xasprintf
        - Src:             'lib/ofp-actions.c:6500,21'
          Dst:             strcmp
        - Src:             'lib/ofp-actions.c:6501,18'
          Dst:             ofputil_port_from_string
        - Src:             'lib/ofp-actions.c:6503,25'
          Dst:             xasprintf
        - Src:             'lib/ofp-actions.c:6505,21'
          Dst:             strcmp
        - Src:             'lib/ofp-actions.c:6507,21'
          Dst:             strcmp
        - Src:             'lib/ofp-actions.c:6510,21'
          Dst:             xasprintf
        - Src:             'lib/ofp-actions.c:6518,16'
          Dst:             xstrdup
    - functionName:    parse_UNROLL_XLATE
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6013
      functionLinenumberEnd: 6014
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - xasprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:6014,12'
          Dst:             xasprintf
    - functionName:    parse_CT
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6924
      functionLinenumberEnd: 6998
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         51
      ICount:          356
      EdgeCount:       68
      CyclomaticComplexity: 19
      functionsReached:
        - mf_parse_subfield
        - ofpact_finish_CT
        - ofpact_put_CT
        - ofpacts_parse_copy
        - ofpacts_pull
        - ofpbuf_oversized
        - ofpbuf_push_uninit
        - ofputil_parse_key_value
        - ofputil_table_from_string
        - parse_NAT
        - str_to_connhelper
        - str_to_u16
        - strcmp
        - xasprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:6925,30'
          Dst:             ofpacts_pull
        - Src:             'lib/ofp-actions.c:6930,10'
          Dst:             ofpact_put_CT
        - Src:             'lib/ofp-actions.c:6933,12'
          Dst:             ofputil_parse_key_value
        - Src:             'lib/ofp-actions.c:6934,14'
          Dst:             strcmp
        - Src:             'lib/ofp-actions.c:6936,21'
          Dst:             strcmp
        - Src:             'lib/ofp-actions.c:6938,21'
          Dst:             strcmp
        - Src:             'lib/ofp-actions.c:6939,18'
          Dst:             ofputil_table_from_string
        - Src:             'lib/ofp-actions.c:6941,25'
          Dst:             xasprintf
        - Src:             'lib/ofp-actions.c:6943,25'
          Dst:             xasprintf
        - Src:             'lib/ofp-actions.c:6945,21'
          Dst:             strcmp
        - Src:             'lib/ofp-actions.c:6946,21'
          Dst:             str_to_u16
        - Src:             'lib/ofp-actions.c:6950,25'
          Dst:             mf_parse_subfield
        - Src:             'lib/ofp-actions.c:6955,21'
          Dst:             strcmp
        - Src:             'lib/ofp-actions.c:6956,21'
          Dst:             str_to_connhelper
        - Src:             'lib/ofp-actions.c:6957,21'
          Dst:             strcmp
        - Src:             'lib/ofp-actions.c:6958,39'
          Dst:             ofpacts_pull
        - Src:             'lib/ofp-actions.c:6960,21'
          Dst:             parse_NAT
        - Src:             'lib/ofp-actions.c:6962,35'
          Dst:             ofpbuf_push_uninit
        - Src:             'lib/ofp-actions.c:6964,21'
          Dst:             strcmp
        - Src:             'lib/ofp-actions.c:6968,40'
          Dst:             ofpacts_pull
        - Src:             'lib/ofp-actions.c:6975,21'
          Dst:             ofpacts_parse_copy
        - Src:             'lib/ofp-actions.c:6977,35'
          Dst:             ofpbuf_push_uninit
        - Src:             'lib/ofp-actions.c:6980,21'
          Dst:             xasprintf
        - Src:             'lib/ofp-actions.c:6987,17'
          Dst:             xasprintf
        - Src:             'lib/ofp-actions.c:6990,9'
          Dst:             ofpbuf_oversized
        - Src:             'lib/ofp-actions.c:6992,16'
          Dst:             xasprintf
        - Src:             'lib/ofp-actions.c:6995,5'
          Dst:             ofpact_finish_CT
        - Src:             'lib/ofp-actions.c:6996,5'
          Dst:             ofpbuf_push_uninit
    - functionName:    parse_CT_CLEAR
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7107
      functionLinenumberEnd: 7109
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_CT_CLEAR
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:7108,5'
          Dst:             ofpact_put_CT_CLEAR
    - functionName:    parse_NAT
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7430
      functionLinenumberEnd: 7476
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         43
      ICount:          278
      EdgeCount:       58
      CyclomaticComplexity: 17
      functionsReached:
        - ofpact_put_NAT
        - ofputil_parse_key_value
        - str_to_nat_range
        - strcmp
        - xasprintf
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:7431,29'
          Dst:             ofpact_put_NAT
        - Src:             'lib/ofp-actions.c:7437,12'
          Dst:             ofputil_parse_key_value
        - Src:             'lib/ofp-actions.c:7440,14'
          Dst:             strcmp
        - Src:             'lib/ofp-actions.c:7442,21'
          Dst:             str_to_nat_range
        - Src:             'lib/ofp-actions.c:7443,21'
          Dst:             strcmp
        - Src:             'lib/ofp-actions.c:7445,21'
          Dst:             str_to_nat_range
        - Src:             'lib/ofp-actions.c:7446,21'
          Dst:             strcmp
        - Src:             'lib/ofp-actions.c:7448,21'
          Dst:             strcmp
        - Src:             'lib/ofp-actions.c:7450,21'
          Dst:             strcmp
        - Src:             'lib/ofp-actions.c:7453,21'
          Dst:             xasprintf
        - Src:             'lib/ofp-actions.c:7461,16'
          Dst:             xasprintf
        - Src:             'lib/ofp-actions.c:7465,20'
          Dst:             xasprintf
        - Src:             'lib/ofp-actions.c:7468,20'
          Dst:             xasprintf
        - Src:             'lib/ofp-actions.c:7472,16'
          Dst:             xasprintf
    - functionName:    parse_OUTPUT_TRUNC
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7532
      functionLinenumberEnd: 7535
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - xasprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:7535,12'
          Dst:             xasprintf
    - functionName:    parse_CLONE
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6090
      functionLinenumberEnd: 6109
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          81
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofpact_finish_CLONE
        - ofpact_put_CLONE
        - ofpacts_parse_copy
        - ofpacts_pull
        - ofpbuf_oversized
        - ofpbuf_pull
        - ofpbuf_push_uninit
        - xasprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:6091,33'
          Dst:             ofpacts_pull
        - Src:             'lib/ofp-actions.c:6092,33'
          Dst:             ofpact_put_CLONE
        - Src:             'lib/ofp-actions.c:6095,5'
          Dst:             ofpbuf_pull
        - Src:             'lib/ofp-actions.c:6096,13'
          Dst:             ofpacts_parse_copy
        - Src:             'lib/ofp-actions.c:6098,27'
          Dst:             ofpbuf_push_uninit
        - Src:             'lib/ofp-actions.c:6101,9'
          Dst:             ofpbuf_oversized
        - Src:             'lib/ofp-actions.c:6103,16'
          Dst:             xasprintf
        - Src:             'lib/ofp-actions.c:6106,5'
          Dst:             ofpact_finish_CLONE
        - Src:             'lib/ofp-actions.c:6107,5'
          Dst:             ofpbuf_push_uninit
    - functionName:    parse_CHECK_PKT_LARGER
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7866
      functionLinenumberEnd: 7897
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          114
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached:
        - mf_parse_subfield
        - ofpact_put_CHECK_PKT_LARGER
        - set_field_split_str
        - str_to_u16
        - strlen
        - xstrdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:7870,19'
          Dst:             set_field_split_str
        - Src:             'lib/ofp-actions.c:7876,15'
          Dst:             strlen
        - Src:             'lib/ofp-actions.c:7877,15'
          Dst:             strlen
        - Src:             'lib/ofp-actions.c:7880,13'
          Dst:             mf_parse_subfield
        - Src:             'lib/ofp-actions.c:7886,16'
          Dst:             xstrdup
        - Src:             'lib/ofp-actions.c:7890,9'
          Dst:             ofpact_put_CHECK_PKT_LARGER
        - Src:             'lib/ofp-actions.c:7891,13'
          Dst:             str_to_u16
    - functionName:    parse_DEBUG_RECIRC
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6596
      functionLinenumberEnd: 6598
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_DEBUG_RECIRC
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:6597,5'
          Dst:             ofpact_put_DEBUG_RECIRC
    - functionName:    parse_DEBUG_SLOW
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6636
      functionLinenumberEnd: 6638
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_DEBUG_SLOW
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:6637,5'
          Dst:             ofpact_put_DEBUG_SLOW
    - functionName:    parse_METER
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7585
      functionLinenumberEnd: 7587
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_METER
        - str_to_u32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:7587,29'
          Dst:             ofpact_put_METER
        - Src:             'lib/ofp-actions.c:7587,12'
          Dst:             str_to_u32
    - functionName:    parse_CLEAR_ACTIONS
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7620
      functionLinenumberEnd: 7622
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_CLEAR_ACTIONS
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:7621,5'
          Dst:             ofpact_put_CLEAR_ACTIONS
    - functionName:    ofpact_put_CLEAR_ACTIONS
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_put
    - functionName:    ofpact_put_METER
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_put
    - functionName:    ofpact_put_DEBUG_SLOW
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_put
    - functionName:    ofpact_put_DEBUG_RECIRC
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_put
    - functionName:    ofpact_put_CHECK_PKT_LARGER
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_put
    - functionName:    ofpact_put_CLONE
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_put
    - functionName:    ofpacts_parse_copy
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9676
      functionLinenumberEnd: 9685
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          39
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpacts_parse
        - xstrdup
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:9681,9'
          Dst:             xstrdup
        - Src:             'lib/ofp-actions.c:9682,13'
          Dst:             ofpacts_parse
    - functionName:    ofpact_finish_CLONE
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_finish
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ovs_ignore
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_finish
    - functionName:    ofpact_put_NAT
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_put
    - functionName:    ofpact_put_CT_CLEAR
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_put
    - functionName:    ofpact_put_CT
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_put
    - functionName:    ofpact_finish_CT
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_finish
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ovs_ignore
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_finish
    - functionName:    ofpact_put_SAMPLE
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_put
    - functionName:    ofpact_put_EXIT
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_put
    - functionName:    ofpact_put_NOTE
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_put
    - functionName:    ofpbuf_at_assert
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 195
      functionLinenumberEnd: 198
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:196,5'
          Dst:             ovs_ignore
        - Src:             './include/openvswitch/ofpbuf.h:197,5'
          Dst:             ovs_ignore
    - functionName:    ofpact_finish_NOTE
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_finish
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ovs_ignore
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_finish
    - functionName:    ofpact_put_MULTIPATH
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_put
    - functionName:    add_conjunction
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5665
      functionLinenumberEnd: 5672
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - char
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          38
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_CONJUNCTION
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:5668,10'
          Dst:             ofpact_put_CONJUNCTION
    - functionName:    ofpact_put_CONJUNCTION
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_put
    - functionName:    ofpact_put_RESUBMIT
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_put
    - functionName:    ofpact_put_FIN_TIMEOUT
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_put
    - functionName:    ofpact_put_POP_QUEUE
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_put
    - functionName:    ofpact_put_SET_QUEUE
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_put
    - functionName:    ofpact_put_DECAP
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_put
    - functionName:    ofpact_put_ENCAP
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_put
    - functionName:    ofpact_finish_ENCAP
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_finish
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ovs_ignore
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_finish
    - functionName:    ofpact_put_DELETE_FIELD
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_put
    - functionName:    ofpact_put_DEC_NSH_TTL
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_put
    - functionName:    ofpact_put_POP_MPLS
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_put
    - functionName:    ofpact_put_PUSH_MPLS
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_put
    - functionName:    ofpact_put_DEC_MPLS_TTL
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_put
    - functionName:    ofpact_put_SET_MPLS_TTL
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_put
    - functionName:    ofpact_put_SET_MPLS_TC
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_put
    - functionName:    ofpact_put_SET_MPLS_LABEL
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_put
    - functionName:    ofpact_put_STACK_POP
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_put
    - functionName:    ofpact_put_STACK_PUSH
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_put
    - functionName:    ofpact_put_REG_MOVE
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_put
    - functionName:    ofpact_put_SET_L4_DST_PORT
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_put
    - functionName:    ofpact_put_SET_L4_SRC_PORT
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_put
    - functionName:    ofpact_put_SET_IP_ECN
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_put
    - functionName:    ofpact_put_SET_IP_DSCP
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_put
    - functionName:    ofpact_put_SET_IPV4_DST
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_put
    - functionName:    ofpact_put_SET_IPV4_SRC
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_put
    - functionName:    ofpact_put_SET_ETH_DST
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_put
    - functionName:    ofpact_put_SET_ETH_SRC
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_put
    - functionName:    eth_type_vlan
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 429
      functionLinenumberEnd: 431
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htons
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:430,24'
          Dst:             htons
        - Src:             'lib/packets.h:431,21'
          Dst:             htons
    - functionName:    ofpact_put_PUSH_VLAN
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_put
    - functionName:    ofpact_put_ENQUEUE
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_put
    - functionName:    ofpact_put_CONTROLLER
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_put
    - functionName:    ofpact_finish_CONTROLLER
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_finish
        - ovs_ignore
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ovs_ignore
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_finish
    - functionName:    ofpact_put_GROUP
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_put
    - functionName:    ofpact_put_OUTPUT_TRUNC
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_put
    - functionName:    ofpact_put_OUTPUT_REG
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_put
    - functionName:    format_alg
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7002
      functionLinenumberEnd: 7017
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          48
      EdgeCount:       15
      CyclomaticComplexity: 9
      functionsReached:
        - ds_put_format
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-actions.c:7003,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-actions.c:7005,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-actions.c:7008,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-actions.c:7014,9'
          Dst:             ds_put_format
    - functionName:    format_ed_props
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4630
      functionLinenumberEnd: 4646
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - short
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          79
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - ds_chomp
        - ds_put_char
        - format_ed_prop
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:4638,9'
          Dst:             format_ed_prop
        - Src:             'lib/ofp-actions.c:4639,9'
          Dst:             ds_put_char
        - Src:             'lib/ofp-actions.c:4644,9'
          Dst:             ds_chomp
    - functionName:    ds_put_char
      functionSourceFile: '/src/openvswitch/./include/openvswitch/dynamic-string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_char__
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/dynamic-string.h:99,9'
          Dst:             ds_put_char__
    - functionName:    format_encap_pkt_type
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4612
      functionLinenumberEnd: 4625
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          45
      EdgeCount:       17
      CyclomaticComplexity: 10
      functionsReached:
        - ntohl
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-actions.c:4613,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-actions.c:4613,13'
          Dst:             ntohl
    - functionName:    format_GOTO_TABLE
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7950
      functionLinenumberEnd: 7953
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          32
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_format
        - ofputil_format_table
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:7951,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-actions.c:7952,5'
          Dst:             ofputil_format_table
    - functionName:    format_WRITE_METADATA
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7783
      functionLinenumberEnd: 7789
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_format
        - ntohll
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:7785,45'
          Dst:             ntohll
        - Src:             'lib/ofp-actions.c:7784,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-actions.c:7787,43'
          Dst:             ntohll
        - Src:             'lib/ofp-actions.c:7787,9'
          Dst:             ds_put_format
    - functionName:    ntohll
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
        - ntohl
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byte-order.h:36,12'
          Dst:             htonl
        - Src:             'lib/byte-order.h:36,44'
          Dst:             ntohl
        - Src:             'lib/byte-order.h:36,62'
          Dst:             ntohl
    - functionName:    format_WRITE_ACTIONS
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7689
      functionLinenumberEnd: 7693
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_format
        - ofpact_nest_get_action_len
        - ofpacts_format
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:7690,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-actions.c:7691,32'
          Dst:             ofpact_nest_get_action_len
        - Src:             'lib/ofp-actions.c:7691,5'
          Dst:             ofpacts_format
        - Src:             'lib/ofp-actions.c:7692,5'
          Dst:             ds_put_format
    - functionName:    ofpact_nest_get_action_len
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 673
      functionLinenumberEnd: 674
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofpacts_format
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9484
      functionLinenumberEnd: 9498
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          72
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - ds_put_char
        - ds_put_format
        - ofpact_end
        - ofpact_format
        - ofpact_next
      functionUses:    12
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:9486,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-actions.c:9490,9'
          Dst:             ofpact_end
        - Src:             'lib/ofp-actions.c:9492,17'
          Dst:             ds_put_char
        - Src:             'lib/ofp-actions.c:9495,13'
          Dst:             ofpact_format
        - Src:             'lib/ofp-actions.c:9490,9'
          Dst:             ofpact_next
    - functionName:    ofpact_format
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9465
      functionLinenumberEnd: 9476
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         64
      ICount:          440
      EdgeCount:       126
      CyclomaticComplexity: 64
      functionsReached:
        - abort
        - format_BUNDLE
        - format_CHECK_PKT_LARGER
        - format_CLEAR_ACTIONS
        - format_CLONE
        - format_CONJUNCTION
        - format_CONTROLLER
        - format_CT
        - format_CT_CLEAR
        - format_DEBUG_RECIRC
        - format_DEBUG_SLOW
        - format_DECAP
        - format_DEC_MPLS_TTL
        - format_DEC_NSH_TTL
        - format_DEC_TTL
        - format_DELETE_FIELD
        - format_ENCAP
        - format_ENQUEUE
        - format_EXIT
        - format_FIN_TIMEOUT
        - format_GOTO_TABLE
        - format_GROUP
        - format_LEARN
        - format_METER
        - format_MULTIPATH
        - format_NAT
        - format_NOTE
        - format_OUTPUT
        - format_OUTPUT_REG
        - format_OUTPUT_TRUNC
        - format_POP_MPLS
        - format_POP_QUEUE
        - format_PUSH_MPLS
        - format_PUSH_VLAN
        - format_REG_MOVE
        - format_RESUBMIT
        - format_SAMPLE
        - format_SET_ETH_DST
        - format_SET_ETH_SRC
        - format_SET_FIELD
        - format_SET_IPV4_DST
        - format_SET_IPV4_SRC
        - format_SET_IP_DSCP
        - format_SET_IP_ECN
        - format_SET_IP_TTL
        - format_SET_L4_DST_PORT
        - format_SET_L4_SRC_PORT
        - format_SET_MPLS_LABEL
        - format_SET_MPLS_TC
        - format_SET_MPLS_TTL
        - format_SET_QUEUE
        - format_SET_TUNNEL
        - format_SET_VLAN_PCP
        - format_SET_VLAN_VID
        - format_STACK_POP
        - format_STACK_PUSH
        - format_STRIP_VLAN
        - format_UNROLL_XLATE
        - format_WRITE_ACTIONS
        - format_WRITE_METADATA
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-actions.c:9466,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-actions.c:9471,9'
          Dst:             format_OUTPUT
        - Src:             'lib/ofp-actions.c:9471,9'
          Dst:             format_GROUP
        - Src:             'lib/ofp-actions.c:9471,9'
          Dst:             format_CONTROLLER
        - Src:             'lib/ofp-actions.c:9471,9'
          Dst:             format_ENQUEUE
        - Src:             'lib/ofp-actions.c:9471,9'
          Dst:             format_OUTPUT_REG
        - Src:             'lib/ofp-actions.c:9471,9'
          Dst:             format_BUNDLE
        - Src:             'lib/ofp-actions.c:9471,9'
          Dst:             format_SET_FIELD
        - Src:             'lib/ofp-actions.c:9471,9'
          Dst:             format_SET_VLAN_VID
        - Src:             'lib/ofp-actions.c:9471,9'
          Dst:             format_SET_VLAN_PCP
        - Src:             'lib/ofp-actions.c:9471,9'
          Dst:             format_STRIP_VLAN
        - Src:             'lib/ofp-actions.c:9471,9'
          Dst:             format_PUSH_VLAN
        - Src:             'lib/ofp-actions.c:9471,9'
          Dst:             format_SET_ETH_SRC
        - Src:             'lib/ofp-actions.c:9471,9'
          Dst:             format_SET_ETH_DST
        - Src:             'lib/ofp-actions.c:9471,9'
          Dst:             format_SET_IPV4_SRC
        - Src:             'lib/ofp-actions.c:9471,9'
          Dst:             format_SET_IPV4_DST
        - Src:             'lib/ofp-actions.c:9471,9'
          Dst:             format_SET_IP_DSCP
        - Src:             'lib/ofp-actions.c:9471,9'
          Dst:             format_SET_IP_ECN
        - Src:             'lib/ofp-actions.c:9471,9'
          Dst:             format_SET_IP_TTL
        - Src:             'lib/ofp-actions.c:9471,9'
          Dst:             format_SET_L4_SRC_PORT
        - Src:             'lib/ofp-actions.c:9471,9'
          Dst:             format_SET_L4_DST_PORT
        - Src:             'lib/ofp-actions.c:9471,9'
          Dst:             format_REG_MOVE
        - Src:             'lib/ofp-actions.c:9471,9'
          Dst:             format_STACK_PUSH
        - Src:             'lib/ofp-actions.c:9471,9'
          Dst:             format_STACK_POP
        - Src:             'lib/ofp-actions.c:9471,9'
          Dst:             format_DEC_TTL
        - Src:             'lib/ofp-actions.c:9471,9'
          Dst:             format_SET_MPLS_LABEL
        - Src:             'lib/ofp-actions.c:9471,9'
          Dst:             format_SET_MPLS_TC
        - Src:             'lib/ofp-actions.c:9471,9'
          Dst:             format_SET_MPLS_TTL
        - Src:             'lib/ofp-actions.c:9471,9'
          Dst:             format_DEC_MPLS_TTL
        - Src:             'lib/ofp-actions.c:9471,9'
          Dst:             format_PUSH_MPLS
        - Src:             'lib/ofp-actions.c:9471,9'
          Dst:             format_POP_MPLS
        - Src:             'lib/ofp-actions.c:9471,9'
          Dst:             format_DEC_NSH_TTL
        - Src:             'lib/ofp-actions.c:9471,9'
          Dst:             format_DELETE_FIELD
        - Src:             'lib/ofp-actions.c:9471,9'
          Dst:             format_ENCAP
        - Src:             'lib/ofp-actions.c:9471,9'
          Dst:             format_DECAP
        - Src:             'lib/ofp-actions.c:9471,9'
          Dst:             format_SET_TUNNEL
        - Src:             'lib/ofp-actions.c:9471,9'
          Dst:             format_SET_QUEUE
        - Src:             'lib/ofp-actions.c:9471,9'
          Dst:             format_POP_QUEUE
        - Src:             'lib/ofp-actions.c:9471,9'
          Dst:             format_FIN_TIMEOUT
        - Src:             'lib/ofp-actions.c:9471,9'
          Dst:             format_RESUBMIT
        - Src:             'lib/ofp-actions.c:9471,9'
          Dst:             format_LEARN
        - Src:             'lib/ofp-actions.c:9471,9'
          Dst:             format_CONJUNCTION
        - Src:             'lib/ofp-actions.c:9471,9'
          Dst:             format_MULTIPATH
        - Src:             'lib/ofp-actions.c:9471,9'
          Dst:             format_NOTE
        - Src:             'lib/ofp-actions.c:9471,9'
          Dst:             format_EXIT
        - Src:             'lib/ofp-actions.c:9471,9'
          Dst:             format_SAMPLE
        - Src:             'lib/ofp-actions.c:9471,9'
          Dst:             format_UNROLL_XLATE
        - Src:             'lib/ofp-actions.c:9471,9'
          Dst:             format_CT
        - Src:             'lib/ofp-actions.c:9471,9'
          Dst:             format_CT_CLEAR
        - Src:             'lib/ofp-actions.c:9471,9'
          Dst:             format_NAT
        - Src:             'lib/ofp-actions.c:9471,9'
          Dst:             format_OUTPUT_TRUNC
        - Src:             'lib/ofp-actions.c:9471,9'
          Dst:             format_CLONE
        - Src:             'lib/ofp-actions.c:9471,9'
          Dst:             format_CHECK_PKT_LARGER
        - Src:             'lib/ofp-actions.c:9471,9'
          Dst:             format_DEBUG_RECIRC
        - Src:             'lib/ofp-actions.c:9471,9'
          Dst:             format_DEBUG_SLOW
        - Src:             'lib/ofp-actions.c:9471,9'
          Dst:             format_METER
        - Src:             'lib/ofp-actions.c:9471,9'
          Dst:             format_CLEAR_ACTIONS
        - Src:             'lib/ofp-actions.c:9471,9'
          Dst:             format_WRITE_ACTIONS
        - Src:             'lib/ofp-actions.c:9471,9'
          Dst:             format_WRITE_METADATA
        - Src:             'lib/ofp-actions.c:9471,9'
          Dst:             format_GOTO_TABLE
        - Src:             'lib/ofp-actions.c:9474,9'
          Dst:             abort
    - functionName:    format_OUTPUT
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 704
      functionLinenumberEnd: 712
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          75
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ds_put_format
        - ofp_to_u16
        - ofputil_format_port
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:705,9'
          Dst:             ofp_to_u16
        - Src:             'lib/ofp-actions.c:705,31'
          Dst:             ofp_to_u16
        - Src:             'lib/ofp-actions.c:706,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-actions.c:708,5'
          Dst:             ofputil_format_port
        - Src:             'lib/ofp-actions.c:710,9'
          Dst:             ds_put_format
    - functionName:    format_GROUP
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 748
      functionLinenumberEnd: 751
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_format
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:749,5'
          Dst:             ds_put_format
    - functionName:    format_CONTROLLER
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1029
      functionLinenumberEnd: 1069
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         33
      ICount:          265
      EdgeCount:       44
      CyclomaticComplexity: 13
      functionsReached:
        - ds_chomp
        - ds_put_char
        - ds_put_format
        - ds_put_hex_with_delimiter
        - ofputil_packet_in_reason_to_string
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:1032,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-actions.c:1037,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-actions.c:1042,27'
          Dst:             ofputil_packet_in_reason_to_string
        - Src:             'lib/ofp-actions.c:1041,13'
          Dst:             ds_put_format
        - Src:             'lib/ofp-actions.c:1046,13'
          Dst:             ds_put_format
        - Src:             'lib/ofp-actions.c:1050,13'
          Dst:             ds_put_format
        - Src:             'lib/ofp-actions.c:1054,13'
          Dst:             ds_put_format
        - Src:             'lib/ofp-actions.c:1055,13'
          Dst:             ds_put_hex_with_delimiter
        - Src:             'lib/ofp-actions.c:1057,13'
          Dst:             ds_put_char
        - Src:             'lib/ofp-actions.c:1060,13'
          Dst:             ds_put_format
        - Src:             'lib/ofp-actions.c:1063,13'
          Dst:             ds_put_format
        - Src:             'lib/ofp-actions.c:1066,9'
          Dst:             ds_chomp
        - Src:             'lib/ofp-actions.c:1067,9'
          Dst:             ds_put_format
    - functionName:    format_ENQUEUE
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1152
      functionLinenumberEnd: 1156
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          40
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_format
        - ofputil_format_port
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:1153,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-actions.c:1154,5'
          Dst:             ofputil_format_port
        - Src:             'lib/ofp-actions.c:1155,5'
          Dst:             ds_put_format
    - functionName:    format_OUTPUT_REG
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1318
      functionLinenumberEnd: 1321
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_format
        - mf_format_subfield
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:1319,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-actions.c:1320,5'
          Dst:             mf_format_subfield
    - functionName:    format_BUNDLE
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1545
      functionLinenumberEnd: 1547
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - bundle_format
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:1546,5'
          Dst:             bundle_format
    - functionName:    format_SET_FIELD
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3326
      functionLinenumberEnd: 3347
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          113
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ds_chomp
        - ds_put_char
        - ds_put_format
        - mf_format
        - mf_format_subfield
        - next_load_segment
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:3332,16'
          Dst:             next_load_segment
        - Src:             'lib/ofp-actions.c:3333,13'
          Dst:             ds_put_format
        - Src:             'lib/ofp-actions.c:3336,13'
          Dst:             mf_format_subfield
        - Src:             'lib/ofp-actions.c:3337,13'
          Dst:             ds_put_char
        - Src:             'lib/ofp-actions.c:3339,9'
          Dst:             ds_chomp
        - Src:             'lib/ofp-actions.c:3341,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-actions.c:3342,9'
          Dst:             mf_format
        - Src:             'lib/ofp-actions.c:3344,9'
          Dst:             ds_put_format
    - functionName:    format_SET_VLAN_VID
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1641
      functionLinenumberEnd: 1645
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_format
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:1642,5'
          Dst:             ds_put_format
    - functionName:    format_SET_VLAN_PCP
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1749
      functionLinenumberEnd: 1753
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_format
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:1750,5'
          Dst:             ds_put_format
    - functionName:    format_STRIP_VLAN
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1816
      functionLinenumberEnd: 1821
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_format
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:1817,5'
          Dst:             ds_put_format
    - functionName:    format_PUSH_VLAN
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1886
      functionLinenumberEnd: 1889
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_format
        - ntohs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:1888,45'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:1887,5'
          Dst:             ds_put_format
    - functionName:    format_SET_ETH_SRC
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1982
      functionLinenumberEnd: 1985
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          63
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_format
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:1983,5'
          Dst:             ds_put_format
    - functionName:    format_SET_ETH_DST
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1990
      functionLinenumberEnd: 1993
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          63
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_format
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:1991,5'
          Dst:             ds_put_format
    - functionName:    format_SET_IPV4_SRC
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2074
      functionLinenumberEnd: 2077
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_format
        - ntohl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:2076,45'
          Dst:             ntohl
        - Src:             'lib/ofp-actions.c:2076,45'
          Dst:             ntohl
        - Src:             'lib/ofp-actions.c:2076,45'
          Dst:             ntohl
        - Src:             'lib/ofp-actions.c:2076,45'
          Dst:             ntohl
        - Src:             'lib/ofp-actions.c:2075,5'
          Dst:             ds_put_format
    - functionName:    format_SET_IPV4_DST
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2082
      functionLinenumberEnd: 2085
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_format
        - ntohl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:2084,45'
          Dst:             ntohl
        - Src:             'lib/ofp-actions.c:2084,45'
          Dst:             ntohl
        - Src:             'lib/ofp-actions.c:2084,45'
          Dst:             ntohl
        - Src:             'lib/ofp-actions.c:2084,45'
          Dst:             ntohl
        - Src:             'lib/ofp-actions.c:2083,5'
          Dst:             ds_put_format
    - functionName:    format_SET_IP_DSCP
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2159
      functionLinenumberEnd: 2162
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_format
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:2160,5'
          Dst:             ds_put_format
    - functionName:    format_SET_IP_ECN
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2232
      functionLinenumberEnd: 2235
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_format
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:2233,5'
          Dst:             ds_put_format
    - functionName:    format_SET_IP_TTL
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2287
      functionLinenumberEnd: 2290
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_format
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:2288,5'
          Dst:             ds_put_format
    - functionName:    format_SET_L4_SRC_PORT
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2377
      functionLinenumberEnd: 2380
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_format
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:2378,5'
          Dst:             ds_put_format
    - functionName:    format_SET_L4_DST_PORT
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2385
      functionLinenumberEnd: 2388
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_format
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:2386,5'
          Dst:             ds_put_format
    - functionName:    format_REG_MOVE
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2715
      functionLinenumberEnd: 2717
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nxm_format_reg_move
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:2716,5'
          Dst:             nxm_format_reg_move
    - functionName:    format_STACK_PUSH
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3558
      functionLinenumberEnd: 3560
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nxm_format_stack_push
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:3559,5'
          Dst:             nxm_format_stack_push
    - functionName:    format_STACK_POP
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3565
      functionLinenumberEnd: 3567
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nxm_format_stack_pop
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:3566,5'
          Dst:             nxm_format_stack_pop
    - functionName:    format_DEC_TTL
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3736
      functionLinenumberEnd: 3750
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          96
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - ds_put_cstr
        - ds_put_format
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:3739,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-actions.c:3741,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-actions.c:3744,17'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-actions.c:3746,13'
          Dst:             ds_put_format
        - Src:             'lib/ofp-actions.c:3748,9'
          Dst:             ds_put_format
    - functionName:    format_SET_MPLS_LABEL
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3809
      functionLinenumberEnd: 3813
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_format
        - ntohl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:3811,45'
          Dst:             ntohl
        - Src:             'lib/ofp-actions.c:3810,5'
          Dst:             ds_put_format
    - functionName:    format_SET_MPLS_TC
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3880
      functionLinenumberEnd: 3884
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_format
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:3881,5'
          Dst:             ds_put_format
    - functionName:    format_SET_MPLS_TTL
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3938
      functionLinenumberEnd: 3942
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_format
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:3939,5'
          Dst:             ds_put_format
    - functionName:    format_DEC_MPLS_TTL
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3977
      functionLinenumberEnd: 3979
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_format
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:3978,5'
          Dst:             ds_put_format
    - functionName:    format_PUSH_MPLS
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4029
      functionLinenumberEnd: 4032
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_format
        - ntohs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:4031,45'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:4030,5'
          Dst:             ds_put_format
    - functionName:    format_POP_MPLS
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4087
      functionLinenumberEnd: 4090
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_format
        - ntohs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:4089,45'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:4088,5'
          Dst:             ds_put_format
    - functionName:    format_DEC_NSH_TTL
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4822
      functionLinenumberEnd: 4824
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_format
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:4823,5'
          Dst:             ds_put_format
    - functionName:    format_DELETE_FIELD
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4247
      functionLinenumberEnd: 4251
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_format
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:4248,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-actions.c:4250,5'
          Dst:             ds_put_format
    - functionName:    format_ENCAP
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4651
      functionLinenumberEnd: 4660
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          75
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_format
        - format_ed_props
        - format_encap_pkt_type
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:4652,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-actions.c:4653,32'
          Dst:             format_encap_pkt_type
        - Src:             'lib/ofp-actions.c:4653,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-actions.c:4655,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-actions.c:4656,9'
          Dst:             format_ed_props
        - Src:             'lib/ofp-actions.c:4657,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-actions.c:4659,5'
          Dst:             ds_put_format
    - functionName:    format_DECAP
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4768
      functionLinenumberEnd: 4776
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          59
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_format
        - htonl
        - pt_ns
        - pt_ns_type
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:4769,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-actions.c:4770,28'
          Dst:             htonl
        - Src:             'lib/ofp-actions.c:4772,23'
          Dst:             pt_ns
        - Src:             'lib/ofp-actions.c:4773,23'
          Dst:             pt_ns_type
        - Src:             'lib/ofp-actions.c:4771,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-actions.c:4775,5'
          Dst:             ds_put_format
    - functionName:    format_SET_TUNNEL
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4167
      functionLinenumberEnd: 4172
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_format
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:4168,5'
          Dst:             ds_put_format
    - functionName:    format_SET_QUEUE
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4291
      functionLinenumberEnd: 4294
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_format
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:4292,5'
          Dst:             ds_put_format
    - functionName:    format_POP_QUEUE
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4330
      functionLinenumberEnd: 4332
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_format
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:4331,5'
          Dst:             ds_put_format
    - functionName:    format_FIN_TIMEOUT
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4426
      functionLinenumberEnd: 4438
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          83
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ds_chomp
        - ds_put_format
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:4427,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-actions.c:4429,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-actions.c:4433,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-actions.c:4436,5'
          Dst:             ds_chomp
        - Src:             'lib/ofp-actions.c:4437,5'
          Dst:             ds_put_format
    - functionName:    format_RESUBMIT
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5028
      functionLinenumberEnd: 5046
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          147
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - ds_put_char
        - ds_put_cstr
        - ds_put_format
        - ofputil_format_port
        - ofputil_format_table
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:5030,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-actions.c:5031,9'
          Dst:             ofputil_format_port
        - Src:             'lib/ofp-actions.c:5033,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-actions.c:5035,13'
          Dst:             ofputil_format_port
        - Src:             'lib/ofp-actions.c:5037,9'
          Dst:             ds_put_char
        - Src:             'lib/ofp-actions.c:5039,13'
          Dst:             ofputil_format_table
        - Src:             'lib/ofp-actions.c:5042,13'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-actions.c:5044,9'
          Dst:             ds_put_format
    - functionName:    format_LEARN
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5639
      functionLinenumberEnd: 5641
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - learn_format
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:5640,5'
          Dst:             learn_format
    - functionName:    format_CONJUNCTION
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5701
      functionLinenumberEnd: 5706
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          38
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_format
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:5702,5'
          Dst:             ds_put_format
    - functionName:    format_MULTIPATH
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5866
      functionLinenumberEnd: 5868
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - multipath_format
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:5867,5'
          Dst:             multipath_format
    - functionName:    format_NOTE
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5951
      functionLinenumberEnd: 5954
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          32
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_format
        - ds_put_hex_with_delimiter
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:5952,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-actions.c:5953,5'
          Dst:             ds_put_hex_with_delimiter
    - functionName:    format_EXIT
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5989
      functionLinenumberEnd: 5991
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_format
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:5990,5'
          Dst:             ds_put_format
    - functionName:    format_SAMPLE
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6527
      functionLinenumberEnd: 6556
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          183
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - ds_put_format
        - mf_format_subfield
        - ofputil_format_port
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:6528,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-actions.c:6534,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-actions.c:6536,9'
          Dst:             mf_format_subfield
        - Src:             'lib/ofp-actions.c:6538,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-actions.c:6540,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-actions.c:6542,9'
          Dst:             mf_format_subfield
        - Src:             'lib/ofp-actions.c:6544,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-actions.c:6547,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-actions.c:6548,9'
          Dst:             ofputil_format_port
        - Src:             'lib/ofp-actions.c:6551,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-actions.c:6553,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-actions.c:6555,5'
          Dst:             ds_put_format
    - functionName:    format_UNROLL_XLATE
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6021
      functionLinenumberEnd: 6029
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_format
        - ntohll
        - ofputil_format_table
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:6022,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-actions.c:6025,5'
          Dst:             ofputil_format_table
        - Src:             'lib/ofp-actions.c:6027,47'
          Dst:             ntohll
        - Src:             'lib/ofp-actions.c:6026,5'
          Dst:             ds_put_format
    - functionName:    format_CT
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7025
      functionLinenumberEnd: 7064
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         26
      ICount:          260
      EdgeCount:       34
      CyclomaticComplexity: 10
      functionsReached:
        - ds_chomp
        - ds_put_char
        - ds_put_format
        - format_NAT
        - format_alg
        - mf_format_subfield
        - ofpact_ct_get_action_len
        - ofpact_get_NAT
        - ofpact_next
        - ofpacts_format
        - ofputil_format_table
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:7026,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-actions.c:7028,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-actions.c:7031,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-actions.c:7034,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-actions.c:7035,9'
          Dst:             ofputil_format_table
        - Src:             'lib/ofp-actions.c:7036,9'
          Dst:             ds_put_char
        - Src:             'lib/ofp-actions.c:7039,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-actions.c:7040,9'
          Dst:             mf_format_subfield
        - Src:             'lib/ofp-actions.c:7041,9'
          Dst:             ds_put_char
        - Src:             'lib/ofp-actions.c:7043,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-actions.c:7049,26'
          Dst:             ofpact_ct_get_action_len
        - Src:             'lib/ofp-actions.c:7051,20'
          Dst:             ofpact_get_NAT
        - Src:             'lib/ofp-actions.c:7051,9'
          Dst:             format_NAT
        - Src:             'lib/ofp-actions.c:7052,9'
          Dst:             ds_put_char
        - Src:             'lib/ofp-actions.c:7054,18'
          Dst:             ofpact_next
        - Src:             'lib/ofp-actions.c:7057,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-actions.c:7058,9'
          Dst:             ofpacts_format
        - Src:             'lib/ofp-actions.c:7059,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-actions.c:7061,5'
          Dst:             format_alg
        - Src:             'lib/ofp-actions.c:7062,5'
          Dst:             ds_chomp
        - Src:             'lib/ofp-actions.c:7063,5'
          Dst:             ds_put_format
    - functionName:    format_CT_CLEAR
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7115
      functionLinenumberEnd: 7117
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_format
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:7116,5'
          Dst:             ds_put_format
    - functionName:    format_NAT
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7306
      functionLinenumberEnd: 7362
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         42
      ICount:          444
      EdgeCount:       56
      CyclomaticComplexity: 16
      functionsReached:
        - ds_chomp
        - ds_put_char
        - ds_put_format
        - ipv6_format_addr_bracket
        - ipv6_mask_is_any
        - memcmp
        - ntohl
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:7307,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-actions.c:7310,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-actions.c:7311,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-actions.c:7315,13'
          Dst:             ds_put_format
        - Src:             'lib/ofp-actions.c:7318,46'
          Dst:             ntohl
        - Src:             'lib/ofp-actions.c:7318,46'
          Dst:             ntohl
        - Src:             'lib/ofp-actions.c:7318,46'
          Dst:             ntohl
        - Src:             'lib/ofp-actions.c:7318,46'
          Dst:             ntohl
        - Src:             'lib/ofp-actions.c:7318,17'
          Dst:             ds_put_format
        - Src:             'lib/ofp-actions.c:7323,35'
          Dst:             ntohl
        - Src:             'lib/ofp-actions.c:7323,35'
          Dst:             ntohl
        - Src:             'lib/ofp-actions.c:7323,35'
          Dst:             ntohl
        - Src:             'lib/ofp-actions.c:7323,35'
          Dst:             ntohl
        - Src:             'lib/ofp-actions.c:7322,21'
          Dst:             ds_put_format
        - Src:             'lib/ofp-actions.c:7326,17'
          Dst:             ipv6_format_addr_bracket
        - Src:             'lib/ofp-actions.c:7329,22'
          Dst:             ipv6_mask_is_any
        - Src:             'lib/ofp-actions.c:7330,24'
          Dst:             memcmp
        - Src:             'lib/ofp-actions.c:7332,21'
          Dst:             ds_put_char
        - Src:             'lib/ofp-actions.c:7333,21'
          Dst:             ipv6_format_addr_bracket
        - Src:             'lib/ofp-actions.c:7338,17'
          Dst:             ds_put_char
        - Src:             'lib/ofp-actions.c:7339,17'
          Dst:             ds_put_format
        - Src:             'lib/ofp-actions.c:7343,21'
          Dst:             ds_put_format
        - Src:             'lib/ofp-actions.c:7346,13'
          Dst:             ds_put_char
        - Src:             'lib/ofp-actions.c:7349,17'
          Dst:             ds_put_format
        - Src:             'lib/ofp-actions.c:7353,17'
          Dst:             ds_put_format
        - Src:             'lib/ofp-actions.c:7356,17'
          Dst:             ds_put_format
        - Src:             'lib/ofp-actions.c:7359,9'
          Dst:             ds_chomp
        - Src:             'lib/ofp-actions.c:7360,9'
          Dst:             ds_put_format
    - functionName:    format_OUTPUT_TRUNC
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7541
      functionLinenumberEnd: 7545
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          40
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_format
        - ofputil_format_port
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:7542,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-actions.c:7543,5'
          Dst:             ofputil_format_port
        - Src:             'lib/ofp-actions.c:7544,5'
          Dst:             ds_put_format
    - functionName:    format_CLONE
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6114
      functionLinenumberEnd: 6118
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_format
        - ofpact_nest_get_action_len
        - ofpacts_format
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:6115,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-actions.c:6116,32'
          Dst:             ofpact_nest_get_action_len
        - Src:             'lib/ofp-actions.c:6116,5'
          Dst:             ofpacts_format
        - Src:             'lib/ofp-actions.c:6117,5'
          Dst:             ds_put_format
    - functionName:    format_CHECK_PKT_LARGER
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7902
      functionLinenumberEnd: 7906
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_format
        - mf_format_subfield
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:7903,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-actions.c:7905,5'
          Dst:             mf_format_subfield
    - functionName:    format_DEBUG_RECIRC
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6604
      functionLinenumberEnd: 6606
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_format
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:6605,5'
          Dst:             ds_put_format
    - functionName:    format_DEBUG_SLOW
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6644
      functionLinenumberEnd: 6646
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_format
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:6645,5'
          Dst:             ds_put_format
    - functionName:    format_METER
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7593
      functionLinenumberEnd: 7596
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_format
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:7594,5'
          Dst:             ds_put_format
    - functionName:    format_CLEAR_ACTIONS
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7628
      functionLinenumberEnd: 7630
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_format
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:7629,5'
          Dst:             ds_put_format
    - functionName:    ipv6_mask_is_any
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1193
      functionLinenumberEnd: 1194
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ipv6_addr_equals
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:1194,12'
          Dst:             ipv6_addr_equals
    - functionName:    ipv6_addr_equals
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1184
      functionLinenumberEnd: 1186
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          80
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofpact_ct_get_action_len
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 723
      functionLinenumberEnd: 724
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofpact_get_NAT
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ovs_ignore
    - functionName:    pt_ns
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1570
      functionLinenumberEnd: 1571
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohl
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:1571,12'
          Dst:             ntohl
    - functionName:    pt_ns_type
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1584
      functionLinenumberEnd: 1585
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohs
        - pt_ns_type_be
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:1585,18'
          Dst:             pt_ns_type_be
        - Src:             'lib/packets.h:1585,12'
          Dst:             ntohs
    - functionName:    pt_ns_type_be
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1577
      functionLinenumberEnd: 1578
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - be32_to_be16
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:1578,12'
          Dst:             be32_to_be16
    - functionName:    be32_to_be16
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 135
      functionLinenumberEnd: 135
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    next_load_segment
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2967
      functionLinenumberEnd: 2985
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          158
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - bitwise_get
        - bitwise_scan
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:2974,20'
          Dst:             bitwise_scan
        - Src:             'lib/ofp-actions.c:2977,27'
          Dst:             bitwise_scan
        - Src:             'lib/ofp-actions.c:2980,22'
          Dst:             bitwise_get
    - functionName:    raw_ctz
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 261
      functionLinenumberEnd: 267
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          36
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ctz64
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 291
      functionLinenumberEnd: 292
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          28
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - raw_ctz
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.h:292,16'
          Dst:             raw_ctz
    - functionName:    instruction_init_OFPIT11_APPLY_ACTIONS
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 410
      functionLinenumberEnd: 410
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htons
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:410,1'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:410,1'
          Dst:             htons
    - functionName:    instruction_init_OFPIT11_GOTO_TABLE
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 410
      functionLinenumberEnd: 410
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htons
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:410,1'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:410,1'
          Dst:             htons
    - functionName:    instruction_put_OFPIT11_GOTO_TABLE
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 410
      functionLinenumberEnd: 410
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - instruction_init_OFPIT11_GOTO_TABLE
        - ofpbuf_put_uninit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:410,1'
          Dst:             ofpbuf_put_uninit
        - Src:             'lib/ofp-actions.c:410,1'
          Dst:             instruction_init_OFPIT11_GOTO_TABLE
    - functionName:    instruction_init_OFPIT11_WRITE_METADATA
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 410
      functionLinenumberEnd: 410
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htons
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:410,1'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:410,1'
          Dst:             htons
    - functionName:    instruction_put_OFPIT11_WRITE_METADATA
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 410
      functionLinenumberEnd: 410
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - instruction_init_OFPIT11_WRITE_METADATA
        - ofpbuf_put_uninit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:410,1'
          Dst:             ofpbuf_put_uninit
        - Src:             'lib/ofp-actions.c:410,1'
          Dst:             instruction_init_OFPIT11_WRITE_METADATA
    - functionName:    put_NXAST_WRITE_METADATA
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4541
      functionLinenumberEnd: 4542
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_raw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4542,12'
          Dst:             ofpact_put_raw
    - functionName:    ofpact_put_raw
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9974
      functionLinenumberEnd: 10014
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          171
      EdgeCount:       20
      CyclomaticComplexity: 3
      functionsReached:
        - abort
        - htonl
        - htons
        - ofpact_raw_lookup
        - ofpbuf_put_zeros
        - ovs_ignore
      functionUses:    77
      BranchProfiles:
        - Branch String:   'lib/ofp-actions.c:9987,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-actions.c:9979,12'
          Dst:             ofpact_raw_lookup
        - Src:             'lib/ofp-actions.c:9982,11'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-actions.c:9983,17'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:9984,16'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:9985,19'
          Dst:             htonl
        - Src:             'lib/ofp-actions.c:9994,24'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:9999,9'
          Dst:             abort
        - Src:             'lib/ofp-actions.c:10011,9'
          Dst:             ovs_ignore
    - functionName:    ofpact_raw_lookup
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9959
      functionLinenumberEnd: 9968
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          85
      EdgeCount:       18
      CyclomaticComplexity: 5
      functionsReached:
        - abort
        - hash_2words
        - hmap_first_with_hash
        - hmap_next_with_hash
        - ofpact_encode_hmap
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:9962,5'
          Dst:             ofpact_encode_hmap
        - Src:             'lib/ofp-actions.c:9962,5'
          Dst:             hash_2words
        - Src:             'lib/ofp-actions.c:9962,5'
          Dst:             hmap_first_with_hash
        - Src:             'lib/ofp-actions.c:9962,5'
          Dst:             hmap_next_with_hash
        - Src:             'lib/ofp-actions.c:9968,5'
          Dst:             abort
    - functionName:    ofpact_encode_hmap
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9827
      functionLinenumberEnd: 9843
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         10
      ICount:          50
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - hash_2words
        - hmap_init
        - hmap_insert_at
        - ovsthread_once_done
        - ovsthread_once_start
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:9831,9'
          Dst:             ovsthread_once_start
        - Src:             'lib/ofp-actions.c:9834,9'
          Dst:             hmap_init
        - Src:             'lib/ofp-actions.c:9838,13'
          Dst:             hash_2words
        - Src:             'lib/ofp-actions.c:9838,13'
          Dst:             hmap_insert_at
        - Src:             'lib/ofp-actions.c:9841,9'
          Dst:             ovsthread_once_done
    - functionName:    hash_2words
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 153
      functionLinenumberEnd: 154
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_add
        - hash_finish
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:154,33'
          Dst:             hash_add
        - Src:             'lib/hash.h:154,24'
          Dst:             hash_add
        - Src:             'lib/hash.h:154,12'
          Dst:             hash_finish
    - functionName:    hmap_first_with_hash
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 360
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next_with_hash__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:360,12'
          Dst:             hmap_next_with_hash__
    - functionName:    hmap_next_with_hash
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 395
      functionLinenumberEnd: 396
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next_with_hash__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:396,12'
          Dst:             hmap_next_with_hash__
    - functionName:    hmap_next_with_hash__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 348
      functionLinenumberEnd: 352
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          40
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 108
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_add
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:109,12'
          Dst:             mhash_add
    - functionName:    hash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:119,12'
          Dst:             mhash_finish
    - functionName:    mhash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_rot
        - mhash_add__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:78,12'
          Dst:             mhash_add__
        - Src:             'lib/hash.h:79,12'
          Dst:             hash_rot
    - functionName:    mhash_add__
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hash_rot
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:71,12'
          Dst:             hash_rot
    - functionName:    hash_rot
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 32
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsthread_once_start
      functionSourceFile: '/src/openvswitch/./include/openvswitch/thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsthread_once_start__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/thread.h:161,12'
          Dst:             ovsthread_once_start__
    - functionName:    hmap_insert_at
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 306
      functionLinenumberEnd: 311
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_expand_at
        - hmap_insert_fast
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:307,5'
          Dst:             hmap_insert_fast
        - Src:             './include/openvswitch/hmap.h:309,9'
          Dst:             hmap_expand_at
    - functionName:    hmap_insert_fast
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 289
      functionLinenumberEnd: 295
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          38
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    instruction_init_OFPIT11_WRITE_ACTIONS
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 410
      functionLinenumberEnd: 410
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htons
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:410,1'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:410,1'
          Dst:             htons
    - functionName:    instruction_put_OFPIT11_WRITE_ACTIONS
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 410
      functionLinenumberEnd: 410
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - instruction_init_OFPIT11_WRITE_ACTIONS
        - ofpbuf_put_uninit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:410,1'
          Dst:             ofpbuf_put_uninit
        - Src:             'lib/ofp-actions.c:410,1'
          Dst:             instruction_init_OFPIT11_WRITE_ACTIONS
    - functionName:    instruction_init_OFPIT11_CLEAR_ACTIONS
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 410
      functionLinenumberEnd: 410
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htons
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:410,1'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:410,1'
          Dst:             htons
    - functionName:    instruction_put_OFPIT11_CLEAR_ACTIONS
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 410
      functionLinenumberEnd: 410
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - instruction_init_OFPIT11_CLEAR_ACTIONS
        - ofpbuf_put_uninit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:410,1'
          Dst:             ofpbuf_put_uninit
        - Src:             'lib/ofp-actions.c:410,1'
          Dst:             instruction_init_OFPIT11_CLEAR_ACTIONS
    - functionName:    instruction_init_OFPIT13_METER
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 410
      functionLinenumberEnd: 410
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htons
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:410,1'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:410,1'
          Dst:             htons
    - functionName:    put_OFPAT15_METER
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4446
      functionLinenumberEnd: 4448
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_raw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4447,5'
          Dst:             ofpact_put_raw
    - functionName:    instruction_put_OFPIT13_METER
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 410
      functionLinenumberEnd: 410
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - instruction_init_OFPIT13_METER
        - ofpbuf_put_uninit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:410,1'
          Dst:             ofpbuf_put_uninit
        - Src:             'lib/ofp-actions.c:410,1'
          Dst:             instruction_init_OFPIT13_METER
    - functionName:    put_NXAST_DEBUG_SLOW
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4631
      functionLinenumberEnd: 4633
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_raw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4632,5'
          Dst:             ofpact_put_raw
    - functionName:    put_NXAST_DEBUG_RECIRC
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4636
      functionLinenumberEnd: 4638
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_raw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4637,5'
          Dst:             ofpact_put_raw
    - functionName:    put_NXAST_CHECK_PKT_LARGER
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4621
      functionLinenumberEnd: 4622
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_raw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4622,12'
          Dst:             ofpact_put_raw
    - functionName:    put_NXAST_CLONE
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4596
      functionLinenumberEnd: 4597
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_raw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4597,12'
          Dst:             ofpact_put_raw
    - functionName:    put_NXAST_OUTPUT_TRUNC
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4591
      functionLinenumberEnd: 4592
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_raw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4592,12'
          Dst:             ofpact_put_raw
    - functionName:    put_NXAST_NAT
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4586
      functionLinenumberEnd: 4587
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_raw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4587,12'
          Dst:             ofpact_put_raw
    - functionName:    put_NXAST_CT_CLEAR
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4601
      functionLinenumberEnd: 4603
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_raw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4602,5'
          Dst:             ofpact_put_raw
    - functionName:    ofpbuf_at
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 183
      functionLinenumberEnd: 189
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:185,9'
          Dst:             ovs_ignore
    - functionName:    put_NXAST_CT
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4581
      functionLinenumberEnd: 4582
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_raw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4582,12'
          Dst:             ofpact_put_raw
    - functionName:    put_NXAST_SAMPLE
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4556
      functionLinenumberEnd: 4557
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_raw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4557,12'
          Dst:             ofpact_put_raw
    - functionName:    put_NXAST_SAMPLE2
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4561
      functionLinenumberEnd: 4562
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_raw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4562,12'
          Dst:             ofpact_put_raw
    - functionName:    put_NXAST_SAMPLE3
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4566
      functionLinenumberEnd: 4567
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_raw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4567,12'
          Dst:             ofpact_put_raw
    - functionName:    encode_SAMPLE2
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6384
      functionLinenumberEnd: 6391
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          64
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
        - htons
        - ofp_to_u16
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:6385,24'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:6386,29'
          Dst:             htonl
        - Src:             'lib/ofp-actions.c:6387,26'
          Dst:             htonl
        - Src:             'lib/ofp-actions.c:6388,25'
          Dst:             htonl
        - Src:             'lib/ofp-actions.c:6389,32'
          Dst:             ofp_to_u16
        - Src:             'lib/ofp-actions.c:6389,26'
          Dst:             htons
    - functionName:    put_NXAST_SAMPLE4
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4571
      functionLinenumberEnd: 4572
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_raw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4572,12'
          Dst:             ofpact_put_raw
    - functionName:    encode_SAMPLE4
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6396
      functionLinenumberEnd: 6422
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          150
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - htonl
        - htons
        - nxm_encode_ofs_nbits
        - nxm_header_from_mff
        - ofp_to_u16
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:6397,24'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:6398,29'
          Dst:             htonl
        - Src:             'lib/ofp-actions.c:6399,32'
          Dst:             ofp_to_u16
        - Src:             'lib/ofp-actions.c:6399,26'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:6404,19'
          Dst:             nxm_header_from_mff
        - Src:             'lib/ofp-actions.c:6404,13'
          Dst:             htonl
        - Src:             'lib/ofp-actions.c:6406,13'
          Dst:             nxm_encode_ofs_nbits
        - Src:             'lib/ofp-actions.c:6409,31'
          Dst:             htonl
        - Src:             'lib/ofp-actions.c:6410,31'
          Dst:             htonl
        - Src:             'lib/ofp-actions.c:6414,19'
          Dst:             nxm_header_from_mff
        - Src:             'lib/ofp-actions.c:6414,13'
          Dst:             htonl
        - Src:             'lib/ofp-actions.c:6416,13'
          Dst:             nxm_encode_ofs_nbits
        - Src:             'lib/ofp-actions.c:6419,30'
          Dst:             htonl
        - Src:             'lib/ofp-actions.c:6420,30'
          Dst:             htonl
    - functionName:    nxm_encode_ofs_nbits
      functionSourceFile: '/src/openvswitch/lib/nx-match.h'
      linkageType:     InternalLinkage
      functionLinenumber: 161
      functionLinenumberEnd: 162
      functionDepth:   0
      returnType:      short
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htons
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.h:162,12'
          Dst:             htons
    - functionName:    put_NXAST_EXIT
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4521
      functionLinenumberEnd: 4523
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_raw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4522,5'
          Dst:             ofpact_put_raw
    - functionName:    put_NXAST_NOTE
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4481
      functionLinenumberEnd: 4482
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_raw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4482,12'
          Dst:             ofpact_put_raw
    - functionName:    put_NXAST_MULTIPATH
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4486
      functionLinenumberEnd: 4487
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_raw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4487,12'
          Dst:             ofpact_put_raw
    - functionName:    put_NXAST_CONJUNCTION
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4576
      functionLinenumberEnd: 4577
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_raw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4577,12'
          Dst:             ofpact_put_raw
    - functionName:    put_be32
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5554
      functionLinenumberEnd: 5556
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpbuf_put
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:5555,5'
          Dst:             ofpbuf_put
    - functionName:    put_be16
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5548
      functionLinenumberEnd: 5550
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpbuf_put
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:5549,5'
          Dst:             ofpbuf_put
    - functionName:    ofpact_learn_spec_next
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 856
      functionLinenumberEnd: 863
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          44
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofpact_learn_spec_imm
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 850
      functionLinenumberEnd: 851
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    put_u32
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5566
      functionLinenumberEnd: 5568
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
        - put_be32
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:5567,17'
          Dst:             htonl
        - Src:             'lib/ofp-actions.c:5567,5'
          Dst:             put_be32
    - functionName:    put_u16
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5560
      functionLinenumberEnd: 5562
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htons
        - put_be16
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:5561,17'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:5561,5'
          Dst:             put_be16
    - functionName:    ofpact_learn_spec_end
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 894
      functionLinenumberEnd: 895
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_next
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:895,12'
          Dst:             ofpact_next
    - functionName:    put_NXAST_LEARN
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4511
      functionLinenumberEnd: 4512
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_raw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4512,12'
          Dst:             ofpact_put_raw
    - functionName:    put_NXAST_LEARN2
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4516
      functionLinenumberEnd: 4517
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_raw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4517,12'
          Dst:             ofpact_put_raw
    - functionName:    put_NXAST_RESUBMIT_TABLE
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4456
      functionLinenumberEnd: 4457
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_raw
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4457,12'
          Dst:             ofpact_put_raw
    - functionName:    put_NXAST_RESUBMIT_TABLE_CT
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4461
      functionLinenumberEnd: 4462
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_raw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4462,12'
          Dst:             ofpact_put_raw
    - functionName:    put_NXAST_RESUBMIT
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4451
      functionLinenumberEnd: 4453
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_raw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4452,5'
          Dst:             ofpact_put_raw
    - functionName:    put_NXAST_FIN_TIMEOUT
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4526
      functionLinenumberEnd: 4527
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_raw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4527,12'
          Dst:             ofpact_put_raw
    - functionName:    put_NXAST_SET_TUNNEL64
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4471
      functionLinenumberEnd: 4473
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_raw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4472,5'
          Dst:             ofpact_put_raw
    - functionName:    put_NXAST_SET_TUNNEL
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4466
      functionLinenumberEnd: 4468
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_raw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4467,5'
          Dst:             ofpact_put_raw
    - functionName:    put_NXAST_DECAP
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4611
      functionLinenumberEnd: 4612
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_raw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4612,12'
          Dst:             ofpact_put_raw
    - functionName:    put_NXAST_ENCAP
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4606
      functionLinenumberEnd: 4607
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_raw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4607,12'
          Dst:             ofpact_put_raw
    - functionName:    put_NXAST_DELETE_FIELD
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4626
      functionLinenumberEnd: 4627
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_raw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4627,12'
          Dst:             ofpact_put_raw
    - functionName:    put_NXAST_DEC_NSH_TTL
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4616
      functionLinenumberEnd: 4618
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_raw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4617,5'
          Dst:             ofpact_put_raw
    - functionName:    put_OFPAT_POP_MPLS
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4381
      functionLinenumberEnd: 4383
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohs
        - ofpact_put_raw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4382,59'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.inc2:4382,5'
          Dst:             ofpact_put_raw
    - functionName:    put_OFPAT_PUSH_MPLS
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4376
      functionLinenumberEnd: 4378
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohs
        - ofpact_put_raw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4377,60'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.inc2:4377,5'
          Dst:             ofpact_put_raw
    - functionName:    put_OFPAT_DEC_MPLS_TTL
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4371
      functionLinenumberEnd: 4373
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_raw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4372,5'
          Dst:             ofpact_put_raw
    - functionName:    put_OFPAT_SET_MPLS_TTL
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4366
      functionLinenumberEnd: 4368
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_raw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4367,5'
          Dst:             ofpact_put_raw
    - functionName:    put_OFPAT_SET_MPLS_TC
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4361
      functionLinenumberEnd: 4363
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_raw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4362,5'
          Dst:             ofpact_put_raw
    - functionName:    put_OFPAT_SET_MPLS_LABEL
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4356
      functionLinenumberEnd: 4358
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohl
        - ofpact_put_raw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4357,65'
          Dst:             ntohl
        - Src:             'lib/ofp-actions.inc2:4357,5'
          Dst:             ofpact_put_raw
    - functionName:    put_OFPAT_DEC_NW_TTL
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4401
      functionLinenumberEnd: 4403
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_raw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4402,5'
          Dst:             ofpact_put_raw
    - functionName:    put_NXAST_DEC_TTL_CNT_IDS
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4406
      functionLinenumberEnd: 4407
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_raw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4407,12'
          Dst:             ofpact_put_raw
    - functionName:    put_NXAST_STACK_POP
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4551
      functionLinenumberEnd: 4552
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_raw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4552,12'
          Dst:             ofpact_put_raw
    - functionName:    put_NXAST_STACK_PUSH
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4546
      functionLinenumberEnd: 4547
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_raw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4547,12'
          Dst:             ofpact_put_raw
    - functionName:    encode_STACK_op
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3516
      functionLinenumberEnd: 3527
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          50
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htons
        - ntohs
        - nx_put_mff_header
        - ofpbuf_put
        - ofpbuf_put_uninit
        - ofpbuf_use_stack
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:3520,20'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:3522,32'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:3522,5'
          Dst:             ofpbuf_use_stack
        - Src:             'lib/ofp-actions.c:3523,5'
          Dst:             ofpbuf_put_uninit
        - Src:             'lib/ofp-actions.c:3524,5'
          Dst:             nx_put_mff_header
        - Src:             'lib/ofp-actions.c:3525,14'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:3526,5'
          Dst:             ofpbuf_put
    - functionName:    put_NXAST_REG_MOVE
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4441
      functionLinenumberEnd: 4442
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_raw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4442,12'
          Dst:             ofpact_put_raw
    - functionName:    put_ONFACT13_COPY_FIELD
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4436
      functionLinenumberEnd: 4437
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_raw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4437,12'
          Dst:             ofpact_put_raw
    - functionName:    put_OFPAT15_COPY_FIELD
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4431
      functionLinenumberEnd: 4432
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_raw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4432,12'
          Dst:             ofpact_put_raw
    - functionName:    encode_SET_L4_port
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2323
      functionLinenumberEnd: 2331
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - char
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          61
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ofpact_put_raw
        - put_set_field
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:2327,9'
          Dst:             put_set_field
        - Src:             'lib/ofp-actions.c:2329,9'
          Dst:             ofpact_put_raw
    - functionName:    put_set_field
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2938
      functionLinenumberEnd: 2950
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - char
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          61
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonll
        - mf_from_id
        - nx_put_entry
        - pad_ofpat
        - put_OFPAT12_SET_FIELD
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:2940,19'
          Dst:             mf_from_id
        - Src:             'lib/ofp-actions.c:2944,18'
          Dst:             htonll
        - Src:             'lib/ofp-actions.c:2946,12'
          Dst:             put_OFPAT12_SET_FIELD
        - Src:             'lib/ofp-actions.c:2948,28'
          Dst:             mf_from_id
        - Src:             'lib/ofp-actions.c:2948,5'
          Dst:             nx_put_entry
        - Src:             'lib/ofp-actions.c:2949,5'
          Dst:             pad_ofpat
    - functionName:    mf_from_id
      functionSourceFile: '/src/openvswitch/./include/openvswitch/meta-flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2363
      functionLinenumberEnd: 2366
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/meta-flow.h:2365,5'
          Dst:             ovs_ignore
    - functionName:    htonll
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 30
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byte-order.h:30,12'
          Dst:             htonl
        - Src:             'lib/byte-order.h:30,44'
          Dst:             htonl
        - Src:             'lib/byte-order.h:30,62'
          Dst:             htonl
    - functionName:    put_OFPAT12_SET_FIELD
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4411
      functionLinenumberEnd: 4412
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_raw
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4412,12'
          Dst:             ofpact_put_raw
    - functionName:    pad_ofpat
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10019
      functionLinenumberEnd: 10027
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          49
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htons
        - ofpbuf_at_assert
        - ofpbuf_put_zeros
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:10022,5'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-actions.c:10025,11'
          Dst:             ofpbuf_at_assert
        - Src:             'lib/ofp-actions.c:10026,16'
          Dst:             htons
    - functionName:    put_OFPAT11_SET_NW_TTL
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4396
      functionLinenumberEnd: 4398
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_raw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4397,5'
          Dst:             ofpact_put_raw
    - functionName:    put_OFPAT11_SET_NW_ECN
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4336
      functionLinenumberEnd: 4338
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_raw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4337,5'
          Dst:             ofpact_put_raw
    - functionName:    encode_SET_IPV4_addr
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2034
      functionLinenumberEnd: 2041
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - char
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ntohl
        - ofpact_put_raw
        - put_set_field
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:2037,47'
          Dst:             ntohl
        - Src:             'lib/ofp-actions.c:2037,9'
          Dst:             ofpact_put_raw
        - Src:             'lib/ofp-actions.c:2039,48'
          Dst:             ntohl
        - Src:             'lib/ofp-actions.c:2039,9'
          Dst:             put_set_field
    - functionName:    encode_SET_ETH_addr
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1937
      functionLinenumberEnd: 1946
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - char
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          58
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - eth_addr_to_uint64
        - ofpact_put_raw
        - put_set_field
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:1941,16'
          Dst:             ofpact_put_raw
        - Src:             'lib/ofp-actions.c:1944,48'
          Dst:             eth_addr_to_uint64
        - Src:             'lib/ofp-actions.c:1944,9'
          Dst:             put_set_field
    - functionName:    put_OFPAT_SET_TP_DST
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4346
      functionLinenumberEnd: 4348
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohs
        - ofpact_put_raw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4347,55'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.inc2:4347,5'
          Dst:             ofpact_put_raw
    - functionName:    put_OFPAT_SET_TP_SRC
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4341
      functionLinenumberEnd: 4343
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohs
        - ofpact_put_raw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4342,55'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.inc2:4342,5'
          Dst:             ofpact_put_raw
    - functionName:    put_OFPAT_SET_NW_TOS
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4331
      functionLinenumberEnd: 4333
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_raw
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4332,5'
          Dst:             ofpact_put_raw
    - functionName:    put_OFPAT_SET_NW_DST
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4326
      functionLinenumberEnd: 4328
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohl
        - ofpact_put_raw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4327,61'
          Dst:             ntohl
        - Src:             'lib/ofp-actions.inc2:4327,5'
          Dst:             ofpact_put_raw
    - functionName:    put_OFPAT_SET_NW_SRC
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4321
      functionLinenumberEnd: 4323
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohl
        - ofpact_put_raw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4322,61'
          Dst:             ntohl
        - Src:             'lib/ofp-actions.inc2:4322,5'
          Dst:             ofpact_put_raw
    - functionName:    put_OFPAT_SET_DL_DST
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4316
      functionLinenumberEnd: 4317
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_raw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4317,12'
          Dst:             ofpact_put_raw
    - functionName:    put_OFPAT_SET_DL_SRC
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4311
      functionLinenumberEnd: 4312
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_raw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4312,12'
          Dst:             ofpact_put_raw
    - functionName:    put_OFPAT11_POP_VLAN
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4306
      functionLinenumberEnd: 4308
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_raw
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4307,5'
          Dst:             ofpact_put_raw
    - functionName:    put_OFPAT11_SET_VLAN_PCP
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4291
      functionLinenumberEnd: 4293
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_raw
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4292,5'
          Dst:             ofpact_put_raw
    - functionName:    put_OFPAT11_SET_VLAN_VID
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4286
      functionLinenumberEnd: 4288
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_raw
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4287,5'
          Dst:             ofpact_put_raw
    - functionName:    put_OFPAT11_PUSH_VLAN
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4296
      functionLinenumberEnd: 4298
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohs
        - ofpact_put_raw
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4297,56'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.inc2:4297,5'
          Dst:             ofpact_put_raw
    - functionName:    put_OFPAT10_STRIP_VLAN
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4301
      functionLinenumberEnd: 4303
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_raw
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4302,5'
          Dst:             ofpact_put_raw
    - functionName:    put_OFPAT10_SET_VLAN_PCP
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4281
      functionLinenumberEnd: 4283
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_raw
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4282,5'
          Dst:             ofpact_put_raw
    - functionName:    put_OFPAT10_SET_VLAN_VID
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4276
      functionLinenumberEnd: 4278
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_raw
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4277,5'
          Dst:             ofpact_put_raw
    - functionName:    vlan_tci_to_pcp
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 515
      functionLinenumberEnd: 516
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:516,13'
          Dst:             ntohs
    - functionName:    vlan_tci_to_vid
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 507
      functionLinenumberEnd: 508
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:508,13'
          Dst:             ntohs
    - functionName:    put_NXAST_REG_LOAD
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4421
      functionLinenumberEnd: 4422
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_raw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4422,12'
          Dst:             ofpact_put_raw
    - functionName:    put_reg_load
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2955
      functionLinenumberEnd: 2962
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          50
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
        - htonll
        - nxm_encode_ofs_nbits
        - nxm_header_from_mff
        - ovs_ignore
        - put_NXAST_REG_LOAD
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:2956,5'
          Dst:             ovs_ignore
        - Src:             'lib/ofp-actions.c:2958,39'
          Dst:             put_NXAST_REG_LOAD
        - Src:             'lib/ofp-actions.c:2959,23'
          Dst:             nxm_encode_ofs_nbits
        - Src:             'lib/ofp-actions.c:2960,23'
          Dst:             nxm_header_from_mff
        - Src:             'lib/ofp-actions.c:2960,17'
          Dst:             htonl
        - Src:             'lib/ofp-actions.c:2961,19'
          Dst:             htonll
    - functionName:    put_NXAST_REG_LOAD2
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4426
      functionLinenumberEnd: 4427
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_raw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4427,12'
          Dst:             ofpact_put_raw
    - functionName:    set_field_to_legacy_openflow
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3027
      functionLinenumberEnd: 3139
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         39
      ICount:          294
      EdgeCount:       44
      CyclomaticComplexity: 7
      functionsReached:
        - encode_SET_IP_ECN
        - htons
        - ntohs
        - put_OFPAT10_SET_VLAN_PCP
        - put_OFPAT10_SET_VLAN_VID
        - put_OFPAT10_STRIP_VLAN
        - put_OFPAT11_POP_VLAN
        - put_OFPAT11_PUSH_VLAN
        - put_OFPAT11_SET_VLAN_PCP
        - put_OFPAT11_SET_VLAN_VID
        - put_OFPAT_SET_DL_DST
        - put_OFPAT_SET_DL_SRC
        - put_OFPAT_SET_NW_DST
        - put_OFPAT_SET_NW_SRC
        - put_OFPAT_SET_NW_TOS
        - put_OFPAT_SET_TP_DST
        - put_OFPAT_SET_TP_SRC
        - set_field_to_nxast
        - vlan_tci_to_pcp
        - vlan_tci_to_vid
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-actions.c:3028,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-actions.c:3031,27'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:3032,24'
          Dst:             vlan_tci_to_vid
        - Src:             'lib/ofp-actions.c:3033,23'
          Dst:             vlan_tci_to_pcp
        - Src:             'lib/ofp-actions.c:3042,17'
          Dst:             put_OFPAT10_SET_VLAN_VID
        - Src:             'lib/ofp-actions.c:3043,17'
          Dst:             put_OFPAT10_SET_VLAN_PCP
        - Src:             'lib/ofp-actions.c:3045,17'
          Dst:             put_OFPAT10_STRIP_VLAN
        - Src:             'lib/ofp-actions.c:3063,48'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:3063,21'
          Dst:             put_OFPAT11_PUSH_VLAN
        - Src:             'lib/ofp-actions.c:3065,17'
          Dst:             put_OFPAT11_SET_VLAN_VID
        - Src:             'lib/ofp-actions.c:3066,17'
          Dst:             put_OFPAT11_SET_VLAN_PCP
        - Src:             'lib/ofp-actions.c:3071,17'
          Dst:             put_OFPAT11_POP_VLAN
        - Src:             'lib/ofp-actions.c:3078,24'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:3080,13'
          Dst:             put_OFPAT10_SET_VLAN_VID
        - Src:             'lib/ofp-actions.c:3082,13'
          Dst:             put_OFPAT11_SET_VLAN_VID
        - Src:             'lib/ofp-actions.c:3089,13'
          Dst:             put_OFPAT10_SET_VLAN_PCP
        - Src:             'lib/ofp-actions.c:3091,13'
          Dst:             put_OFPAT11_SET_VLAN_PCP
        - Src:             'lib/ofp-actions.c:3096,9'
          Dst:             put_OFPAT_SET_DL_SRC
        - Src:             'lib/ofp-actions.c:3100,9'
          Dst:             put_OFPAT_SET_DL_DST
        - Src:             'lib/ofp-actions.c:3104,9'
          Dst:             put_OFPAT_SET_NW_SRC
        - Src:             'lib/ofp-actions.c:3108,9'
          Dst:             put_OFPAT_SET_NW_DST
        - Src:             'lib/ofp-actions.c:3112,9'
          Dst:             put_OFPAT_SET_NW_TOS
        - Src:             'lib/ofp-actions.c:3116,9'
          Dst:             put_OFPAT_SET_NW_TOS
        - Src:             'lib/ofp-actions.c:3121,9'
          Dst:             encode_SET_IP_ECN
        - Src:             'lib/ofp-actions.c:3127,9'
          Dst:             put_OFPAT_SET_TP_SRC
        - Src:             'lib/ofp-actions.c:3132,9'
          Dst:             put_OFPAT_SET_TP_DST
        - Src:             'lib/ofp-actions.c:3136,9'
          Dst:             set_field_to_nxast
    - functionName:    encode_SET_IP_ECN
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2198
      functionLinenumberEnd: 2209
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          64
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - mf_from_id
        - put_OFPAT11_SET_NW_ECN
        - put_reg_load
        - put_set_field
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:2201,45'
          Dst:             mf_from_id
        - Src:             'lib/ofp-actions.c:2203,9'
          Dst:             put_reg_load
        - Src:             'lib/ofp-actions.c:2205,9'
          Dst:             put_OFPAT11_SET_NW_ECN
        - Src:             'lib/ofp-actions.c:2207,9'
          Dst:             put_set_field
    - functionName:    set_field_to_nxast
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2990
      functionLinenumberEnd: 3014
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          121
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - mf_nxm_header
        - next_load_segment
        - nx_put_entry
        - pad_ofpat
        - put_NXAST_REG_LOAD2
        - put_reg_load
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:2996,13'
          Dst:             mf_nxm_header
        - Src:             'lib/ofp-actions.c:3000,15'
          Dst:             put_NXAST_REG_LOAD2
        - Src:             'lib/ofp-actions.c:3002,9'
          Dst:             nx_put_entry
        - Src:             'lib/ofp-actions.c:3004,9'
          Dst:             pad_ofpat
        - Src:             'lib/ofp-actions.c:3010,16'
          Dst:             next_load_segment
        - Src:             'lib/ofp-actions.c:3011,13'
          Dst:             put_reg_load
    - functionName:    set_field_to_set_field
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3144
      functionLinenumberEnd: 3153
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          63
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nx_put_entry
        - pad_ofpat
        - put_OFPAT12_SET_FIELD
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:3148,12'
          Dst:             put_OFPAT12_SET_FIELD
        - Src:             'lib/ofp-actions.c:3150,5'
          Dst:             nx_put_entry
        - Src:             'lib/ofp-actions.c:3152,5'
          Dst:             pad_ofpat
    - functionName:    put_NXAST_BUNDLE
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4491
      functionLinenumberEnd: 4492
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_raw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4492,12'
          Dst:             ofpact_put_raw
    - functionName:    put_NXAST_BUNDLE_LOAD
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4496
      functionLinenumberEnd: 4497
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_raw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4497,12'
          Dst:             ofpact_put_raw
    - functionName:    put_NXAST_OUTPUT_REG
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4501
      functionLinenumberEnd: 4502
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_raw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4502,12'
          Dst:             ofpact_put_raw
    - functionName:    put_NXAST_OUTPUT_REG2
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4506
      functionLinenumberEnd: 4507
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_raw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4507,12'
          Dst:             ofpact_put_raw
    - functionName:    put_NXAST_POP_QUEUE
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4476
      functionLinenumberEnd: 4478
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_raw
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4477,5'
          Dst:             ofpact_put_raw
    - functionName:    put_OFPAT_SET_QUEUE
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4386
      functionLinenumberEnd: 4388
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_raw
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4387,5'
          Dst:             ofpact_put_raw
    - functionName:    put_OFPAT10_ENQUEUE
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4351
      functionLinenumberEnd: 4352
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_raw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4352,12'
          Dst:             ofpact_put_raw
    - functionName:    put_NXAST_CONTROLLER
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4531
      functionLinenumberEnd: 4532
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_raw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4532,12'
          Dst:             ofpact_put_raw
    - functionName:    put_NXAST_CONTROLLER2
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4536
      functionLinenumberEnd: 4537
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_raw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4537,12'
          Dst:             ofpact_put_raw
    - functionName:    put_OFPAT_GROUP
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4391
      functionLinenumberEnd: 4393
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_raw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4392,5'
          Dst:             ofpact_put_raw
    - functionName:    put_OFPAT11_OUTPUT
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4271
      functionLinenumberEnd: 4272
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_raw
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4272,12'
          Dst:             ofpact_put_raw
    - functionName:    put_OFPAT10_OUTPUT
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4266
      functionLinenumberEnd: 4267
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_raw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4267,12'
          Dst:             ofpact_put_raw
    - functionName:    encode_GOTO_TABLE
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7921
      functionLinenumberEnd: 7935
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          60
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htons
        - instruction_put_OFPIT11_GOTO_TABLE
        - ofp_to_u16
        - put_NXAST_RESUBMIT_TABLE
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:7925,15'
          Dst:             put_NXAST_RESUBMIT_TABLE
        - Src:             'lib/ofp-actions.c:7927,30'
          Dst:             ofp_to_u16
        - Src:             'lib/ofp-actions.c:7927,24'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:7931,16'
          Dst:             instruction_put_OFPIT11_GOTO_TABLE
    - functionName:    encode_WRITE_METADATA
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7740
      functionLinenumberEnd: 7754
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          65
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - instruction_put_OFPIT11_WRITE_METADATA
        - put_NXAST_WRITE_METADATA
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:7744,16'
          Dst:             put_NXAST_WRITE_METADATA
        - Src:             'lib/ofp-actions.c:7750,16'
          Dst:             instruction_put_OFPIT11_WRITE_METADATA
    - functionName:    encode_WRITE_ACTIONS
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7644
      functionLinenumberEnd: 7654
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          48
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - instruction_put_OFPIT11_WRITE_ACTIONS
        - ofpact_nest_get_action_len
        - ofpacts_put_openflow_actions
        - ofpacts_update_instruction_actions
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:7648,9'
          Dst:             instruction_put_OFPIT11_WRITE_ACTIONS
        - Src:             'lib/ofp-actions.c:7650,38'
          Dst:             ofpact_nest_get_action_len
        - Src:             'lib/ofp-actions.c:7649,9'
          Dst:             ofpacts_put_openflow_actions
        - Src:             'lib/ofp-actions.c:7652,9'
          Dst:             ofpacts_update_instruction_actions
    - functionName:    ofpacts_put_openflow_actions
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9095
      functionLinenumberEnd: 9102
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          56
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - encode_ofpact
        - ofpact_end
        - ofpact_next
      functionUses:    16
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:9099,5'
          Dst:             ofpact_end
        - Src:             'lib/ofp-actions.c:9100,9'
          Dst:             encode_ofpact
        - Src:             'lib/ofp-actions.c:9099,5'
          Dst:             ofpact_next
    - functionName:    ofpacts_update_instruction_actions
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8766
      functionLinenumberEnd: 8775
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htons
        - ofpbuf_at_assert
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:8769,11'
          Dst:             ofpbuf_at_assert
        - Src:             'lib/ofp-actions.c:8771,20'
          Dst:             htons
    - functionName:    encode_ofpact
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9075
      functionLinenumberEnd: 9086
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         64
      ICount:          560
      EdgeCount:       126
      CyclomaticComplexity: 64
      functionsReached:
        - abort
        - encode_BUNDLE
        - encode_CHECK_PKT_LARGER
        - encode_CLEAR_ACTIONS
        - encode_CLONE
        - encode_CONJUNCTION
        - encode_CONTROLLER
        - encode_CT
        - encode_CT_CLEAR
        - encode_DEBUG_RECIRC
        - encode_DEBUG_SLOW
        - encode_DECAP
        - encode_DEC_MPLS_TTL
        - encode_DEC_NSH_TTL
        - encode_DEC_TTL
        - encode_DELETE_FIELD
        - encode_ENCAP
        - encode_ENQUEUE
        - encode_EXIT
        - encode_FIN_TIMEOUT
        - encode_GOTO_TABLE
        - encode_GROUP
        - encode_LEARN
        - encode_METER
        - encode_MULTIPATH
        - encode_NAT
        - encode_NOTE
        - encode_OUTPUT
        - encode_OUTPUT_REG
        - encode_OUTPUT_TRUNC
        - encode_POP_MPLS
        - encode_POP_QUEUE
        - encode_PUSH_MPLS
        - encode_PUSH_VLAN
        - encode_REG_MOVE
        - encode_RESUBMIT
        - encode_SAMPLE
        - encode_SET_ETH_DST
        - encode_SET_ETH_SRC
        - encode_SET_FIELD
        - encode_SET_IPV4_DST
        - encode_SET_IPV4_SRC
        - encode_SET_IP_DSCP
        - encode_SET_IP_ECN
        - encode_SET_IP_TTL
        - encode_SET_L4_DST_PORT
        - encode_SET_L4_SRC_PORT
        - encode_SET_MPLS_LABEL
        - encode_SET_MPLS_TC
        - encode_SET_MPLS_TTL
        - encode_SET_QUEUE
        - encode_SET_TUNNEL
        - encode_SET_VLAN_PCP
        - encode_SET_VLAN_VID
        - encode_STACK_POP
        - encode_STACK_PUSH
        - encode_STRIP_VLAN
        - encode_UNROLL_XLATE
        - encode_WRITE_ACTIONS
        - encode_WRITE_METADATA
        - ofpact_get_BUNDLE
        - ofpact_get_CHECK_PKT_LARGER
        - ofpact_get_CLEAR_ACTIONS
        - ofpact_get_CLONE
        - ofpact_get_CONJUNCTION
        - ofpact_get_CONTROLLER
        - ofpact_get_CT
        - ofpact_get_CT_CLEAR
        - ofpact_get_DEBUG_RECIRC
        - ofpact_get_DEBUG_SLOW
        - ofpact_get_DECAP
        - ofpact_get_DEC_MPLS_TTL
        - ofpact_get_DEC_NSH_TTL
        - ofpact_get_DEC_TTL
        - ofpact_get_DELETE_FIELD
        - ofpact_get_ENCAP
        - ofpact_get_ENQUEUE
        - ofpact_get_EXIT
        - ofpact_get_FIN_TIMEOUT
        - ofpact_get_GOTO_TABLE
        - ofpact_get_GROUP
        - ofpact_get_LEARN
        - ofpact_get_METER
        - ofpact_get_MULTIPATH
        - ofpact_get_NAT
        - ofpact_get_NOTE
        - ofpact_get_OUTPUT
        - ofpact_get_OUTPUT_REG
        - ofpact_get_OUTPUT_TRUNC
        - ofpact_get_POP_MPLS
        - ofpact_get_POP_QUEUE
        - ofpact_get_PUSH_MPLS
        - ofpact_get_PUSH_VLAN
        - ofpact_get_REG_MOVE
        - ofpact_get_RESUBMIT
        - ofpact_get_SAMPLE
        - ofpact_get_SET_ETH_DST
        - ofpact_get_SET_ETH_SRC
        - ofpact_get_SET_FIELD
        - ofpact_get_SET_IPV4_DST
        - ofpact_get_SET_IPV4_SRC
        - ofpact_get_SET_IP_DSCP
        - ofpact_get_SET_IP_ECN
        - ofpact_get_SET_IP_TTL
        - ofpact_get_SET_L4_DST_PORT
        - ofpact_get_SET_L4_SRC_PORT
        - ofpact_get_SET_MPLS_LABEL
        - ofpact_get_SET_MPLS_TC
        - ofpact_get_SET_MPLS_TTL
        - ofpact_get_SET_QUEUE
        - ofpact_get_SET_TUNNEL
        - ofpact_get_SET_VLAN_PCP
        - ofpact_get_SET_VLAN_VID
        - ofpact_get_STACK_POP
        - ofpact_get_STACK_PUSH
        - ofpact_get_STRIP_VLAN
        - ofpact_get_UNROLL_XLATE
        - ofpact_get_WRITE_ACTIONS
        - ofpact_get_WRITE_METADATA
      functionUses:    3
      BranchProfiles:
        - Branch String:   'lib/ofp-actions.c:9076,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             ofpact_get_OUTPUT
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             encode_OUTPUT
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             ofpact_get_GROUP
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             encode_GROUP
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             ofpact_get_CONTROLLER
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             encode_CONTROLLER
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             ofpact_get_ENQUEUE
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             encode_ENQUEUE
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             ofpact_get_OUTPUT_REG
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             encode_OUTPUT_REG
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             ofpact_get_BUNDLE
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             encode_BUNDLE
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             ofpact_get_SET_FIELD
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             encode_SET_FIELD
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             ofpact_get_SET_VLAN_VID
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             encode_SET_VLAN_VID
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             ofpact_get_SET_VLAN_PCP
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             encode_SET_VLAN_PCP
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             ofpact_get_STRIP_VLAN
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             encode_STRIP_VLAN
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             ofpact_get_PUSH_VLAN
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             encode_PUSH_VLAN
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             ofpact_get_SET_ETH_SRC
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             encode_SET_ETH_SRC
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             ofpact_get_SET_ETH_DST
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             encode_SET_ETH_DST
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             ofpact_get_SET_IPV4_SRC
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             encode_SET_IPV4_SRC
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             ofpact_get_SET_IPV4_DST
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             encode_SET_IPV4_DST
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             ofpact_get_SET_IP_DSCP
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             encode_SET_IP_DSCP
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             ofpact_get_SET_IP_ECN
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             encode_SET_IP_ECN
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             ofpact_get_SET_IP_TTL
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             encode_SET_IP_TTL
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             ofpact_get_SET_L4_SRC_PORT
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             encode_SET_L4_SRC_PORT
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             ofpact_get_SET_L4_DST_PORT
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             encode_SET_L4_DST_PORT
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             ofpact_get_REG_MOVE
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             encode_REG_MOVE
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             ofpact_get_STACK_PUSH
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             encode_STACK_PUSH
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             ofpact_get_STACK_POP
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             encode_STACK_POP
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             ofpact_get_DEC_TTL
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             encode_DEC_TTL
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             ofpact_get_SET_MPLS_LABEL
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             encode_SET_MPLS_LABEL
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             ofpact_get_SET_MPLS_TC
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             encode_SET_MPLS_TC
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             ofpact_get_SET_MPLS_TTL
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             encode_SET_MPLS_TTL
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             ofpact_get_DEC_MPLS_TTL
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             encode_DEC_MPLS_TTL
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             ofpact_get_PUSH_MPLS
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             encode_PUSH_MPLS
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             ofpact_get_POP_MPLS
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             encode_POP_MPLS
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             ofpact_get_DEC_NSH_TTL
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             encode_DEC_NSH_TTL
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             ofpact_get_DELETE_FIELD
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             encode_DELETE_FIELD
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             ofpact_get_ENCAP
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             encode_ENCAP
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             ofpact_get_DECAP
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             encode_DECAP
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             ofpact_get_SET_TUNNEL
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             encode_SET_TUNNEL
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             ofpact_get_SET_QUEUE
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             encode_SET_QUEUE
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             ofpact_get_POP_QUEUE
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             encode_POP_QUEUE
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             ofpact_get_FIN_TIMEOUT
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             encode_FIN_TIMEOUT
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             ofpact_get_RESUBMIT
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             encode_RESUBMIT
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             ofpact_get_LEARN
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             encode_LEARN
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             ofpact_get_CONJUNCTION
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             encode_CONJUNCTION
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             ofpact_get_MULTIPATH
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             encode_MULTIPATH
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             ofpact_get_NOTE
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             encode_NOTE
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             ofpact_get_EXIT
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             encode_EXIT
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             ofpact_get_SAMPLE
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             encode_SAMPLE
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             ofpact_get_UNROLL_XLATE
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             encode_UNROLL_XLATE
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             ofpact_get_CT
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             encode_CT
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             ofpact_get_CT_CLEAR
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             encode_CT_CLEAR
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             ofpact_get_NAT
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             encode_NAT
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             ofpact_get_OUTPUT_TRUNC
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             encode_OUTPUT_TRUNC
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             ofpact_get_CLONE
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             encode_CLONE
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             ofpact_get_CHECK_PKT_LARGER
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             encode_CHECK_PKT_LARGER
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             ofpact_get_DEBUG_RECIRC
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             encode_DEBUG_RECIRC
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             ofpact_get_DEBUG_SLOW
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             encode_DEBUG_SLOW
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             ofpact_get_METER
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             encode_METER
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             ofpact_get_CLEAR_ACTIONS
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             encode_CLEAR_ACTIONS
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             ofpact_get_WRITE_ACTIONS
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             encode_WRITE_ACTIONS
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             ofpact_get_WRITE_METADATA
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             encode_WRITE_METADATA
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             ofpact_get_GOTO_TABLE
        - Src:             'lib/ofp-actions.c:9081,9'
          Dst:             encode_GOTO_TABLE
        - Src:             'lib/ofp-actions.c:9084,9'
          Dst:             abort
    - functionName:    ofpact_get_OUTPUT
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ovs_ignore
    - functionName:    encode_OUTPUT
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 610
      functionLinenumberEnd: 624
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          70
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htons
        - ofp_to_u16
        - ofputil_port_to_ofp11
        - put_OFPAT10_OUTPUT
        - put_OFPAT11_OUTPUT
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:614,15'
          Dst:             put_OFPAT10_OUTPUT
        - Src:             'lib/ofp-actions.c:615,27'
          Dst:             ofp_to_u16
        - Src:             'lib/ofp-actions.c:615,21'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:616,24'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:620,15'
          Dst:             put_OFPAT11_OUTPUT
        - Src:             'lib/ofp-actions.c:621,21'
          Dst:             ofputil_port_to_ofp11
        - Src:             'lib/ofp-actions.c:622,24'
          Dst:             htons
    - functionName:    ofpact_get_GROUP
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ovs_ignore
    - functionName:    encode_GROUP
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 735
      functionLinenumberEnd: 737
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - put_OFPAT_GROUP
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:736,5'
          Dst:             put_OFPAT_GROUP
    - functionName:    ofpact_get_CONTROLLER
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ovs_ignore
    - functionName:    encode_CONTROLLER
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 898
      functionLinenumberEnd: 934
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         31
      ICount:          236
      EdgeCount:       41
      CyclomaticComplexity: 12
      functionsReached:
        - htons
        - ofpprop_put
        - ofpprop_put_flag
        - ofpprop_put_u16
        - ofpprop_put_u32
        - ofpprop_put_u8
        - pad_ofpat
        - put_NXAST_CONTROLLER
        - put_NXAST_CONTROLLER2
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:904,9'
          Dst:             put_NXAST_CONTROLLER2
        - Src:             'lib/ofp-actions.c:906,13'
          Dst:             ofpprop_put_u16
        - Src:             'lib/ofp-actions.c:909,13'
          Dst:             ofpprop_put_u16
        - Src:             'lib/ofp-actions.c:913,13'
          Dst:             ofpprop_put_u8
        - Src:             'lib/ofp-actions.c:916,13'
          Dst:             ofpprop_put
        - Src:             'lib/ofp-actions.c:920,13'
          Dst:             ofpprop_put_flag
        - Src:             'lib/ofp-actions.c:923,13'
          Dst:             ofpprop_put_u32
        - Src:             'lib/ofp-actions.c:925,9'
          Dst:             pad_ofpat
        - Src:             'lib/ofp-actions.c:929,15'
          Dst:             put_NXAST_CONTROLLER
        - Src:             'lib/ofp-actions.c:930,24'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:931,30'
          Dst:             htons
    - functionName:    ofpact_get_ENQUEUE
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ovs_ignore
    - functionName:    encode_ENQUEUE
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1111
      functionLinenumberEnd: 1127
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          74
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
        - htons
        - ofp_to_u16
        - ofputil_port_to_ofp11
        - put_NXAST_POP_QUEUE
        - put_OFPAT10_ENQUEUE
        - put_OFPAT11_OUTPUT
        - put_OFPAT_SET_QUEUE
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:1115,15'
          Dst:             put_OFPAT10_ENQUEUE
        - Src:             'lib/ofp-actions.c:1116,27'
          Dst:             ofp_to_u16
        - Src:             'lib/ofp-actions.c:1116,21'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:1117,25'
          Dst:             htonl
        - Src:             'lib/ofp-actions.c:1119,9'
          Dst:             put_OFPAT_SET_QUEUE
        - Src:             'lib/ofp-actions.c:1121,43'
          Dst:             put_OFPAT11_OUTPUT
        - Src:             'lib/ofp-actions.c:1122,21'
          Dst:             ofputil_port_to_ofp11
        - Src:             'lib/ofp-actions.c:1125,9'
          Dst:             put_NXAST_POP_QUEUE
    - functionName:    ofpact_get_OUTPUT_REG
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ovs_ignore
    - functionName:    encode_OUTPUT_REG
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1283
      functionLinenumberEnd: 1307
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          136
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - htonl
        - htons
        - mf_nxm_header
        - nx_put_mff_header
        - nxm_encode_ofs_nbits
        - nxm_header_from_mff
        - put_NXAST_OUTPUT_REG
        - put_NXAST_OUTPUT_REG2
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:1288,13'
          Dst:             mf_nxm_header
        - Src:             'lib/ofp-actions.c:1289,46'
          Dst:             put_NXAST_OUTPUT_REG2
        - Src:             'lib/ofp-actions.c:1292,27'
          Dst:             nxm_encode_ofs_nbits
        - Src:             'lib/ofp-actions.c:1294,25'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:1297,9'
          Dst:             nx_put_mff_header
        - Src:             'lib/ofp-actions.c:1300,45'
          Dst:             put_NXAST_OUTPUT_REG
        - Src:             'lib/ofp-actions.c:1302,27'
          Dst:             nxm_encode_ofs_nbits
        - Src:             'lib/ofp-actions.c:1304,27'
          Dst:             nxm_header_from_mff
        - Src:             'lib/ofp-actions.c:1304,21'
          Dst:             htonl
        - Src:             'lib/ofp-actions.c:1305,25'
          Dst:             htons
    - functionName:    ofpact_get_BUNDLE
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ovs_ignore
    - functionName:    encode_BUNDLE
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1503
      functionLinenumberEnd: 1528
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          180
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - htonl
        - htons
        - mf_nxm_header
        - ntohs
        - nxm_encode_ofs_nbits
        - nxm_header_from_mff
        - ofp_to_u16
        - ofpbuf_put_zeros
        - put_NXAST_BUNDLE
        - put_NXAST_BUNDLE_LOAD
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:1510,14'
          Dst:             put_NXAST_BUNDLE_LOAD
        - Src:             'lib/ofp-actions.c:1511,14'
          Dst:             put_NXAST_BUNDLE
        - Src:             'lib/ofp-actions.c:1512,22'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:1512,16'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:1513,22'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:1514,19'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:1515,18'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:1516,30'
          Dst:             mf_nxm_header
        - Src:             'lib/ofp-actions.c:1516,24'
          Dst:             htonl
        - Src:             'lib/ofp-actions.c:1517,22'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:1519,26'
          Dst:             nxm_encode_ofs_nbits
        - Src:             'lib/ofp-actions.c:1521,26'
          Dst:             nxm_header_from_mff
        - Src:             'lib/ofp-actions.c:1521,20'
          Dst:             htonl
        - Src:             'lib/ofp-actions.c:1524,15'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-actions.c:1526,28'
          Dst:             ofp_to_u16
        - Src:             'lib/ofp-actions.c:1526,22'
          Dst:             htons
    - functionName:    ofpact_get_SET_FIELD
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ovs_ignore
    - functionName:    encode_SET_FIELD
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3158
      functionLinenumberEnd: 3180
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          112
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - is_all_ones
        - set_field_to_legacy_openflow
        - set_field_to_nxast
        - set_field_to_set_field
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:3162,9'
          Dst:             set_field_to_set_field
        - Src:             'lib/ofp-actions.c:3166,9'
          Dst:             set_field_to_nxast
        - Src:             'lib/ofp-actions.c:3169,9'
          Dst:             set_field_to_legacy_openflow
        - Src:             'lib/ofp-actions.c:3170,16'
          Dst:             is_all_ones
        - Src:             'lib/ofp-actions.c:3173,9'
          Dst:             set_field_to_set_field
        - Src:             'lib/ofp-actions.c:3178,9'
          Dst:             set_field_to_nxast
    - functionName:    ofpact_get_SET_VLAN_VID
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ovs_ignore
    - functionName:    encode_SET_VLAN_VID
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1590
      functionLinenumberEnd: 1608
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          92
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - htons
        - put_OFPAT10_SET_VLAN_VID
        - put_OFPAT11_PUSH_VLAN
        - put_OFPAT11_SET_VLAN_VID
        - put_set_field
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:1598,36'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:1598,9'
          Dst:             put_OFPAT11_PUSH_VLAN
        - Src:             'lib/ofp-actions.c:1602,9'
          Dst:             put_OFPAT10_SET_VLAN_VID
        - Src:             'lib/ofp-actions.c:1604,9'
          Dst:             put_OFPAT11_SET_VLAN_VID
        - Src:             'lib/ofp-actions.c:1606,9'
          Dst:             put_set_field
    - functionName:    ofpact_get_SET_VLAN_PCP
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ovs_ignore
    - functionName:    encode_SET_VLAN_PCP
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1698
      functionLinenumberEnd: 1716
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          90
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - htons
        - put_OFPAT10_SET_VLAN_PCP
        - put_OFPAT11_PUSH_VLAN
        - put_OFPAT11_SET_VLAN_PCP
        - put_set_field
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:1706,36'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:1706,9'
          Dst:             put_OFPAT11_PUSH_VLAN
        - Src:             'lib/ofp-actions.c:1710,9'
          Dst:             put_OFPAT10_SET_VLAN_PCP
        - Src:             'lib/ofp-actions.c:1712,9'
          Dst:             put_OFPAT11_SET_VLAN_PCP
        - Src:             'lib/ofp-actions.c:1714,9'
          Dst:             put_set_field
    - functionName:    ofpact_get_STRIP_VLAN
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ovs_ignore
    - functionName:    encode_STRIP_VLAN
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1791
      functionLinenumberEnd: 1797
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - put_OFPAT10_STRIP_VLAN
        - put_OFPAT11_POP_VLAN
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:1793,9'
          Dst:             put_OFPAT10_STRIP_VLAN
        - Src:             'lib/ofp-actions.c:1795,9'
          Dst:             put_OFPAT11_POP_VLAN
    - functionName:    ofpact_get_PUSH_VLAN
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ovs_ignore
    - functionName:    encode_PUSH_VLAN
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1853
      functionLinenumberEnd: 1860
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - put_OFPAT11_PUSH_VLAN
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:1858,9'
          Dst:             put_OFPAT11_PUSH_VLAN
    - functionName:    ofpact_get_SET_ETH_SRC
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ovs_ignore
    - functionName:    encode_SET_ETH_SRC
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1951
      functionLinenumberEnd: 1955
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - encode_SET_ETH_addr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:1952,5'
          Dst:             encode_SET_ETH_addr
    - functionName:    ofpact_get_SET_ETH_DST
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ovs_ignore
    - functionName:    encode_SET_ETH_DST
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1961
      functionLinenumberEnd: 1965
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - encode_SET_ETH_addr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:1962,5'
          Dst:             encode_SET_ETH_addr
    - functionName:    ofpact_get_SET_IPV4_SRC
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ovs_ignore
    - functionName:    encode_SET_IPV4_SRC
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2046
      functionLinenumberEnd: 2049
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - encode_SET_IPV4_addr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:2047,5'
          Dst:             encode_SET_IPV4_addr
    - functionName:    ofpact_get_SET_IPV4_DST
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ovs_ignore
    - functionName:    encode_SET_IPV4_DST
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2054
      functionLinenumberEnd: 2057
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - encode_SET_IPV4_addr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:2055,5'
          Dst:             encode_SET_IPV4_addr
    - functionName:    ofpact_get_SET_IP_DSCP
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ovs_ignore
    - functionName:    encode_SET_IP_DSCP
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2129
      functionLinenumberEnd: 2135
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - put_OFPAT_SET_NW_TOS
        - put_set_field
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:2131,9'
          Dst:             put_OFPAT_SET_NW_TOS
        - Src:             'lib/ofp-actions.c:2133,9'
          Dst:             put_set_field
    - functionName:    ofpact_get_SET_IP_ECN
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ovs_ignore
    - functionName:    ofpact_get_SET_IP_TTL
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ovs_ignore
    - functionName:    encode_SET_IP_TTL
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2258
      functionLinenumberEnd: 2266
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - mf_from_id
        - put_OFPAT11_SET_NW_TTL
        - put_reg_load
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:2260,9'
          Dst:             put_OFPAT11_SET_NW_TTL
        - Src:             'lib/ofp-actions.c:2262,45'
          Dst:             mf_from_id
        - Src:             'lib/ofp-actions.c:2264,9'
          Dst:             put_reg_load
    - functionName:    ofpact_get_SET_L4_SRC_PORT
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ovs_ignore
    - functionName:    encode_SET_L4_SRC_PORT
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2336
      functionLinenumberEnd: 2344
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          62
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - encode_SET_L4_port
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:2343,5'
          Dst:             encode_SET_L4_port
    - functionName:    ofpact_get_SET_L4_DST_PORT
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ovs_ignore
    - functionName:    encode_SET_L4_DST_PORT
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2350
      functionLinenumberEnd: 2358
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          62
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - encode_SET_L4_port
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:2357,5'
          Dst:             encode_SET_L4_port
    - functionName:    ofpact_get_REG_MOVE
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ovs_ignore
    - functionName:    encode_REG_MOVE
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2669
      functionLinenumberEnd: 2703
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          227
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - htons
        - nx_put_mff_header
        - pad_ofpat
        - put_NXAST_REG_MOVE
        - put_OFPAT15_COPY_FIELD
        - put_ONFACT13_COPY_FIELD
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:2678,48'
          Dst:             put_OFPAT15_COPY_FIELD
        - Src:             'lib/ofp-actions.c:2679,24'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:2680,28'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:2681,28'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:2683,9'
          Dst:             nx_put_mff_header
        - Src:             'lib/ofp-actions.c:2684,9'
          Dst:             nx_put_mff_header
        - Src:             'lib/ofp-actions.c:2687,46'
          Dst:             put_ONFACT13_COPY_FIELD
        - Src:             'lib/ofp-actions.c:2688,24'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:2689,28'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:2690,28'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:2692,9'
          Dst:             nx_put_mff_header
        - Src:             'lib/ofp-actions.c:2693,9'
          Dst:             nx_put_mff_header
        - Src:             'lib/ofp-actions.c:2695,43'
          Dst:             put_NXAST_REG_MOVE
        - Src:             'lib/ofp-actions.c:2696,24'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:2697,25'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:2698,25'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:2699,9'
          Dst:             nx_put_mff_header
        - Src:             'lib/ofp-actions.c:2700,9'
          Dst:             nx_put_mff_header
        - Src:             'lib/ofp-actions.c:2702,5'
          Dst:             pad_ofpat
    - functionName:    ofpact_get_STACK_PUSH
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ovs_ignore
    - functionName:    encode_STACK_PUSH
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3532
      functionLinenumberEnd: 3534
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - encode_STACK_op
        - put_NXAST_STACK_PUSH
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:3533,28'
          Dst:             put_NXAST_STACK_PUSH
        - Src:             'lib/ofp-actions.c:3533,5'
          Dst:             encode_STACK_op
    - functionName:    ofpact_get_STACK_POP
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ovs_ignore
    - functionName:    encode_STACK_POP
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3539
      functionLinenumberEnd: 3541
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - encode_STACK_op
        - put_NXAST_STACK_POP
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:3540,28'
          Dst:             put_NXAST_STACK_POP
        - Src:             'lib/ofp-actions.c:3540,5'
          Dst:             encode_STACK_op
    - functionName:    ofpact_get_DEC_TTL
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ovs_ignore
    - functionName:    encode_DEC_TTL
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3666
      functionLinenumberEnd: 3685
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          135
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - htons
        - ntohs
        - ofpbuf_put_zeros
        - put_NXAST_DEC_TTL_CNT_IDS
        - put_OFPAT_DEC_NW_TTL
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:3670,45'
          Dst:             put_NXAST_DEC_TTL_CNT_IDS
        - Src:             'lib/ofp-actions.c:3675,30'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:3675,24'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:3676,34'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:3678,15'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-actions.c:3680,22'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:3683,9'
          Dst:             put_OFPAT_DEC_NW_TTL
    - functionName:    ofpact_get_SET_MPLS_LABEL
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ovs_ignore
    - functionName:    encode_SET_MPLS_LABEL
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3774
      functionLinenumberEnd: 3780
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ntohl
        - put_OFPAT_SET_MPLS_LABEL
        - put_set_field
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:3776,9'
          Dst:             put_OFPAT_SET_MPLS_LABEL
        - Src:             'lib/ofp-actions.c:3778,57'
          Dst:             ntohl
        - Src:             'lib/ofp-actions.c:3778,9'
          Dst:             put_set_field
    - functionName:    ofpact_get_SET_MPLS_TC
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ovs_ignore
    - functionName:    encode_SET_MPLS_TC
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3846
      functionLinenumberEnd: 3852
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - put_OFPAT_SET_MPLS_TC
        - put_set_field
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:3848,9'
          Dst:             put_OFPAT_SET_MPLS_TC
        - Src:             'lib/ofp-actions.c:3850,9'
          Dst:             put_set_field
    - functionName:    ofpact_get_SET_MPLS_TTL
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ovs_ignore
    - functionName:    encode_SET_MPLS_TTL
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3907
      functionLinenumberEnd: 3909
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - put_OFPAT_SET_MPLS_TTL
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:3908,5'
          Dst:             put_OFPAT_SET_MPLS_TTL
    - functionName:    ofpact_get_DEC_MPLS_TTL
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ovs_ignore
    - functionName:    encode_DEC_MPLS_TTL
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3963
      functionLinenumberEnd: 3965
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - put_OFPAT_DEC_MPLS_TTL
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:3964,5'
          Dst:             put_OFPAT_DEC_MPLS_TTL
    - functionName:    ofpact_get_PUSH_MPLS
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ovs_ignore
    - functionName:    encode_PUSH_MPLS
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4009
      functionLinenumberEnd: 4011
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - put_OFPAT_PUSH_MPLS
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:4010,5'
          Dst:             put_OFPAT_PUSH_MPLS
    - functionName:    ofpact_get_POP_MPLS
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ovs_ignore
    - functionName:    encode_POP_MPLS
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4067
      functionLinenumberEnd: 4069
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - put_OFPAT_POP_MPLS
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:4068,5'
          Dst:             put_OFPAT_POP_MPLS
    - functionName:    ofpact_get_DEC_NSH_TTL
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ovs_ignore
    - functionName:    encode_DEC_NSH_TTL
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4808
      functionLinenumberEnd: 4810
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - put_NXAST_DEC_NSH_TTL
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:4809,5'
          Dst:             put_NXAST_DEC_NSH_TTL
    - functionName:    ofpact_get_DELETE_FIELD
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ovs_ignore
    - functionName:    encode_DELETE_FIELD
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4224
      functionLinenumberEnd: 4233
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          42
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nx_put_mff_header
        - put_NXAST_DELETE_FIELD
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:4227,5'
          Dst:             put_NXAST_DELETE_FIELD
        - Src:             'lib/ofp-actions.c:4231,5'
          Dst:             nx_put_mff_header
    - functionName:    ofpact_get_ENCAP
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ovs_ignore
    - functionName:    encode_ENCAP
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4512
      functionLinenumberEnd: 4524
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          75
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - encode_ed_prop
        - htons
        - pad_ofpat
        - put_NXAST_ENCAP
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:4514,35'
          Dst:             put_NXAST_ENCAP
        - Src:             'lib/ofp-actions.c:4518,21'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:4521,9'
          Dst:             encode_ed_prop
        - Src:             'lib/ofp-actions.c:4523,5'
          Dst:             pad_ofpat
    - functionName:    ofpact_get_DECAP
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ovs_ignore
    - functionName:    encode_DECAP
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4715
      functionLinenumberEnd: 4720
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          32
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htons
        - put_NXAST_DECAP
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:4716,35'
          Dst:             put_NXAST_DECAP
        - Src:             'lib/ofp-actions.c:4718,16'
          Dst:             htons
    - functionName:    ofpact_get_SET_TUNNEL
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ovs_ignore
    - functionName:    encode_SET_TUNNEL
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4132
      functionLinenumberEnd: 4145
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          69
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - put_NXAST_SET_TUNNEL
        - put_NXAST_SET_TUNNEL64
        - put_set_field
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:4138,13'
          Dst:             put_NXAST_SET_TUNNEL
        - Src:             'lib/ofp-actions.c:4140,13'
          Dst:             put_NXAST_SET_TUNNEL64
        - Src:             'lib/ofp-actions.c:4143,9'
          Dst:             put_set_field
    - functionName:    ofpact_get_SET_QUEUE
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ovs_ignore
    - functionName:    encode_SET_QUEUE
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4278
      functionLinenumberEnd: 4280
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - put_OFPAT_SET_QUEUE
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:4279,5'
          Dst:             put_OFPAT_SET_QUEUE
    - functionName:    ofpact_get_POP_QUEUE
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ovs_ignore
    - functionName:    encode_POP_QUEUE
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4315
      functionLinenumberEnd: 4317
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - put_NXAST_POP_QUEUE
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:4316,5'
          Dst:             put_NXAST_POP_QUEUE
    - functionName:    ofpact_get_FIN_TIMEOUT
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ovs_ignore
    - functionName:    encode_FIN_TIMEOUT
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4392
      functionLinenumberEnd: 4396
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htons
        - put_NXAST_FIN_TIMEOUT
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:4393,42'
          Dst:             put_NXAST_FIN_TIMEOUT
        - Src:             'lib/ofp-actions.c:4394,30'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:4395,30'
          Dst:             htons
    - functionName:    ofpact_get_RESUBMIT
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ovs_ignore
    - functionName:    encode_RESUBMIT
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4965
      functionLinenumberEnd: 4978
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          90
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - htons
        - ofp_to_u16
        - put_NXAST_RESUBMIT
        - put_NXAST_RESUBMIT_TABLE
        - put_NXAST_RESUBMIT_TABLE_CT
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:4966,24'
          Dst:             ofp_to_u16
        - Src:             'lib/ofp-actions.c:4970,9'
          Dst:             put_NXAST_RESUBMIT
        - Src:             'lib/ofp-actions.c:4974,15'
          Dst:             put_NXAST_RESUBMIT_TABLE_CT
        - Src:             'lib/ofp-actions.c:4974,50'
          Dst:             put_NXAST_RESUBMIT_TABLE
        - Src:             'lib/ofp-actions.c:4976,24'
          Dst:             htons
    - functionName:    ofpact_get_LEARN
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ovs_ignore
    - functionName:    encode_LEARN
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5573
      functionLinenumberEnd: 5628
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          337
      EdgeCount:       35
      CyclomaticComplexity: 10
      functionsReached:
        - htonl
        - htons
        - nx_put_header
        - nxm_header_from_mff
        - ofpact_learn_spec_end
        - ofpact_learn_spec_imm
        - ofpact_learn_spec_next
        - ofpbuf_put_zeros
        - pad_ofpat
        - put_NXAST_LEARN
        - put_NXAST_LEARN2
        - put_u16
        - put_u32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:5585,16'
          Dst:             put_NXAST_LEARN2
        - Src:             'lib/ofp-actions.c:5586,23'
          Dst:             htonl
        - Src:             'lib/ofp-actions.c:5587,32'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:5590,15'
          Dst:             put_NXAST_LEARN
        - Src:             'lib/ofp-actions.c:5592,25'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:5593,25'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:5594,29'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:5595,29'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:5596,21'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:5598,18'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:5602,9'
          Dst:             nx_put_header
        - Src:             'lib/ofp-actions.c:5605,5'
          Dst:             ofpact_learn_spec_end
        - Src:             'lib/ofp-actions.c:5606,9'
          Dst:             put_u16
        - Src:             'lib/ofp-actions.c:5609,26'
          Dst:             nxm_header_from_mff
        - Src:             'lib/ofp-actions.c:5609,13'
          Dst:             put_u32
        - Src:             'lib/ofp-actions.c:5610,13'
          Dst:             put_u16
        - Src:             'lib/ofp-actions.c:5613,29'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-actions.c:5616,50'
          Dst:             ofpact_learn_spec_imm
        - Src:             'lib/ofp-actions.c:5622,26'
          Dst:             nxm_header_from_mff
        - Src:             'lib/ofp-actions.c:5622,13'
          Dst:             put_u32
        - Src:             'lib/ofp-actions.c:5623,13'
          Dst:             put_u16
        - Src:             'lib/ofp-actions.c:5605,5'
          Dst:             ofpact_learn_spec_next
        - Src:             'lib/ofp-actions.c:5627,5'
          Dst:             pad_ofpat
    - functionName:    ofpact_get_CONJUNCTION
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ovs_ignore
    - functionName:    encode_CONJUNCTION
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5691
      functionLinenumberEnd: 5696
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          43
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
        - put_NXAST_CONJUNCTION
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:5692,41'
          Dst:             put_NXAST_CONJUNCTION
        - Src:             'lib/ofp-actions.c:5695,15'
          Dst:             htonl
    - functionName:    ofpact_get_MULTIPATH
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ovs_ignore
    - functionName:    encode_MULTIPATH
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5845
      functionLinenumberEnd: 5855
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          87
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
        - htons
        - nxm_encode_ofs_nbits
        - nxm_header_from_mff
        - put_NXAST_MULTIPATH
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:5846,39'
          Dst:             put_NXAST_MULTIPATH
        - Src:             'lib/ofp-actions.c:5848,19'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:5849,18'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:5850,22'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:5851,21'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:5852,16'
          Dst:             htonl
        - Src:             'lib/ofp-actions.c:5853,22'
          Dst:             nxm_encode_ofs_nbits
        - Src:             'lib/ofp-actions.c:5854,22'
          Dst:             nxm_header_from_mff
        - Src:             'lib/ofp-actions.c:5854,16'
          Dst:             htonl
    - functionName:    ofpact_get_NOTE
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ovs_ignore
    - functionName:    encode_NOTE
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5916
      functionLinenumberEnd: 5925
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpbuf_put
        - pad_ofpat
        - put_NXAST_NOTE
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:5920,5'
          Dst:             put_NXAST_NOTE
        - Src:             'lib/ofp-actions.c:5923,5'
          Dst:             ofpbuf_put
        - Src:             'lib/ofp-actions.c:5924,5'
          Dst:             pad_ofpat
    - functionName:    ofpact_get_EXIT
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ovs_ignore
    - functionName:    encode_EXIT
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5975
      functionLinenumberEnd: 5977
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - put_NXAST_EXIT
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:5976,5'
          Dst:             put_NXAST_EXIT
    - functionName:    ofpact_get_SAMPLE
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ovs_ignore
    - functionName:    encode_SAMPLE
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6427
      functionLinenumberEnd: 6445
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          157
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - encode_SAMPLE2
        - encode_SAMPLE4
        - htonl
        - htons
        - put_NXAST_SAMPLE
        - put_NXAST_SAMPLE2
        - put_NXAST_SAMPLE3
        - put_NXAST_SAMPLE4
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:6431,32'
          Dst:             put_NXAST_SAMPLE4
        - Src:             'lib/ofp-actions.c:6431,9'
          Dst:             encode_SAMPLE4
        - Src:             'lib/ofp-actions.c:6434,32'
          Dst:             put_NXAST_SAMPLE3
        - Src:             'lib/ofp-actions.c:6434,9'
          Dst:             encode_SAMPLE2
        - Src:             'lib/ofp-actions.c:6437,32'
          Dst:             put_NXAST_SAMPLE2
        - Src:             'lib/ofp-actions.c:6437,9'
          Dst:             encode_SAMPLE2
        - Src:             'lib/ofp-actions.c:6439,40'
          Dst:             put_NXAST_SAMPLE
        - Src:             'lib/ofp-actions.c:6440,28'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:6441,33'
          Dst:             htonl
        - Src:             'lib/ofp-actions.c:6442,30'
          Dst:             htonl
        - Src:             'lib/ofp-actions.c:6443,29'
          Dst:             htonl
    - functionName:    ofpact_get_UNROLL_XLATE
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ovs_ignore
    - functionName:    encode_UNROLL_XLATE
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6007
      functionLinenumberEnd: 6007
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached:
        - abort
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:6007,5'
          Dst:             abort
    - functionName:    ofpact_get_CT
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ovs_ignore
    - functionName:    encode_CT
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6888
      functionLinenumberEnd: 6912
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          124
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
        - htons
        - nxm_encode_ofs_nbits
        - nxm_header_from_mff
        - ofpact_ct_get_action_len
        - ofpacts_put_openflow_actions
        - ofpbuf_at
        - put_NXAST_CT
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:6893,11'
          Dst:             put_NXAST_CT
        - Src:             'lib/ofp-actions.c:6894,18'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:6896,31'
          Dst:             nxm_header_from_mff
        - Src:             'lib/ofp-actions.c:6896,25'
          Dst:             htonl
        - Src:             'lib/ofp-actions.c:6897,31'
          Dst:             nxm_encode_ofs_nbits
        - Src:             'lib/ofp-actions.c:6900,25'
          Dst:             htonl
        - Src:             'lib/ofp-actions.c:6901,25'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:6904,16'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:6907,40'
          Dst:             ofpact_ct_get_action_len
        - Src:             'lib/ofp-actions.c:6906,11'
          Dst:             ofpacts_put_openflow_actions
        - Src:             'lib/ofp-actions.c:6910,11'
          Dst:             ofpbuf_at
        - Src:             'lib/ofp-actions.c:6911,16'
          Dst:             htons
    - functionName:    ofpact_get_CT_CLEAR
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ovs_ignore
    - functionName:    encode_CT_CLEAR
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7101
      functionLinenumberEnd: 7103
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - put_NXAST_CT_CLEAR
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:7102,5'
          Dst:             put_NXAST_CT_CLEAR
    - functionName:    encode_NAT
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7156
      functionLinenumberEnd: 7201
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          285
      EdgeCount:       39
      CyclomaticComplexity: 11
      functionsReached:
        - htons
        - ipv6_mask_is_any
        - ofpbuf_at
        - ofpbuf_put_uninit
        - pad_ofpat
        - put_NXAST_NAT
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:7161,11'
          Dst:             put_NXAST_NAT
        - Src:             'lib/ofp-actions.c:7162,18'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:7165,29'
          Dst:             ofpbuf_put_uninit
        - Src:             'lib/ofp-actions.c:7170,29'
          Dst:             ofpbuf_put_uninit
        - Src:             'lib/ofp-actions.c:7175,14'
          Dst:             ipv6_mask_is_any
        - Src:             'lib/ofp-actions.c:7176,36'
          Dst:             ofpbuf_put_uninit
        - Src:             'lib/ofp-actions.c:7180,14'
          Dst:             ipv6_mask_is_any
        - Src:             'lib/ofp-actions.c:7181,36'
          Dst:             ofpbuf_put_uninit
        - Src:             'lib/ofp-actions.c:7188,29'
          Dst:             ofpbuf_put_uninit
        - Src:             'lib/ofp-actions.c:7189,20'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:7193,29'
          Dst:             ofpbuf_put_uninit
        - Src:             'lib/ofp-actions.c:7194,20'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:7198,5'
          Dst:             pad_ofpat
        - Src:             'lib/ofp-actions.c:7199,11'
          Dst:             ofpbuf_at
        - Src:             'lib/ofp-actions.c:7200,26'
          Dst:             htons
    - functionName:    ofpact_get_OUTPUT_TRUNC
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ovs_ignore
    - functionName:    encode_OUTPUT_TRUNC
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7522
      functionLinenumberEnd: 7527
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          38
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
        - htons
        - ofp_to_u16
        - put_NXAST_OUTPUT_TRUNC
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:7523,44'
          Dst:             put_NXAST_OUTPUT_TRUNC
        - Src:             'lib/ofp-actions.c:7525,22'
          Dst:             htonl
        - Src:             'lib/ofp-actions.c:7526,25'
          Dst:             ofp_to_u16
        - Src:             'lib/ofp-actions.c:7526,19'
          Dst:             htons
    - functionName:    ofpact_get_CLONE
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ovs_ignore
    - functionName:    encode_CLONE
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6074
      functionLinenumberEnd: 6086
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          49
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htons
        - ofpact_nest_get_action_len
        - ofpacts_put_openflow_actions
        - ofpbuf_at
        - put_NXAST_CLONE
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:6079,5'
          Dst:             put_NXAST_CLONE
        - Src:             'lib/ofp-actions.c:6081,40'
          Dst:             ofpact_nest_get_action_len
        - Src:             'lib/ofp-actions.c:6080,11'
          Dst:             ofpacts_put_openflow_actions
        - Src:             'lib/ofp-actions.c:6084,11'
          Dst:             ofpbuf_at
        - Src:             'lib/ofp-actions.c:6085,16'
          Dst:             htons
    - functionName:    ofpact_get_CHECK_PKT_LARGER
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ovs_ignore
    - functionName:    encode_CHECK_PKT_LARGER
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7851
      functionLinenumberEnd: 7862
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          78
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htons
        - nx_put_mff_header
        - put_NXAST_CHECK_PKT_LARGER
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:7852,47'
          Dst:             put_NXAST_CHECK_PKT_LARGER
        - Src:             'lib/ofp-actions.c:7853,21'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:7854,20'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:7859,9'
          Dst:             nx_put_mff_header
    - functionName:    ofpact_get_DEBUG_RECIRC
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ovs_ignore
    - functionName:    encode_DEBUG_RECIRC
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6590
      functionLinenumberEnd: 6592
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - put_NXAST_DEBUG_RECIRC
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:6591,5'
          Dst:             put_NXAST_DEBUG_RECIRC
    - functionName:    ofpact_get_DEBUG_SLOW
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ovs_ignore
    - functionName:    encode_DEBUG_SLOW
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6630
      functionLinenumberEnd: 6632
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - put_NXAST_DEBUG_SLOW
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:6631,5'
          Dst:             put_NXAST_DEBUG_SLOW
    - functionName:    ofpact_get_METER
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ovs_ignore
    - functionName:    encode_METER
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7575
      functionLinenumberEnd: 7581
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          62
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - htonl
        - instruction_put_OFPIT13_METER
        - put_OFPAT15_METER
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:7577,56'
          Dst:             htonl
        - Src:             'lib/ofp-actions.c:7577,9'
          Dst:             instruction_put_OFPIT13_METER
        - Src:             'lib/ofp-actions.c:7579,9'
          Dst:             put_OFPAT15_METER
    - functionName:    ofpact_get_CLEAR_ACTIONS
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ovs_ignore
    - functionName:    encode_CLEAR_ACTIONS
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7612
      functionLinenumberEnd: 7616
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - instruction_put_OFPIT11_CLEAR_ACTIONS
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:7614,9'
          Dst:             instruction_put_OFPIT11_CLEAR_ACTIONS
    - functionName:    ofpact_get_WRITE_ACTIONS
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ovs_ignore
    - functionName:    ofpact_get_WRITE_METADATA
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ovs_ignore
    - functionName:    ofpact_get_GOTO_TABLE
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ovs_ignore
    - functionName:    check_subactions
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6123
      functionLinenumberEnd: 6127
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpacts_check
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:6125,25'
          Dst:             ofpacts_check
    - functionName:    ofpacts_check
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8851
      functionLinenumberEnd: 8877
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          101
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ofpact_check__
        - ofpact_end
        - ofpact_next
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:8864,5'
          Dst:             ofpact_end
        - Src:             'lib/ofp-actions.c:8865,17'
          Dst:             ofpact_check__
        - Src:             'lib/ofp-actions.c:8864,5'
          Dst:             ofpact_next
    - functionName:    ofpact_check__
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8823
      functionLinenumberEnd: 8833
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         64
      ICount:          560
      EdgeCount:       126
      CyclomaticComplexity: 64
      functionsReached:
        - abort
        - check_BUNDLE
        - check_CHECK_PKT_LARGER
        - check_CLEAR_ACTIONS
        - check_CLONE
        - check_CONJUNCTION
        - check_CONTROLLER
        - check_CT
        - check_CT_CLEAR
        - check_DEBUG_RECIRC
        - check_DEBUG_SLOW
        - check_DECAP
        - check_DEC_MPLS_TTL
        - check_DEC_NSH_TTL
        - check_DEC_TTL
        - check_DELETE_FIELD
        - check_ENCAP
        - check_ENQUEUE
        - check_EXIT
        - check_FIN_TIMEOUT
        - check_GOTO_TABLE
        - check_GROUP
        - check_LEARN
        - check_METER
        - check_MULTIPATH
        - check_NAT
        - check_NOTE
        - check_OUTPUT
        - check_OUTPUT_REG
        - check_OUTPUT_TRUNC
        - check_POP_MPLS
        - check_POP_QUEUE
        - check_PUSH_MPLS
        - check_PUSH_VLAN
        - check_REG_MOVE
        - check_RESUBMIT
        - check_SAMPLE
        - check_SET_ETH_DST
        - check_SET_ETH_SRC
        - check_SET_FIELD
        - check_SET_IPV4_DST
        - check_SET_IPV4_SRC
        - check_SET_IP_DSCP
        - check_SET_IP_ECN
        - check_SET_IP_TTL
        - check_SET_L4_DST_PORT
        - check_SET_L4_SRC_PORT
        - check_SET_MPLS_LABEL
        - check_SET_MPLS_TC
        - check_SET_MPLS_TTL
        - check_SET_QUEUE
        - check_SET_TUNNEL
        - check_SET_VLAN_PCP
        - check_SET_VLAN_VID
        - check_STACK_POP
        - check_STACK_PUSH
        - check_STRIP_VLAN
        - check_UNROLL_XLATE
        - check_WRITE_ACTIONS
        - check_WRITE_METADATA
        - ofpact_get_BUNDLE
        - ofpact_get_CHECK_PKT_LARGER
        - ofpact_get_CLEAR_ACTIONS
        - ofpact_get_CLONE
        - ofpact_get_CONJUNCTION
        - ofpact_get_CONTROLLER
        - ofpact_get_CT
        - ofpact_get_CT_CLEAR
        - ofpact_get_DEBUG_RECIRC
        - ofpact_get_DEBUG_SLOW
        - ofpact_get_DECAP
        - ofpact_get_DEC_MPLS_TTL
        - ofpact_get_DEC_NSH_TTL
        - ofpact_get_DEC_TTL
        - ofpact_get_DELETE_FIELD
        - ofpact_get_ENCAP
        - ofpact_get_ENQUEUE
        - ofpact_get_EXIT
        - ofpact_get_FIN_TIMEOUT
        - ofpact_get_GOTO_TABLE
        - ofpact_get_GROUP
        - ofpact_get_LEARN
        - ofpact_get_METER
        - ofpact_get_MULTIPATH
        - ofpact_get_NAT
        - ofpact_get_NOTE
        - ofpact_get_OUTPUT
        - ofpact_get_OUTPUT_REG
        - ofpact_get_OUTPUT_TRUNC
        - ofpact_get_POP_MPLS
        - ofpact_get_POP_QUEUE
        - ofpact_get_PUSH_MPLS
        - ofpact_get_PUSH_VLAN
        - ofpact_get_REG_MOVE
        - ofpact_get_RESUBMIT
        - ofpact_get_SAMPLE
        - ofpact_get_SET_ETH_DST
        - ofpact_get_SET_ETH_SRC
        - ofpact_get_SET_FIELD
        - ofpact_get_SET_IPV4_DST
        - ofpact_get_SET_IPV4_SRC
        - ofpact_get_SET_IP_DSCP
        - ofpact_get_SET_IP_ECN
        - ofpact_get_SET_IP_TTL
        - ofpact_get_SET_L4_DST_PORT
        - ofpact_get_SET_L4_SRC_PORT
        - ofpact_get_SET_MPLS_LABEL
        - ofpact_get_SET_MPLS_TC
        - ofpact_get_SET_MPLS_TTL
        - ofpact_get_SET_QUEUE
        - ofpact_get_SET_TUNNEL
        - ofpact_get_SET_VLAN_PCP
        - ofpact_get_SET_VLAN_VID
        - ofpact_get_STACK_POP
        - ofpact_get_STACK_PUSH
        - ofpact_get_STRIP_VLAN
        - ofpact_get_UNROLL_XLATE
        - ofpact_get_WRITE_ACTIONS
        - ofpact_get_WRITE_METADATA
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-actions.c:8824,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             ofpact_get_OUTPUT
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             check_OUTPUT
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             ofpact_get_GROUP
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             check_GROUP
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             ofpact_get_CONTROLLER
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             check_CONTROLLER
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             ofpact_get_ENQUEUE
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             check_ENQUEUE
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             ofpact_get_OUTPUT_REG
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             check_OUTPUT_REG
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             ofpact_get_BUNDLE
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             check_BUNDLE
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             ofpact_get_SET_FIELD
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             check_SET_FIELD
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             ofpact_get_SET_VLAN_VID
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             check_SET_VLAN_VID
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             ofpact_get_SET_VLAN_PCP
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             check_SET_VLAN_PCP
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             ofpact_get_STRIP_VLAN
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             check_STRIP_VLAN
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             ofpact_get_PUSH_VLAN
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             check_PUSH_VLAN
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             ofpact_get_SET_ETH_SRC
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             check_SET_ETH_SRC
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             ofpact_get_SET_ETH_DST
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             check_SET_ETH_DST
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             ofpact_get_SET_IPV4_SRC
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             check_SET_IPV4_SRC
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             ofpact_get_SET_IPV4_DST
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             check_SET_IPV4_DST
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             ofpact_get_SET_IP_DSCP
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             check_SET_IP_DSCP
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             ofpact_get_SET_IP_ECN
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             check_SET_IP_ECN
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             ofpact_get_SET_IP_TTL
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             check_SET_IP_TTL
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             ofpact_get_SET_L4_SRC_PORT
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             check_SET_L4_SRC_PORT
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             ofpact_get_SET_L4_DST_PORT
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             check_SET_L4_DST_PORT
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             ofpact_get_REG_MOVE
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             check_REG_MOVE
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             ofpact_get_STACK_PUSH
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             check_STACK_PUSH
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             ofpact_get_STACK_POP
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             check_STACK_POP
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             ofpact_get_DEC_TTL
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             check_DEC_TTL
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             ofpact_get_SET_MPLS_LABEL
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             check_SET_MPLS_LABEL
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             ofpact_get_SET_MPLS_TC
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             check_SET_MPLS_TC
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             ofpact_get_SET_MPLS_TTL
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             check_SET_MPLS_TTL
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             ofpact_get_DEC_MPLS_TTL
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             check_DEC_MPLS_TTL
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             ofpact_get_PUSH_MPLS
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             check_PUSH_MPLS
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             ofpact_get_POP_MPLS
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             check_POP_MPLS
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             ofpact_get_DEC_NSH_TTL
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             check_DEC_NSH_TTL
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             ofpact_get_DELETE_FIELD
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             check_DELETE_FIELD
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             ofpact_get_ENCAP
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             check_ENCAP
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             ofpact_get_DECAP
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             check_DECAP
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             ofpact_get_SET_TUNNEL
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             check_SET_TUNNEL
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             ofpact_get_SET_QUEUE
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             check_SET_QUEUE
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             ofpact_get_POP_QUEUE
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             check_POP_QUEUE
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             ofpact_get_FIN_TIMEOUT
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             check_FIN_TIMEOUT
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             ofpact_get_RESUBMIT
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             check_RESUBMIT
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             ofpact_get_LEARN
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             check_LEARN
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             ofpact_get_CONJUNCTION
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             check_CONJUNCTION
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             ofpact_get_MULTIPATH
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             check_MULTIPATH
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             ofpact_get_NOTE
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             check_NOTE
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             ofpact_get_EXIT
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             check_EXIT
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             ofpact_get_SAMPLE
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             check_SAMPLE
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             ofpact_get_UNROLL_XLATE
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             check_UNROLL_XLATE
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             ofpact_get_CT
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             check_CT
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             ofpact_get_CT_CLEAR
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             check_CT_CLEAR
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             ofpact_get_NAT
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             check_NAT
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             ofpact_get_OUTPUT_TRUNC
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             check_OUTPUT_TRUNC
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             ofpact_get_CLONE
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             check_CLONE
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             ofpact_get_CHECK_PKT_LARGER
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             check_CHECK_PKT_LARGER
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             ofpact_get_DEBUG_RECIRC
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             check_DEBUG_RECIRC
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             ofpact_get_DEBUG_SLOW
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             check_DEBUG_SLOW
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             ofpact_get_METER
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             check_METER
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             ofpact_get_CLEAR_ACTIONS
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             check_CLEAR_ACTIONS
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             ofpact_get_WRITE_ACTIONS
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             check_WRITE_ACTIONS
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             ofpact_get_WRITE_METADATA
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             check_WRITE_METADATA
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             ofpact_get_GOTO_TABLE
        - Src:             'lib/ofp-actions.c:8828,9'
          Dst:             check_GOTO_TABLE
        - Src:             'lib/ofp-actions.c:8831,9'
          Dst:             abort
    - functionName:    check_OUTPUT
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 717
      functionLinenumberEnd: 718
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_check_output_port
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:718,12'
          Dst:             ofpact_check_output_port
    - functionName:    check_GROUP
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 756
      functionLinenumberEnd: 757
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    check_CONTROLLER
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1074
      functionLinenumberEnd: 1075
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    check_ENQUEUE
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1161
      functionLinenumberEnd: 1168
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          64
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - ofp_to_u16
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:1162,9'
          Dst:             ofp_to_u16
        - Src:             'lib/ofp-actions.c:1162,32'
          Dst:             ofp_to_u16
    - functionName:    check_OUTPUT_REG
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1326
      functionLinenumberEnd: 1327
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mf_check_src
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:1327,12'
          Dst:             mf_check_src
    - functionName:    check_BUNDLE
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1552
      functionLinenumberEnd: 1553
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - bundle_check
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:1553,12'
          Dst:             bundle_check
    - functionName:    check_SET_FIELD
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3352
      functionLinenumberEnd: 3375
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         20
      ICount:          134
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - htons
        - mf_are_prereqs_ok
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:3358,10'
          Dst:             mf_are_prereqs_ok
        - Src:             'lib/ofp-actions.c:3359,48'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:3360,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-actions.c:3367,32'
          Dst:             htons
    - functionName:    check_SET_VLAN_VID
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1649
      functionLinenumberEnd: 1661
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          72
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - htons
        - inconsistent_match
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:1653,32'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:1655,9'
          Dst:             inconsistent_match
        - Src:             'lib/ofp-actions.c:1659,13'
          Dst:             htons
    - functionName:    check_SET_VLAN_PCP
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1757
      functionLinenumberEnd: 1769
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          72
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - htons
        - inconsistent_match
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:1761,32'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:1763,9'
          Dst:             inconsistent_match
        - Src:             'lib/ofp-actions.c:1767,13'
          Dst:             htons
    - functionName:    check_STRIP_VLAN
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1826
      functionLinenumberEnd: 1831
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - flow_pop_vlan
        - htons
        - inconsistent_match
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:1827,42'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:1828,9'
          Dst:             inconsistent_match
        - Src:             'lib/ofp-actions.c:1830,5'
          Dst:             flow_pop_vlan
    - functionName:    check_PUSH_VLAN
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1894
      functionLinenumberEnd: 1904
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          58
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - flow_push_vlan_uninit
        - htons
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:1896,54'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:1901,5'
          Dst:             flow_push_vlan_uninit
        - Src:             'lib/ofp-actions.c:1902,27'
          Dst:             htons
    - functionName:    check_SET_ETH_SRC
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1998
      functionLinenumberEnd: 1999
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    check_SET_ETH_DST
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2005
      functionLinenumberEnd: 2006
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    check_SET_IPV4_SRC
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2100
      functionLinenumberEnd: 2101
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - check_set_ipv4
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:2101,12'
          Dst:             check_set_ipv4
    - functionName:    check_SET_IPV4_DST
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2107
      functionLinenumberEnd: 2108
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - check_set_ipv4
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:2108,12'
          Dst:             check_set_ipv4
    - functionName:    check_SET_IP_DSCP
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2176
      functionLinenumberEnd: 2177
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - check_set_ip
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:2177,12'
          Dst:             check_set_ip
    - functionName:    check_SET_IP_ECN
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2240
      functionLinenumberEnd: 2241
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - check_set_ip
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:2241,12'
          Dst:             check_set_ip
    - functionName:    check_SET_IP_TTL
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2295
      functionLinenumberEnd: 2296
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - check_set_ip
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:2296,12'
          Dst:             check_set_ip
    - functionName:    check_SET_L4_SRC_PORT
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2411
      functionLinenumberEnd: 2412
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - check_set_l4_port
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:2412,12'
          Dst:             check_set_l4_port
    - functionName:    check_SET_L4_DST_PORT
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2417
      functionLinenumberEnd: 2418
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - check_set_l4_port
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:2418,12'
          Dst:             check_set_l4_port
    - functionName:    check_REG_MOVE
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2722
      functionLinenumberEnd: 2723
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nxm_reg_move_check
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:2723,12'
          Dst:             nxm_reg_move_check
    - functionName:    check_STACK_PUSH
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3572
      functionLinenumberEnd: 3573
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nxm_stack_push_check
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:3573,12'
          Dst:             nxm_stack_push_check
    - functionName:    check_STACK_POP
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3579
      functionLinenumberEnd: 3580
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nxm_stack_pop_check
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:3580,12'
          Dst:             nxm_stack_pop_check
    - functionName:    check_DEC_TTL
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3755
      functionLinenumberEnd: 3756
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - check_set_ip
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:3756,12'
          Dst:             check_set_ip
    - functionName:    check_SET_MPLS_LABEL
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3828
      functionLinenumberEnd: 3829
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - check_set_mpls
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:3829,12'
          Dst:             check_set_mpls
    - functionName:    check_SET_MPLS_TC
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3889
      functionLinenumberEnd: 3890
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - check_set_mpls
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:3890,12'
          Dst:             check_set_mpls
    - functionName:    check_SET_MPLS_TTL
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3947
      functionLinenumberEnd: 3948
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - check_set_mpls
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:3948,12'
          Dst:             check_set_mpls
    - functionName:    check_DEC_MPLS_TTL
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3984
      functionLinenumberEnd: 3985
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - check_set_mpls
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:3985,12'
          Dst:             check_set_mpls
    - functionName:    check_PUSH_MPLS
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4037
      functionLinenumberEnd: 4050
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
        - inconsistent_match
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:4040,30'
          Dst:             htonl
        - Src:             'lib/ofp-actions.c:4041,9'
          Dst:             inconsistent_match
    - functionName:    check_POP_MPLS
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4094
      functionLinenumberEnd: 4102
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          58
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - eth_type_mpls
        - get_dl_type
        - htonl
        - inconsistent_match
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:4096,24'
          Dst:             get_dl_type
        - Src:             'lib/ofp-actions.c:4098,30'
          Dst:             htonl
        - Src:             'lib/ofp-actions.c:4098,48'
          Dst:             eth_type_mpls
        - Src:             'lib/ofp-actions.c:4099,9'
          Dst:             inconsistent_match
    - functionName:    check_DEC_NSH_TTL
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4829
      functionLinenumberEnd: 4835
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          52
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - htonl
        - htons
        - inconsistent_match
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:4831,30'
          Dst:             htonl
        - Src:             'lib/ofp-actions.c:4832,26'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:4833,9'
          Dst:             inconsistent_match
    - functionName:    check_DELETE_FIELD
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4256
      functionLinenumberEnd: 4262
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          45
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    check_ENCAP
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4664
      functionLinenumberEnd: 4673
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          66
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - htons
        - is_ip_any
        - pt_ns
        - pt_ns_type
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:4667,9'
          Dst:             pt_ns
        - Src:             'lib/ofp-actions.c:4668,31'
          Dst:             pt_ns_type
        - Src:             'lib/ofp-actions.c:4668,25'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:4670,10'
          Dst:             is_ip_any
    - functionName:    check_DECAP
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4781
      functionLinenumberEnd: 4793
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
        - ntohs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:4783,30'
          Dst:             htonl
        - Src:             'lib/ofp-actions.c:4785,29'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:4785,29'
          Dst:             htonl
        - Src:             'lib/ofp-actions.c:4790,29'
          Dst:             htonl
    - functionName:    check_SET_TUNNEL
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4177
      functionLinenumberEnd: 4178
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    check_SET_QUEUE
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4299
      functionLinenumberEnd: 4300
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    check_POP_QUEUE
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4337
      functionLinenumberEnd: 4338
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    check_FIN_TIMEOUT
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4444
      functionLinenumberEnd: 4448
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - inconsistent_match
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:4446,9'
          Dst:             inconsistent_match
    - functionName:    check_RESUBMIT
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5051
      functionLinenumberEnd: 5057
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          48
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - is_ct_valid
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:5052,29'
          Dst:             is_ct_valid
    - functionName:    check_LEARN
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5646
      functionLinenumberEnd: 5647
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - learn_check
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:5647,12'
          Dst:             learn_check
    - functionName:    check_CONJUNCTION
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5739
      functionLinenumberEnd: 5740
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    check_MULTIPATH
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5873
      functionLinenumberEnd: 5874
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - multipath_check
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:5874,12'
          Dst:             multipath_check
    - functionName:    check_NOTE
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5959
      functionLinenumberEnd: 5960
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    check_EXIT
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5996
      functionLinenumberEnd: 5997
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    check_SAMPLE
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6561
      functionLinenumberEnd: 6562
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    check_UNROLL_XLATE
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6034
      functionLinenumberEnd: 6036
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    check_CT
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7068
      functionLinenumberEnd: 7086
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         24
      ICount:          147
      EdgeCount:       32
      CyclomaticComplexity: 10
      functionsReached:
        - check_subactions
        - dl_type_is_ip_any
        - get_dl_type
        - mf_check_src
        - ofpact_ct_get_action_len
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:7071,28'
          Dst:             get_dl_type
        - Src:             'lib/ofp-actions.c:7071,10'
          Dst:             dl_type_is_ip_any
        - Src:             'lib/ofp-actions.c:7082,16'
          Dst:             mf_check_src
        - Src:             'lib/ofp-actions.c:7085,41'
          Dst:             ofpact_ct_get_action_len
        - Src:             'lib/ofp-actions.c:7085,12'
          Dst:             check_subactions
    - functionName:    check_CT_CLEAR
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7122
      functionLinenumberEnd: 7123
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    check_NAT
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7480
      functionLinenumberEnd: 7488
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          89
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - dl_type_is_ip_any
        - get_dl_type
        - htons
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:7481,24'
          Dst:             get_dl_type
        - Src:             'lib/ofp-actions.c:7482,10'
          Dst:             dl_type_is_ip_any
        - Src:             'lib/ofp-actions.c:7483,47'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:7484,48'
          Dst:             htons
    - functionName:    check_OUTPUT_TRUNC
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7550
      functionLinenumberEnd: 7551
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_check_output_port
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:7551,12'
          Dst:             ofpact_check_output_port
    - functionName:    check_CLONE
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6132
      functionLinenumberEnd: 6133
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - check_subactions
        - ofpact_nest_get_action_len
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:6133,41'
          Dst:             ofpact_nest_get_action_len
        - Src:             'lib/ofp-actions.c:6133,12'
          Dst:             check_subactions
    - functionName:    check_CHECK_PKT_LARGER
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7911
      functionLinenumberEnd: 7912
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    check_DEBUG_RECIRC
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6611
      functionLinenumberEnd: 6612
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    check_DEBUG_SLOW
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6651
      functionLinenumberEnd: 6652
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    check_METER
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7601
      functionLinenumberEnd: 7603
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          32
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    check_CLEAR_ACTIONS
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7635
      functionLinenumberEnd: 7636
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    check_WRITE_ACTIONS
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7698
      functionLinenumberEnd: 7702
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_nest_get_action_len
        - ofpacts_check
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:7702,38'
          Dst:             ofpact_nest_get_action_len
        - Src:             'lib/ofp-actions.c:7702,12'
          Dst:             ofpacts_check
    - functionName:    check_WRITE_METADATA
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7794
      functionLinenumberEnd: 7795
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    check_GOTO_TABLE
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7958
      functionLinenumberEnd: 7964
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          76
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofpact_check_output_port
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8782
      functionLinenumberEnd: 8802
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          75
      EdgeCount:       16
      CyclomaticComplexity: 2
      functionsReached:
        - ofp_to_u16
      functionUses:    5
      BranchProfiles:
        - Branch String:   'lib/ofp-actions.c:8783,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-actions.c:8797,13'
          Dst:             ofp_to_u16
        - Src:             'lib/ofp-actions.c:8797,32'
          Dst:             ofp_to_u16
    - functionName:    get_dl_type
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1036
      functionLinenumberEnd: 1044
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          53
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - htonl
        - htons
        - pt_ns
        - pt_ns_type_be
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:1037,30'
          Dst:             htonl
        - Src:             'lib/flow.h:1039,16'
          Dst:             pt_ns
        - Src:             'lib/flow.h:1040,16'
          Dst:             pt_ns_type_be
        - Src:             'lib/flow.h:1042,16'
          Dst:             htons
    - functionName:    dl_type_is_ip_any
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1256
      functionLinenumberEnd: 1258
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htons
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:1257,23'
          Dst:             htons
        - Src:             'lib/packets.h:1258,23'
          Dst:             htons
    - functionName:    is_ct_valid
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 954
      functionLinenumberEnd: 972
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          108
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    inconsistent_match
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8812
      functionLinenumberEnd: 8814
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    11
      BranchProfiles:  []
      Callsites:       []
    - functionName:    is_ip_any
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1059
      functionLinenumberEnd: 1060
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dl_type_is_ip_any
        - get_dl_type
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:1060,30'
          Dst:             get_dl_type
        - Src:             'lib/flow.h:1060,12'
          Dst:             dl_type_is_ip_any
    - functionName:    eth_type_mpls
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 423
      functionLinenumberEnd: 425
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htons
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:424,24'
          Dst:             htons
        - Src:             'lib/packets.h:425,21'
          Dst:             htons
    - functionName:    check_set_mpls
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3817
      functionLinenumberEnd: 3822
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - eth_type_mpls
        - get_dl_type
        - inconsistent_match
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:3818,24'
          Dst:             get_dl_type
        - Src:             'lib/ofp-actions.c:3819,10'
          Dst:             eth_type_mpls
        - Src:             'lib/ofp-actions.c:3820,9'
          Dst:             inconsistent_match
    - functionName:    check_set_ip
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2166
      functionLinenumberEnd: 2170
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - inconsistent_match
        - is_ip_any
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:2167,10'
          Dst:             is_ip_any
        - Src:             'lib/ofp-actions.c:2168,9'
          Dst:             inconsistent_match
    - functionName:    check_set_l4_port
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2392
      functionLinenumberEnd: 2406
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          88
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached:
        - inconsistent_match
        - is_ip_any
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:2394,10'
          Dst:             is_ip_any
        - Src:             'lib/ofp-actions.c:2399,9'
          Dst:             inconsistent_match
    - functionName:    check_set_ipv4
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2089
      functionLinenumberEnd: 2094
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - get_dl_type
        - htons
        - inconsistent_match
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:2090,24'
          Dst:             get_dl_type
        - Src:             'lib/ofp-actions.c:2091,20'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:2092,9'
          Dst:             inconsistent_match
    - functionName:    ofpact_is_allowed_in_actions_set
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8257
      functionLinenumberEnd: 8258
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - action_set_classify
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:8258,12'
          Dst:             action_set_classify
    - functionName:    action_set_classify
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8189
      functionLinenumberEnd: 8251
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         66
      ICount:          281
      EdgeCount:       130
      CyclomaticComplexity: 66
      functionsReached:
        - abort
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/ofp-actions.c:8190,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-actions.c:8249,9'
          Dst:             abort
    - functionName:    decode_ct_zone
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6792
      functionLinenumberEnd: 6821
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          143
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - mf_check_src
        - mf_vl_mff_mf_from_nxm_header
        - ntohl
        - ntohs
        - nxm_decode_n_bits
        - nxm_decode_ofs
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:6796,29'
          Dst:             nxm_decode_ofs
        - Src:             'lib/ofp-actions.c:6797,32'
          Dst:             nxm_decode_n_bits
        - Src:             'lib/ofp-actions.c:6798,46'
          Dst:             ntohl
        - Src:             'lib/ofp-actions.c:6798,17'
          Dst:             mf_vl_mff_mf_from_nxm_header
        - Src:             'lib/ofp-actions.c:6805,17'
          Dst:             mf_check_src
        - Src:             'lib/ofp-actions.c:6811,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-actions.c:6817,25'
          Dst:             ntohs
    - functionName:    nxm_decode_ofs
      functionSourceFile: '/src/openvswitch/lib/nx-match.h'
      linkageType:     InternalLinkage
      functionLinenumber: 167
      functionLinenumberEnd: 168
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohs
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.h:168,12'
          Dst:             ntohs
    - functionName:    nxm_decode_n_bits
      functionSourceFile: '/src/openvswitch/lib/nx-match.h'
      linkageType:     InternalLinkage
      functionLinenumber: 173
      functionLinenumberEnd: 174
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohs
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/nx-match.h:174,13'
          Dst:             ntohs
    - functionName:    decode_sample_obs_id
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6303
      functionLinenumberEnd: 6332
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - int
        - short
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          123
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - mf_check_src
        - mf_vl_mff_mf_from_nxm_header
        - ntohl
        - nxm_decode_n_bits
        - nxm_decode_ofs
        - vlog_rate_limit
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:6307,24'
          Dst:             nxm_decode_ofs
        - Src:             'lib/ofp-actions.c:6308,27'
          Dst:             nxm_decode_n_bits
        - Src:             'lib/ofp-actions.c:6309,46'
          Dst:             ntohl
        - Src:             'lib/ofp-actions.c:6309,17'
          Dst:             mf_vl_mff_mf_from_nxm_header
        - Src:             'lib/ofp-actions.c:6316,17'
          Dst:             mf_check_src
        - Src:             'lib/ofp-actions.c:6322,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-actions.c:6328,20'
          Dst:             ntohl
    - functionName:    check_sample_direction
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6271
      functionLinenumberEnd: 6279
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         16
      ICount:          66
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - vlog_rate_limit
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:6275,9'
          Dst:             vlog_rate_limit
    - functionName:    decode_SAMPLE2
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6242
      functionLinenumberEnd: 6258
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          102
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ntohl
        - ntohs
        - u16_to_ofp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:6244,27'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:6245,32'
          Dst:             ntohl
        - Src:             'lib/ofp-actions.c:6246,30'
          Dst:             ntohl
        - Src:             'lib/ofp-actions.c:6248,29'
          Dst:             ntohl
        - Src:             'lib/ofp-actions.c:6250,40'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:6250,29'
          Dst:             u16_to_ofp
    - functionName:    u16_to_ofp
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 214
      functionLinenumberEnd: 215
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    decode_stack_action
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3467
      functionLinenumberEnd: 3487
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          82
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - is_all_zeros
        - mf_vl_mff_nx_pull_header
        - ntohs
        - ofpbuf_const_initializer
        - ofpbuf_pull
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:3469,34'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:3471,23'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/ofp-actions.c:3472,5'
          Dst:             ofpbuf_pull
        - Src:             'lib/ofp-actions.c:3473,14'
          Dst:             mf_vl_mff_nx_pull_header
        - Src:             'lib/ofp-actions.c:3480,37'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:3481,5'
          Dst:             ofpbuf_pull
        - Src:             'lib/ofp-actions.c:3482,10'
          Dst:             is_all_zeros
    - functionName:    ofpbuf_const_initializer
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 97
      functionLinenumberEnd: 105
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          30
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    11
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofpbuf_msgsize
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 244
      functionLinenumberEnd: 245
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpbuf_tail
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:245,20'
          Dst:             ofpbuf_tail
    - functionName:    unaligned_be32
      functionSourceFile: '/src/openvswitch/lib/unaligned.h'
      linkageType:     InternalLinkage
      functionLinenumber: 90
      functionLinenumberEnd: 90
      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:    get_unaligned_be32
      functionSourceFile: '/src/openvswitch/lib/unaligned.h'
      linkageType:     InternalLinkage
      functionLinenumber: 90
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - unaligned_be32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/unaligned.h:90,1'
          Dst:             unaligned_be32
    - functionName:    get_be32
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5318
      functionLinenumberEnd: 5322
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_unaligned_be32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:5320,22'
          Dst:             get_unaligned_be32
    - functionName:    ofpact_finish_LEARN
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_finish
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ovs_ignore
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_finish
    - functionName:    get_subfield
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5328
      functionLinenumberEnd: 5335
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          43
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_be16
        - get_be32
        - mf_vl_mff_mf_from_nxm_header
        - ntohl
        - ntohs
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:5331,48'
          Dst:             get_be32
        - Src:             'lib/ofp-actions.c:5331,42'
          Dst:             ntohl
        - Src:             'lib/ofp-actions.c:5331,13'
          Dst:             mf_vl_mff_mf_from_nxm_header
        - Src:             'lib/ofp-actions.c:5333,21'
          Dst:             get_be16
        - Src:             'lib/ofp-actions.c:5333,15'
          Dst:             ntohs
    - functionName:    get_be16
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5309
      functionLinenumberEnd: 5313
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          19
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    learn_min_len
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5340
      functionLinenumberEnd: 5358
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          84
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    decode_LEARN_specs
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5391
      functionLinenumberEnd: 5467
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         41
      ICount:          323
      EdgeCount:       55
      CyclomaticComplexity: 16
      functionsReached:
        - get_be16
        - get_subfield
        - is_all_zeros
        - learn_min_len
        - ntohs
        - ofpact_finish_LEARN
        - ofpbuf_put_zeros
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:5396,33'
          Dst:             get_be16
        - Src:             'lib/ofp-actions.c:5396,27'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:5402,16'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-actions.c:5420,41'
          Dst:             learn_min_len
        - Src:             'lib/ofp-actions.c:5429,21'
          Dst:             get_subfield
        - Src:             'lib/ofp-actions.c:5445,21'
          Dst:             get_subfield
        - Src:             'lib/ofp-actions.c:5453,32'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-actions.c:5460,5'
          Dst:             ofpact_finish_LEARN
        - Src:             'lib/ofp-actions.c:5462,10'
          Dst:             is_all_zeros
    - functionName:    decode_LEARN_common
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5365
      functionLinenumberEnd: 5385
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          118
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - ntohs
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:5371,27'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:5372,27'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:5373,23'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:5376,31'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:5377,31'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:5378,20'
          Dst:             ntohs
    - functionName:    ofpact_put_LEARN
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_put
    - functionName:    ofpact_finish_BUNDLE
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_finish
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ovs_ignore
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_finish
    - functionName:    ofpact_put_BUNDLE
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_put
    - functionName:    decode_bundle
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1403
      functionLinenumberEnd: 1480
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - bool
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         86
      ICount:          499
      EdgeCount:       108
      CyclomaticComplexity: 24
      functionsReached:
        - bundle_check
        - flow_hash_fields_valid
        - is_all_zeros
        - mf_nxm_header
        - mf_vl_mff_mf_from_nxm_header
        - ntohl
        - ntohs
        - nxm_decode_n_bits
        - nxm_decode_ofs
        - ofpact_finish_BUNDLE
        - ofpact_put_BUNDLE
        - ofpbuf_put
        - u16_to_ofp
        - vlog_rate_limit
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:1410,14'
          Dst:             ofpact_put_BUNDLE
        - Src:             'lib/ofp-actions.c:1412,25'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:1413,21'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:1414,22'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:1415,25'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:1416,19'
          Dst:             ntohl
        - Src:             'lib/ofp-actions.c:1417,20'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:1420,10'
          Dst:             flow_hash_fields_valid
        - Src:             'lib/ofp-actions.c:1421,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-actions.c:1423,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-actions.c:1426,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-actions.c:1427,31'
          Dst:             mf_nxm_header
        - Src:             'lib/ofp-actions.c:1428,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-actions.c:1433,10'
          Dst:             is_all_zeros
        - Src:             'lib/ofp-actions.c:1434,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-actions.c:1439,27'
          Dst:             nxm_decode_ofs
        - Src:             'lib/ofp-actions.c:1440,30'
          Dst:             nxm_decode_n_bits
        - Src:             'lib/ofp-actions.c:1441,46'
          Dst:             ntohl
        - Src:             'lib/ofp-actions.c:1441,17'
          Dst:             mf_vl_mff_mf_from_nxm_header
        - Src:             'lib/ofp-actions.c:1448,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-actions.c:1454,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-actions.c:1460,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-actions.c:1469,30'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:1469,19'
          Dst:             u16_to_ofp
        - Src:             'lib/ofp-actions.c:1470,13'
          Dst:             ofpbuf_put
        - Src:             'lib/ofp-actions.c:1475,5'
          Dst:             ofpact_finish_BUNDLE
        - Src:             'lib/ofp-actions.c:1477,17'
          Dst:             bundle_check
    - functionName:    raw_clz64
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 272
      functionLinenumberEnd: 273
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    is_pow2
      functionSourceFile: '/src/openvswitch/./include/openvswitch/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 399
      functionLinenumberEnd: 400
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          26
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    log_2_floor
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 314
      functionLinenumberEnd: 315
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - raw_clz64
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.h:315,17'
          Dst:             raw_clz64
    - functionName:    log_2_ceil
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 322
      functionLinenumberEnd: 323
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - is_pow2
        - log_2_floor
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.h:323,12'
          Dst:             log_2_floor
        - Src:             'lib/util.h:323,30'
          Dst:             is_pow2
    - functionName:    decode_copy_field__
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2574
      functionLinenumberEnd: 2603
      functionDepth:   0
      returnType:      int
      argCount:        9
      argTypes:
        - short
        - short
        - short
        - 'N/A'
        - short
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          136
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - is_all_zeros
        - mf_vl_mff_nx_pull_header
        - ntohs
        - nxm_reg_move_check
        - ofpact_put_REG_MOVE
        - ofpbuf_const_initializer
        - ofpbuf_pull
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:2575,36'
          Dst:             ofpact_put_REG_MOVE
        - Src:             'lib/ofp-actions.c:2579,21'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:2580,24'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:2581,21'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:2582,24'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:2584,56'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:2584,23'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/ofp-actions.c:2585,5'
          Dst:             ofpbuf_pull
        - Src:             'lib/ofp-actions.c:2587,13'
          Dst:             mf_vl_mff_nx_pull_header
        - Src:             'lib/ofp-actions.c:2592,13'
          Dst:             mf_vl_mff_nx_pull_header
        - Src:             'lib/ofp-actions.c:2598,10'
          Dst:             is_all_zeros
        - Src:             'lib/ofp-actions.c:2602,12'
          Dst:             nxm_reg_move_check
    - functionName:    decode_ofpat_set_field
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2789
      functionLinenumberEnd: 2843
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         41
      ICount:          229
      EdgeCount:       54
      CyclomaticComplexity: 15
      functionsReached:
        - ds_cstr
        - ds_destroy
        - htons
        - is_all_zeros
        - mf_format
        - mf_is_value_valid
        - mf_vl_mff_nx_pull_entry
        - ntohs
        - ofpact_put_set_field
        - ofpbuf_const_initializer
        - ofpbuf_pull
        - vlog_rate_limit
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:2790,54'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:2790,23'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/ofp-actions.c:2791,5'
          Dst:             ofpbuf_pull
        - Src:             'lib/ofp-actions.c:2796,14'
          Dst:             mf_vl_mff_nx_pull_entry
        - Src:             'lib/ofp-actions.c:2808,10'
          Dst:             is_all_zeros
        - Src:             'lib/ofp-actions.c:2820,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-actions.c:2828,10'
          Dst:             mf_is_value_valid
        - Src:             'lib/ofp-actions.c:2830,31'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:2831,35'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:2833,9'
          Dst:             mf_format
        - Src:             'lib/ofp-actions.c:2834,9'
          Dst:             ds_cstr
        - Src:             'lib/ofp-actions.c:2834,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-actions.c:2836,9'
          Dst:             ds_destroy
        - Src:             'lib/ofp-actions.c:2841,5'
          Dst:             ofpact_put_set_field
    - functionName:    decode_set_vlan_pcp
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1668
      functionLinenumberEnd: 1677
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - char
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofpact_put_SET_VLAN_PCP
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:1672,44'
          Dst:             ofpact_put_SET_VLAN_PCP
    - functionName:    decode_set_vlan_vid
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1560
      functionLinenumberEnd: 1569
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - short
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofpact_put_SET_VLAN_VID
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:1564,44'
          Dst:             ofpact_put_SET_VLAN_VID
    - functionName:    decode_NXAST_RAW_DEBUG_RECIRC
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6577
      functionLinenumberEnd: 6584
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofpact_put_DEBUG_RECIRC
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:6582,5'
          Dst:             ofpact_put_DEBUG_RECIRC
    - functionName:    decode_NXAST_RAW_DEBUG_SLOW
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6617
      functionLinenumberEnd: 6624
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofpact_put_DEBUG_SLOW
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:6622,5'
          Dst:             ofpact_put_DEBUG_SLOW
    - functionName:    decode_NXAST_RAW_DELETE_FIELD
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4201
      functionLinenumberEnd: 4218
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          64
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - mf_vl_mff_nx_pull_header
        - ntohs
        - ofpact_put_DELETE_FIELD
        - ofpbuf_const_initializer
        - ofpbuf_pull
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:4205,20'
          Dst:             ofpact_put_DELETE_FIELD
        - Src:             'lib/ofp-actions.c:4208,54'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:4208,23'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/ofp-actions.c:4209,5'
          Dst:             ofpbuf_pull
        - Src:             'lib/ofp-actions.c:4211,11'
          Dst:             mf_vl_mff_nx_pull_header
    - functionName:    decode_NXAST_RAW_CHECK_PKT_LARGER
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7821
      functionLinenumberEnd: 7845
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          99
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - is_all_zeros
        - mf_check_dst
        - mf_vl_mff_nx_pull_header
        - ntohs
        - ofpact_put_CHECK_PKT_LARGER
        - ofpbuf_const_initializer
        - ofpbuf_pull
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:7825,24'
          Dst:             ofpact_put_CHECK_PKT_LARGER
        - Src:             'lib/ofp-actions.c:7826,33'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:7827,33'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:7830,54'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:7830,23'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/ofp-actions.c:7831,5'
          Dst:             ofpbuf_pull
        - Src:             'lib/ofp-actions.c:7833,13'
          Dst:             mf_vl_mff_nx_pull_header
        - Src:             'lib/ofp-actions.c:7840,10'
          Dst:             is_all_zeros
        - Src:             'lib/ofp-actions.c:7844,12'
          Dst:             mf_check_dst
    - functionName:    decode_NXAST_RAW_DEC_NSH_TTL
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4800
      functionLinenumberEnd: 4802
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_DEC_NSH_TTL
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:4801,5'
          Dst:             ofpact_put_DEC_NSH_TTL
    - functionName:    decode_NXAST_RAW_DECAP
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4698
      functionLinenumberEnd: 4710
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ntohs
        - ofpact_put_DECAP
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:4701,9'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:4706,13'
          Dst:             ofpact_put_DECAP
    - functionName:    decode_NXAST_RAW_ENCAP
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4467
      functionLinenumberEnd: 4506
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          141
      EdgeCount:       17
      CyclomaticComplexity: 3
      functionsReached:
        - decode_ed_prop
        - ntohl
        - ntohs
        - ofpact_finish_ENCAP
        - ofpact_put_ENCAP
        - ofpbuf_at_assert
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-actions.c:4477,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-actions.c:4475,13'
          Dst:             ofpact_put_ENCAP
        - Src:             'lib/ofp-actions.c:4477,13'
          Dst:             ntohl
        - Src:             'lib/ofp-actions.c:4488,23'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:4491,17'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:4494,15'
          Dst:             decode_ed_prop
        - Src:             'lib/ofp-actions.c:4500,13'
          Dst:             ofpbuf_at_assert
        - Src:             'lib/ofp-actions.c:4503,5'
          Dst:             ofpact_finish_ENCAP
    - functionName:    decode_NXAST_RAW_CT_CLEAR
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7092
      functionLinenumberEnd: 7094
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_CT_CLEAR
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:7093,5'
          Dst:             ofpact_put_CT_CLEAR
    - functionName:    decode_NXAST_RAW_CLONE
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6047
      functionLinenumberEnd: 6069
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          85
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ntohs
        - ofpact_finish_CLONE
        - ofpact_put_CLONE
        - ofpacts_pull
        - ofpacts_pull_openflow_actions__
        - ofpbuf_const_initializer
        - ofpbuf_pull
        - ofpbuf_push_uninit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:6050,33'
          Dst:             ofpacts_pull
        - Src:             'lib/ofp-actions.c:6051,33'
          Dst:             ofpact_put_CLONE
        - Src:             'lib/ofp-actions.c:6054,5'
          Dst:             ofpbuf_pull
        - Src:             'lib/ofp-actions.c:6056,30'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:6055,16'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/ofp-actions.c:6057,13'
          Dst:             ofpacts_pull_openflow_actions__
        - Src:             'lib/ofp-actions.c:6064,13'
          Dst:             ofpbuf_push_uninit
        - Src:             'lib/ofp-actions.c:6066,5'
          Dst:             ofpact_finish_CLONE
        - Src:             'lib/ofp-actions.c:6067,5'
          Dst:             ofpbuf_push_uninit
    - functionName:    ofpacts_pull_openflow_actions__
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8060
      functionLinenumberEnd: 8088
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - 'N/A'
        - char
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          147
      EdgeCount:       30
      CyclomaticComplexity: 8
      functionsReached:
        - ofpacts_decode
        - ofpacts_verify
        - ofpbuf_clear
        - ofpbuf_try_pull
        - vlog_rate_limit
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:8065,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-actions.c:8070,15'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/ofp-actions.c:8072,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-actions.c:8078,13'
          Dst:             ofpacts_decode
        - Src:             'lib/ofp-actions.c:8081,17'
          Dst:             ofpacts_verify
        - Src:             'lib/ofp-actions.c:8085,9'
          Dst:             ofpbuf_clear
    - functionName:    ofpbuf_try_pull
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 275
      functionLinenumberEnd: 276
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofpbuf_pull
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:276,30'
          Dst:             ofpbuf_pull
    - functionName:    ofpacts_decode
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8029
      functionLinenumberEnd: 8048
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          74
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - log_bad_action
        - ofpacts_decode_aligned
        - ofpbuf_init
        - ofpbuf_put
        - ofpbuf_uninit
        - ofpbuf_use_data
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:8034,9'
          Dst:             ofpbuf_init
        - Src:             'lib/ofp-actions.c:8035,9'
          Dst:             ofpbuf_put
        - Src:             'lib/ofp-actions.c:8037,9'
          Dst:             ofpbuf_use_data
        - Src:             'lib/ofp-actions.c:8041,11'
          Dst:             ofpacts_decode_aligned
        - Src:             'lib/ofp-actions.c:8045,9'
          Dst:             log_bad_action
        - Src:             'lib/ofp-actions.c:8047,5'
          Dst:             ofpbuf_uninit
    - functionName:    ofpbuf_clear
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 250
      functionLinenumberEnd: 253
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofpacts_decode_aligned
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7986
      functionLinenumberEnd: 8021
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          117
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - ofpact_decode
        - ofpact_pull_raw
        - ofpbuf_align
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:7990,5'
          Dst:             ovs_ignore
        - Src:             'lib/ofp-actions.c:7999,13'
          Dst:             ofpbuf_align
        - Src:             'lib/ofp-actions.c:8007,17'
          Dst:             ofpact_pull_raw
        - Src:             'lib/ofp-actions.c:8009,21'
          Dst:             ofpact_decode
    - functionName:    log_bad_action
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7969
      functionLinenumberEnd: 7979
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          58
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - ds_cstr
        - ds_destroy
        - ds_init
        - ds_put_hex_dump
        - ofperr_get_name
        - vlog
        - vlog_should_drop
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:7970,10'
          Dst:             vlog_should_drop
        - Src:             'lib/ofp-actions.c:7973,9'
          Dst:             ds_init
        - Src:             'lib/ofp-actions.c:7974,9'
          Dst:             ds_put_hex_dump
        - Src:             'lib/ofp-actions.c:7975,9'
          Dst:             ofperr_get_name
        - Src:             'lib/ofp-actions.c:7975,9'
          Dst:             ds_cstr
        - Src:             'lib/ofp-actions.c:7975,9'
          Dst:             vlog
        - Src:             'lib/ofp-actions.c:7977,9'
          Dst:             ds_destroy
    - functionName:    ofpact_pull_raw
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9903
      functionLinenumberEnd: 9955
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         45
      ICount:          306
      EdgeCount:       57
      CyclomaticComplexity: 14
      functionsReached:
        - ntohs
        - ofpact_decode_raw
        - ofpbuf_at_assert
        - ofpbuf_pull
        - ofputil_version_to_string
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:9910,13'
          Dst:             ofpact_decode_raw
        - Src:             'lib/ofp-actions.c:9916,9'
          Dst:             ofputil_version_to_string
        - Src:             'lib/ofp-actions.c:9916,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-actions.c:9921,14'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:9923,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-actions.c:9928,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-actions.c:9934,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-actions.c:9945,13'
          Dst:             ofpbuf_at_assert
        - Src:             'lib/ofp-actions.c:9951,5'
          Dst:             ofpbuf_pull
    - functionName:    ofpact_decode
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.inc2'
      linkageType:     InternalLinkage
      functionLinenumber: 4645
      functionLinenumberEnd: 4875
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - int
        - int
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         80
      ICount:          761
      EdgeCount:       158
      CyclomaticComplexity: 80
      functionsReached:
        - abort
        - decode_NXAST_RAW_BUNDLE
        - decode_NXAST_RAW_BUNDLE_LOAD
        - decode_NXAST_RAW_CHECK_PKT_LARGER
        - decode_NXAST_RAW_CLONE
        - decode_NXAST_RAW_CONJUNCTION
        - decode_NXAST_RAW_CONTROLLER
        - decode_NXAST_RAW_CONTROLLER2
        - decode_NXAST_RAW_CT
        - decode_NXAST_RAW_CT_CLEAR
        - decode_NXAST_RAW_DEBUG_RECIRC
        - decode_NXAST_RAW_DEBUG_SLOW
        - decode_NXAST_RAW_DECAP
        - decode_NXAST_RAW_DEC_NSH_TTL
        - decode_NXAST_RAW_DEC_TTL_CNT_IDS
        - decode_NXAST_RAW_DELETE_FIELD
        - decode_NXAST_RAW_ENCAP
        - decode_NXAST_RAW_EXIT
        - decode_NXAST_RAW_FIN_TIMEOUT
        - decode_NXAST_RAW_LEARN
        - decode_NXAST_RAW_LEARN2
        - decode_NXAST_RAW_MULTIPATH
        - decode_NXAST_RAW_NAT
        - decode_NXAST_RAW_NOTE
        - decode_NXAST_RAW_OUTPUT_REG
        - decode_NXAST_RAW_OUTPUT_REG2
        - decode_NXAST_RAW_OUTPUT_TRUNC
        - decode_NXAST_RAW_POP_QUEUE
        - decode_NXAST_RAW_REG_LOAD
        - decode_NXAST_RAW_REG_LOAD2
        - decode_NXAST_RAW_REG_MOVE
        - decode_NXAST_RAW_RESUBMIT
        - decode_NXAST_RAW_RESUBMIT_TABLE
        - decode_NXAST_RAW_RESUBMIT_TABLE_CT
        - decode_NXAST_RAW_SAMPLE
        - decode_NXAST_RAW_SAMPLE2
        - decode_NXAST_RAW_SAMPLE3
        - decode_NXAST_RAW_SAMPLE4
        - decode_NXAST_RAW_SET_TUNNEL
        - decode_NXAST_RAW_SET_TUNNEL64
        - decode_NXAST_RAW_STACK_POP
        - decode_NXAST_RAW_STACK_PUSH
        - decode_NXAST_RAW_WRITE_METADATA
        - decode_OFPAT_RAW10_ENQUEUE
        - decode_OFPAT_RAW10_OUTPUT
        - decode_OFPAT_RAW10_SET_VLAN_PCP
        - decode_OFPAT_RAW10_SET_VLAN_VID
        - decode_OFPAT_RAW10_STRIP_VLAN
        - decode_OFPAT_RAW11_OUTPUT
        - decode_OFPAT_RAW11_POP_VLAN
        - decode_OFPAT_RAW11_PUSH_VLAN
        - decode_OFPAT_RAW11_SET_NW_ECN
        - decode_OFPAT_RAW11_SET_NW_TTL
        - decode_OFPAT_RAW11_SET_VLAN_PCP
        - decode_OFPAT_RAW11_SET_VLAN_VID
        - decode_OFPAT_RAW12_SET_FIELD
        - decode_OFPAT_RAW15_COPY_FIELD
        - decode_OFPAT_RAW15_METER
        - decode_OFPAT_RAW15_SET_FIELD
        - decode_OFPAT_RAW_DEC_MPLS_TTL
        - decode_OFPAT_RAW_DEC_NW_TTL
        - decode_OFPAT_RAW_GROUP
        - decode_OFPAT_RAW_POP_MPLS
        - decode_OFPAT_RAW_PUSH_MPLS
        - decode_OFPAT_RAW_SET_DL_DST
        - decode_OFPAT_RAW_SET_DL_SRC
        - decode_OFPAT_RAW_SET_MPLS_LABEL
        - decode_OFPAT_RAW_SET_MPLS_TC
        - decode_OFPAT_RAW_SET_MPLS_TTL
        - decode_OFPAT_RAW_SET_NW_DST
        - decode_OFPAT_RAW_SET_NW_SRC
        - decode_OFPAT_RAW_SET_NW_TOS
        - decode_OFPAT_RAW_SET_QUEUE
        - decode_OFPAT_RAW_SET_TP_DST
        - decode_OFPAT_RAW_SET_TP_SRC
        - decode_ONFACT_RAW13_COPY_FIELD
        - htonl
        - htons
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-actions.inc2:4646,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-actions.inc2:4648,16'
          Dst:             decode_OFPAT_RAW10_OUTPUT
        - Src:             'lib/ofp-actions.inc2:4651,16'
          Dst:             decode_OFPAT_RAW11_OUTPUT
        - Src:             'lib/ofp-actions.inc2:4654,16'
          Dst:             decode_OFPAT_RAW10_SET_VLAN_VID
        - Src:             'lib/ofp-actions.inc2:4657,16'
          Dst:             decode_OFPAT_RAW10_SET_VLAN_PCP
        - Src:             'lib/ofp-actions.inc2:4660,16'
          Dst:             decode_OFPAT_RAW11_SET_VLAN_VID
        - Src:             'lib/ofp-actions.inc2:4663,16'
          Dst:             decode_OFPAT_RAW11_SET_VLAN_PCP
        - Src:             'lib/ofp-actions.inc2:4666,45'
          Dst:             htons
        - Src:             'lib/ofp-actions.inc2:4666,16'
          Dst:             decode_OFPAT_RAW11_PUSH_VLAN
        - Src:             'lib/ofp-actions.inc2:4669,16'
          Dst:             decode_OFPAT_RAW10_STRIP_VLAN
        - Src:             'lib/ofp-actions.inc2:4672,16'
          Dst:             decode_OFPAT_RAW11_POP_VLAN
        - Src:             'lib/ofp-actions.inc2:4675,16'
          Dst:             decode_OFPAT_RAW_SET_DL_SRC
        - Src:             'lib/ofp-actions.inc2:4678,16'
          Dst:             decode_OFPAT_RAW_SET_DL_DST
        - Src:             'lib/ofp-actions.inc2:4681,44'
          Dst:             htonl
        - Src:             'lib/ofp-actions.inc2:4681,16'
          Dst:             decode_OFPAT_RAW_SET_NW_SRC
        - Src:             'lib/ofp-actions.inc2:4684,44'
          Dst:             htonl
        - Src:             'lib/ofp-actions.inc2:4684,16'
          Dst:             decode_OFPAT_RAW_SET_NW_DST
        - Src:             'lib/ofp-actions.inc2:4687,16'
          Dst:             decode_OFPAT_RAW_SET_NW_TOS
        - Src:             'lib/ofp-actions.inc2:4690,16'
          Dst:             decode_OFPAT_RAW11_SET_NW_ECN
        - Src:             'lib/ofp-actions.inc2:4693,44'
          Dst:             htons
        - Src:             'lib/ofp-actions.inc2:4693,16'
          Dst:             decode_OFPAT_RAW_SET_TP_SRC
        - Src:             'lib/ofp-actions.inc2:4696,44'
          Dst:             htons
        - Src:             'lib/ofp-actions.inc2:4696,16'
          Dst:             decode_OFPAT_RAW_SET_TP_DST
        - Src:             'lib/ofp-actions.inc2:4699,16'
          Dst:             decode_OFPAT_RAW10_ENQUEUE
        - Src:             'lib/ofp-actions.inc2:4702,48'
          Dst:             htonl
        - Src:             'lib/ofp-actions.inc2:4702,16'
          Dst:             decode_OFPAT_RAW_SET_MPLS_LABEL
        - Src:             'lib/ofp-actions.inc2:4705,16'
          Dst:             decode_OFPAT_RAW_SET_MPLS_TC
        - Src:             'lib/ofp-actions.inc2:4708,16'
          Dst:             decode_OFPAT_RAW_SET_MPLS_TTL
        - Src:             'lib/ofp-actions.inc2:4711,16'
          Dst:             decode_OFPAT_RAW_DEC_MPLS_TTL
        - Src:             'lib/ofp-actions.inc2:4714,43'
          Dst:             htons
        - Src:             'lib/ofp-actions.inc2:4714,16'
          Dst:             decode_OFPAT_RAW_PUSH_MPLS
        - Src:             'lib/ofp-actions.inc2:4717,42'
          Dst:             htons
        - Src:             'lib/ofp-actions.inc2:4717,16'
          Dst:             decode_OFPAT_RAW_POP_MPLS
        - Src:             'lib/ofp-actions.inc2:4720,16'
          Dst:             decode_OFPAT_RAW_SET_QUEUE
        - Src:             'lib/ofp-actions.inc2:4723,16'
          Dst:             decode_OFPAT_RAW_GROUP
        - Src:             'lib/ofp-actions.inc2:4726,16'
          Dst:             decode_OFPAT_RAW11_SET_NW_TTL
        - Src:             'lib/ofp-actions.inc2:4729,16'
          Dst:             decode_OFPAT_RAW_DEC_NW_TTL
        - Src:             'lib/ofp-actions.inc2:4732,16'
          Dst:             decode_NXAST_RAW_DEC_TTL_CNT_IDS
        - Src:             'lib/ofp-actions.inc2:4735,16'
          Dst:             decode_OFPAT_RAW12_SET_FIELD
        - Src:             'lib/ofp-actions.inc2:4738,16'
          Dst:             decode_OFPAT_RAW15_SET_FIELD
        - Src:             'lib/ofp-actions.inc2:4741,16'
          Dst:             decode_NXAST_RAW_REG_LOAD
        - Src:             'lib/ofp-actions.inc2:4744,16'
          Dst:             decode_NXAST_RAW_REG_LOAD2
        - Src:             'lib/ofp-actions.inc2:4747,16'
          Dst:             decode_OFPAT_RAW15_COPY_FIELD
        - Src:             'lib/ofp-actions.inc2:4750,16'
          Dst:             decode_ONFACT_RAW13_COPY_FIELD
        - Src:             'lib/ofp-actions.inc2:4753,16'
          Dst:             decode_NXAST_RAW_REG_MOVE
        - Src:             'lib/ofp-actions.inc2:4756,16'
          Dst:             decode_OFPAT_RAW15_METER
        - Src:             'lib/ofp-actions.inc2:4759,16'
          Dst:             decode_NXAST_RAW_RESUBMIT
        - Src:             'lib/ofp-actions.inc2:4762,16'
          Dst:             decode_NXAST_RAW_RESUBMIT_TABLE
        - Src:             'lib/ofp-actions.inc2:4765,16'
          Dst:             decode_NXAST_RAW_RESUBMIT_TABLE_CT
        - Src:             'lib/ofp-actions.inc2:4768,16'
          Dst:             decode_NXAST_RAW_SET_TUNNEL
        - Src:             'lib/ofp-actions.inc2:4771,16'
          Dst:             decode_NXAST_RAW_SET_TUNNEL64
        - Src:             'lib/ofp-actions.inc2:4774,16'
          Dst:             decode_NXAST_RAW_POP_QUEUE
        - Src:             'lib/ofp-actions.inc2:4777,16'
          Dst:             decode_NXAST_RAW_NOTE
        - Src:             'lib/ofp-actions.inc2:4780,16'
          Dst:             decode_NXAST_RAW_MULTIPATH
        - Src:             'lib/ofp-actions.inc2:4783,16'
          Dst:             decode_NXAST_RAW_BUNDLE
        - Src:             'lib/ofp-actions.inc2:4786,16'
          Dst:             decode_NXAST_RAW_BUNDLE_LOAD
        - Src:             'lib/ofp-actions.inc2:4789,16'
          Dst:             decode_NXAST_RAW_OUTPUT_REG
        - Src:             'lib/ofp-actions.inc2:4792,16'
          Dst:             decode_NXAST_RAW_OUTPUT_REG2
        - Src:             'lib/ofp-actions.inc2:4795,16'
          Dst:             decode_NXAST_RAW_LEARN
        - Src:             'lib/ofp-actions.inc2:4798,16'
          Dst:             decode_NXAST_RAW_LEARN2
        - Src:             'lib/ofp-actions.inc2:4801,16'
          Dst:             decode_NXAST_RAW_EXIT
        - Src:             'lib/ofp-actions.inc2:4804,16'
          Dst:             decode_NXAST_RAW_FIN_TIMEOUT
        - Src:             'lib/ofp-actions.inc2:4807,16'
          Dst:             decode_NXAST_RAW_CONTROLLER
        - Src:             'lib/ofp-actions.inc2:4810,16'
          Dst:             decode_NXAST_RAW_CONTROLLER2
        - Src:             'lib/ofp-actions.inc2:4813,16'
          Dst:             decode_NXAST_RAW_WRITE_METADATA
        - Src:             'lib/ofp-actions.inc2:4816,16'
          Dst:             decode_NXAST_RAW_STACK_PUSH
        - Src:             'lib/ofp-actions.inc2:4819,16'
          Dst:             decode_NXAST_RAW_STACK_POP
        - Src:             'lib/ofp-actions.inc2:4822,16'
          Dst:             decode_NXAST_RAW_SAMPLE
        - Src:             'lib/ofp-actions.inc2:4825,16'
          Dst:             decode_NXAST_RAW_SAMPLE2
        - Src:             'lib/ofp-actions.inc2:4828,16'
          Dst:             decode_NXAST_RAW_SAMPLE3
        - Src:             'lib/ofp-actions.inc2:4831,16'
          Dst:             decode_NXAST_RAW_SAMPLE4
        - Src:             'lib/ofp-actions.inc2:4834,16'
          Dst:             decode_NXAST_RAW_CONJUNCTION
        - Src:             'lib/ofp-actions.inc2:4837,16'
          Dst:             decode_NXAST_RAW_CT
        - Src:             'lib/ofp-actions.inc2:4840,16'
          Dst:             decode_NXAST_RAW_NAT
        - Src:             'lib/ofp-actions.inc2:4843,16'
          Dst:             decode_NXAST_RAW_OUTPUT_TRUNC
        - Src:             'lib/ofp-actions.inc2:4846,16'
          Dst:             decode_NXAST_RAW_CLONE
        - Src:             'lib/ofp-actions.inc2:4849,16'
          Dst:             decode_NXAST_RAW_CT_CLEAR
        - Src:             'lib/ofp-actions.inc2:4852,16'
          Dst:             decode_NXAST_RAW_ENCAP
        - Src:             'lib/ofp-actions.inc2:4855,16'
          Dst:             decode_NXAST_RAW_DECAP
        - Src:             'lib/ofp-actions.inc2:4858,16'
          Dst:             decode_NXAST_RAW_DEC_NSH_TTL
        - Src:             'lib/ofp-actions.inc2:4861,16'
          Dst:             decode_NXAST_RAW_CHECK_PKT_LARGER
        - Src:             'lib/ofp-actions.inc2:4864,16'
          Dst:             decode_NXAST_RAW_DELETE_FIELD
        - Src:             'lib/ofp-actions.inc2:4867,16'
          Dst:             decode_NXAST_RAW_DEBUG_SLOW
        - Src:             'lib/ofp-actions.inc2:4870,16'
          Dst:             decode_NXAST_RAW_DEBUG_RECIRC
        - Src:             'lib/ofp-actions.inc2:4873,9'
          Dst:             abort
    - functionName:    decode_OFPAT_RAW10_OUTPUT
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 578
      functionLinenumberEnd: 585
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          43
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohs
        - ofpact_check_output_port
        - ofpact_put_OUTPUT
        - u16_to_ofp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:581,14'
          Dst:             ofpact_put_OUTPUT
        - Src:             'lib/ofp-actions.c:582,31'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:582,20'
          Dst:             u16_to_ofp
        - Src:             'lib/ofp-actions.c:583,23'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:585,12'
          Dst:             ofpact_check_output_port
    - functionName:    decode_OFPAT_RAW11_OUTPUT
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 592
      functionLinenumberEnd: 605
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          60
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ntohs
        - ofpact_check_output_port
        - ofpact_put_OUTPUT
        - ofputil_port_from_ofp11
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:596,14'
          Dst:             ofpact_put_OUTPUT
        - Src:             'lib/ofp-actions.c:597,23'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:599,13'
          Dst:             ofputil_port_from_ofp11
        - Src:             'lib/ofp-actions.c:604,12'
          Dst:             ofpact_check_output_port
    - functionName:    decode_OFPAT_RAW10_SET_VLAN_VID
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1575
      functionLinenumberEnd: 1576
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - short
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - decode_set_vlan_vid
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:1576,12'
          Dst:             decode_set_vlan_vid
    - functionName:    decode_OFPAT_RAW10_SET_VLAN_PCP
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1683
      functionLinenumberEnd: 1684
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - char
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - decode_set_vlan_pcp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:1684,12'
          Dst:             decode_set_vlan_pcp
    - functionName:    decode_OFPAT_RAW11_SET_VLAN_VID
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1583
      functionLinenumberEnd: 1584
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - short
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - decode_set_vlan_vid
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:1584,12'
          Dst:             decode_set_vlan_vid
    - functionName:    decode_OFPAT_RAW11_SET_VLAN_PCP
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1691
      functionLinenumberEnd: 1692
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - char
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - decode_set_vlan_pcp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:1692,12'
          Dst:             decode_set_vlan_pcp
    - functionName:    decode_OFPAT_RAW11_PUSH_VLAN
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1840
      functionLinenumberEnd: 1848
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - short
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - eth_type_vlan
        - ofpact_put_PUSH_VLAN
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:1842,10'
          Dst:             eth_type_vlan
        - Src:             'lib/ofp-actions.c:1845,17'
          Dst:             ofpact_put_PUSH_VLAN
    - functionName:    decode_OFPAT_RAW10_STRIP_VLAN
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1776
      functionLinenumberEnd: 1778
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_STRIP_VLAN
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:1777,5'
          Dst:             ofpact_put_STRIP_VLAN
    - functionName:    decode_OFPAT_RAW11_POP_VLAN
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1783
      functionLinenumberEnd: 1785
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_STRIP_VLAN
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:1784,5'
          Dst:             ofpact_put_STRIP_VLAN
    - functionName:    decode_OFPAT_RAW_SET_DL_SRC
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1919
      functionLinenumberEnd: 1921
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_SET_ETH_SRC
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:1920,5'
          Dst:             ofpact_put_SET_ETH_SRC
    - functionName:    decode_OFPAT_RAW_SET_DL_DST
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1928
      functionLinenumberEnd: 1930
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_SET_ETH_DST
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:1929,5'
          Dst:             ofpact_put_SET_ETH_DST
    - functionName:    decode_OFPAT_RAW_SET_NW_SRC
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2015
      functionLinenumberEnd: 2017
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_SET_IPV4_SRC
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:2016,5'
          Dst:             ofpact_put_SET_IPV4_SRC
    - functionName:    decode_OFPAT_RAW_SET_NW_DST
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2024
      functionLinenumberEnd: 2026
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_SET_IPV4_DST
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:2025,5'
          Dst:             ofpact_put_SET_IPV4_DST
    - functionName:    decode_OFPAT_RAW_SET_NW_TOS
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2117
      functionLinenumberEnd: 2124
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - char
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofpact_put_SET_IP_DSCP
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:2121,9'
          Dst:             ofpact_put_SET_IP_DSCP
    - functionName:    decode_OFPAT_RAW11_SET_NW_ECN
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2186
      functionLinenumberEnd: 2193
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - char
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofpact_put_SET_IP_ECN
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:2190,9'
          Dst:             ofpact_put_SET_IP_ECN
    - functionName:    decode_OFPAT_RAW_SET_TP_SRC
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2305
      functionLinenumberEnd: 2307
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - short
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohs
        - ofpact_put_SET_L4_SRC_PORT
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:2306,45'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:2306,5'
          Dst:             ofpact_put_SET_L4_SRC_PORT
    - functionName:    decode_OFPAT_RAW_SET_TP_DST
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2314
      functionLinenumberEnd: 2316
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - short
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohs
        - ofpact_put_SET_L4_DST_PORT
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:2315,45'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:2315,5'
          Dst:             ofpact_put_SET_L4_DST_PORT
    - functionName:    decode_OFPAT_RAW10_ENQUEUE
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1094
      functionLinenumberEnd: 1106
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          84
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - ntohl
        - ntohs
        - ofp_to_u16
        - ofpact_put_ENQUEUE
        - u16_to_ofp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:1097,15'
          Dst:             ofpact_put_ENQUEUE
        - Src:             'lib/ofp-actions.c:1098,32'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:1098,21'
          Dst:             u16_to_ofp
        - Src:             'lib/ofp-actions.c:1099,22'
          Dst:             ntohl
        - Src:             'lib/ofp-actions.c:1100,9'
          Dst:             ofp_to_u16
        - Src:             'lib/ofp-actions.c:1100,38'
          Dst:             ofp_to_u16
    - functionName:    decode_OFPAT_RAW_SET_MPLS_LABEL
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3765
      functionLinenumberEnd: 3767
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_SET_MPLS_LABEL
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:3766,5'
          Dst:             ofpact_put_SET_MPLS_LABEL
    - functionName:    decode_OFPAT_RAW_SET_MPLS_TC
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3838
      functionLinenumberEnd: 3840
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - char
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_SET_MPLS_TC
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:3839,5'
          Dst:             ofpact_put_SET_MPLS_TC
    - functionName:    decode_OFPAT_RAW_SET_MPLS_TTL
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3899
      functionLinenumberEnd: 3901
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - char
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_SET_MPLS_TTL
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:3900,5'
          Dst:             ofpact_put_SET_MPLS_TTL
    - functionName:    decode_OFPAT_RAW_DEC_MPLS_TTL
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3955
      functionLinenumberEnd: 3957
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_DEC_MPLS_TTL
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:3956,5'
          Dst:             ofpact_put_DEC_MPLS_TTL
    - functionName:    decode_OFPAT_RAW_PUSH_MPLS
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3994
      functionLinenumberEnd: 4004
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - short
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - eth_type_mpls
        - ofpact_put_PUSH_MPLS
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:3997,10'
          Dst:             eth_type_mpls
        - Src:             'lib/ofp-actions.c:4000,11'
          Dst:             ofpact_put_PUSH_MPLS
    - functionName:    decode_OFPAT_RAW_POP_MPLS
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4059
      functionLinenumberEnd: 4061
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - short
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_POP_MPLS
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:4060,5'
          Dst:             ofpact_put_POP_MPLS
    - functionName:    decode_OFPAT_RAW_SET_QUEUE
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4270
      functionLinenumberEnd: 4272
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_SET_QUEUE
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:4271,5'
          Dst:             ofpact_put_SET_QUEUE
    - functionName:    decode_OFPAT_RAW_GROUP
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 727
      functionLinenumberEnd: 729
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_GROUP
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:728,5'
          Dst:             ofpact_put_GROUP
    - functionName:    decode_OFPAT_RAW11_SET_NW_TTL
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2250
      functionLinenumberEnd: 2252
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - char
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_SET_IP_TTL
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:2251,5'
          Dst:             ofpact_put_SET_IP_TTL
    - functionName:    decode_OFPAT_RAW_DEC_NW_TTL
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3612
      functionLinenumberEnd: 3622
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_finish_DEC_TTL
        - ofpact_put_DEC_TTL
        - ofpbuf_put
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:3617,11'
          Dst:             ofpact_put_DEC_TTL
        - Src:             'lib/ofp-actions.c:3619,5'
          Dst:             ofpbuf_put
        - Src:             'lib/ofp-actions.c:3621,5'
          Dst:             ofpact_finish_DEC_TTL
    - functionName:    decode_NXAST_RAW_DEC_TTL_CNT_IDS
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3629
      functionLinenumberEnd: 3661
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          141
      EdgeCount:       21
      CyclomaticComplexity: 6
      functionsReached:
        - is_all_zeros
        - ntohs
        - ofpact_finish_DEC_TTL
        - ofpact_put_DEC_TTL
        - ofpbuf_put
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:3634,11'
          Dst:             ofpact_put_DEC_TTL
        - Src:             'lib/ofp-actions.c:3636,26'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:3637,16'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:3639,10'
          Dst:             is_all_zeros
        - Src:             'lib/ofp-actions.c:3644,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-actions.c:3653,23'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:3654,9'
          Dst:             ofpbuf_put
        - Src:             'lib/ofp-actions.c:3658,5'
          Dst:             ofpact_finish_DEC_TTL
    - functionName:    decode_OFPAT_RAW12_SET_FIELD
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2850
      functionLinenumberEnd: 2852
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - decode_ofpat_set_field
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:2851,12'
          Dst:             decode_ofpat_set_field
    - functionName:    decode_OFPAT_RAW15_SET_FIELD
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2860
      functionLinenumberEnd: 2861
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - decode_ofpat_set_field
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:2861,12'
          Dst:             decode_ofpat_set_field
    - functionName:    decode_NXAST_RAW_REG_LOAD
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2869
      functionLinenumberEnd: 2901
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          144
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - bitwise_put
        - mf_check_dst
        - mf_vl_mff_mf_from_nxm_header
        - ntohl
        - ntohll
        - nxm_decode_n_bits
        - nxm_decode_ofs
        - ofpact_put_reg_load
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:2873,15'
          Dst:             nxm_decode_ofs
        - Src:             'lib/ofp-actions.c:2874,18'
          Dst:             nxm_decode_n_bits
        - Src:             'lib/ofp-actions.c:2875,42'
          Dst:             ntohl
        - Src:             'lib/ofp-actions.c:2875,13'
          Dst:             mf_vl_mff_mf_from_nxm_header
        - Src:             'lib/ofp-actions.c:2881,13'
          Dst:             mf_check_dst
        - Src:             'lib/ofp-actions.c:2888,28'
          Dst:             ntohll
        - Src:             'lib/ofp-actions.c:2892,35'
          Dst:             ofpact_put_reg_load
        - Src:             'lib/ofp-actions.c:2894,17'
          Dst:             ntohll
        - Src:             'lib/ofp-actions.c:2894,5'
          Dst:             bitwise_put
        - Src:             'lib/ofp-actions.c:2897,5'
          Dst:             bitwise_put
    - functionName:    decode_NXAST_RAW_REG_LOAD2
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2908
      functionLinenumberEnd: 2933
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          102
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - is_all_zeros
        - mf_vl_mff_nx_pull_entry
        - ntohs
        - ofpact_put_reg_load2
        - ofpbuf_const_initializer
        - ofpbuf_pull
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:2909,53'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:2909,23'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/ofp-actions.c:2910,5'
          Dst:             ofpbuf_pull
        - Src:             'lib/ofp-actions.c:2915,13'
          Dst:             mf_vl_mff_nx_pull_entry
        - Src:             'lib/ofp-actions.c:2921,10'
          Dst:             is_all_zeros
        - Src:             'lib/ofp-actions.c:2926,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-actions.c:2931,5'
          Dst:             ofpact_put_reg_load2
    - functionName:    decode_OFPAT_RAW15_COPY_FIELD
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2610
      functionLinenumberEnd: 2614
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          38
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - decode_copy_field__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:2611,12'
          Dst:             decode_copy_field__
    - functionName:    decode_ONFACT_RAW13_COPY_FIELD
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2622
      functionLinenumberEnd: 2626
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          38
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - decode_copy_field__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:2623,12'
          Dst:             decode_copy_field__
    - functionName:    decode_NXAST_RAW_REG_MOVE
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2634
      functionLinenumberEnd: 2664
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          137
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - is_all_zeros
        - mf_vl_mff_nx_pull_header
        - ntohs
        - nxm_reg_move_check
        - ofpact_put_REG_MOVE
        - ofpbuf_const_initializer
        - ofpbuf_pull
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:2635,36'
          Dst:             ofpact_put_REG_MOVE
        - Src:             'lib/ofp-actions.c:2639,21'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:2640,24'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:2641,21'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:2642,24'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:2644,54'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:2644,23'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/ofp-actions.c:2645,5'
          Dst:             ofpbuf_pull
        - Src:             'lib/ofp-actions.c:2647,13'
          Dst:             mf_vl_mff_nx_pull_header
        - Src:             'lib/ofp-actions.c:2653,13'
          Dst:             mf_vl_mff_nx_pull_header
        - Src:             'lib/ofp-actions.c:2659,10'
          Dst:             is_all_zeros
        - Src:             'lib/ofp-actions.c:2663,12'
          Dst:             nxm_reg_move_check
    - functionName:    decode_OFPAT_RAW15_METER
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7565
      functionLinenumberEnd: 7569
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_METER
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:7566,31'
          Dst:             ofpact_put_METER
    - functionName:    decode_NXAST_RAW_RESUBMIT
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4919
      functionLinenumberEnd: 4926
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - short
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_RESUBMIT
        - u16_to_ofp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:4922,16'
          Dst:             ofpact_put_RESUBMIT
        - Src:             'lib/ofp-actions.c:4924,25'
          Dst:             u16_to_ofp
    - functionName:    decode_NXAST_RAW_RESUBMIT_TABLE
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4933
      functionLinenumberEnd: 4945
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          87
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - ntohs
        - ofpact_put_RESUBMIT
        - u16_to_ofp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:4940,16'
          Dst:             ofpact_put_RESUBMIT
        - Src:             'lib/ofp-actions.c:4942,36'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:4942,25'
          Dst:             u16_to_ofp
    - functionName:    decode_NXAST_RAW_RESUBMIT_TABLE_CT
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4951
      functionLinenumberEnd: 4960
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - decode_NXAST_RAW_RESUBMIT_TABLE
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:4952,25'
          Dst:             decode_NXAST_RAW_RESUBMIT_TABLE
    - functionName:    decode_NXAST_RAW_SET_TUNNEL
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4111
      functionLinenumberEnd: 4115
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          32
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_SET_TUNNEL
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:4112,36'
          Dst:             ofpact_put_SET_TUNNEL
    - functionName:    decode_NXAST_RAW_SET_TUNNEL64
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4122
      functionLinenumberEnd: 4126
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_SET_TUNNEL
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:4123,36'
          Dst:             ofpact_put_SET_TUNNEL
    - functionName:    decode_NXAST_RAW_POP_QUEUE
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4307
      functionLinenumberEnd: 4309
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_POP_QUEUE
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:4308,5'
          Dst:             ofpact_put_POP_QUEUE
    - functionName:    decode_NXAST_RAW_NOTE
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5899
      functionLinenumberEnd: 5910
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          49
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohs
        - ofpact_finish_NOTE
        - ofpact_put_NOTE
        - ofpbuf_put
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:5903,14'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:5904,12'
          Dst:             ofpact_put_NOTE
        - Src:             'lib/ofp-actions.c:5906,5'
          Dst:             ofpbuf_put
        - Src:             'lib/ofp-actions.c:5908,5'
          Dst:             ofpact_finish_NOTE
    - functionName:    decode_NXAST_RAW_MULTIPATH
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5804
      functionLinenumberEnd: 5840
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         36
      ICount:          275
      EdgeCount:       46
      CyclomaticComplexity: 12
      functionsReached:
        - flow_hash_fields_valid
        - log_2_ceil
        - mf_vl_mff_mf_from_nxm_header
        - multipath_check
        - ntohl
        - ntohs
        - nxm_decode_n_bits
        - nxm_decode_ofs
        - ofpact_put_MULTIPATH
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:5805,24'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:5806,25'
          Dst:             log_2_ceil
        - Src:             'lib/ofp-actions.c:5810,10'
          Dst:             ofpact_put_MULTIPATH
        - Src:             'lib/ofp-actions.c:5811,18'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:5812,17'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:5813,21'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:5814,20'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:5815,15'
          Dst:             ntohl
        - Src:             'lib/ofp-actions.c:5816,19'
          Dst:             nxm_decode_ofs
        - Src:             'lib/ofp-actions.c:5817,22'
          Dst:             nxm_decode_n_bits
        - Src:             'lib/ofp-actions.c:5818,42'
          Dst:             ntohl
        - Src:             'lib/ofp-actions.c:5818,13'
          Dst:             mf_vl_mff_mf_from_nxm_header
        - Src:             'lib/ofp-actions.c:5824,10'
          Dst:             flow_hash_fields_valid
        - Src:             'lib/ofp-actions.c:5825,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-actions.c:5831,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-actions.c:5834,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-actions.c:5839,12'
          Dst:             multipath_check
    - functionName:    decode_NXAST_RAW_BUNDLE
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1486
      functionLinenumberEnd: 1487
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - decode_bundle
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:1487,12'
          Dst:             decode_bundle
    - functionName:    decode_NXAST_RAW_BUNDLE_LOAD
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1495
      functionLinenumberEnd: 1496
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - decode_bundle
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:1496,12'
          Dst:             decode_bundle
    - functionName:    decode_NXAST_RAW_OUTPUT_REG
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1226
      functionLinenumberEnd: 1246
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          100
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - is_all_zeros
        - mf_check_src
        - mf_vl_mff_mf_from_nxm_header
        - ntohl
        - ntohs
        - nxm_decode_n_bits
        - nxm_decode_ofs
        - ofpact_put_OUTPUT_REG
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:1230,10'
          Dst:             is_all_zeros
        - Src:             'lib/ofp-actions.c:1234,18'
          Dst:             ofpact_put_OUTPUT_REG
        - Src:             'lib/ofp-actions.c:1236,27'
          Dst:             nxm_decode_ofs
        - Src:             'lib/ofp-actions.c:1237,30'
          Dst:             nxm_decode_n_bits
        - Src:             'lib/ofp-actions.c:1238,27'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:1239,42'
          Dst:             ntohl
        - Src:             'lib/ofp-actions.c:1239,13'
          Dst:             mf_vl_mff_mf_from_nxm_header
        - Src:             'lib/ofp-actions.c:1245,12'
          Dst:             mf_check_src
    - functionName:    decode_NXAST_RAW_OUTPUT_REG2
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1253
      functionLinenumberEnd: 1277
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          107
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - is_all_zeros
        - mf_check_src
        - mf_vl_mff_nx_pull_header
        - ntohs
        - nxm_decode_n_bits
        - nxm_decode_ofs
        - ofpact_put_OUTPUT_REG
        - ofpbuf_const_initializer
        - ofpbuf_pull
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:1257,18'
          Dst:             ofpact_put_OUTPUT_REG
        - Src:             'lib/ofp-actions.c:1259,27'
          Dst:             nxm_decode_ofs
        - Src:             'lib/ofp-actions.c:1260,30'
          Dst:             nxm_decode_n_bits
        - Src:             'lib/ofp-actions.c:1261,27'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:1263,54'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:1263,23'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/ofp-actions.c:1264,5'
          Dst:             ofpbuf_pull
        - Src:             'lib/ofp-actions.c:1266,13'
          Dst:             mf_vl_mff_nx_pull_header
        - Src:             'lib/ofp-actions.c:1272,10'
          Dst:             is_all_zeros
        - Src:             'lib/ofp-actions.c:1276,12'
          Dst:             mf_check_src
    - functionName:    decode_NXAST_RAW_LEARN
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5476
      functionLinenumberEnd: 5494
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          74
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - decode_LEARN_common
        - decode_LEARN_specs
        - ntohs
        - ofpact_put_LEARN
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:5480,13'
          Dst:             ofpact_put_LEARN
        - Src:             'lib/ofp-actions.c:5482,13'
          Dst:             decode_LEARN_common
        - Src:             'lib/ofp-actions.c:5492,55'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:5492,12'
          Dst:             decode_LEARN_specs
    - functionName:    decode_NXAST_RAW_LEARN2
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5503
      functionLinenumberEnd: 5544
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          175
      EdgeCount:       26
      CyclomaticComplexity: 9
      functionsReached:
        - decode_LEARN_common
        - decode_LEARN_specs
        - ntohl
        - ntohs
        - nx_pull_header
        - ofpact_put_LEARN
        - ofpbuf_const_initializer
        - ofpbuf_pull
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:5504,53'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:5504,23'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/ofp-actions.c:5512,13'
          Dst:             ofpact_put_LEARN
        - Src:             'lib/ofp-actions.c:5513,13'
          Dst:             decode_LEARN_common
        - Src:             'lib/ofp-actions.c:5518,20'
          Dst:             ntohl
        - Src:             'lib/ofp-actions.c:5526,5'
          Dst:             ofpbuf_pull
        - Src:             'lib/ofp-actions.c:5529,17'
          Dst:             nx_pull_header
        - Src:             'lib/ofp-actions.c:5536,33'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:5542,54'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:5542,12'
          Dst:             decode_LEARN_specs
    - functionName:    decode_NXAST_RAW_EXIT
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5967
      functionLinenumberEnd: 5969
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_EXIT
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:5968,5'
          Dst:             ofpact_put_EXIT
    - functionName:    decode_NXAST_RAW_FIN_TIMEOUT
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4379
      functionLinenumberEnd: 4385
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohs
        - ofpact_put_FIN_TIMEOUT
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:4382,11'
          Dst:             ofpact_put_FIN_TIMEOUT
        - Src:             'lib/ofp-actions.c:4383,29'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:4384,29'
          Dst:             ntohs
    - functionName:    decode_NXAST_RAW_CONTROLLER
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 804
      functionLinenumberEnd: 815
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          56
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohs
        - ofpact_finish_CONTROLLER
        - ofpact_put_CONTROLLER
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:807,10'
          Dst:             ofpact_put_CONTROLLER
        - Src:             'lib/ofp-actions.c:809,19'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:810,25'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:813,5'
          Dst:             ofpact_finish_CONTROLLER
    - functionName:    decode_NXAST_RAW_CONTROLLER2
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 822
      functionLinenumberEnd: 892
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          198
      EdgeCount:       28
      CyclomaticComplexity: 6
      functionsReached:
        - is_all_zeros
        - ntohs
        - ofpact_finish_CONTROLLER
        - ofpact_put_CONTROLLER
        - ofpbuf_at_assert
        - ofpbuf_msgsize
        - ofpbuf_pull
        - ofpbuf_put
        - ofpbuf_use_const
        - ofpprop_parse_u16
        - ofpprop_parse_u32
        - ofpprop_parse_u8
        - ofpprop_pull
        - ofpprop_unknown
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-actions.c:847,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-actions.c:823,10'
          Dst:             is_all_zeros
        - Src:             'lib/ofp-actions.c:828,36'
          Dst:             ofpact_put_CONTROLLER
        - Src:             'lib/ofp-actions.c:835,40'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:835,5'
          Dst:             ofpbuf_use_const
        - Src:             'lib/ofp-actions.c:836,5'
          Dst:             ofpbuf_pull
        - Src:             'lib/ofp-actions.c:842,29'
          Dst:             ofpprop_pull
        - Src:             'lib/ofp-actions.c:849,21'
          Dst:             ofpprop_parse_u16
        - Src:             'lib/ofp-actions.c:853,21'
          Dst:             ofpprop_parse_u16
        - Src:             'lib/ofp-actions.c:858,21'
          Dst:             ofpprop_parse_u8
        - Src:             'lib/ofp-actions.c:867,42'
          Dst:             ofpbuf_msgsize
        - Src:             'lib/ofp-actions.c:867,13'
          Dst:             ofpbuf_put
        - Src:             'lib/ofp-actions.c:868,18'
          Dst:             ofpbuf_at_assert
        - Src:             'lib/ofp-actions.c:869,32'
          Dst:             ofpbuf_msgsize
        - Src:             'lib/ofp-actions.c:877,21'
          Dst:             ofpprop_parse_u32
        - Src:             'lib/ofp-actions.c:881,21'
          Dst:             ofpprop_unknown
        - Src:             'lib/ofp-actions.c:889,5'
          Dst:             ofpact_finish_CONTROLLER
    - functionName:    decode_NXAST_RAW_WRITE_METADATA
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7723
      functionLinenumberEnd: 7735
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - is_all_zeros
        - ofpact_put_WRITE_METADATA
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:7726,10'
          Dst:             is_all_zeros
        - Src:             'lib/ofp-actions.c:7730,10'
          Dst:             ofpact_put_WRITE_METADATA
    - functionName:    decode_NXAST_RAW_STACK_PUSH
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3494
      functionLinenumberEnd: 3498
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          48
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - decode_stack_action
        - nxm_stack_push_check
        - ofpact_put_STACK_PUSH
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:3495,33'
          Dst:             ofpact_put_STACK_PUSH
        - Src:             'lib/ofp-actions.c:3496,25'
          Dst:             decode_stack_action
        - Src:             'lib/ofp-actions.c:3498,28'
          Dst:             nxm_stack_push_check
    - functionName:    decode_NXAST_RAW_STACK_POP
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3506
      functionLinenumberEnd: 3510
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          48
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - decode_stack_action
        - nxm_stack_pop_check
        - ofpact_put_STACK_POP
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:3507,32'
          Dst:             ofpact_put_STACK_POP
        - Src:             'lib/ofp-actions.c:3508,25'
          Dst:             decode_stack_action
        - Src:             'lib/ofp-actions.c:3510,28'
          Dst:             nxm_stack_pop_check
    - functionName:    decode_NXAST_RAW_SAMPLE
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6215
      functionLinenumberEnd: 6235
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          106
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ntohl
        - ntohs
        - ofpact_put_SAMPLE
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:6218,14'
          Dst:             ofpact_put_SAMPLE
        - Src:             'lib/ofp-actions.c:6220,27'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:6221,32'
          Dst:             ntohl
        - Src:             'lib/ofp-actions.c:6222,30'
          Dst:             ntohl
        - Src:             'lib/ofp-actions.c:6224,29'
          Dst:             ntohl
    - functionName:    decode_NXAST_RAW_SAMPLE2
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6264
      functionLinenumberEnd: 6266
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - decode_SAMPLE2
        - ofpact_put_SAMPLE
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:6266,27'
          Dst:             ofpact_put_SAMPLE
        - Src:             'lib/ofp-actions.c:6265,12'
          Dst:             decode_SAMPLE2
    - functionName:    decode_NXAST_RAW_SAMPLE3
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6285
      functionLinenumberEnd: 6297
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          62
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - check_sample_direction
        - decode_SAMPLE2
        - is_all_zeros
        - ofpact_put_SAMPLE
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:6286,36'
          Dst:             ofpact_put_SAMPLE
        - Src:             'lib/ofp-actions.c:6289,10'
          Dst:             is_all_zeros
        - Src:             'lib/ofp-actions.c:6292,11'
          Dst:             check_sample_direction
        - Src:             'lib/ofp-actions.c:6296,12'
          Dst:             decode_SAMPLE2
    - functionName:    decode_NXAST_RAW_SAMPLE4
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6340
      functionLinenumberEnd: 6379
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          157
      EdgeCount:       16
      CyclomaticComplexity: 6
      functionsReached:
        - check_sample_direction
        - decode_sample_obs_id
        - is_all_zeros
        - ntohl
        - ntohs
        - ofpact_put_SAMPLE
        - u16_to_ofp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:6341,36'
          Dst:             ofpact_put_SAMPLE
        - Src:             'lib/ofp-actions.c:6344,10'
          Dst:             is_all_zeros
        - Src:             'lib/ofp-actions.c:6348,11'
          Dst:             check_sample_direction
        - Src:             'lib/ofp-actions.c:6354,27'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:6355,32'
          Dst:             ntohl
        - Src:             'lib/ofp-actions.c:6356,40'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:6356,29'
          Dst:             u16_to_ofp
        - Src:             'lib/ofp-actions.c:6363,11'
          Dst:             decode_sample_obs_id
        - Src:             'lib/ofp-actions.c:6373,12'
          Dst:             decode_sample_obs_id
    - functionName:    decode_NXAST_RAW_CONJUNCTION
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5678
      functionLinenumberEnd: 5686
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          75
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - add_conjunction
        - ntohl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:5683,30'
          Dst:             ntohl
        - Src:             'lib/ofp-actions.c:5683,9'
          Dst:             add_conjunction
    - functionName:    decode_NXAST_RAW_CT
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6828
      functionLinenumberEnd: 6883
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         35
      ICount:          271
      EdgeCount:       46
      CyclomaticComplexity: 13
      functionsReached:
        - decode_ct_zone
        - ntohs
        - ofpact_end
        - ofpact_finish_CT
        - ofpact_get_NAT
        - ofpact_next
        - ofpact_put_CT
        - ofpacts_pull
        - ofpacts_pull_openflow_actions__
        - ofpbuf_const_initializer
        - ofpbuf_pull
        - ofpbuf_push_uninit
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:6829,30'
          Dst:             ofpacts_pull
        - Src:             'lib/ofp-actions.c:6830,42'
          Dst:             ofpact_put_CT
        - Src:             'lib/ofp-actions.c:6833,24'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:6840,13'
          Dst:             decode_ct_zone
        - Src:             'lib/ofp-actions.c:6845,22'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:6847,5'
          Dst:             ofpbuf_pull
        - Src:             'lib/ofp-actions.c:6850,18'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:6849,30'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/ofp-actions.c:6851,13'
          Dst:             ofpacts_pull_openflow_actions__
        - Src:             'lib/ofp-actions.c:6860,17'
          Dst:             ofpbuf_push_uninit
        - Src:             'lib/ofp-actions.c:6862,5'
          Dst:             ofpact_finish_CT
        - Src:             'lib/ofp-actions.c:6869,9'
          Dst:             ofpact_end
        - Src:             'lib/ofp-actions.c:6870,42'
          Dst:             ofpact_get_NAT
        - Src:             'lib/ofp-actions.c:6871,20'
          Dst:             ofpact_get_NAT
        - Src:             'lib/ofp-actions.c:6872,17'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-actions.c:6869,9'
          Dst:             ofpact_next
        - Src:             'lib/ofp-actions.c:6881,5'
          Dst:             ofpbuf_push_uninit
    - functionName:    decode_NXAST_RAW_NAT
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7207
      functionLinenumberEnd: 7302
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         106
      ICount:          621
      EdgeCount:       146
      CyclomaticComplexity: 42
      functionsReached:
        - ipv6_mask_is_any
        - memcmp
        - ntohl
        - ntohs
        - ofpact_put_NAT
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:7209,30'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:7211,20'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:7213,11'
          Dst:             ofpact_put_NAT
        - Src:             'lib/ofp-actions.c:7214,18'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:7248,17'
          Dst:             ntohl
        - Src:             'lib/ofp-actions.c:7249,19'
          Dst:             ntohl
        - Src:             'lib/ofp-actions.c:7258,16'
          Dst:             ipv6_mask_is_any
        - Src:             'lib/ofp-actions.c:7269,17'
          Dst:             memcmp
        - Src:             'lib/ofp-actions.c:7287,32'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:7292,36'
          Dst:             ntohs
    - functionName:    decode_NXAST_RAW_OUTPUT_TRUNC
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7505
      functionLinenumberEnd: 7516
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          57
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ntohl
        - ntohs
        - ofpact_put_OUTPUT_TRUNC
        - u16_to_ofp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:7508,20'
          Dst:             ofpact_put_OUTPUT_TRUNC
        - Src:             'lib/ofp-actions.c:7509,29'
          Dst:             ntohl
        - Src:             'lib/ofp-actions.c:7510,37'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:7510,26'
          Dst:             u16_to_ofp
    - functionName:    ofpact_put_reg_load2
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3435
      functionLinenumberEnd: 3440
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          32
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put_set_field
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:3436,35'
          Dst:             ofpact_put_set_field
    - functionName:    ofpact_decode_raw
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9850
      functionLinenumberEnd: 9897
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         36
      ICount:          215
      EdgeCount:       46
      CyclomaticComplexity: 12
      functionsReached:
        - hmap_first_with_hash
        - hmap_next_with_hash
        - htons
        - ntohl
        - ntohs
        - ofpact_decode_hmap
        - ofpact_hdrs_equal
        - ofpact_hdrs_hash
        - ofputil_version_to_string
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:9860,22'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:9862,23'
          Dst:             ntohl
        - Src:             'lib/ofp-actions.c:9871,25'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:9873,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-actions.c:9879,21'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:9883,5'
          Dst:             ofpact_decode_hmap
        - Src:             'lib/ofp-actions.c:9883,5'
          Dst:             ofpact_hdrs_hash
        - Src:             'lib/ofp-actions.c:9883,5'
          Dst:             hmap_first_with_hash
        - Src:             'lib/ofp-actions.c:9885,13'
          Dst:             ofpact_hdrs_equal
        - Src:             'lib/ofp-actions.c:9883,5'
          Dst:             hmap_next_with_hash
        - Src:             'lib/ofp-actions.c:9891,5'
          Dst:             ofputil_version_to_string
        - Src:             'lib/ofp-actions.c:9891,5'
          Dst:             vlog_rate_limit
    - functionName:    ofpact_decode_hmap
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9806
      functionLinenumberEnd: 9822
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         10
      ICount:          44
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - hmap_init
        - hmap_insert_at
        - ofpact_hdrs_hash
        - ovsthread_once_done
        - ovsthread_once_start
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:9810,9'
          Dst:             ovsthread_once_start
        - Src:             'lib/ofp-actions.c:9813,9'
          Dst:             hmap_init
        - Src:             'lib/ofp-actions.c:9817,13'
          Dst:             ofpact_hdrs_hash
        - Src:             'lib/ofp-actions.c:9817,13'
          Dst:             hmap_insert_at
        - Src:             'lib/ofp-actions.c:9820,9'
          Dst:             ovsthread_once_done
    - functionName:    ofpact_hdrs_hash
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9797
      functionLinenumberEnd: 9799
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_2words
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:9798,12'
          Dst:             hash_2words
    - functionName:    ofpact_hdrs_equal
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9789
      functionLinenumberEnd: 9792
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    instruction_next
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8543
      functionLinenumberEnd: 8545
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:8545,33'
          Dst:             ntohs
    - functionName:    decode_openflow11_instruction
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8569
      functionLinenumberEnd: 8592
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         60
      ICount:          238
      EdgeCount:       77
      CyclomaticComplexity: 19
      functionsReached:
        - ntohs
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-actions.c:8572,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-actions.c:8570,20'
          Dst:             ntohs
    - functionName:    instruction_is_valid
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8551
      functionLinenumberEnd: 8555
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          51
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - ntohs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:8552,20'
          Dst:             ntohs
    - functionName:    ofpacts_parse_instructions
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9707
      functionLinenumberEnd: 9708
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpacts_parse_copy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:9708,12'
          Dst:             ofpacts_parse_copy
    - functionName:    ofpacts_parse_actions
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9696
      functionLinenumberEnd: 9697
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpacts_parse_copy
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:9697,12'
          Dst:             ofpacts_parse_copy
    - functionName:    ofpacts_get_meter
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9442
      functionLinenumberEnd: 9458
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          72
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - ofpact_end
        - ofpact_get_METER
        - ofpact_next
        - ovs_instruction_type_from_ofpact_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:9445,5'
          Dst:             ofpact_end
        - Src:             'lib/ofp-actions.c:9447,20'
          Dst:             ofpact_get_METER
        - Src:             'lib/ofp-actions.c:9451,15'
          Dst:             ovs_instruction_type_from_ofpact_type
        - Src:             'lib/ofp-actions.c:9445,5'
          Dst:             ofpact_next
    - functionName:    ofpacts_equal_stringwise
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9418
      functionLinenumberEnd: 9432
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          56
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_cstr
        - ds_destroy
        - ofpacts_format
        - strcmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:9421,5'
          Dst:             ofpacts_format
        - Src:             'lib/ofp-actions.c:9425,5'
          Dst:             ofpacts_format
        - Src:             'lib/ofp-actions.c:9427,26'
          Dst:             ds_cstr
        - Src:             'lib/ofp-actions.c:9427,41'
          Dst:             ds_cstr
        - Src:             'lib/ofp-actions.c:9427,19'
          Dst:             strcmp
        - Src:             'lib/ofp-actions.c:9429,5'
          Dst:             ds_destroy
        - Src:             'lib/ofp-actions.c:9430,5'
          Dst:             ds_destroy
    - functionName:    ofpacts_equal
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9407
      functionLinenumberEnd: 9408
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          50
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - memcmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:9408,42'
          Dst:             memcmp
    - functionName:    ofpacts_output_to_group
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9389
      functionLinenumberEnd: 9400
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          71
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - ofpact_end
        - ofpact_get_GROUP
        - ofpact_next_flattened
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:9392,5'
          Dst:             ofpact_end
        - Src:             'lib/ofp-actions.c:9394,16'
          Dst:             ofpact_get_GROUP
        - Src:             'lib/ofp-actions.c:9392,5'
          Dst:             ofpact_next_flattened
    - functionName:    ofpact_next_flattened
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 452
      functionLinenumberEnd: 523
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         65
      ICount:          282
      EdgeCount:       128
      CyclomaticComplexity: 65
      functionsReached:
        - abort
        - ofpact_get_CLONE
        - ofpact_get_CT
        - ofpact_get_WRITE_ACTIONS
        - ofpact_next
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/ofp-actions.c:453,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-actions.c:510,16'
          Dst:             ofpact_next
        - Src:             'lib/ofp-actions.c:513,16'
          Dst:             ofpact_get_CLONE
        - Src:             'lib/ofp-actions.c:516,16'
          Dst:             ofpact_get_CT
        - Src:             'lib/ofp-actions.c:519,16'
          Dst:             ofpact_get_WRITE_ACTIONS
        - Src:             'lib/ofp-actions.c:522,5'
          Dst:             abort
    - functionName:    ofpact_outputs_to_port
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9297
      functionLinenumberEnd: 9365
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         66
      ICount:          289
      EdgeCount:       131
      CyclomaticComplexity: 67
      functionsReached:
        - ofpact_get_ENQUEUE
        - ofpact_get_OUTPUT
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-actions.c:9298,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-actions.c:9300,16'
          Dst:             ofpact_get_OUTPUT
        - Src:             'lib/ofp-actions.c:9302,16'
          Dst:             ofpact_get_ENQUEUE
    - functionName:    ofpacts_output_to_port
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9372
      functionLinenumberEnd: 9382
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          51
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ofpact_end
        - ofpact_next_flattened
        - ofpact_outputs_to_port
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:9375,5'
          Dst:             ofpact_end
        - Src:             'lib/ofp-actions.c:9376,13'
          Dst:             ofpact_outputs_to_port
        - Src:             'lib/ofp-actions.c:9375,5'
          Dst:             ofpact_next_flattened
    - functionName:    zero_rightmost_1bit
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 390
      functionLinenumberEnd: 391
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rightmost_1bit_idx
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 398
      functionLinenumberEnd: 399
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ctz64
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.h:399,12'
          Dst:             ctz64
    - functionName:    ofpact_bitmap_format
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9281
      functionLinenumberEnd: 9292
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          48
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ds_chomp
        - ds_put_cstr
        - ds_put_format
        - ofpact_name
        - rightmost_1bit_idx
        - zero_rightmost_1bit
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:9283,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-actions.c:9287,39'
          Dst:             rightmost_1bit_idx
        - Src:             'lib/ofp-actions.c:9287,27'
          Dst:             ofpact_name
        - Src:             'lib/ofp-actions.c:9286,13'
          Dst:             ds_put_format
        - Src:             'lib/ofp-actions.c:9288,30'
          Dst:             zero_rightmost_1bit
        - Src:             'lib/ofp-actions.c:9290,9'
          Dst:             ds_chomp
    - functionName:    ofpact_bitmap_from_openflow
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9265
      functionLinenumberEnd: 9274
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          67
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - get_ofpact_map
        - htonl
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:9269,14'
          Dst:             get_ofpact_map
        - Src:             'lib/ofp-actions.c:9270,28'
          Dst:             htonl
    - functionName:    get_ofpact_map
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9158
      functionLinenumberEnd: 9241
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          45
      EdgeCount:       20
      CyclomaticComplexity: 11
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/ofp-actions.c:9227,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    ofpact_bitmap_to_openflow
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9248
      functionLinenumberEnd: 9257
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          67
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - get_ofpact_map
        - htonl
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:9252,14'
          Dst:             get_ofpact_map
        - Src:             'lib/ofp-actions.c:9257,12'
          Dst:             htonl
    - functionName:    instruction_put_OFPIT11_APPLY_ACTIONS
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 410
      functionLinenumberEnd: 410
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - instruction_init_OFPIT11_APPLY_ACTIONS
        - ofpbuf_put_uninit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:410,1'
          Dst:             ofpbuf_put_uninit
        - Src:             'lib/ofp-actions.c:410,1'
          Dst:             instruction_init_OFPIT11_APPLY_ACTIONS
    - functionName:    ofpact_is_apply_actions
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9107
      functionLinenumberEnd: 9109
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_instruction_type_from_ofpact_type
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:9108,13'
          Dst:             ovs_instruction_type_from_ofpact_type
    - functionName:    ofpacts_put_openflow_instructions
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9117
      functionLinenumberEnd: 9143
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          114
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - encode_ofpact
        - instruction_put_OFPIT11_APPLY_ACTIONS
        - ofpact_end
        - ofpact_is_apply_actions
        - ofpact_next
        - ofpacts_put_openflow_actions
        - ofpacts_update_instruction_actions
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:9118,32'
          Dst:             ofpact_end
        - Src:             'lib/ofp-actions.c:9122,9'
          Dst:             ofpacts_put_openflow_actions
        - Src:             'lib/ofp-actions.c:9129,13'
          Dst:             ofpact_is_apply_actions
        - Src:             'lib/ofp-actions.c:9132,13'
          Dst:             instruction_put_OFPIT11_APPLY_ACTIONS
        - Src:             'lib/ofp-actions.c:9134,17'
          Dst:             encode_ofpact
        - Src:             'lib/ofp-actions.c:9135,21'
          Dst:             ofpact_next
        - Src:             'lib/ofp-actions.c:9136,33'
          Dst:             ofpact_is_apply_actions
        - Src:             'lib/ofp-actions.c:9137,13'
          Dst:             ofpacts_update_instruction_actions
        - Src:             'lib/ofp-actions.c:9139,13'
          Dst:             encode_ofpact
        - Src:             'lib/ofp-actions.c:9140,17'
          Dst:             ofpact_next
    - functionName:    ofpacts_check_consistency
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8886
      functionLinenumberEnd: 8892
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          56
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ofpacts_check
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:8887,25'
          Dst:             ofpacts_check
    - functionName:    instruction_get_OFPIT11_GOTO_TABLE
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 410
      functionLinenumberEnd: 410
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htons
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:410,1'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:410,1'
          Dst:             ovs_ignore
    - functionName:    ofpacts_decode_for_action_set
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8326
      functionLinenumberEnd: 8346
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          113
      EdgeCount:       21
      CyclomaticComplexity: 6
      functionsReached:
        - ofpact_end
        - ofpact_is_allowed_in_actions_set
        - ofpact_next
        - ofpacts_decode
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:8331,13'
          Dst:             ofpacts_decode
        - Src:             'lib/ofp-actions.c:8338,5'
          Dst:             ofpact_end
        - Src:             'lib/ofp-actions.c:8338,5'
          Dst:             ofpact_end
        - Src:             'lib/ofp-actions.c:8338,5'
          Dst:             ofpact_end
        - Src:             'lib/ofp-actions.c:8339,14'
          Dst:             ofpact_is_allowed_in_actions_set
        - Src:             'lib/ofp-actions.c:8340,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-actions.c:8338,5'
          Dst:             ofpact_next
    - functionName:    instruction_get_OFPIT11_CLEAR_ACTIONS
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 410
      functionLinenumberEnd: 410
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htons
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:410,1'
          Dst:             htons
        - Src:             'lib/ofp-actions.c:410,1'
          Dst:             ovs_ignore
    - functionName:    get_actions_from_instruction
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8635
      functionLinenumberEnd: 8638
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohs
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:8637,20'
          Dst:             ntohs
    - functionName:    decode_openflow11_instructions
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8598
      functionLinenumberEnd: 8629
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          155
      EdgeCount:       35
      CyclomaticComplexity: 10
      functionsReached:
        - decode_openflow11_instruction
        - instruction_is_valid
        - instruction_next
        - ntohs
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:8603,5'
          Dst:             instruction_is_valid
        - Src:             'lib/ofp-actions.c:8607,17'
          Dst:             decode_openflow11_instruction
        - Src:             'lib/ofp-actions.c:8603,5'
          Dst:             ntohs
        - Src:             'lib/ofp-actions.c:8603,5'
          Dst:             instruction_next
        - Src:             'lib/ofp-actions.c:8624,9'
          Dst:             vlog_rate_limit
    - functionName:    ofpacts_pull_openflow_instructions
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8647
      functionLinenumberEnd: 8759
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         48
      ICount:          358
      EdgeCount:       63
      CyclomaticComplexity: 17
      functionsReached:
        - decode_openflow11_instructions
        - get_actions_from_instruction
        - instruction_get_OFPIT11_CLEAR_ACTIONS
        - instruction_get_OFPIT11_GOTO_TABLE
        - ntohl
        - ofpact_put
        - ofpact_put_CLEAR_ACTIONS
        - ofpact_put_GOTO_TABLE
        - ofpact_put_METER
        - ofpact_put_WRITE_METADATA
        - ofpacts_decode
        - ofpacts_decode_for_action_set
        - ofpacts_pull_openflow_actions__
        - ofpacts_verify
        - ofpbuf_at_assert
        - ofpbuf_clear
        - ofpbuf_try_pull
        - vlog_rate_limit
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:8652,5'
          Dst:             ofpbuf_clear
        - Src:             'lib/ofp-actions.c:8654,16'
          Dst:             ofpacts_pull_openflow_actions__
        - Src:             'lib/ofp-actions.c:8662,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-actions.c:8669,20'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/ofp-actions.c:8671,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-actions.c:8678,13'
          Dst:             decode_openflow11_instructions
        - Src:             'lib/ofp-actions.c:8692,14'
          Dst:             ofpact_put_METER
        - Src:             'lib/ofp-actions.c:8693,24'
          Dst:             ntohl
        - Src:             'lib/ofp-actions.c:8700,9'
          Dst:             get_actions_from_instruction
        - Src:             'lib/ofp-actions.c:8702,17'
          Dst:             ofpacts_decode
        - Src:             'lib/ofp-actions.c:8709,9'
          Dst:             instruction_get_OFPIT11_CLEAR_ACTIONS
        - Src:             'lib/ofp-actions.c:8711,9'
          Dst:             ofpact_put_CLEAR_ACTIONS
        - Src:             'lib/ofp-actions.c:8718,9'
          Dst:             ofpact_put
        - Src:             'lib/ofp-actions.c:8720,9'
          Dst:             get_actions_from_instruction
        - Src:             'lib/ofp-actions.c:8722,17'
          Dst:             ofpacts_decode_for_action_set
        - Src:             'lib/ofp-actions.c:8728,14'
          Dst:             ofpbuf_at_assert
        - Src:             'lib/ofp-actions.c:8738,14'
          Dst:             ofpact_put_WRITE_METADATA
        - Src:             'lib/ofp-actions.c:8746,16'
          Dst:             instruction_get_OFPIT11_GOTO_TABLE
        - Src:             'lib/ofp-actions.c:8748,15'
          Dst:             ofpact_put_GOTO_TABLE
        - Src:             'lib/ofp-actions.c:8752,13'
          Dst:             ofpacts_verify
        - Src:             'lib/ofp-actions.c:8756,9'
          Dst:             ofpbuf_clear
    - functionName:    ovsinst_bitmap_from_openflow
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8529
      functionLinenumberEnd: 8538
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          65
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - get_ovsinst_map
        - htonl
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:8533,14'
          Dst:             get_ovsinst_map
        - Src:             'lib/ofp-actions.c:8534,28'
          Dst:             htonl
    - functionName:    get_ovsinst_map
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8482
      functionLinenumberEnd: 8504
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          24
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsinst_bitmap_to_openflow
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8512
      functionLinenumberEnd: 8521
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          65
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - get_ovsinst_map
        - htonl
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:8516,14'
          Dst:             get_ovsinst_map
        - Src:             'lib/ofp-actions.c:8521,12'
          Dst:             htonl
    - functionName:    ovs_instruction_type_from_inst_type
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8458
      functionLinenumberEnd: 8471
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          62
      EdgeCount:       16
      CyclomaticComplexity: 9
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-actions.c:8459,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    ovs_instruction_type_from_name
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8369
      functionLinenumberEnd: 8377
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          50
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - strcasecmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:8372,14'
          Dst:             strcasecmp
    - functionName:    ofpact_copy
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8133
      functionLinenumberEnd: 8135
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpbuf_put
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:8134,5'
          Dst:             ofpbuf_put
    - functionName:    ofpacts_execute_action_set
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8281
      functionLinenumberEnd: 8317
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         29
      ICount:          164
      EdgeCount:       37
      CyclomaticComplexity: 10
      functionsReached:
        - action_set_classify
        - ofpact_copy
        - ofpact_end
        - ofpact_next
        - ofpbuf_init
        - ofpbuf_put
        - ofpbuf_uninit
        - ovs_ignore
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:8285,5'
          Dst:             ofpbuf_init
        - Src:             'lib/ofp-actions.c:8291,5'
          Dst:             ofpact_end
        - Src:             'lib/ofp-actions.c:8292,21'
          Dst:             action_set_classify
        - Src:             'lib/ofp-actions.c:8301,13'
          Dst:             ofpact_copy
        - Src:             'lib/ofp-actions.c:8303,13'
          Dst:             ovs_ignore
        - Src:             'lib/ofp-actions.c:8291,5'
          Dst:             ofpact_next
        - Src:             'lib/ofp-actions.c:8310,17'
          Dst:             ofpact_copy
        - Src:             'lib/ofp-actions.c:8313,9'
          Dst:             ofpbuf_put
        - Src:             'lib/ofp-actions.c:8314,9'
          Dst:             ofpact_copy
        - Src:             'lib/ofp-actions.c:8316,5'
          Dst:             ofpbuf_uninit
    - functionName:    ofpacts_pull_openflow_actions
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8121
      functionLinenumberEnd: 8125
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpacts_pull_openflow_actions__
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-actions.c:8122,12'
          Dst:             ofpacts_pull_openflow_actions__
    - functionName:    ofpact_dummy_enable
      functionSourceFile: '/src/openvswitch/lib/ofp-actions.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6571
      functionLinenumberEnd: 6573
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    init_this_module_ofp_bundle
      functionSourceFile: '/src/openvswitch/lib/ofp-bundle.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27
      functionLinenumberEnd: 27
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-bundle.c:27,1'
          Dst:             vlog_insert_module
    - functionName:    ovs_list_init
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_list_insert
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 169
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofputil_format_bundle_add
      functionSourceFile: '/src/openvswitch/lib/ofp-bundle.c'
      linkageType:     InternalLinkage
      functionLinenumber: 492
      functionLinenumberEnd: 502
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          57
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - bundle_flags_to_name
        - ds_put_and_free_cstr
        - ds_put_char
        - ds_put_cstr
        - ds_put_format
        - ntohs
        - ofp_print_bit_names
        - ofp_to_string
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-bundle.c:493,5'
          Dst:             ds_put_char
        - Src:             'lib/ofp-bundle.c:494,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-bundle.c:495,5'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-bundle.c:496,5'
          Dst:             ofp_print_bit_names
        - Src:             'lib/ofp-bundle.c:496,5'
          Dst:             bundle_flags_to_name
        - Src:             'lib/ofp-bundle.c:498,5'
          Dst:             ds_put_char
        - Src:             'lib/ofp-bundle.c:499,42'
          Dst:             ntohs
        - Src:             'lib/ofp-bundle.c:499,17'
          Dst:             ofp_to_string
        - Src:             'lib/ofp-bundle.c:501,5'
          Dst:             ds_put_and_free_cstr
    - functionName:    ds_put_char
      functionSourceFile: '/src/openvswitch/./include/openvswitch/dynamic-string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_char__
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/dynamic-string.h:99,9'
          Dst:             ds_put_char__
    - functionName:    bundle_flags_to_name
      functionSourceFile: '/src/openvswitch/lib/ofp-bundle.c'
      linkageType:     InternalLinkage
      functionLinenumber: 133
      functionLinenumberEnd: 142
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         5
      ICount:          27
      EdgeCount:       8
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/ofp-bundle.c:134,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    ovs_list_moved
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 229
      functionLinenumberEnd: 235
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_list_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/list.h:231,9'
          Dst:             ovs_list_init
    - functionName:    parse_ofp_bundle_file
      functionSourceFile: '/src/openvswitch/lib/ofp-bundle.c'
      linkageType:     InternalLinkage
      functionLinenumber: 393
      functionLinenumberEnd: 484
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         43
      ICount:          348
      EdgeCount:       57
      CyclomaticComplexity: 16
      functionsReached:
        - __errno_location
        - ds_cstr
        - ds_destroy
        - ds_get_preprocessed_line
        - ds_init
        - fclose
        - fopen
        - ofputil_free_bundle_msgs
        - ovs_list_moved
        - ovs_strerror
        - parse_ofp_flow_mod_str
        - parse_ofp_group_mod_str
        - parse_ofp_packet_out_str
        - strcmp
        - strcspn
        - strncmp
        - strspn
        - x2nrealloc
        - xasprintf
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-bundle.c:405,15'
          Dst:             strcmp
        - Src:             'lib/ofp-bundle.c:405,48'
          Dst:             fopen
        - Src:             'lib/ofp-bundle.c:408,50'
          Dst:             __errno_location
        - Src:             'lib/ofp-bundle.c:408,37'
          Dst:             ovs_strerror
        - Src:             'lib/ofp-bundle.c:407,16'
          Dst:             xasprintf
        - Src:             'lib/ofp-bundle.c:412,5'
          Dst:             ds_init
        - Src:             'lib/ofp-bundle.c:414,13'
          Dst:             ds_get_preprocessed_line
        - Src:             'lib/ofp-bundle.c:416,19'
          Dst:             ds_cstr
        - Src:             'lib/ofp-bundle.c:422,23'
          Dst:             x2nrealloc
        - Src:             'lib/ofp-bundle.c:425,21'
          Dst:             ovs_list_moved
        - Src:             'lib/ofp-bundle.c:432,14'
          Dst:             strspn
        - Src:             'lib/ofp-bundle.c:433,15'
          Dst:             strcspn
        - Src:             'lib/ofp-bundle.c:435,14'
          Dst:             strncmp
        - Src:             'lib/ofp-bundle.c:437,21'
          Dst:             parse_ofp_flow_mod_str
        - Src:             'lib/ofp-bundle.c:443,21'
          Dst:             strncmp
        - Src:             'lib/ofp-bundle.c:445,21'
          Dst:             parse_ofp_group_mod_str
        - Src:             'lib/ofp-bundle.c:451,21'
          Dst:             strncmp
        - Src:             'lib/ofp-bundle.c:453,21'
          Dst:             parse_ofp_packet_out_str
        - Src:             'lib/ofp-bundle.c:460,21'
          Dst:             xasprintf
        - Src:             'lib/ofp-bundle.c:469,5'
          Dst:             ds_destroy
        - Src:             'lib/ofp-bundle.c:471,9'
          Dst:             fclose
        - Src:             'lib/ofp-bundle.c:475,25'
          Dst:             xasprintf
        - Src:             'lib/ofp-bundle.c:478,9'
          Dst:             ofputil_free_bundle_msgs
    - functionName:    ofputil_free_bundle_msgs
      functionSourceFile: '/src/openvswitch/lib/ofp-bundle.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32
      functionLinenumberEnd: 51
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          92
      EdgeCount:       12
      CyclomaticComplexity: 2
      functionsReached:
        - minimatch_destroy
        - ofputil_uninit_group_mod
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-bundle.c:34,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-bundle.c:37,13'
          Dst:             minimatch_destroy
        - Src:             'lib/ofp-bundle.c:40,13'
          Dst:             ofputil_uninit_group_mod
    - functionName:    ofputil_encode_bundle_add
      functionSourceFile: '/src/openvswitch/lib/ofp-bundle.c'
      linkageType:     InternalLinkage
      functionLinenumber: 361
      functionLinenumberEnd: 377
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          70
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
        - htons
        - ntohs
        - ofpbuf_put
        - ofpbuf_put_zeros
        - ofpmsg_update_length
        - ofpraw_alloc_xid
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-bundle.c:369,47'
          Dst:             ntohs
        - Src:             'lib/ofp-bundle.c:366,15'
          Dst:             ofpraw_alloc_xid
        - Src:             'lib/ofp-bundle.c:370,9'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-bundle.c:372,20'
          Dst:             htonl
        - Src:             'lib/ofp-bundle.c:373,16'
          Dst:             htons
        - Src:             'lib/ofp-bundle.c:374,35'
          Dst:             ntohs
        - Src:             'lib/ofp-bundle.c:374,5'
          Dst:             ofpbuf_put
        - Src:             'lib/ofp-bundle.c:376,5'
          Dst:             ofpmsg_update_length
    - functionName:    ofputil_is_bundlable
      functionSourceFile: '/src/openvswitch/lib/ofp-bundle.c'
      linkageType:     InternalLinkage
      functionLinenumber: 205
      functionLinenumberEnd: 300
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         88
      ICount:          349
      EdgeCount:       174
      CyclomaticComplexity: 88
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-bundle.c:206,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    ofpbuf_pull
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 258
      functionLinenumberEnd: 269
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          64
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:259,5'
          Dst:             ovs_ignore
    - functionName:    ofputil_decode_bundle_add
      functionSourceFile: '/src/openvswitch/lib/ofp-bundle.c'
      linkageType:     InternalLinkage
      functionLinenumber: 306
      functionLinenumberEnd: 356
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         35
      ICount:          226
      EdgeCount:       46
      CyclomaticComplexity: 13
      functionsReached:
        - ntohl
        - ntohs
        - ofpbuf_const_initializer
        - ofpbuf_pull
        - ofperr_get_name
        - ofpraw_pull_assert
        - ofptype_decode
        - ofptype_get_name
        - ofputil_is_bundlable
        - ovs_ignore
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-bundle.c:307,52'
          Dst:             ntohs
        - Src:             'lib/ofp-bundle.c:307,23'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/ofp-bundle.c:310,23'
          Dst:             ofpraw_pull_assert
        - Src:             'lib/ofp-bundle.c:311,5'
          Dst:             ovs_ignore
        - Src:             'lib/ofp-bundle.c:315,45'
          Dst:             ofpbuf_pull
        - Src:             'lib/ofp-bundle.c:316,22'
          Dst:             ntohl
        - Src:             'lib/ofp-bundle.c:317,18'
          Dst:             ntohs
        - Src:             'lib/ofp-bundle.c:327,24'
          Dst:             ntohs
        - Src:             'lib/ofp-bundle.c:337,25'
          Dst:             ofptype_decode
        - Src:             'lib/ofp-bundle.c:340,9'
          Dst:             ofperr_get_name
        - Src:             'lib/ofp-bundle.c:340,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-bundle.c:345,10'
          Dst:             ofputil_is_bundlable
        - Src:             'lib/ofp-bundle.c:347,9'
          Dst:             ofptype_get_name
        - Src:             'lib/ofp-bundle.c:347,9'
          Dst:             vlog_rate_limit
    - functionName:    ofpbuf_const_initializer
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 97
      functionLinenumberEnd: 105
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          30
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofputil_encode_bundle_ctrl_reply
      functionSourceFile: '/src/openvswitch/lib/ofp-bundle.c'
      linkageType:     InternalLinkage
      functionLinenumber: 185
      functionLinenumberEnd: 198
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          53
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
        - htons
        - ofpbuf_put_zeros
        - ofpraw_alloc_reply
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-bundle.c:189,11'
          Dst:             ofpraw_alloc_reply
        - Src:             'lib/ofp-bundle.c:192,9'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-bundle.c:194,20'
          Dst:             htonl
        - Src:             'lib/ofp-bundle.c:195,15'
          Dst:             htons
        - Src:             'lib/ofp-bundle.c:196,16'
          Dst:             htons
    - functionName:    ofputil_format_bundle_ctrl_request
      functionSourceFile: '/src/openvswitch/lib/ofp-bundle.c'
      linkageType:     InternalLinkage
      functionLinenumber: 147
      functionLinenumberEnd: 179
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          89
      EdgeCount:       25
      CyclomaticComplexity: 14
      functionsReached:
        - bundle_flags_to_name
        - ds_put_char
        - ds_put_cstr
        - ds_put_format
        - ofp_print_bit_names
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-bundle.c:150,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-bundle.c:148,5'
          Dst:             ds_put_char
        - Src:             'lib/ofp-bundle.c:149,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-bundle.c:152,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-bundle.c:155,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-bundle.c:158,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-bundle.c:161,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-bundle.c:164,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-bundle.c:167,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-bundle.c:170,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-bundle.c:173,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-bundle.c:177,5'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-bundle.c:178,5'
          Dst:             ofp_print_bit_names
        - Src:             'lib/ofp-bundle.c:178,5'
          Dst:             bundle_flags_to_name
    - functionName:    ofputil_encode_bundle_ctrl_request
      functionSourceFile: '/src/openvswitch/lib/ofp-bundle.c'
      linkageType:     InternalLinkage
      functionLinenumber: 102
      functionLinenumberEnd: 128
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          90
      EdgeCount:       23
      CyclomaticComplexity: 12
      functionsReached:
        - abort
        - htonl
        - htons
        - ofpbuf_put_zeros
        - ofpraw_alloc
        - ovs_fatal
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib/ofp-bundle.c:106,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-bundle.c:110,9'
          Dst:             ovs_fatal
        - Src:             'lib/ofp-bundle.c:115,19'
          Dst:             ofpraw_alloc
        - Src:             'lib/ofp-bundle.c:118,13'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-bundle.c:120,24'
          Dst:             htonl
        - Src:             'lib/ofp-bundle.c:121,19'
          Dst:             htons
        - Src:             'lib/ofp-bundle.c:122,20'
          Dst:             htons
        - Src:             'lib/ofp-bundle.c:125,9'
          Dst:             abort
    - functionName:    ofputil_decode_bundle_ctrl
      functionSourceFile: '/src/openvswitch/lib/ofp-bundle.c'
      linkageType:     InternalLinkage
      functionLinenumber: 85
      functionLinenumberEnd: 96
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          68
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ntohl
        - ntohs
        - ofpbuf_const_initializer
        - ofpraw_pull_assert
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-bundle.c:86,52'
          Dst:             ntohs
        - Src:             'lib/ofp-bundle.c:86,23'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/ofp-bundle.c:87,23'
          Dst:             ofpraw_pull_assert
        - Src:             'lib/ofp-bundle.c:88,5'
          Dst:             ovs_ignore
        - Src:             'lib/ofp-bundle.c:92,22'
          Dst:             ntohl
        - Src:             'lib/ofp-bundle.c:93,17'
          Dst:             ntohs
        - Src:             'lib/ofp-bundle.c:94,18'
          Dst:             ntohs
    - functionName:    ovs_list_push_back
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 204
      functionLinenumberEnd: 206
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_list_insert
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/list.h:205,5'
          Dst:             ovs_list_insert
    - functionName:    ofputil_encode_bundle_msgs
      functionSourceFile: '/src/openvswitch/lib/ofp-bundle.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          104
      EdgeCount:       16
      CyclomaticComplexity: 3
      functionsReached:
        - ofputil_encode_flow_mod
        - ofputil_encode_group_mod
        - ofputil_encode_packet_out
        - ofputil_protocol_to_ofp_version
        - ovs_list_push_back
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib/ofp-bundle.c:63,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-bundle.c:58,32'
          Dst:             ofputil_protocol_to_ofp_version
        - Src:             'lib/ofp-bundle.c:65,23'
          Dst:             ofputil_encode_flow_mod
        - Src:             'lib/ofp-bundle.c:68,23'
          Dst:             ofputil_encode_group_mod
        - Src:             'lib/ofp-bundle.c:71,23'
          Dst:             ofputil_encode_packet_out
        - Src:             'lib/ofp-bundle.c:77,13'
          Dst:             ovs_list_push_back
    - functionName:    init_this_module_ofp_connection
      functionSourceFile: '/src/openvswitch/lib/ofp-connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32
      functionLinenumberEnd: 32
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-connection.c:32,1'
          Dst:             vlog_insert_module
    - functionName:    ofp_requestforward_reason_to_string
      functionSourceFile: '/src/openvswitch/lib/ofp-connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 619
      functionLinenumberEnd: 632
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          48
      EdgeCount:       17
      CyclomaticComplexity: 10
      functionsReached:
        - snprintf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-connection.c:620,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-connection.c:629,9'
          Dst:             snprintf
    - functionName:    ofp_role_reason_to_string
      functionSourceFile: '/src/openvswitch/lib/ofp-connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 595
      functionLinenumberEnd: 611
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          53
      EdgeCount:       19
      CyclomaticComplexity: 11
      functionsReached:
        - snprintf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-connection.c:596,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-connection.c:608,9'
          Dst:             snprintf
    - functionName:    ofp_port_reason_to_string
      functionSourceFile: '/src/openvswitch/lib/ofp-connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 571
      functionLinenumberEnd: 587
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          53
      EdgeCount:       19
      CyclomaticComplexity: 11
      functionsReached:
        - snprintf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-connection.c:572,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-connection.c:584,9'
          Dst:             snprintf
    - functionName:    ofpbuf_at_assert
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 195
      functionLinenumberEnd: 198
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:196,5'
          Dst:             ovs_ignore
        - Src:             './include/openvswitch/ofpbuf.h:197,5'
          Dst:             ovs_ignore
    - functionName:    encode_async_mask
      functionSourceFile: '/src/openvswitch/lib/ofp-connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 312
      functionLinenumberEnd: 316
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          55
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
        - ofp14_async_prop_allowed
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-connection.c:316,25'
          Dst:             ofp14_async_prop_allowed
        - Src:             'lib/ofp-connection.c:316,12'
          Dst:             htonl
    - functionName:    ofp14_async_prop_allowed
      functionSourceFile: '/src/openvswitch/lib/ofp-connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 304
      functionLinenumberEnd: 305
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          27
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    encode_legacy_async_masks
      functionSourceFile: '/src/openvswitch/lib/ofp-connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 482
      functionLinenumberEnd: 489
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          58
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - encode_async_mask
        - get_ofp14_async_config_prop_by_oam
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-connection.c:486,15'
          Dst:             get_ofp14_async_config_prop_by_oam
        - Src:             'lib/ofp-connection.c:487,20'
          Dst:             encode_async_mask
    - functionName:    get_ofp14_async_config_prop_by_oam
      functionSourceFile: '/src/openvswitch/lib/ofp-connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 292
      functionLinenumberEnd: 299
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          62
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofpprop_is_experimenter
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-prop.h'
      linkageType:     InternalLinkage
      functionLinenumber: 73
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    decode_async_mask
      functionSourceFile: '/src/openvswitch/lib/ofp-connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 323
      functionLinenumberEnd: 350
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - int
        - 'N/A'
        - int
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          160
      EdgeCount:       33
      CyclomaticComplexity: 9
      functionsReached:
        - ntohl
        - ofp14_async_prop_allowed
        - ofputil_async_msg_type_to_string
        - vlog_rate_limit
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-connection.c:324,21'
          Dst:             ntohl
        - Src:             'lib/ofp-connection.c:325,24'
          Dst:             ofp14_async_prop_allowed
        - Src:             'lib/ofp-connection.c:328,9'
          Dst:             ofputil_async_msg_type_to_string
        - Src:             'lib/ofp-connection.c:328,9'
          Dst:             vlog_rate_limit
    - functionName:    ofputil_async_msg_type_to_string
      functionSourceFile: '/src/openvswitch/lib/ofp-connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 239
      functionLinenumberEnd: 252
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          59
      EdgeCount:       24
      CyclomaticComplexity: 13
      functionsReached:
        - abort
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/ofp-connection.c:240,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-connection.c:250,9'
          Dst:             abort
    - functionName:    ofputil_async_cfg_default
      functionSourceFile: '/src/openvswitch/lib/ofp-connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 697
      functionLinenumberEnd: 723
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          65
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ds_put_char
      functionSourceFile: '/src/openvswitch/./include/openvswitch/dynamic-string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_char__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/dynamic-string.h:99,9'
          Dst:             ds_put_char__
    - functionName:    ofp_async_config_reason_to_string
      functionSourceFile: '/src/openvswitch/lib/ofp-connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 638
      functionLinenumberEnd: 662
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - int
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          89
      EdgeCount:       25
      CyclomaticComplexity: 14
      functionsReached:
        - ofp_flow_removed_reason_to_string
        - ofp_port_reason_to_string
        - ofp_requestforward_reason_to_string
        - ofp_role_reason_to_string
        - ofp_table_reason_to_string
        - ofputil_packet_in_reason_to_string
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-connection.c:639,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-connection.c:641,16'
          Dst:             ofputil_packet_in_reason_to_string
        - Src:             'lib/ofp-connection.c:644,16'
          Dst:             ofp_port_reason_to_string
        - Src:             'lib/ofp-connection.c:647,16'
          Dst:             ofp_flow_removed_reason_to_string
        - Src:             'lib/ofp-connection.c:650,16'
          Dst:             ofp_role_reason_to_string
        - Src:             'lib/ofp-connection.c:653,16'
          Dst:             ofp_table_reason_to_string
        - Src:             'lib/ofp-connection.c:656,16'
          Dst:             ofp_requestforward_reason_to_string
    - functionName:    ofputil_format_set_async_config
      functionSourceFile: '/src/openvswitch/lib/ofp-connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 667
      functionLinenumberEnd: 693
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         27
      ICount:          153
      EdgeCount:       34
      CyclomaticComplexity: 9
      functionsReached:
        - ds_put_char
        - ds_put_cstr
        - ds_put_format
        - ofp_async_config_reason_to_string
        - ofputil_async_msg_type_to_string
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-connection.c:669,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-connection.c:672,27'
          Dst:             ofputil_async_msg_type_to_string
        - Src:             'lib/ofp-connection.c:671,13'
          Dst:             ds_put_format
        - Src:             'lib/ofp-connection.c:680,30'
          Dst:             ofp_async_config_reason_to_string
        - Src:             'lib/ofp-connection.c:683,25'
          Dst:             ds_put_format
        - Src:             'lib/ofp-connection.c:688,17'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-connection.c:690,13'
          Dst:             ds_put_char
    - functionName:    ofputil_encode_set_async_config
      functionSourceFile: '/src/openvswitch/lib/ofp-connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 551
      functionLinenumberEnd: 561
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          76
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - ofpraw_alloc
        - ofputil_put_async_config__
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-connection.c:556,30'
          Dst:             ofpraw_alloc
        - Src:             'lib/ofp-connection.c:557,5'
          Dst:             ofputil_put_async_config__
    - functionName:    ofputil_put_async_config__
      functionSourceFile: '/src/openvswitch/lib/ofp-connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 495
      functionLinenumberEnd: 521
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          135
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - encode_async_mask
        - encode_legacy_async_masks
        - htons
        - ofpbuf_at_assert
        - ofpbuf_put_zeros
        - ofpprop_is_experimenter
        - ofpprop_put_be32
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-connection.c:497,39'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-connection.c:498,9'
          Dst:             encode_legacy_async_masks
        - Src:             'lib/ofp-connection.c:500,9'
          Dst:             encode_legacy_async_masks
        - Src:             'lib/ofp-connection.c:502,9'
          Dst:             encode_legacy_async_masks
        - Src:             'lib/ofp-connection.c:509,34'
          Dst:             encode_async_mask
        - Src:             'lib/ofp-connection.c:508,17'
          Dst:             ofpprop_put_be32
        - Src:             'lib/ofp-connection.c:513,21'
          Dst:             ofpprop_is_experimenter
        - Src:             'lib/ofp-connection.c:515,27'
          Dst:             ofpbuf_at_assert
        - Src:             'lib/ofp-connection.c:516,47'
          Dst:             htons
        - Src:             'lib/ofp-connection.c:516,63'
          Dst:             htons
    - functionName:    ofputil_encode_get_async_reply
      functionSourceFile: '/src/openvswitch/lib/ofp-connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 528
      functionLinenumberEnd: 536
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          41
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpraw_alloc_reply
        - ofputil_put_async_config__
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-connection.c:532,28'
          Dst:             ofpraw_alloc_reply
        - Src:             'lib/ofp-connection.c:533,5'
          Dst:             ofputil_put_async_config__
    - functionName:    parse_async_tlv
      functionSourceFile: '/src/openvswitch/lib/ofp-connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 357
      functionLinenumberEnd: 386
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          131
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - decode_async_mask
        - htons
        - ntohl
        - ntohs
        - ofpprop_is_experimenter
        - ofpprop_parse_be32
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-connection.c:361,14'
          Dst:             ofpprop_parse_be32
        - Src:             'lib/ofp-connection.c:366,9'
          Dst:             ofpprop_is_experimenter
        - Src:             'lib/ofp-connection.c:371,47'
          Dst:             htons
        - Src:             'lib/ofp-connection.c:374,13'
          Dst:             ntohs
        - Src:             'lib/ofp-connection.c:374,13'
          Dst:             ntohl
        - Src:             'lib/ofp-connection.c:374,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-connection.c:385,12'
          Dst:             decode_async_mask
    - functionName:    get_ofp14_async_config_prop_by_prop_type
      functionSourceFile: '/src/openvswitch/lib/ofp-connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 280
      functionLinenumberEnd: 287
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          40
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    decode_legacy_async_masks
      functionSourceFile: '/src/openvswitch/lib/ofp-connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 393
      functionLinenumberEnd: 400
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          58
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - decode_async_mask
        - get_ofp14_async_config_prop_by_oam
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-connection.c:397,15'
          Dst:             get_ofp14_async_config_prop_by_oam
        - Src:             'lib/ofp-connection.c:398,9'
          Dst:             decode_async_mask
    - functionName:    ofputil_decode_set_async_config
      functionSourceFile: '/src/openvswitch/lib/ofp-connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 427
      functionLinenumberEnd: 475
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         33
      ICount:          208
      EdgeCount:       44
      CyclomaticComplexity: 13
      functionsReached:
        - decode_legacy_async_masks
        - get_ofp14_async_config_prop_by_prop_type
        - ntohs
        - ofpbuf_const_initializer
        - ofpmsg_body
        - ofpprop_pull__
        - ofpprop_unknown
        - ofpraw_pull_assert
        - parse_async_tlv
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-connection.c:428,52'
          Dst:             ntohs
        - Src:             'lib/ofp-connection.c:428,23'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/ofp-connection.c:429,23'
          Dst:             ofpraw_pull_assert
        - Src:             'lib/ofp-connection.c:434,45'
          Dst:             ofpmsg_body
        - Src:             'lib/ofp-connection.c:437,9'
          Dst:             decode_legacy_async_masks
        - Src:             'lib/ofp-connection.c:439,9'
          Dst:             decode_legacy_async_masks
        - Src:             'lib/ofp-connection.c:441,9'
          Dst:             decode_legacy_async_masks
        - Src:             'lib/ofp-connection.c:452,21'
          Dst:             ofpprop_pull__
        - Src:             'lib/ofp-connection.c:458,19'
          Dst:             get_ofp14_async_config_prop_by_prop_type
        - Src:             'lib/ofp-connection.c:460,24'
          Dst:             parse_async_tlv
        - Src:             'lib/ofp-connection.c:461,24'
          Dst:             ofpprop_unknown
    - functionName:    ofpbuf_const_initializer
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 97
      functionLinenumberEnd: 105
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          30
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofputil_format_role_status
      functionSourceFile: '/src/openvswitch/lib/ofp-connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 215
      functionLinenumberEnd: 235
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          60
      EdgeCount:       19
      CyclomaticComplexity: 11
      functionsReached:
        - ds_put_cstr
        - format_role_generic
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-connection.c:220,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-connection.c:216,5'
          Dst:             format_role_generic
        - Src:             'lib/ofp-connection.c:218,5'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-connection.c:222,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-connection.c:225,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-connection.c:228,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-connection.c:232,9'
          Dst:             ds_put_cstr
    - functionName:    format_role_generic
      functionSourceFile: '/src/openvswitch/lib/ofp-connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 93
      functionLinenumberEnd: 116
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          67
      EdgeCount:       23
      CyclomaticComplexity: 13
      functionsReached:
        - abort
        - ds_put_cstr
        - ds_put_format
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/ofp-connection.c:96,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-connection.c:94,5'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-connection.c:98,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-connection.c:101,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-connection.c:104,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-connection.c:107,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-connection.c:110,9'
          Dst:             abort
        - Src:             'lib/ofp-connection.c:114,9'
          Dst:             ds_put_format
    - functionName:    ofputil_decode_role_status
      functionSourceFile: '/src/openvswitch/lib/ofp-connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 191
      functionLinenumberEnd: 210
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          121
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - htonl
        - ntohl
        - ntohll
        - ntohs
        - ofpbuf_const_initializer
        - ofpraw_pull_assert
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-connection.c:192,52'
          Dst:             ntohs
        - Src:             'lib/ofp-connection.c:192,23'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/ofp-connection.c:193,23'
          Dst:             ofpraw_pull_assert
        - Src:             'lib/ofp-connection.c:194,5'
          Dst:             ovs_ignore
        - Src:             'lib/ofp-connection.c:198,20'
          Dst:             htonl
        - Src:             'lib/ofp-connection.c:199,20'
          Dst:             htonl
        - Src:             'lib/ofp-connection.c:200,20'
          Dst:             htonl
        - Src:             'lib/ofp-connection.c:201,20'
          Dst:             htonl
        - Src:             'lib/ofp-connection.c:205,16'
          Dst:             ntohl
        - Src:             'lib/ofp-connection.c:206,25'
          Dst:             ntohll
    - functionName:    ntohll
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
        - ntohl
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byte-order.h:36,12'
          Dst:             htonl
        - Src:             'lib/byte-order.h:36,44'
          Dst:             ntohl
        - Src:             'lib/byte-order.h:36,62'
          Dst:             ntohl
    - functionName:    ofputil_encode_role_status
      functionSourceFile: '/src/openvswitch/lib/ofp-connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 170
      functionLinenumberEnd: 186
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          75
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
        - htonll
        - ofpbuf_put_zeros
        - ofpraw_alloc_xid
        - ofputil_protocol_to_ofp_version
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-connection.c:171,32'
          Dst:             ofputil_protocol_to_ofp_version
        - Src:             'lib/ofp-connection.c:179,57'
          Dst:             htonl
        - Src:             'lib/ofp-connection.c:179,26'
          Dst:             ofpraw_alloc_xid
        - Src:             'lib/ofp-connection.c:180,41'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-connection.c:181,21'
          Dst:             htonl
        - Src:             'lib/ofp-connection.c:183,30'
          Dst:             htonll
    - functionName:    htonll
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 30
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byte-order.h:30,12'
          Dst:             htonl
        - Src:             'lib/byte-order.h:30,44'
          Dst:             htonl
        - Src:             'lib/byte-order.h:30,62'
          Dst:             htonl
    - functionName:    ofputil_encode_role_reply
      functionSourceFile: '/src/openvswitch/lib/ofp-connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 132
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          90
      EdgeCount:       14
      CyclomaticComplexity: 4
      functionsReached:
        - abort
        - htonl
        - htonll
        - ofpbuf_put_zeros
        - ofpraw_alloc_reply
        - ofpraw_decode_assert
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-connection.c:136,11'
          Dst:             ofpraw_decode_assert
        - Src:             'lib/ofp-connection.c:140,15'
          Dst:             ofpraw_alloc_reply
        - Src:             'lib/ofp-connection.c:141,15'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-connection.c:143,21'
          Dst:             htonl
        - Src:             'lib/ofp-connection.c:144,30'
          Dst:             htonll
        - Src:             'lib/ofp-connection.c:154,15'
          Dst:             ofpraw_alloc_reply
        - Src:             'lib/ofp-connection.c:155,15'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-connection.c:156,21'
          Dst:             htonl
        - Src:             'lib/ofp-connection.c:158,9'
          Dst:             abort
    - functionName:    ofputil_format_role_message
      functionSourceFile: '/src/openvswitch/lib/ofp-connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 121
      functionLinenumberEnd: 125
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - format_role_generic
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-connection.c:122,5'
          Dst:             format_role_generic
    - functionName:    ofputil_decode_role_message
      functionSourceFile: '/src/openvswitch/lib/ofp-connection.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42
      functionLinenumberEnd: 88
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         41
      ICount:          240
      EdgeCount:       54
      CyclomaticComplexity: 15
      functionsReached:
        - abort
        - htonl
        - ntohl
        - ntohll
        - ntohs
        - ofpbuf_const_initializer
        - ofpraw_pull_assert
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-connection.c:43,52'
          Dst:             ntohs
        - Src:             'lib/ofp-connection.c:43,23'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/ofp-connection.c:44,23'
          Dst:             ofpraw_pull_assert
        - Src:             'lib/ofp-connection.c:49,26'
          Dst:             htonl
        - Src:             'lib/ofp-connection.c:50,26'
          Dst:             htonl
        - Src:             'lib/ofp-connection.c:51,26'
          Dst:             htonl
        - Src:             'lib/ofp-connection.c:52,26'
          Dst:             htonl
        - Src:             'lib/ofp-connection.c:56,20'
          Dst:             ntohl
        - Src:             'lib/ofp-connection.c:58,28'
          Dst:             htonl
        - Src:             'lib/ofp-connection.c:64,33'
          Dst:             ntohll
        - Src:             'lib/ofp-connection.c:74,26'
          Dst:             htonl
        - Src:             'lib/ofp-connection.c:75,26'
          Dst:             htonl
        - Src:             'lib/ofp-connection.c:76,26'
          Dst:             htonl
        - Src:             'lib/ofp-connection.c:80,20'
          Dst:             ntohl
        - Src:             'lib/ofp-connection.c:84,9'
          Dst:             abort
    - functionName:    init_this_module_ofp_ct
      functionSourceFile: '/src/openvswitch/lib/ofp-ct.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-ct.c:36,1'
          Dst:             vlog_insert_module
    - functionName:    ofpbuf_tail
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 203
      functionLinenumberEnd: 205
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          56
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:204,5'
          Dst:             ovs_ignore
    - functionName:    ofpbuf_msgsize
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 244
      functionLinenumberEnd: 245
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpbuf_tail
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:245,20'
          Dst:             ofpbuf_tail
    - functionName:    ofpprop_pull_ipv6
      functionSourceFile: '/src/openvswitch/lib/ofp-ct.c'
      linkageType:     InternalLinkage
      functionLinenumber: 352
      functionLinenumberEnd: 371
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          132
      EdgeCount:       28
      CyclomaticComplexity: 9
      functionsReached:
        - htonl
        - ipv6_is_zero
        - ofpbuf_msgsize
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-ct.c:353,9'
          Dst:             ofpbuf_msgsize
        - Src:             'lib/ofp-ct.c:360,10'
          Dst:             ipv6_is_zero
        - Src:             'lib/ofp-ct.c:361,14'
          Dst:             htonl
    - functionName:    in6_addr_mapped_ipv4
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1215
      functionLinenumberEnd: 1220
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          20
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ntohll
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
        - ntohl
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byte-order.h:36,12'
          Dst:             htonl
        - Src:             'lib/byte-order.h:36,44'
          Dst:             ntohl
        - Src:             'lib/byte-order.h:36,62'
          Dst:             ntohl
    - functionName:    ovs_u128_equals
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 481
      functionLinenumberEnd: 482
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          37
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    htonll
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 30
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byte-order.h:30,12'
          Dst:             htonl
        - Src:             'lib/byte-order.h:30,44'
          Dst:             htonl
        - Src:             'lib/byte-order.h:30,62'
          Dst:             htonl
    - functionName:    ofp_ct_tuple_encode
      functionSourceFile: '/src/openvswitch/lib/ofp-ct.c'
      linkageType:     InternalLinkage
      functionLinenumber: 436
      functionLinenumberEnd: 468
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          159
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - ipv6_is_zero
        - ofpbuf_uninit
        - ofpprop_put
        - ofpprop_put_be16
        - ofpprop_put_nested
        - ofpprop_put_u8
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-ct.c:441,10'
          Dst:             ipv6_is_zero
        - Src:             'lib/ofp-ct.c:442,9'
          Dst:             ofpprop_put
        - Src:             'lib/ofp-ct.c:445,10'
          Dst:             ipv6_is_zero
        - Src:             'lib/ofp-ct.c:446,9'
          Dst:             ofpprop_put
        - Src:             'lib/ofp-ct.c:450,9'
          Dst:             ofpprop_put_be16
        - Src:             'lib/ofp-ct.c:451,9'
          Dst:             ofpprop_put_u8
        - Src:             'lib/ofp-ct.c:452,9'
          Dst:             ofpprop_put_u8
        - Src:             'lib/ofp-ct.c:455,13'
          Dst:             ofpprop_put_be16
        - Src:             'lib/ofp-ct.c:459,13'
          Dst:             ofpprop_put_be16
        - Src:             'lib/ofp-ct.c:464,9'
          Dst:             ofpprop_put_nested
        - Src:             'lib/ofp-ct.c:467,5'
          Dst:             ofpbuf_uninit
    - functionName:    ofp_ct_match_encode
      functionSourceFile: '/src/openvswitch/lib/ofp-ct.c'
      linkageType:     InternalLinkage
      functionLinenumber: 564
      functionLinenumberEnd: 593
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          148
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - ofp_ct_tuple_encode
        - ofpbuf_put_zeros
        - ofpprop_put_u128
        - ofpprop_put_u16
        - ofpprop_put_u32
        - ofpraw_alloc
        - ovs_u128_is_ones
        - ovs_u128_is_zero
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-ct.c:565,26'
          Dst:             ofpraw_alloc
        - Src:             'lib/ofp-ct.c:566,36'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-ct.c:572,5'
          Dst:             ofp_ct_tuple_encode
        - Src:             'lib/ofp-ct.c:573,5'
          Dst:             ofp_ct_tuple_encode
        - Src:             'lib/ofp-ct.c:576,9'
          Dst:             ofpprop_put_u16
        - Src:             'lib/ofp-ct.c:580,9'
          Dst:             ofpprop_put_u32
        - Src:             'lib/ofp-ct.c:582,13'
          Dst:             ofpprop_put_u32
        - Src:             'lib/ofp-ct.c:586,10'
          Dst:             ovs_u128_is_zero
        - Src:             'lib/ofp-ct.c:587,9'
          Dst:             ofpprop_put_u128
        - Src:             'lib/ofp-ct.c:588,14'
          Dst:             ovs_u128_is_ones
        - Src:             'lib/ofp-ct.c:589,13'
          Dst:             ofpprop_put_u128
    - functionName:    ovs_u128_is_zero
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 488
      functionLinenumberEnd: 489
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_u128_is_ones
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 495
      functionLinenumberEnd: 496
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_u128_equals
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.h:496,12'
          Dst:             ovs_u128_equals
    - functionName:    ofp_ct_tuple_decode_nested
      functionSourceFile: '/src/openvswitch/lib/ofp-ct.c'
      linkageType:     InternalLinkage
      functionLinenumber: 376
      functionLinenumberEnd: 431
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          142
      EdgeCount:       25
      CyclomaticComplexity: 5
      functionsReached:
        - ofpprop_parse_be16
        - ofpprop_parse_nested
        - ofpprop_parse_u8
        - ofpprop_pull
        - ofpprop_pull_ipv6
        - ofpprop_unknown
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/ofp-ct.c:391,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-ct.c:378,25'
          Dst:             ofpprop_parse_nested
        - Src:             'lib/ofp-ct.c:387,17'
          Dst:             ofpprop_pull
        - Src:             'lib/ofp-ct.c:393,21'
          Dst:             ofpprop_pull_ipv6
        - Src:             'lib/ofp-ct.c:397,21'
          Dst:             ofpprop_pull_ipv6
        - Src:             'lib/ofp-ct.c:401,21'
          Dst:             ofpprop_parse_be16
        - Src:             'lib/ofp-ct.c:405,21'
          Dst:             ofpprop_parse_be16
        - Src:             'lib/ofp-ct.c:409,21'
          Dst:             ofpprop_parse_be16
        - Src:             'lib/ofp-ct.c:413,21'
          Dst:             ofpprop_parse_u8
        - Src:             'lib/ofp-ct.c:417,21'
          Dst:             ofpprop_parse_u8
        - Src:             'lib/ofp-ct.c:421,21'
          Dst:             ofpprop_unknown
    - functionName:    ofpbuf_pull
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 258
      functionLinenumberEnd: 269
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          64
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:259,5'
          Dst:             ovs_ignore
    - functionName:    ofpbuf_const_initializer
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 97
      functionLinenumberEnd: 105
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          30
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofp_ct_match_decode
      functionSourceFile: '/src/openvswitch/lib/ofp-ct.c'
      linkageType:     InternalLinkage
      functionLinenumber: 473
      functionLinenumberEnd: 559
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         38
      ICount:          238
      EdgeCount:       47
      CyclomaticComplexity: 11
      functionsReached:
        - is_all_zeros
        - ntohs
        - ofp_ct_tuple_decode_nested
        - ofpbuf_const_initializer
        - ofpbuf_pull
        - ofpprop_parse_u128
        - ofpprop_parse_u16
        - ofpprop_parse_u32
        - ofpprop_pull
        - ofpprop_unknown
        - ofpraw_pull_assert
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-ct.c:498,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-ct.c:475,54'
          Dst:             ntohs
        - Src:             'lib/ofp-ct.c:475,25'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/ofp-ct.c:476,5'
          Dst:             ofpraw_pull_assert
        - Src:             'lib/ofp-ct.c:478,42'
          Dst:             ofpbuf_pull
        - Src:             'lib/ofp-ct.c:480,10'
          Dst:             is_all_zeros
        - Src:             'lib/ofp-ct.c:493,29'
          Dst:             ofpprop_pull
        - Src:             'lib/ofp-ct.c:500,21'
          Dst:             ofp_ct_tuple_decode_nested
        - Src:             'lib/ofp-ct.c:505,21'
          Dst:             ofp_ct_tuple_decode_nested
        - Src:             'lib/ofp-ct.c:513,21'
          Dst:             ofpprop_parse_u16
        - Src:             'lib/ofp-ct.c:517,21'
          Dst:             ofpprop_parse_u32
        - Src:             'lib/ofp-ct.c:521,21'
          Dst:             ofpprop_parse_u32
        - Src:             'lib/ofp-ct.c:525,21'
          Dst:             ofpprop_parse_u128
        - Src:             'lib/ofp-ct.c:529,21'
          Dst:             ofpprop_parse_u128
        - Src:             'lib/ofp-ct.c:533,21'
          Dst:             ofpprop_unknown
    - functionName:    ofp_ct_tuple_parse
      functionSourceFile: '/src/openvswitch/lib/ofp-ct.c'
      linkageType:     InternalLinkage
      functionLinenumber: 155
      functionLinenumberEnd: 268
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         95
      ICount:          521
      EdgeCount:       129
      CyclomaticComplexity: 36
      functionsReached:
        - ds_put_cstr
        - ds_put_format
        - htons
        - in6_addr_mapped_ipv4
        - ip_parse
        - ipv6_is_zero
        - ipv6_parse
        - ofputil_parse_key_value
        - str_to_u16
        - str_to_u8
        - strcmp
        - xstrdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-ct.c:158,18'
          Dst:             xstrdup
        - Src:             'lib/ofp-ct.c:159,12'
          Dst:             ofputil_parse_key_value
        - Src:             'lib/ofp-ct.c:161,13'
          Dst:             ds_put_format
        - Src:             'lib/ofp-ct.c:165,14'
          Dst:             strcmp
        - Src:             'lib/ofp-ct.c:165,43'
          Dst:             strcmp
        - Src:             'lib/ofp-ct.c:169,17'
          Dst:             ds_put_format
        - Src:             'lib/ofp-ct.c:173,18'
          Dst:             ipv6_is_zero
        - Src:             'lib/ofp-ct.c:174,17'
          Dst:             ds_put_format
        - Src:             'lib/ofp-ct.c:179,18'
          Dst:             ip_parse
        - Src:             'lib/ofp-ct.c:184,21'
          Dst:             in6_addr_mapped_ipv4
        - Src:             'lib/ofp-ct.c:185,21'
          Dst:             strcmp
        - Src:             'lib/ofp-ct.c:186,21'
          Dst:             strcmp
        - Src:             'lib/ofp-ct.c:190,17'
          Dst:             ds_put_format
        - Src:             'lib/ofp-ct.c:194,18'
          Dst:             ipv6_is_zero
        - Src:             'lib/ofp-ct.c:195,17'
          Dst:             ds_put_format
        - Src:             'lib/ofp-ct.c:200,18'
          Dst:             ipv6_parse
        - Src:             'lib/ofp-ct.c:205,21'
          Dst:             strcmp
        - Src:             'lib/ofp-ct.c:207,17'
          Dst:             ds_put_format
        - Src:             'lib/ofp-ct.c:209,25'
          Dst:             str_to_u8
        - Src:             'lib/ofp-ct.c:215,21'
          Dst:             strcmp
        - Src:             'lib/ofp-ct.c:215,50'
          Dst:             strcmp
        - Src:             'lib/ofp-ct.c:217,25'
          Dst:             str_to_u16
        - Src:             'lib/ofp-ct.c:224,35'
          Dst:             htons
        - Src:             'lib/ofp-ct.c:226,35'
          Dst:             htons
        - Src:             'lib/ofp-ct.c:228,21'
          Dst:             strcmp
        - Src:             'lib/ofp-ct.c:228,50'
          Dst:             strcmp
        - Src:             'lib/ofp-ct.c:229,21'
          Dst:             strcmp
        - Src:             'lib/ofp-ct.c:231,17'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-ct.c:238,23'
          Dst:             str_to_u8
        - Src:             'lib/ofp-ct.c:240,23'
          Dst:             str_to_u8
        - Src:             'lib/ofp-ct.c:242,23'
          Dst:             str_to_u16
        - Src:             'lib/ofp-ct.c:243,34'
          Dst:             htons
        - Src:             'lib/ofp-ct.c:250,13'
          Dst:             ds_put_format
        - Src:             'lib/ofp-ct.c:256,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-ct.c:264,5'
          Dst:             ds_put_format
    - functionName:    ntoh128
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 58
      functionLinenumberEnd: 63
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohll
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byte-order.h:61,18'
          Dst:             ntohll
        - Src:             'lib/byte-order.h:62,18'
          Dst:             ntohll
    - functionName:    ofp_ct_masked_parse
      functionSourceFile: '/src/openvswitch/lib/ofp-ct.c'
      linkageType:     InternalLinkage
      functionLinenumber: 135
      functionLinenumberEnd: 147
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          70
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - parse_int_string
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-ct.c:137,10'
          Dst:             parse_int_string
        - Src:             'lib/ofp-ct.c:138,29'
          Dst:             parse_int_string
    - functionName:    ofp_ct_match_parse
      functionSourceFile: '/src/openvswitch/lib/ofp-ct.c'
      linkageType:     InternalLinkage
      functionLinenumber: 277
      functionLinenumberEnd: 347
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         44
      ICount:          328
      EdgeCount:       59
      CyclomaticComplexity: 17
      functionsReached:
        - ds_put_cstr
        - ntoh128
        - ntohl
        - ofp_ct_masked_parse
        - ofp_ct_tuple_parse
        - ovs_scan
        - strncmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-ct.c:281,18'
          Dst:             strncmp
        - Src:             'lib/ofp-ct.c:282,14'
          Dst:             ovs_scan
        - Src:             'lib/ofp-ct.c:283,13'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-ct.c:291,18'
          Dst:             strncmp
        - Src:             'lib/ofp-ct.c:296,13'
          Dst:             ofp_ct_masked_parse
        - Src:             'lib/ofp-ct.c:298,27'
          Dst:             ntohl
        - Src:             'lib/ofp-ct.c:299,32'
          Dst:             ntohl
        - Src:             'lib/ofp-ct.c:301,13'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-ct.c:308,18'
          Dst:             strncmp
        - Src:             'lib/ofp-ct.c:313,13'
          Dst:             ofp_ct_masked_parse
        - Src:             'lib/ofp-ct.c:315,29'
          Dst:             ntoh128
        - Src:             'lib/ofp-ct.c:316,34'
          Dst:             ntoh128
        - Src:             'lib/ofp-ct.c:318,13'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-ct.c:334,24'
          Dst:             ofp_ct_tuple_parse
        - Src:             'lib/ofp-ct.c:342,9'
          Dst:             ds_put_cstr
    - functionName:    ofp_ct_tuple_format
      functionSourceFile: '/src/openvswitch/lib/ofp-ct.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - char
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          95
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ds_put_cstr
        - ds_put_format
        - ipv6_format_mapped
        - ntohs
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-ct.c:42,5'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-ct.c:43,5'
          Dst:             ipv6_format_mapped
        - Src:             'lib/ofp-ct.c:44,5'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-ct.c:45,5'
          Dst:             ipv6_format_mapped
        - Src:             'lib/ofp-ct.c:48,23'
          Dst:             ntohs
        - Src:             'lib/ofp-ct.c:47,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-ct.c:51,57'
          Dst:             ntohs
        - Src:             'lib/ofp-ct.c:52,23'
          Dst:             ntohs
        - Src:             'lib/ofp-ct.c:51,9'
          Dst:             ds_put_format
    - functionName:    hton128
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 48
      functionLinenumberEnd: 53
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonll
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byte-order.h:51,19'
          Dst:             htonll
        - Src:             'lib/byte-order.h:52,19'
          Dst:             htonll
    - functionName:    ds_put_char
      functionSourceFile: '/src/openvswitch/./include/openvswitch/dynamic-string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_char__
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/dynamic-string.h:99,9'
          Dst:             ds_put_char__
    - functionName:    ofp_ct_match_format
      functionSourceFile: '/src/openvswitch/lib/ofp-ct.c'
      linkageType:     InternalLinkage
      functionLinenumber: 100
      functionLinenumberEnd: 130
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          151
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - ds_put_char
        - ds_put_cstr
        - ds_put_format
        - ds_put_hex
        - hton128
        - ofp_ct_tuple_format
        - ovs_u128_is_ones
        - ovs_u128_is_zero
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-ct.c:102,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-ct.c:104,13'
          Dst:             ds_put_format
        - Src:             'lib/ofp-ct.c:106,9'
          Dst:             ds_put_char
        - Src:             'lib/ofp-ct.c:109,10'
          Dst:             ovs_u128_is_zero
        - Src:             'lib/ofp-ct.c:110,30'
          Dst:             hton128
        - Src:             'lib/ofp-ct.c:111,29'
          Dst:             hton128
        - Src:             'lib/ofp-ct.c:113,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-ct.c:114,9'
          Dst:             ds_put_hex
        - Src:             'lib/ofp-ct.c:116,14'
          Dst:             ovs_u128_is_ones
        - Src:             'lib/ofp-ct.c:117,13'
          Dst:             ds_put_char
        - Src:             'lib/ofp-ct.c:118,13'
          Dst:             ds_put_hex
        - Src:             'lib/ofp-ct.c:120,9'
          Dst:             ds_put_char
        - Src:             'lib/ofp-ct.c:123,5'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-ct.c:124,5'
          Dst:             ofp_ct_tuple_format
        - Src:             'lib/ofp-ct.c:126,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-ct.c:127,5'
          Dst:             ofp_ct_tuple_format
        - Src:             'lib/ofp-ct.c:129,5'
          Dst:             ds_put_cstr
    - functionName:    ofp_ct_match_is_zero
      functionSourceFile: '/src/openvswitch/lib/ofp-ct.c'
      linkageType:     InternalLinkage
      functionLinenumber: 91
      functionLinenumberEnd: 95
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          77
      EdgeCount:       19
      CyclomaticComplexity: 7
      functionsReached:
        - ofp_ct_tuple_is_zero
        - ovs_u128_is_zero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-ct.c:93,12'
          Dst:             ofp_ct_tuple_is_zero
        - Src:             'lib/ofp-ct.c:94,12'
          Dst:             ofp_ct_tuple_is_zero
        - Src:             'lib/ofp-ct.c:95,33'
          Dst:             ovs_u128_is_zero
    - functionName:    ofp_ct_tuple_is_zero
      functionSourceFile: '/src/openvswitch/lib/ofp-ct.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58
      functionLinenumberEnd: 65
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          85
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - ipv6_is_zero
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-ct.c:59,20'
          Dst:             ipv6_is_zero
        - Src:             'lib/ofp-ct.c:59,49'
          Dst:             ipv6_is_zero
    - functionName:    ofp_ct_tuple_is_five_tuple
      functionSourceFile: '/src/openvswitch/lib/ofp-ct.c'
      linkageType:     InternalLinkage
      functionLinenumber: 70
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          87
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - ipv6_is_zero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-ct.c:72,24'
          Dst:             ipv6_is_zero
        - Src:             'lib/ofp-ct.c:72,54'
          Dst:             ipv6_is_zero
    - functionName:    ofp_ct_match_is_five_tuple
      functionSourceFile: '/src/openvswitch/lib/ofp-ct.c'
      linkageType:     InternalLinkage
      functionLinenumber: 83
      functionLinenumberEnd: 86
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          57
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - ofp_ct_tuple_is_five_tuple
        - ofp_ct_tuple_is_zero
        - ovs_u128_is_zero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-ct.c:84,12'
          Dst:             ofp_ct_tuple_is_five_tuple
        - Src:             'lib/ofp-ct.c:85,12'
          Dst:             ofp_ct_tuple_is_zero
        - Src:             'lib/ofp-ct.c:86,33'
          Dst:             ovs_u128_is_zero
    - functionName:    format_ed_prop
      functionSourceFile: '/src/openvswitch/lib/ofp-ed-props.c'
      linkageType:     InternalLinkage
      functionLinenumber: 313
      functionLinenumberEnd: 340
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          85
      EdgeCount:       14
      CyclomaticComplexity: 7
      functionsReached:
        - abort
        - ds_put_cstr
        - ds_put_format
        - ds_put_hex
        - format_ed_prop_type
        - ntohs
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-ed-props.c:314,5'
          Branch Sides:    []
        - Branch String:   'lib/ofp-ed-props.c:316,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-ed-props.c:320,39'
          Dst:             format_ed_prop_type
        - Src:             'lib/ofp-ed-props.c:320,13'
          Dst:             ds_put_format
        - Src:             'lib/ofp-ed-props.c:328,27'
          Dst:             format_ed_prop_type
        - Src:             'lib/ofp-ed-props.c:329,27'
          Dst:             ntohs
        - Src:             'lib/ofp-ed-props.c:327,13'
          Dst:             ds_put_format
        - Src:             'lib/ofp-ed-props.c:330,13'
          Dst:             ds_put_hex
        - Src:             'lib/ofp-ed-props.c:331,13'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-ed-props.c:335,13'
          Dst:             abort
        - Src:             'lib/ofp-ed-props.c:338,9'
          Dst:             abort
    - functionName:    format_ed_prop_type
      functionSourceFile: '/src/openvswitch/lib/ofp-ed-props.c'
      linkageType:     InternalLinkage
      functionLinenumber: 293
      functionLinenumberEnd: 308
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          49
      EdgeCount:       14
      CyclomaticComplexity: 7
      functionsReached:
        - abort
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/ofp-ed-props.c:294,5'
          Branch Sides:    []
        - Branch String:   'lib/ofp-ed-props.c:296,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-ed-props.c:302,13'
          Dst:             abort
        - Src:             'lib/ofp-ed-props.c:306,9'
          Dst:             abort
    - functionName:    format_ed_prop_class
      functionSourceFile: '/src/openvswitch/lib/ofp-ed-props.c'
      linkageType:     InternalLinkage
      functionLinenumber: 274
      functionLinenumberEnd: 289
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          52
      EdgeCount:       18
      CyclomaticComplexity: 10
      functionsReached:
        - abort
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib/ofp-ed-props.c:275,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-ed-props.c:287,9'
          Dst:             abort
    - functionName:    parse_ed_prop_value
      functionSourceFile: '/src/openvswitch/lib/ofp-ed-props.c'
      linkageType:     InternalLinkage
      functionLinenumber: 201
      functionLinenumberEnd: 270
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - short
        - char
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          219
      EdgeCount:       31
      CyclomaticComplexity: 5
      functionsReached:
        - abort
        - htons
        - ofpbuf_put_hex
        - ofpbuf_put_uninit
        - ofpbuf_put_zeros
        - ovs_scan
        - str_to_u8
        - xasprintf
        - xstrdup
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-ed-props.c:208,5'
          Branch Sides:    []
        - Branch String:   'lib/ofp-ed-props.c:210,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-ed-props.c:205,16'
          Dst:             xstrdup
        - Src:             'lib/ofp-ed-props.c:214,21'
          Dst:             str_to_u8
        - Src:             'lib/ofp-ed-props.c:219,24'
          Dst:             xstrdup
        - Src:             'lib/ofp-ed-props.c:222,21'
          Dst:             ofpbuf_put_uninit
        - Src:             'lib/ofp-ed-props.c:239,18'
          Dst:             ovs_scan
        - Src:             'lib/ofp-ed-props.c:241,24'
          Dst:             xasprintf
        - Src:             'lib/ofp-ed-props.c:243,13'
          Dst:             ofpbuf_put_uninit
        - Src:             'lib/ofp-ed-props.c:244,13'
          Dst:             ofpbuf_put_hex
        - Src:             'lib/ofp-ed-props.c:251,30'
          Dst:             htons
        - Src:             'lib/ofp-ed-props.c:255,17'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-ed-props.c:261,13'
          Dst:             abort
        - Src:             'lib/ofp-ed-props.c:266,9'
          Dst:             abort
    - functionName:    parse_ed_prop_type
      functionSourceFile: '/src/openvswitch/lib/ofp-ed-props.c'
      linkageType:     InternalLinkage
      functionLinenumber: 174
      functionLinenumberEnd: 189
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - short
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          58
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - strcmp
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-ed-props.c:175,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-ed-props.c:177,14'
          Dst:             strcmp
        - Src:             'lib/ofp-ed-props.c:180,21'
          Dst:             strcmp
    - functionName:    parse_ed_prop_class
      functionSourceFile: '/src/openvswitch/lib/ofp-ed-props.c'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 168
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         25
      ICount:          107
      EdgeCount:       32
      CyclomaticComplexity: 9
      functionsReached:
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-ed-props.c:150,10'
          Dst:             strcmp
        - Src:             'lib/ofp-ed-props.c:152,17'
          Dst:             strcmp
        - Src:             'lib/ofp-ed-props.c:154,17'
          Dst:             strcmp
        - Src:             'lib/ofp-ed-props.c:156,17'
          Dst:             strcmp
        - Src:             'lib/ofp-ed-props.c:158,17'
          Dst:             strcmp
        - Src:             'lib/ofp-ed-props.c:160,17'
          Dst:             strcmp
        - Src:             'lib/ofp-ed-props.c:162,17'
          Dst:             strcmp
    - functionName:    encode_ed_prop
      functionSourceFile: '/src/openvswitch/lib/ofp-ed-props.c'
      linkageType:     InternalLinkage
      functionLinenumber: 95
      functionLinenumberEnd: 144
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          179
      EdgeCount:       20
      CyclomaticComplexity: 11
      functionsReached:
        - htons
        - ofpbuf_put_uninit
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-ed-props.c:98,5'
          Branch Sides:    []
        - Branch String:   'lib/ofp-ed-props.c:100,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-ed-props.c:105,21'
          Dst:             ofpbuf_put_uninit
        - Src:             'lib/ofp-ed-props.c:106,40'
          Dst:             htons
        - Src:             'lib/ofp-ed-props.c:121,20'
          Dst:             ofpbuf_put_uninit
        - Src:             'lib/ofp-ed-props.c:122,39'
          Dst:             htons
    - functionName:    decode_ed_prop
      functionSourceFile: '/src/openvswitch/lib/ofp-ed-props.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          240
      EdgeCount:       30
      CyclomaticComplexity: 6
      functionsReached:
        - ntohs
        - ofpbuf_put
        - ofpbuf_put_uninit
        - ofpbuf_put_zeros
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-ed-props.c:42,5'
          Branch Sides:    []
        - Branch String:   'lib/ofp-ed-props.c:44,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-ed-props.c:33,27'
          Dst:             ntohs
        - Src:             'lib/ofp-ed-props.c:52,21'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-ed-props.c:67,21'
          Dst:             ofpbuf_put_uninit
        - Src:             'lib/ofp-ed-props.c:74,13'
          Dst:             ofpbuf_put
    - functionName:    init_this_module_ofp_errors
      functionSourceFile: '/src/openvswitch/lib/ofp-errors.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 31
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-errors.c:31,1'
          Dst:             vlog_insert_module
    - functionName:    ofperr_of15_decode
      functionSourceFile: '/src/openvswitch/lib/ofp-errors.inc'
      linkageType:     InternalLinkage
      functionLinenumber: 2869
      functionLinenumberEnd: 3266
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - short
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         199
      ICount:          1010
      EdgeCount:       396
      CyclomaticComplexity: 199
      functionsReached: []
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib/ofp-errors.inc:2870,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    ofperr_of14_decode
      functionSourceFile: '/src/openvswitch/lib/ofp-errors.inc'
      linkageType:     InternalLinkage
      functionLinenumber: 2294
      functionLinenumberEnd: 2659
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - short
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         183
      ICount:          930
      EdgeCount:       364
      CyclomaticComplexity: 183
      functionsReached: []
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib/ofp-errors.inc:2295,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    ofperr_of13_decode
      functionSourceFile: '/src/openvswitch/lib/ofp-errors.inc'
      linkageType:     InternalLinkage
      functionLinenumber: 1737
      functionLinenumberEnd: 2084
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - short
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         174
      ICount:          885
      EdgeCount:       346
      CyclomaticComplexity: 174
      functionsReached: []
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib/ofp-errors.inc:1738,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    ofperr_of12_decode
      functionSourceFile: '/src/openvswitch/lib/ofp-errors.inc'
      linkageType:     InternalLinkage
      functionLinenumber: 1266
      functionLinenumberEnd: 1527
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - short
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         131
      ICount:          670
      EdgeCount:       260
      CyclomaticComplexity: 131
      functionsReached: []
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib/ofp-errors.inc:1267,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    ofperr_of11_decode
      functionSourceFile: '/src/openvswitch/lib/ofp-errors.inc'
      linkageType:     InternalLinkage
      functionLinenumber: 829
      functionLinenumberEnd: 1056
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - short
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         114
      ICount:          585
      EdgeCount:       226
      CyclomaticComplexity: 114
      functionsReached: []
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib/ofp-errors.inc:830,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    ofperr_of10_decode
      functionSourceFile: '/src/openvswitch/lib/ofp-errors.inc'
      linkageType:     InternalLinkage
      functionLinenumber: 416
      functionLinenumberEnd: 619
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - short
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         102
      ICount:          525
      EdgeCount:       202
      CyclomaticComplexity: 102
      functionsReached: []
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib/ofp-errors.inc:417,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    ofperr_to_string
      functionSourceFile: '/src/openvswitch/lib/ofp-errors.c'
      linkageType:     InternalLinkage
      functionLinenumber: 361
      functionLinenumberEnd: 364
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofperr_get_name
        - ofperr_is_valid
        - ovs_strerror
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-errors.c:362,13'
          Dst:             ofperr_is_valid
        - Src:             'lib/ofp-errors.c:363,15'
          Dst:             ofperr_get_name
        - Src:             'lib/ofp-errors.c:364,15'
          Dst:             ovs_strerror
    - functionName:    ofperr_is_valid
      functionSourceFile: '/src/openvswitch/lib/ofp-errors.c'
      linkageType:     InternalLinkage
      functionLinenumber: 76
      functionLinenumberEnd: 77
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          22
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofperr_get_name
      functionSourceFile: '/src/openvswitch/lib/ofp-errors.c'
      linkageType:     InternalLinkage
      functionLinenumber: 98
      functionLinenumberEnd: 100
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofperr_is_valid
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-errors.c:99,13'
          Dst:             ofperr_is_valid
    - functionName:    ofperr_decode
      functionSourceFile: '/src/openvswitch/lib/ofp-errors.c'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 88
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - int
        - int
        - short
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofperr_domain_from_version
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-errors.c:87,42'
          Dst:             ofperr_domain_from_version
    - functionName:    ofperr_domain_from_version
      functionSourceFile: '/src/openvswitch/lib/ofp-errors.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 63
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          47
      EdgeCount:       16
      CyclomaticComplexity: 9
      functionsReached: []
      functionUses:    6
      BranchProfiles:
        - Branch String:   'lib/ofp-errors.c:47,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    ofpbuf_try_pull
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 275
      functionLinenumberEnd: 276
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofpbuf_pull
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:276,30'
          Dst:             ofpbuf_pull
    - functionName:    ofpbuf_pull
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 258
      functionLinenumberEnd: 269
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          64
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:259,5'
          Dst:             ovs_ignore
    - functionName:    ofpbuf_const_initializer
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 97
      functionLinenumberEnd: 105
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          30
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofperr_decode_msg
      functionSourceFile: '/src/openvswitch/lib/ofp-errors.c'
      linkageType:     InternalLinkage
      functionLinenumber: 303
      functionLinenumberEnd: 353
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         27
      ICount:          193
      EdgeCount:       36
      CyclomaticComplexity: 11
      functionsReached:
        - ntohl
        - ntohs
        - ofpbuf_const_initializer
        - ofpbuf_init
        - ofpbuf_pull
        - ofpbuf_push
        - ofpbuf_trim
        - ofpbuf_try_pull
        - ofperr_decode
        - ofpraw_pull
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-errors.c:314,52'
          Dst:             ntohs
        - Src:             'lib/ofp-errors.c:314,23'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/ofp-errors.c:315,25'
          Dst:             ofpraw_pull
        - Src:             'lib/ofp-errors.c:319,11'
          Dst:             ofpbuf_pull
        - Src:             'lib/ofp-errors.c:323,12'
          Dst:             ntohs
        - Src:             'lib/ofp-errors.c:324,12'
          Dst:             ntohs
        - Src:             'lib/ofp-errors.c:326,45'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/ofp-errors.c:331,18'
          Dst:             ntohl
        - Src:             'lib/ofp-errors.c:332,16'
          Dst:             ntohs
        - Src:             'lib/ofp-errors.c:333,16'
          Dst:             ntohs
        - Src:             'lib/ofp-errors.c:335,35'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/ofp-errors.c:340,18'
          Dst:             ntohl
        - Src:             'lib/ofp-errors.c:346,13'
          Dst:             ofperr_decode
        - Src:             'lib/ofp-errors.c:348,9'
          Dst:             ofpbuf_init
        - Src:             'lib/ofp-errors.c:349,9'
          Dst:             ofpbuf_push
        - Src:             'lib/ofp-errors.c:350,9'
          Dst:             ofpbuf_trim
    - functionName:    ofperr_get_code
      functionSourceFile: '/src/openvswitch/lib/ofp-errors.c'
      linkageType:     InternalLinkage
      functionLinenumber: 289
      functionLinenumberEnd: 291
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofperr_domain_from_version
        - ofperr_get_triplet__
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-errors.c:290,42'
          Dst:             ofperr_domain_from_version
        - Src:             'lib/ofp-errors.c:291,21'
          Dst:             ofperr_get_triplet__
    - functionName:    ofperr_get_triplet__
      functionSourceFile: '/src/openvswitch/lib/ofp-errors.c'
      linkageType:     InternalLinkage
      functionLinenumber: 135
      functionLinenumberEnd: 139
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofperr_is_valid
        - ovs_ignore
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-errors.c:138,16'
          Dst:             ofperr_is_valid
        - Src:             'lib/ofp-errors.c:138,5'
          Dst:             ovs_ignore
    - functionName:    ofperr_get_type
      functionSourceFile: '/src/openvswitch/lib/ofp-errors.c'
      linkageType:     InternalLinkage
      functionLinenumber: 275
      functionLinenumberEnd: 277
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofperr_domain_from_version
        - ofperr_get_triplet__
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-errors.c:276,42'
          Dst:             ofperr_domain_from_version
        - Src:             'lib/ofp-errors.c:277,21'
          Dst:             ofperr_get_triplet__
    - functionName:    ofperr_get_vendor
      functionSourceFile: '/src/openvswitch/lib/ofp-errors.c'
      linkageType:     InternalLinkage
      functionLinenumber: 263
      functionLinenumberEnd: 265
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofperr_domain_from_version
        - ofperr_get_triplet__
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-errors.c:264,42'
          Dst:             ofperr_domain_from_version
        - Src:             'lib/ofp-errors.c:265,21'
          Dst:             ofperr_get_triplet__
    - functionName:    ofperr_msg_format
      functionSourceFile: '/src/openvswitch/lib/ofp-errors.c'
      linkageType:     InternalLinkage
      functionLinenumber: 248
      functionLinenumberEnd: 259
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          72
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ds_put_cstr
        - ds_put_format
        - ds_put_printable
        - ofp_to_string
        - ofperr_get_name
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-errors.c:249,36'
          Dst:             ofperr_get_name
        - Src:             'lib/ofp-errors.c:249,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-errors.c:252,9'
          Dst:             ds_put_printable
        - Src:             'lib/ofp-errors.c:254,19'
          Dst:             ofp_to_string
        - Src:             'lib/ofp-errors.c:256,9'
          Dst:             ds_put_cstr
    - functionName:    ofperr_encode_hello
      functionSourceFile: '/src/openvswitch/lib/ofp-errors.c'
      linkageType:     InternalLinkage
      functionLinenumber: 239
      functionLinenumberEnd: 240
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
        - ofperr_encode_msg__
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-errors.c:240,52'
          Dst:             htonl
        - Src:             'lib/ofp-errors.c:240,65'
          Dst:             strlen
        - Src:             'lib/ofp-errors.c:240,12'
          Dst:             ofperr_encode_msg__
    - functionName:    ofperr_encode_msg__
      functionSourceFile: '/src/openvswitch/lib/ofp-errors.c'
      linkageType:     InternalLinkage
      functionLinenumber: 145
      functionLinenumberEnd: 209
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - int
        - int
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         36
      ICount:          296
      EdgeCount:       45
      CyclomaticComplexity: 11
      functionsReached:
        - htonl
        - htons
        - ofpbuf_put
        - ofpbuf_put_uninit
        - ofperr_domain_from_version
        - ofperr_get_name
        - ofperr_get_triplet__
        - ofperr_is_valid
        - ofpmsg_update_length
        - ofpraw_alloc_xid
        - ovs_strerror
        - vlog_rate_limit
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-errors.c:153,14'
          Dst:             ofperr_domain_from_version
        - Src:             'lib/ofp-errors.c:155,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-errors.c:161,10'
          Dst:             ofperr_is_valid
        - Src:             'lib/ofp-errors.c:163,9'
          Dst:             ovs_strerror
        - Src:             'lib/ofp-errors.c:163,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-errors.c:167,9'
          Dst:             ofperr_get_name
        - Src:             'lib/ofp-errors.c:167,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-errors.c:172,15'
          Dst:             ofperr_get_triplet__
        - Src:             'lib/ofp-errors.c:174,15'
          Dst:             ofpraw_alloc_xid
        - Src:             'lib/ofp-errors.c:177,15'
          Dst:             ofpbuf_put_uninit
        - Src:             'lib/ofp-errors.c:178,21'
          Dst:             htons
        - Src:             'lib/ofp-errors.c:179,21'
          Dst:             htons
        - Src:             'lib/ofp-errors.c:183,15'
          Dst:             ofpraw_alloc_xid
        - Src:             'lib/ofp-errors.c:186,15'
          Dst:             ofpbuf_put_uninit
        - Src:             'lib/ofp-errors.c:187,21'
          Dst:             htons
        - Src:             'lib/ofp-errors.c:188,21'
          Dst:             htons
        - Src:             'lib/ofp-errors.c:190,15'
          Dst:             ofpbuf_put_uninit
        - Src:             'lib/ofp-errors.c:191,23'
          Dst:             htonl
        - Src:             'lib/ofp-errors.c:192,21'
          Dst:             htons
        - Src:             'lib/ofp-errors.c:193,21'
          Dst:             htons
        - Src:             'lib/ofp-errors.c:195,27'
          Dst:             htonl
        - Src:             'lib/ofp-errors.c:197,15'
          Dst:             ofpraw_alloc_xid
        - Src:             'lib/ofp-errors.c:200,15'
          Dst:             ofpbuf_put_uninit
        - Src:             'lib/ofp-errors.c:201,21'
          Dst:             htons
        - Src:             'lib/ofp-errors.c:202,21'
          Dst:             htons
        - Src:             'lib/ofp-errors.c:203,9'
          Dst:             ofpbuf_put
        - Src:             'lib/ofp-errors.c:206,5'
          Dst:             ofpbuf_put
        - Src:             'lib/ofp-errors.c:207,5'
          Dst:             ofpmsg_update_length
    - functionName:    ofperr_encode_reply
      functionSourceFile: '/src/openvswitch/lib/ofp-errors.c'
      linkageType:     InternalLinkage
      functionLinenumber: 224
      functionLinenumberEnd: 226
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohs
        - ofperr_encode_msg__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-errors.c:226,36'
          Dst:             ntohs
        - Src:             'lib/ofp-errors.c:225,12'
          Dst:             ofperr_encode_msg__
    - functionName:    ofperr_get_description
      functionSourceFile: '/src/openvswitch/lib/ofp-errors.c'
      linkageType:     InternalLinkage
      functionLinenumber: 127
      functionLinenumberEnd: 129
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofperr_is_valid
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-errors.c:128,13'
          Dst:             ofperr_is_valid
    - functionName:    ofperr_from_name
      functionSourceFile: '/src/openvswitch/lib/ofp-errors.c'
      linkageType:     InternalLinkage
      functionLinenumber: 111
      functionLinenumberEnd: 120
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          51
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - strcmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-errors.c:115,14'
          Dst:             strcmp
    - functionName:    ofperr_domain_get_name
      functionSourceFile: '/src/openvswitch/lib/ofp-errors.c'
      linkageType:     InternalLinkage
      functionLinenumber: 68
      functionLinenumberEnd: 70
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofperr_domain_from_version
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-errors.c:69,42'
          Dst:             ofperr_domain_from_version
    - functionName:    init_this_module_ofp_flow
      functionSourceFile: '/src/openvswitch/lib/ofp-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37
      functionLinenumberEnd: 37
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-flow.c:37,1'
          Dst:             vlog_insert_module
    - functionName:    be32_to_be16
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 135
      functionLinenumberEnd: 135
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pt_ns_type_be
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1577
      functionLinenumberEnd: 1578
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - be32_to_be16
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:1578,12'
          Dst:             be32_to_be16
    - functionName:    pt_ns
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1570
      functionLinenumberEnd: 1571
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:1571,12'
          Dst:             ntohl
    - functionName:    parse_subfield
      functionSourceFile: '/src/openvswitch/lib/ofp-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1446
      functionLinenumberEnd: 1483
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          142
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - bitwise_copy
        - bitwise_is_all_zeros
        - bitwise_one
        - ds_cstr
        - ds_destroy
        - ds_init
        - match_add_ethernet_prereq
        - mf_format
        - mf_get
        - mf_parse_subfield
        - mf_set
        - parse_int_string
        - xasprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-flow.c:1450,13'
          Dst:             mf_parse_subfield
        - Src:             'lib/ofp-flow.c:1454,13'
          Dst:             parse_int_string
        - Src:             'lib/ofp-flow.c:1456,20'
          Dst:             xasprintf
        - Src:             'lib/ofp-flow.c:1459,14'
          Dst:             bitwise_is_all_zeros
        - Src:             'lib/ofp-flow.c:1463,13'
          Dst:             ds_init
        - Src:             'lib/ofp-flow.c:1464,13'
          Dst:             mf_format
        - Src:             'lib/ofp-flow.c:1466,37'
          Dst:             ds_cstr
        - Src:             'lib/ofp-flow.c:1465,21'
          Dst:             xasprintf
        - Src:             'lib/ofp-flow.c:1467,13'
          Dst:             ds_destroy
        - Src:             'lib/ofp-flow.c:1475,9'
          Dst:             mf_get
        - Src:             'lib/ofp-flow.c:1476,9'
          Dst:             bitwise_copy
        - Src:             'lib/ofp-flow.c:1477,9'
          Dst:             bitwise_one
        - Src:             'lib/ofp-flow.c:1478,30'
          Dst:             mf_set
        - Src:             'lib/ofp-flow.c:1480,9'
          Dst:             match_add_ethernet_prereq
    - functionName:    ovs_list_is_empty
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 320
      functionLinenumberEnd: 321
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ipv6_addr_equals
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1184
      functionLinenumberEnd: 1186
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          80
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    parse_ofp_exact_flow
      functionSourceFile: '/src/openvswitch/lib/ofp-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1932
      functionLinenumberEnd: 2017
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         46
      ICount:          263
      EdgeCount:       62
      CyclomaticComplexity: 18
      functionsReached:
        - htons
        - mf_are_prereqs_ok
        - mf_from_name
        - mf_is_set
        - mf_mask_field
        - mf_parse_value
        - mf_set_flow_value
        - ofp_parse_protocol
        - ofputil_parse_key_value
        - xasprintf
        - xstrdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-flow.c:1943,18'
          Dst:             xstrdup
        - Src:             'lib/ofp-flow.c:1944,12'
          Dst:             ofputil_parse_key_value
        - Src:             'lib/ofp-flow.c:1946,13'
          Dst:             ofp_parse_protocol
        - Src:             'lib/ofp-flow.c:1948,25'
          Dst:             xasprintf
        - Src:             'lib/ofp-flow.c:1951,29'
          Dst:             htons
        - Src:             'lib/ofp-flow.c:1958,29'
          Dst:             xasprintf
        - Src:             'lib/ofp-flow.c:1972,18'
          Dst:             mf_from_name
        - Src:             'lib/ofp-flow.c:1974,25'
          Dst:             xasprintf
        - Src:             'lib/ofp-flow.c:1978,18'
          Dst:             mf_are_prereqs_ok
        - Src:             'lib/ofp-flow.c:1979,25'
          Dst:             xasprintf
        - Src:             'lib/ofp-flow.c:1984,17'
          Dst:             mf_is_set
        - Src:             'lib/ofp-flow.c:1985,25'
          Dst:             xasprintf
        - Src:             'lib/ofp-flow.c:1989,27'
          Dst:             mf_parse_value
        - Src:             'lib/ofp-flow.c:1991,25'
          Dst:             xasprintf
        - Src:             'lib/ofp-flow.c:1997,13'
          Dst:             mf_set_flow_value
        - Src:             'lib/ofp-flow.c:1999,17'
          Dst:             mf_mask_field
    - functionName:    parse_ofp_flow_mod_file
      functionSourceFile: '/src/openvswitch/lib/ofp-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1858
      functionLinenumberEnd: 1917
      functionDepth:   0
      returnType:      'N/A'
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          208
      EdgeCount:       35
      CyclomaticComplexity: 10
      functionsReached:
        - __errno_location
        - ds_cstr
        - ds_destroy
        - ds_get_preprocessed_line
        - ds_init
        - fclose
        - fopen
        - minimatch_destroy
        - ovs_strerror
        - parse_ofp_flow_mod_str
        - strcmp
        - x2nrealloc
        - xasprintf
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-flow.c:1869,15'
          Dst:             strcmp
        - Src:             'lib/ofp-flow.c:1869,48'
          Dst:             fopen
        - Src:             'lib/ofp-flow.c:1872,50'
          Dst:             __errno_location
        - Src:             'lib/ofp-flow.c:1872,37'
          Dst:             ovs_strerror
        - Src:             'lib/ofp-flow.c:1871,16'
          Dst:             xasprintf
        - Src:             'lib/ofp-flow.c:1876,5'
          Dst:             ds_init
        - Src:             'lib/ofp-flow.c:1878,13'
          Dst:             ds_get_preprocessed_line
        - Src:             'lib/ofp-flow.c:1883,20'
          Dst:             x2nrealloc
        - Src:             'lib/ofp-flow.c:1885,57'
          Dst:             ds_cstr
        - Src:             'lib/ofp-flow.c:1885,17'
          Dst:             parse_ofp_flow_mod_str
        - Src:             'lib/ofp-flow.c:1893,17'
          Dst:             minimatch_destroy
        - Src:             'lib/ofp-flow.c:1899,13'
          Dst:             ds_destroy
        - Src:             'lib/ofp-flow.c:1901,17'
          Dst:             fclose
        - Src:             'lib/ofp-flow.c:1904,23'
          Dst:             xasprintf
        - Src:             'lib/ofp-flow.c:1912,5'
          Dst:             ds_destroy
        - Src:             'lib/ofp-flow.c:1914,9'
          Dst:             fclose
    - functionName:    parse_ofp_flow_mod_str
      functionSourceFile: '/src/openvswitch/lib/ofp-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1825
      functionLinenumberEnd: 1838
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - minimatch_expand
        - ofputil_normalize_match
        - parse_ofp_str
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-flow.c:1826,19'
          Dst:             parse_ofp_str
        - Src:             'lib/ofp-flow.c:1834,9'
          Dst:             minimatch_expand
        - Src:             'lib/ofp-flow.c:1835,9'
          Dst:             ofputil_normalize_match
    - functionName:    parse_ofp_str
      functionSourceFile: '/src/openvswitch/lib/ofp-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1795
      functionLinenumberEnd: 1807
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - parse_ofp_str__
        - xstrdup
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-flow.c:1796,20'
          Dst:             xstrdup
        - Src:             'lib/ofp-flow.c:1799,13'
          Dst:             parse_ofp_str__
    - functionName:    parse_ofp_str__
      functionSourceFile: '/src/openvswitch/lib/ofp-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1490
      functionLinenumberEnd: 1771
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         225
      ICount:          1213
      EdgeCount:       300
      CyclomaticComplexity: 77
      functionsReached:
        - abort
        - htonl
        - htonll
        - htons
        - match_set_default_packet_type
        - match_set_dl_type
        - match_set_nw_proto
        - match_set_packet_type
        - mf_from_name
        - minimatch_init
        - ofp_extract_actions
        - ofp_parse_field
        - ofp_parse_protocol
        - ofpacts_check
        - ofpacts_parse_instructions
        - ofpbuf_init
        - ofpbuf_steal_data
        - ofpbuf_uninit
        - ofperr_to_string
        - ofputil_group_from_string
        - ofputil_parse_key_value
        - ofputil_port_from_string
        - ofputil_table_from_string
        - parse_subfield
        - pt_ns
        - pt_ns_type_be
        - str_to_be64
        - str_to_u16
        - strchr
        - strcmp
        - strcspn
        - strncmp
        - strspn
        - xasprintf
        - xstrdup
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-flow.c:1527,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-flow.c:1507,19'
          Dst:             strspn
        - Src:             'lib/ofp-flow.c:1508,15'
          Dst:             strcspn
        - Src:             'lib/ofp-flow.c:1510,14'
          Dst:             strncmp
        - Src:             'lib/ofp-flow.c:1512,21'
          Dst:             strncmp
        - Src:             'lib/ofp-flow.c:1514,21'
          Dst:             strncmp
        - Src:             'lib/ofp-flow.c:1516,21'
          Dst:             strncmp
        - Src:             'lib/ofp-flow.c:1518,21'
          Dst:             strncmp
        - Src:             'lib/ofp-flow.c:1553,9'
          Dst:             abort
        - Src:             'lib/ofp-flow.c:1570,19'
          Dst:             ofp_extract_actions
        - Src:             'lib/ofp-flow.c:1572,20'
          Dst:             xstrdup
        - Src:             'lib/ofp-flow.c:1577,12'
          Dst:             ofputil_parse_key_value
        - Src:             'lib/ofp-flow.c:1582,13'
          Dst:             ofp_parse_protocol
        - Src:             'lib/ofp-flow.c:1583,39'
          Dst:             htons
        - Src:             'lib/ofp-flow.c:1583,13'
          Dst:             match_set_dl_type
        - Src:             'lib/ofp-flow.c:1585,17'
          Dst:             match_set_nw_proto
        - Src:             'lib/ofp-flow.c:1587,13'
          Dst:             match_set_default_packet_type
        - Src:             'lib/ofp-flow.c:1588,21'
          Dst:             strcmp
        - Src:             'lib/ofp-flow.c:1589,43'
          Dst:             htonl
        - Src:             'lib/ofp-flow.c:1589,13'
          Dst:             match_set_packet_type
        - Src:             'lib/ofp-flow.c:1590,41'
          Dst:             strcmp
        - Src:             'lib/ofp-flow.c:1592,41'
          Dst:             strcmp
        - Src:             'lib/ofp-flow.c:1594,41'
          Dst:             strcmp
        - Src:             'lib/ofp-flow.c:1597,41'
          Dst:             strcmp
        - Src:             'lib/ofp-flow.c:1600,41'
          Dst:             strcmp
        - Src:             'lib/ofp-flow.c:1603,21'
          Dst:             strcmp
        - Src:             'lib/ofp-flow.c:1604,24'
          Dst:             strcmp
        - Src:             'lib/ofp-flow.c:1606,26'
          Dst:             mf_from_name
        - Src:             'lib/ofp-flow.c:1607,21'
          Dst:             ofp_parse_field
        - Src:             'lib/ofp-flow.c:1609,20'
          Dst:             strchr
        - Src:             'lib/ofp-flow.c:1610,21'
          Dst:             parse_subfield
        - Src:             'lib/ofp-flow.c:1613,24'
          Dst:             xasprintf
        - Src:             'lib/ofp-flow.c:1616,18'
          Dst:             strcmp
        - Src:             'lib/ofp-flow.c:1617,22'
          Dst:             ofputil_table_from_string
        - Src:             'lib/ofp-flow.c:1619,28'
          Dst:             xasprintf
        - Src:             'lib/ofp-flow.c:1624,48'
          Dst:             strcmp
        - Src:             'lib/ofp-flow.c:1625,22'
          Dst:             ofputil_port_from_string
        - Src:             'lib/ofp-flow.c:1627,29'
          Dst:             xasprintf
        - Src:             'lib/ofp-flow.c:1630,48'
          Dst:             strcmp
        - Src:             'lib/ofp-flow.c:1632,22'
          Dst:             ofputil_group_from_string
        - Src:             'lib/ofp-flow.c:1633,29'
          Dst:             xasprintf
        - Src:             'lib/ofp-flow.c:1636,48'
          Dst:             strcmp
        - Src:             'lib/ofp-flow.c:1639,25'
          Dst:             str_to_u16
        - Src:             'lib/ofp-flow.c:1641,47'
          Dst:             strcmp
        - Src:             'lib/ofp-flow.c:1642,25'
          Dst:             str_to_u16
        - Src:             'lib/ofp-flow.c:1643,47'
          Dst:             strcmp
        - Src:             'lib/ofp-flow.c:1644,25'
          Dst:             str_to_u16
        - Src:             'lib/ofp-flow.c:1645,50'
          Dst:             strcmp
        - Src:             'lib/ofp-flow.c:1646,25'
          Dst:             str_to_u16
        - Src:             'lib/ofp-flow.c:1647,25'
          Dst:             strcmp
        - Src:             'lib/ofp-flow.c:1648,30'
          Dst:             strchr
        - Src:             'lib/ofp-flow.c:1653,32'
          Dst:             xstrdup
        - Src:             'lib/ofp-flow.c:1657,29'
          Dst:             str_to_be64
        - Src:             'lib/ofp-flow.c:1661,29'
          Dst:             str_to_be64
        - Src:             'lib/ofp-flow.c:1665,44'
          Dst:             htonll
        - Src:             'lib/ofp-flow.c:1672,32'
          Dst:             xasprintf
        - Src:             'lib/ofp-flow.c:1676,29'
          Dst:             str_to_be64
        - Src:             'lib/ofp-flow.c:1679,25'
          Dst:             strcmp
        - Src:             'lib/ofp-flow.c:1680,28'
          Dst:             strcmp
        - Src:             'lib/ofp-flow.c:1681,28'
          Dst:             strcmp
        - Src:             'lib/ofp-flow.c:1682,28'
          Dst:             strcmp
        - Src:             'lib/ofp-flow.c:1683,28'
          Dst:             strcmp
        - Src:             'lib/ofp-flow.c:1688,25'
          Dst:             xasprintf
        - Src:             'lib/ofp-flow.c:1699,13'
          Dst:             pt_ns
        - Src:             'lib/ofp-flow.c:1700,30'
          Dst:             pt_ns_type_be
        - Src:             'lib/ofp-flow.c:1703,31'
          Dst:             htons
        - Src:             'lib/ofp-flow.c:1721,26'
          Dst:             htonll
        - Src:             'lib/ofp-flow.c:1728,9'
          Dst:             ofpbuf_init
        - Src:             'lib/ofp-flow.c:1735,17'
          Dst:             ofpacts_parse_instructions
        - Src:             'lib/ofp-flow.c:1746,19'
          Dst:             ofpacts_check
        - Src:             'lib/ofp-flow.c:1753,43'
          Dst:             ofperr_to_string
        - Src:             'lib/ofp-flow.c:1752,25'
          Dst:             xasprintf
        - Src:             'lib/ofp-flow.c:1758,13'
          Dst:             ofpbuf_uninit
        - Src:             'lib/ofp-flow.c:1763,23'
          Dst:             ofpbuf_steal_data
        - Src:             'lib/ofp-flow.c:1768,5'
          Dst:             minimatch_init
    - functionName:    htonll
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 30
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
      functionUses:    19
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byte-order.h:30,12'
          Dst:             htonl
        - Src:             'lib/byte-order.h:30,44'
          Dst:             htonl
        - Src:             'lib/byte-order.h:30,62'
          Dst:             htonl
    - functionName:    ofputil_aggregate_stats_format
      functionSourceFile: '/src/openvswitch/lib/ofp-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1431
      functionLinenumberEnd: 1435
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_format
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-flow.c:1432,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-flow.c:1433,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-flow.c:1434,5'
          Dst:             ds_put_format
    - functionName:    ofputil_decode_aggregate_stats_reply
      functionSourceFile: '/src/openvswitch/lib/ofp-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1401
      functionLinenumberEnd: 1426
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          98
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - get_32aligned_be64
        - ntohl
        - ntohll
        - ntohs
        - ofpbuf_const_initializer
        - ofpraw_pull_assert
        - oxs_pull_stat
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-flow.c:1402,57'
          Dst:             ntohs
        - Src:             'lib/ofp-flow.c:1402,25'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/ofp-flow.c:1405,11'
          Dst:             ofpraw_pull_assert
        - Src:             'lib/ofp-flow.c:1410,29'
          Dst:             oxs_pull_stat
        - Src:             'lib/ofp-flow.c:1420,38'
          Dst:             get_32aligned_be64
        - Src:             'lib/ofp-flow.c:1420,31'
          Dst:             ntohll
        - Src:             'lib/ofp-flow.c:1421,36'
          Dst:             get_32aligned_be64
        - Src:             'lib/ofp-flow.c:1421,29'
          Dst:             ntohll
        - Src:             'lib/ofp-flow.c:1422,29'
          Dst:             ntohl
    - functionName:    ofpbuf_const_initializer
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 97
      functionLinenumberEnd: 105
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          30
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_32aligned_be64
      functionSourceFile: '/src/openvswitch/lib/unaligned.h'
      linkageType:     InternalLinkage
      functionLinenumber: 270
      functionLinenumberEnd: 274
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ntohll
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
        - ntohl
      functionUses:    12
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byte-order.h:36,12'
          Dst:             htonl
        - Src:             'lib/byte-order.h:36,44'
          Dst:             ntohl
        - Src:             'lib/byte-order.h:36,62'
          Dst:             ntohl
    - functionName:    ofputil_encode_aggregate_stats_reply
      functionSourceFile: '/src/openvswitch/lib/ofp-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1360
      functionLinenumberEnd: 1395
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          116
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - htonl
        - htonll
        - ofpbuf_put_zeros
        - ofpraw_alloc_stats_reply
        - ofpraw_decode
        - oxs_put_stats
        - put_32aligned_be64
        - unknown_to_zero
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-flow.c:1367,5'
          Dst:             ofpraw_decode
        - Src:             'lib/ofp-flow.c:1369,15'
          Dst:             ofpraw_alloc_stats_reply
        - Src:             'lib/ofp-flow.c:1379,9'
          Dst:             oxs_put_stats
        - Src:             'lib/ofp-flow.c:1382,28'
          Dst:             unknown_to_zero
        - Src:             'lib/ofp-flow.c:1383,26'
          Dst:             unknown_to_zero
        - Src:             'lib/ofp-flow.c:1389,15'
          Dst:             ofpraw_alloc_stats_reply
        - Src:             'lib/ofp-flow.c:1390,15'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-flow.c:1391,48'
          Dst:             htonll
        - Src:             'lib/ofp-flow.c:1391,9'
          Dst:             put_32aligned_be64
        - Src:             'lib/ofp-flow.c:1392,46'
          Dst:             htonll
        - Src:             'lib/ofp-flow.c:1392,9'
          Dst:             put_32aligned_be64
        - Src:             'lib/ofp-flow.c:1393,27'
          Dst:             htonl
    - functionName:    unknown_to_zero
      functionSourceFile: '/src/openvswitch/lib/ofp-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1119
      functionLinenumberEnd: 1120
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          20
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    put_32aligned_be64
      functionSourceFile: '/src/openvswitch/lib/unaligned.h'
      linkageType:     InternalLinkage
      functionLinenumber: 281
      functionLinenumberEnd: 289
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          19
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    print_flow_stat
      functionSourceFile: '/src/openvswitch/lib/ofp-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1272
      functionLinenumberEnd: 1280
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_char
        - ds_put_cstr
        - ds_put_format
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-flow.c:1273,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-flow.c:1275,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-flow.c:1277,9'
          Dst:             ds_put_char
        - Src:             'lib/ofp-flow.c:1279,5'
          Dst:             ds_put_cstr
    - functionName:    ds_put_char
      functionSourceFile: '/src/openvswitch/./include/openvswitch/dynamic-string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_char__
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/dynamic-string.h:99,9'
          Dst:             ds_put_char__
    - functionName:    ofputil_flow_stats_format
      functionSourceFile: '/src/openvswitch/lib/ofp-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1292
      functionLinenumberEnd: 1352
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         50
      ICount:          353
      EdgeCount:       67
      CyclomaticComplexity: 19
      functionsReached:
        - ds_put_char
        - ds_put_cstr
        - ds_put_format
        - match_format
        - ntohll
        - ofp_print_duration
        - ofpacts_format
        - ofputil_flow_mod_flags_format
        - ofputil_format_table
        - ofputil_table_map_get_name
        - print_flow_stat
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-flow.c:1295,49'
          Dst:             ntohll
        - Src:             'lib/ofp-flow.c:1294,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-flow.c:1298,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-flow.c:1299,9'
          Dst:             ofp_print_duration
        - Src:             'lib/ofp-flow.c:1300,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-flow.c:1304,12'
          Dst:             ofputil_table_map_get_name
        - Src:             'lib/ofp-flow.c:1305,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-flow.c:1306,9'
          Dst:             ofputil_format_table
        - Src:             'lib/ofp-flow.c:1307,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-flow.c:1310,9'
          Dst:             print_flow_stat
        - Src:             'lib/ofp-flow.c:1311,9'
          Dst:             print_flow_stat
        - Src:             'lib/ofp-flow.c:1314,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-flow.c:1318,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-flow.c:1322,9'
          Dst:             ofputil_flow_mod_flags_format
        - Src:             'lib/ofp-flow.c:1325,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-flow.c:1329,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-flow.c:1333,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-flow.c:1340,5'
          Dst:             match_format
        - Src:             'lib/ofp-flow.c:1342,9'
          Dst:             ds_put_char
        - Src:             'lib/ofp-flow.c:1345,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-flow.c:1351,5'
          Dst:             ofpacts_format
    - functionName:    ofputil_flow_mod_flags_format
      functionSourceFile: '/src/openvswitch/lib/ofp-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 111
      functionLinenumberEnd: 133
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         24
      ICount:          120
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - ds_put_cstr
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-flow.c:113,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-flow.c:116,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-flow.c:119,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-flow.c:122,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-flow.c:125,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-flow.c:128,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-flow.c:131,9'
          Dst:             ds_put_cstr
    - functionName:    ofpbuf_headersize
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 236
      functionLinenumberEnd: 237
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofpbuf_at_assert
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 195
      functionLinenumberEnd: 198
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:196,5'
          Dst:             ovs_ignore
        - Src:             './include/openvswitch/ofpbuf.h:197,5'
          Dst:             ovs_ignore
    - functionName:    ovs_list_back
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 295
      functionLinenumberEnd: 300
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovs_list_is_empty
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/list.h:298,17'
          Dst:             ovs_list_is_empty
        - Src:             './include/openvswitch/list.h:298,5'
          Dst:             ovs_ignore
    - functionName:    ofpbuf_from_list
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 280
      functionLinenumberEnd: 281
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofputil_append_flow_stats_reply
      functionSourceFile: '/src/openvswitch/lib/ofp-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1130
      functionLinenumberEnd: 1268
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         47
      ICount:          717
      EdgeCount:       60
      CyclomaticComplexity: 15
      functionsReached:
        - abort
        - htonl
        - htonll
        - htons
        - nx_put_match
        - ofpacts_put_openflow_actions
        - ofpacts_put_openflow_instructions
        - ofpbuf_at_assert
        - ofpbuf_from_list
        - ofpbuf_headersize
        - ofpbuf_put_uninit
        - ofpmp_decode_raw
        - ofpmp_postappend
        - ofpmp_version
        - ofputil_encode_flow_mod_flags
        - ofputil_match_to_ofp10_match
        - ovs_list_back
        - oxm_put_match
        - oxs_put_stats
        - put_32aligned_be64
        - unknown_to_zero
        - vlog_rate_limit
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-flow.c:1134,45'
          Dst:             ovs_list_back
        - Src:             'lib/ofp-flow.c:1134,28'
          Dst:             ofpbuf_from_list
        - Src:             'lib/ofp-flow.c:1136,32'
          Dst:             ofpmp_version
        - Src:             'lib/ofp-flow.c:1137,23'
          Dst:             ofpmp_decode_raw
        - Src:             'lib/ofp-flow.c:1145,9'
          Dst:             ofpbuf_put_uninit
        - Src:             'lib/ofp-flow.c:1146,9'
          Dst:             oxm_put_match
        - Src:             'lib/ofp-flow.c:1156,9'
          Dst:             oxs_put_stats
        - Src:             'lib/ofp-flow.c:1158,9'
          Dst:             ofpacts_put_openflow_instructions
        - Src:             'lib/ofp-flow.c:1161,15'
          Dst:             ofpbuf_at_assert
        - Src:             'lib/ofp-flow.c:1162,23'
          Dst:             htons
        - Src:             'lib/ofp-flow.c:1164,25'
          Dst:             htons
        - Src:             'lib/ofp-flow.c:1165,29'
          Dst:             htons
        - Src:             'lib/ofp-flow.c:1166,29'
          Dst:             htons
        - Src:             'lib/ofp-flow.c:1170,27'
          Dst:             htons
        - Src:             'lib/ofp-flow.c:1171,22'
          Dst:             ofputil_encode_flow_mod_flags
        - Src:             'lib/ofp-flow.c:1176,9'
          Dst:             ofpbuf_put_uninit
        - Src:             'lib/ofp-flow.c:1177,9'
          Dst:             oxm_put_match
        - Src:             'lib/ofp-flow.c:1178,9'
          Dst:             ofpacts_put_openflow_instructions
        - Src:             'lib/ofp-flow.c:1181,15'
          Dst:             ofpbuf_at_assert
        - Src:             'lib/ofp-flow.c:1182,23'
          Dst:             htons
        - Src:             'lib/ofp-flow.c:1185,29'
          Dst:             htonl
        - Src:             'lib/ofp-flow.c:1186,30'
          Dst:             htonl
        - Src:             'lib/ofp-flow.c:1187,25'
          Dst:             htons
        - Src:             'lib/ofp-flow.c:1188,29'
          Dst:             htons
        - Src:             'lib/ofp-flow.c:1189,29'
          Dst:             htons
        - Src:             'lib/ofp-flow.c:1191,31'
          Dst:             htons
        - Src:             'lib/ofp-flow.c:1196,26'
          Dst:             ofputil_encode_flow_mod_flags
        - Src:             'lib/ofp-flow.c:1202,36'
          Dst:             unknown_to_zero
        - Src:             'lib/ofp-flow.c:1202,29'
          Dst:             htonll
        - Src:             'lib/ofp-flow.c:1203,34'
          Dst:             unknown_to_zero
        - Src:             'lib/ofp-flow.c:1203,27'
          Dst:             htonll
        - Src:             'lib/ofp-flow.c:1207,9'
          Dst:             ofpbuf_put_uninit
        - Src:             'lib/ofp-flow.c:1208,9'
          Dst:             ofpacts_put_openflow_actions
        - Src:             'lib/ofp-flow.c:1210,15'
          Dst:             ofpbuf_at_assert
        - Src:             'lib/ofp-flow.c:1211,23'
          Dst:             htons
        - Src:             'lib/ofp-flow.c:1214,9'
          Dst:             ofputil_match_to_ofp10_match
        - Src:             'lib/ofp-flow.c:1215,29'
          Dst:             htonl
        - Src:             'lib/ofp-flow.c:1216,30'
          Dst:             htonl
        - Src:             'lib/ofp-flow.c:1217,25'
          Dst:             htons
        - Src:             'lib/ofp-flow.c:1218,29'
          Dst:             htons
        - Src:             'lib/ofp-flow.c:1219,29'
          Dst:             htons
        - Src:             'lib/ofp-flow.c:1221,9'
          Dst:             put_32aligned_be64
        - Src:             'lib/ofp-flow.c:1223,35'
          Dst:             unknown_to_zero
        - Src:             'lib/ofp-flow.c:1223,28'
          Dst:             htonll
        - Src:             'lib/ofp-flow.c:1222,9'
          Dst:             put_32aligned_be64
        - Src:             'lib/ofp-flow.c:1225,35'
          Dst:             unknown_to_zero
        - Src:             'lib/ofp-flow.c:1225,28'
          Dst:             htonll
        - Src:             'lib/ofp-flow.c:1224,9'
          Dst:             put_32aligned_be64
        - Src:             'lib/ofp-flow.c:1230,9'
          Dst:             ofpbuf_put_uninit
        - Src:             'lib/ofp-flow.c:1231,21'
          Dst:             nx_put_match
        - Src:             'lib/ofp-flow.c:1232,9'
          Dst:             ofpacts_put_openflow_actions
        - Src:             'lib/ofp-flow.c:1234,15'
          Dst:             ofpbuf_at_assert
        - Src:             'lib/ofp-flow.c:1235,23'
          Dst:             htons
        - Src:             'lib/ofp-flow.c:1238,29'
          Dst:             htonl
        - Src:             'lib/ofp-flow.c:1239,30'
          Dst:             htonl
        - Src:             'lib/ofp-flow.c:1240,25'
          Dst:             htons
        - Src:             'lib/ofp-flow.c:1241,29'
          Dst:             htons
        - Src:             'lib/ofp-flow.c:1242,29'
          Dst:             htons
        - Src:             'lib/ofp-flow.c:1243,25'
          Dst:             htons
        - Src:             'lib/ofp-flow.c:1246,25'
          Dst:             htons
        - Src:             'lib/ofp-flow.c:1249,26'
          Dst:             htons
        - Src:             'lib/ofp-flow.c:1251,29'
          Dst:             htonll
        - Src:             'lib/ofp-flow.c:1252,27'
          Dst:             htonll
        - Src:             'lib/ofp-flow.c:1254,9'
          Dst:             abort
        - Src:             'lib/ofp-flow.c:1257,51'
          Dst:             ofpbuf_headersize
        - Src:             'lib/ofp-flow.c:1262,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-flow.c:1265,9'
          Dst:             ofpmp_postappend
    - functionName:    ofputil_encode_flow_mod_flags
      functionSourceFile: '/src/openvswitch/lib/ofp-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 93
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      short
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          97
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - htons
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-flow.c:106,12'
          Dst:             htons
    - functionName:    ofpbuf_try_pull
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 275
      functionLinenumberEnd: 276
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofpbuf_pull
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:276,30'
          Dst:             ofpbuf_pull
    - functionName:    ofpbuf_pull
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 258
      functionLinenumberEnd: 269
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          64
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:259,5'
          Dst:             ovs_ignore
    - functionName:    ofputil_decode_flow_stats_reply
      functionSourceFile: '/src/openvswitch/lib/ofp-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 896
      functionLinenumberEnd: 1111
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         135
      ICount:          1047
      EdgeCount:       175
      CyclomaticComplexity: 42
      functionsReached:
        - abort
        - get_32aligned_be64
        - ntohl
        - ntohll
        - ntohs
        - nx_pull_match
        - ofpacts_pull_openflow_instructions
        - ofpbuf_try_pull
        - ofpraw_decode
        - ofpraw_pull
        - ofputil_decode_flow_mod_flags
        - ofputil_match_from_ofp10_match
        - ofputil_pull_ofp11_match
        - oxs_pull_stat
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-flow.c:902,28'
          Dst:             ofpraw_decode
        - Src:             'lib/ofp-flow.c:903,16'
          Dst:             ofpraw_pull
        - Src:             'lib/ofp-flow.c:918,15'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/ofp-flow.c:920,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-flow.c:925,18'
          Dst:             ntohs
        - Src:             'lib/ofp-flow.c:927,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-flow.c:932,13'
          Dst:             ofputil_pull_ofp11_match
        - Src:             'lib/ofp-flow.c:934,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-flow.c:938,24'
          Dst:             ntohs
        - Src:             'lib/ofp-flow.c:941,28'
          Dst:             ntohs
        - Src:             'lib/ofp-flow.c:942,28'
          Dst:             ntohs
        - Src:             'lib/ofp-flow.c:943,26'
          Dst:             ntohs
        - Src:             'lib/ofp-flow.c:945,17'
          Dst:             ofputil_decode_flow_mod_flags
        - Src:             'lib/ofp-flow.c:952,13'
          Dst:             oxs_pull_stat
        - Src:             'lib/ofp-flow.c:953,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-flow.c:970,15'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/ofp-flow.c:972,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-flow.c:977,18'
          Dst:             ntohs
        - Src:             'lib/ofp-flow.c:979,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-flow.c:984,17'
          Dst:             ofputil_pull_ofp11_match
        - Src:             'lib/ofp-flow.c:987,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-flow.c:992,24'
          Dst:             ntohs
        - Src:             'lib/ofp-flow.c:994,28'
          Dst:             ntohl
        - Src:             'lib/ofp-flow.c:995,29'
          Dst:             ntohl
        - Src:             'lib/ofp-flow.c:996,28'
          Dst:             ntohs
        - Src:             'lib/ofp-flow.c:997,28'
          Dst:             ntohs
        - Src:             'lib/ofp-flow.c:999,30'
          Dst:             ntohs
        - Src:             'lib/ofp-flow.c:1004,21'
          Dst:             ofputil_decode_flow_mod_flags
        - Src:             'lib/ofp-flow.c:1015,28'
          Dst:             ntohll
        - Src:             'lib/ofp-flow.c:1016,26'
          Dst:             ntohll
        - Src:             'lib/ofp-flow.c:1021,15'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/ofp-flow.c:1023,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-flow.c:1028,18'
          Dst:             ntohs
        - Src:             'lib/ofp-flow.c:1030,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-flow.c:1036,22'
          Dst:             get_32aligned_be64
        - Src:             'lib/ofp-flow.c:1037,9'
          Dst:             ofputil_match_from_ofp10_match
        - Src:             'lib/ofp-flow.c:1038,24'
          Dst:             ntohs
        - Src:             'lib/ofp-flow.c:1040,28'
          Dst:             ntohl
        - Src:             'lib/ofp-flow.c:1041,29'
          Dst:             ntohl
        - Src:             'lib/ofp-flow.c:1042,28'
          Dst:             ntohs
        - Src:             'lib/ofp-flow.c:1043,28'
          Dst:             ntohs
        - Src:             'lib/ofp-flow.c:1047,35'
          Dst:             get_32aligned_be64
        - Src:             'lib/ofp-flow.c:1047,28'
          Dst:             ntohll
        - Src:             'lib/ofp-flow.c:1048,33'
          Dst:             get_32aligned_be64
        - Src:             'lib/ofp-flow.c:1048,26'
          Dst:             ntohll
        - Src:             'lib/ofp-flow.c:1054,15'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/ofp-flow.c:1056,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-flow.c:1061,18'
          Dst:             ntohs
        - Src:             'lib/ofp-flow.c:1062,21'
          Dst:             ntohs
        - Src:             'lib/ofp-flow.c:1064,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-flow.c:1068,17'
          Dst:             nx_pull_match
        - Src:             'lib/ofp-flow.c:1077,28'
          Dst:             ntohl
        - Src:             'lib/ofp-flow.c:1078,29'
          Dst:             ntohl
        - Src:             'lib/ofp-flow.c:1079,24'
          Dst:             ntohs
        - Src:             'lib/ofp-flow.c:1080,28'
          Dst:             ntohs
        - Src:             'lib/ofp-flow.c:1081,28'
          Dst:             ntohs
        - Src:             'lib/ofp-flow.c:1087,32'
          Dst:             ntohs
        - Src:             'lib/ofp-flow.c:1090,32'
          Dst:             ntohs
        - Src:             'lib/ofp-flow.c:1093,28'
          Dst:             ntohll
        - Src:             'lib/ofp-flow.c:1094,26'
          Dst:             ntohll
        - Src:             'lib/ofp-flow.c:1097,9'
          Dst:             abort
        - Src:             'lib/ofp-flow.c:1100,13'
          Dst:             ofpacts_pull_openflow_instructions
        - Src:             'lib/ofp-flow.c:1104,9'
          Dst:             vlog_rate_limit
    - functionName:    ofputil_decode_flow_mod_flags
      functionSourceFile: '/src/openvswitch/lib/ofp-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - short
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          152
      EdgeCount:       33
      CyclomaticComplexity: 10
      functionsReached:
        - ntohs
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-flow.c:64,26'
          Dst:             ntohs
    - functionName:    parse_ofp_flow_stats_request_str
      functionSourceFile: '/src/openvswitch/lib/ofp-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 840
      functionLinenumberEnd: 869
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          118
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - minimatch_destroy
        - minimatch_expand
        - parse_ofp_str
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-flow.c:844,13'
          Dst:             parse_ofp_str
        - Src:             'lib/ofp-flow.c:861,5'
          Dst:             minimatch_expand
        - Src:             'lib/ofp-flow.c:866,5'
          Dst:             minimatch_destroy
    - functionName:    ofputil_flow_stats_request_format
      functionSourceFile: '/src/openvswitch/lib/ofp-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 819
      functionLinenumberEnd: 832
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          71
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ds_put_char
        - ds_put_cstr
        - ds_put_format
        - match_format
        - ofputil_format_port
        - ofputil_format_table
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-flow.c:821,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-flow.c:822,9'
          Dst:             ofputil_format_table
        - Src:             'lib/ofp-flow.c:826,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-flow.c:827,9'
          Dst:             ofputil_format_port
        - Src:             'lib/ofp-flow.c:830,5'
          Dst:             ds_put_char
        - Src:             'lib/ofp-flow.c:831,5'
          Dst:             match_format
    - functionName:    ofputil_encode_flow_stats_request
      functionSourceFile: '/src/openvswitch/lib/ofp-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 739
      functionLinenumberEnd: 811
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         20
      ICount:          224
      EdgeCount:       39
      CyclomaticComplexity: 21
      functionsReached:
        - abort
        - htonl
        - htons
        - nx_put_match
        - ofp_to_u16
        - ofpbuf_put_zeros
        - ofpraw_alloc
        - ofputil_match_to_ofp10_match
        - ofputil_match_typical_len
        - ofputil_port_to_ofp11
        - ofputil_protocol_to_ofp_version
        - ofputil_put_ofp11_match
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib/ofp-flow.c:743,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-flow.c:760,33'
          Dst:             ofputil_protocol_to_ofp_version
        - Src:             'lib/ofp-flow.c:761,28'
          Dst:             ofputil_match_typical_len
        - Src:             'lib/ofp-flow.c:760,15'
          Dst:             ofpraw_alloc
        - Src:             'lib/ofp-flow.c:762,16'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-flow.c:764,26'
          Dst:             ofputil_port_to_ofp11
        - Src:             'lib/ofp-flow.c:765,27'
          Dst:             htonl
        - Src:             'lib/ofp-flow.c:768,9'
          Dst:             ofputil_put_ofp11_match
        - Src:             'lib/ofp-flow.c:779,15'
          Dst:             ofpraw_alloc
        - Src:             'lib/ofp-flow.c:780,16'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-flow.c:781,9'
          Dst:             ofputil_match_to_ofp10_match
        - Src:             'lib/ofp-flow.c:783,32'
          Dst:             ofp_to_u16
        - Src:             'lib/ofp-flow.c:783,26'
          Dst:             htons
        - Src:             'lib/ofp-flow.c:795,15'
          Dst:             ofpraw_alloc
        - Src:             'lib/ofp-flow.c:796,9'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-flow.c:797,21'
          Dst:             nx_put_match
        - Src:             'lib/ofp-flow.c:801,32'
          Dst:             ofp_to_u16
        - Src:             'lib/ofp-flow.c:801,26'
          Dst:             htons
        - Src:             'lib/ofp-flow.c:802,27'
          Dst:             htons
        - Src:             'lib/ofp-flow.c:808,9'
          Dst:             abort
    - functionName:    ofp_to_u16
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 196
      functionLinenumberEnd: 197
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofputil_decode_nxst_flow_request
      functionSourceFile: '/src/openvswitch/lib/ofp-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 662
      functionLinenumberEnd: 683
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          94
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - ntohs
        - nx_pull_match
        - ofpbuf_pull
        - u16_to_ofp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-flow.c:666,12'
          Dst:             ofpbuf_pull
        - Src:             'lib/ofp-flow.c:667,30'
          Dst:             ntohs
        - Src:             'lib/ofp-flow.c:667,13'
          Dst:             nx_pull_match
        - Src:             'lib/ofp-flow.c:678,32'
          Dst:             ntohs
        - Src:             'lib/ofp-flow.c:678,21'
          Dst:             u16_to_ofp
    - functionName:    u16_to_ofp
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 214
      functionLinenumberEnd: 215
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofputil_decode_ofpst11_flow_request
      functionSourceFile: '/src/openvswitch/lib/ofp-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 634
      functionLinenumberEnd: 655
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          99
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - ntohl
        - ofpbuf_pull
        - ofputil_port_from_ofp11
        - ofputil_pull_ofp11_match
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-flow.c:638,12'
          Dst:             ofpbuf_pull
        - Src:             'lib/ofp-flow.c:641,13'
          Dst:             ofputil_port_from_ofp11
        - Src:             'lib/ofp-flow.c:645,22'
          Dst:             ntohl
        - Src:             'lib/ofp-flow.c:648,13'
          Dst:             ofputil_pull_ofp11_match
    - functionName:    ofputil_decode_ofpst10_flow_request
      functionSourceFile: '/src/openvswitch/lib/ofp-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 618
      functionLinenumberEnd: 626
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          53
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonll
        - ntohs
        - ofputil_match_from_ofp10_match
        - u16_to_ofp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-flow.c:620,5'
          Dst:             ofputil_match_from_ofp10_match
        - Src:             'lib/ofp-flow.c:621,32'
          Dst:             ntohs
        - Src:             'lib/ofp-flow.c:621,21'
          Dst:             u16_to_ofp
        - Src:             'lib/ofp-flow.c:624,38'
          Dst:             htonll
    - functionName:    ofputil_decode_flow_stats_request
      functionSourceFile: '/src/openvswitch/lib/ofp-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 697
      functionLinenumberEnd: 731
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          104
      EdgeCount:       22
      CyclomaticComplexity: 12
      functionsReached:
        - abort
        - ntohs
        - ofpbuf_const_initializer
        - ofpraw_pull_assert
        - ofputil_decode_nxst_flow_request
        - ofputil_decode_ofpst10_flow_request
        - ofputil_decode_ofpst11_flow_request
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-flow.c:700,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-flow.c:698,52'
          Dst:             ntohs
        - Src:             'lib/ofp-flow.c:698,23'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/ofp-flow.c:699,23'
          Dst:             ofpraw_pull_assert
        - Src:             'lib/ofp-flow.c:702,16'
          Dst:             ofputil_decode_ofpst10_flow_request
        - Src:             'lib/ofp-flow.c:705,16'
          Dst:             ofputil_decode_ofpst10_flow_request
        - Src:             'lib/ofp-flow.c:708,16'
          Dst:             ofputil_decode_ofpst11_flow_request
        - Src:             'lib/ofp-flow.c:712,16'
          Dst:             ofputil_decode_ofpst11_flow_request
        - Src:             'lib/ofp-flow.c:716,15'
          Dst:             ofputil_decode_ofpst11_flow_request
        - Src:             'lib/ofp-flow.c:720,16'
          Dst:             ofputil_decode_nxst_flow_request
        - Src:             'lib/ofp-flow.c:724,16'
          Dst:             ofputil_decode_nxst_flow_request
        - Src:             'lib/ofp-flow.c:729,9'
          Dst:             abort
    - functionName:    ofputil_flow_mod_format
      functionSourceFile: '/src/openvswitch/lib/ofp-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 489
      functionLinenumberEnd: 612
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         68
      ICount:          464
      EdgeCount:       87
      CyclomaticComplexity: 21
      functionsReached:
        - ds_last
        - ds_put_char
        - ds_put_cstr
        - ds_put_format
        - htonll
        - match_format
        - minimatch_destroy
        - minimatch_expand
        - ntohll
        - ntohs
        - nx_match_to_string
        - ofp10_match_print
        - ofpacts_format
        - ofpbuf_init
        - ofpbuf_uninit
        - ofpmsg_body
        - ofpraw_decode
        - ofputil_decode_flow_mod
        - ofputil_flow_mod_flags_format
        - ofputil_format_port
        - ofputil_format_table
        - ofputil_protocol_from_ofp_version
        - ofputil_protocol_set_tid
        - ofputil_table_map_get_name
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-flow.c:509,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-flow.c:497,16'
          Dst:             ofputil_protocol_from_ofp_version
        - Src:             'lib/ofp-flow.c:498,16'
          Dst:             ofputil_protocol_set_tid
        - Src:             'lib/ofp-flow.c:500,5'
          Dst:             ofpbuf_init
        - Src:             'lib/ofp-flow.c:501,13'
          Dst:             ofputil_decode_flow_mod
        - Src:             'lib/ofp-flow.c:504,9'
          Dst:             ofpbuf_uninit
        - Src:             'lib/ofp-flow.c:508,5'
          Dst:             ds_put_char
        - Src:             'lib/ofp-flow.c:511,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-flow.c:514,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-flow.c:517,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-flow.c:520,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-flow.c:523,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-flow.c:526,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-flow.c:529,12'
          Dst:             ofputil_table_map_get_name
        - Src:             'lib/ofp-flow.c:530,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-flow.c:531,9'
          Dst:             ofputil_format_table
        - Src:             'lib/ofp-flow.c:534,5'
          Dst:             ds_put_char
        - Src:             'lib/ofp-flow.c:535,5'
          Dst:             ofpraw_decode
        - Src:             'lib/ofp-flow.c:537,44'
          Dst:             ofpmsg_body
        - Src:             'lib/ofp-flow.c:538,9'
          Dst:             ofp10_match_print
        - Src:             'lib/ofp-flow.c:543,41'
          Dst:             ofpmsg_body
        - Src:             'lib/ofp-flow.c:547,41'
          Dst:             ntohs
        - Src:             'lib/ofp-flow.c:547,17'
          Dst:             nx_match_to_string
        - Src:             'lib/ofp-flow.c:548,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-flow.c:555,9'
          Dst:             minimatch_expand
        - Src:             'lib/ofp-flow.c:556,9'
          Dst:             match_format
        - Src:             'lib/ofp-flow.c:562,9'
          Dst:             ds_last
        - Src:             'lib/ofp-flow.c:563,9'
          Dst:             ds_put_char
        - Src:             'lib/ofp-flow.c:565,26'
          Dst:             htonll
        - Src:             'lib/ofp-flow.c:566,49'
          Dst:             ntohll
        - Src:             'lib/ofp-flow.c:566,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-flow.c:568,27'
          Dst:             htonll
        - Src:             'lib/ofp-flow.c:570,17'
          Dst:             ntohll
        - Src:             'lib/ofp-flow.c:570,36'
          Dst:             ntohll
        - Src:             'lib/ofp-flow.c:569,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-flow.c:573,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-flow.c:576,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-flow.c:579,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-flow.c:582,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-flow.c:585,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-flow.c:588,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-flow.c:589,9'
          Dst:             ofputil_format_port
        - Src:             'lib/ofp-flow.c:590,9'
          Dst:             ds_put_char
        - Src:             'lib/ofp-flow.c:599,5'
          Dst:             ofputil_flow_mod_flags_format
        - Src:             'lib/ofp-flow.c:601,5'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-flow.c:607,5'
          Dst:             ofpacts_format
        - Src:             'lib/ofp-flow.c:608,5'
          Dst:             ofpbuf_uninit
        - Src:             'lib/ofp-flow.c:609,5'
          Dst:             minimatch_destroy
    - functionName:    ofputil_decode_flow_mod
      functionSourceFile: '/src/openvswitch/lib/ofp-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 155
      functionLinenumberEnd: 358
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         105
      ICount:          877
      EdgeCount:       141
      CyclomaticComplexity: 38
      functionsReached:
        - abort
        - htonl
        - htonll
        - htons
        - ipv6_addr_is_set
        - minimatch_init
        - ntohl
        - ntohs
        - nx_pull_match
        - ofpacts_check_consistency
        - ofpacts_pull_openflow_instructions
        - ofpbuf_const_initializer
        - ofpbuf_pull
        - ofpraw_pull_assert
        - ofputil_decode_flow_mod_flags
        - ofputil_match_from_ofp10_match
        - ofputil_normalize_match
        - ofputil_port_from_ofp11
        - ofputil_pull_ofp11_match
        - u16_to_ofp
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-flow.c:159,52'
          Dst:             ntohs
        - Src:             'lib/ofp-flow.c:159,23'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/ofp-flow.c:160,23'
          Dst:             ofpraw_pull_assert
        - Src:             'lib/ofp-flow.c:165,15'
          Dst:             ofpbuf_pull
        - Src:             'lib/ofp-flow.c:167,17'
          Dst:             ofputil_pull_ofp11_match
        - Src:             'lib/ofp-flow.c:174,24'
          Dst:             ntohs
        - Src:             'lib/ofp-flow.c:179,40'
          Dst:             htonll
        - Src:             'lib/ofp-flow.c:183,26'
          Dst:             htonll
        - Src:             'lib/ofp-flow.c:184,31'
          Dst:             htonll
        - Src:             'lib/ofp-flow.c:206,28'
          Dst:             ntohs
        - Src:             'lib/ofp-flow.c:207,28'
          Dst:             ntohs
        - Src:             'lib/ofp-flow.c:209,30'
          Dst:             ntohs
        - Src:             'lib/ofp-flow.c:213,25'
          Dst:             ntohl
        - Src:             'lib/ofp-flow.c:214,17'
          Dst:             ofputil_port_from_ofp11
        - Src:             'lib/ofp-flow.c:221,28'
          Dst:             ntohl
        - Src:             'lib/ofp-flow.c:232,19'
          Dst:             ofpbuf_pull
        - Src:             'lib/ofp-flow.c:235,13'
          Dst:             ofputil_match_from_ofp10_match
        - Src:             'lib/ofp-flow.c:236,13'
          Dst:             ofputil_normalize_match
        - Src:             'lib/ofp-flow.c:240,52'
          Dst:             htonl
        - Src:             'lib/ofp-flow.c:241,31'
          Dst:             ntohs
        - Src:             'lib/ofp-flow.c:245,23'
          Dst:             ntohs
        - Src:             'lib/ofp-flow.c:246,26'
          Dst:             htonll
        - Src:             'lib/ofp-flow.c:247,31'
          Dst:             htonll
        - Src:             'lib/ofp-flow.c:249,32'
          Dst:             ntohs
        - Src:             'lib/ofp-flow.c:250,32'
          Dst:             ntohs
        - Src:             'lib/ofp-flow.c:252,29'
          Dst:             ntohl
        - Src:             'lib/ofp-flow.c:253,39'
          Dst:             ntohs
        - Src:             'lib/ofp-flow.c:253,28'
          Dst:             u16_to_ofp
        - Src:             'lib/ofp-flow.c:261,19'
          Dst:             ofpbuf_pull
        - Src:             'lib/ofp-flow.c:262,39'
          Dst:             ntohs
        - Src:             'lib/ofp-flow.c:262,21'
          Dst:             nx_pull_match
        - Src:             'lib/ofp-flow.c:270,23'
          Dst:             ntohs
        - Src:             'lib/ofp-flow.c:276,28'
          Dst:             ntohs
        - Src:             'lib/ofp-flow.c:278,32'
          Dst:             ntohs
        - Src:             'lib/ofp-flow.c:279,32'
          Dst:             ntohs
        - Src:             'lib/ofp-flow.c:281,29'
          Dst:             ntohl
        - Src:             'lib/ofp-flow.c:282,39'
          Dst:             ntohs
        - Src:             'lib/ofp-flow.c:282,28'
          Dst:             u16_to_ofp
        - Src:             'lib/ofp-flow.c:286,13'
          Dst:             abort
        - Src:             'lib/ofp-flow.c:295,17'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-flow.c:306,35'
          Dst:             htons
        - Src:             'lib/ofp-flow.c:307,14'
          Dst:             ipv6_addr_is_set
        - Src:             'lib/ofp-flow.c:308,17'
          Dst:             ipv6_addr_is_set
        - Src:             'lib/ofp-flow.c:309,38'
          Dst:             htons
        - Src:             'lib/ofp-flow.c:318,13'
          Dst:             ofpacts_pull_openflow_instructions
        - Src:             'lib/ofp-flow.c:328,13'
          Dst:             ofputil_decode_flow_mod_flags
        - Src:             'lib/ofp-flow.c:352,13'
          Dst:             ofpacts_check_consistency
        - Src:             'lib/ofp-flow.c:355,9'
          Dst:             minimatch_init
    - functionName:    ipv6_addr_is_set
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1205
      functionLinenumberEnd: 1206
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ipv6_addr_equals
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:1206,13'
          Dst:             ipv6_addr_equals
    - functionName:    ofputil_tid_command
      functionSourceFile: '/src/openvswitch/lib/ofp-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 363
      functionLinenumberEnd: 366
      functionDepth:   0
      returnType:      short
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htons
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-flow.c:364,12'
          Dst:             htons
    - functionName:    ofputil_encode_flow_mod
      functionSourceFile: '/src/openvswitch/lib/ofp-flow.c'
      linkageType:     InternalLinkage
      functionLinenumber: 374
      functionLinenumberEnd: 481
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         48
      ICount:          511
      EdgeCount:       57
      CyclomaticComplexity: 11
      functionsReached:
        - abort
        - htonl
        - htonll
        - htons
        - minimatch_expand
        - nx_put_match
        - ofp_to_u16
        - ofpacts_put_openflow_actions
        - ofpacts_put_openflow_instructions
        - ofpbuf_put_zeros
        - ofpmsg_update_length
        - ofpraw_alloc
        - ofputil_encode_flow_mod_flags
        - ofputil_match_to_ofp10_match
        - ofputil_match_typical_len
        - ofputil_port_to_ofp11
        - ofputil_protocol_to_ofp_version
        - ofputil_put_ofp11_match
        - ofputil_tid_command
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-flow.c:382,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-flow.c:375,32'
          Dst:             ofputil_protocol_to_ofp_version
        - Src:             'lib/ofp-flow.c:376,26'
          Dst:             ofputil_encode_flow_mod_flags
        - Src:             'lib/ofp-flow.c:380,5'
          Dst:             minimatch_expand
        - Src:             'lib/ofp-flow.c:391,20'
          Dst:             ofputil_match_typical_len
        - Src:             'lib/ofp-flow.c:392,15'
          Dst:             ofpraw_alloc
        - Src:             'lib/ofp-flow.c:393,15'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-flow.c:397,36'
          Dst:             htonll
        - Src:             'lib/ofp-flow.c:413,29'
          Dst:             htons
        - Src:             'lib/ofp-flow.c:414,29'
          Dst:             htons
        - Src:             'lib/ofp-flow.c:415,25'
          Dst:             htons
        - Src:             'lib/ofp-flow.c:416,26'
          Dst:             htonl
        - Src:             'lib/ofp-flow.c:417,25'
          Dst:             ofputil_port_to_ofp11
        - Src:             'lib/ofp-flow.c:418,26'
          Dst:             htonl
        - Src:             'lib/ofp-flow.c:421,31'
          Dst:             htons
        - Src:             'lib/ofp-flow.c:425,9'
          Dst:             ofputil_put_ofp11_match
        - Src:             'lib/ofp-flow.c:426,9'
          Dst:             ofpacts_put_openflow_instructions
        - Src:             'lib/ofp-flow.c:435,15'
          Dst:             ofpraw_alloc
        - Src:             'lib/ofp-flow.c:437,15'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-flow.c:438,9'
          Dst:             ofputil_match_to_ofp10_match
        - Src:             'lib/ofp-flow.c:440,24'
          Dst:             ofputil_tid_command
        - Src:             'lib/ofp-flow.c:441,29'
          Dst:             htons
        - Src:             'lib/ofp-flow.c:442,29'
          Dst:             htons
        - Src:             'lib/ofp-flow.c:443,25'
          Dst:             htons
        - Src:             'lib/ofp-flow.c:444,26'
          Dst:             htonl
        - Src:             'lib/ofp-flow.c:445,31'
          Dst:             ofp_to_u16
        - Src:             'lib/ofp-flow.c:445,25'
          Dst:             htons
        - Src:             'lib/ofp-flow.c:447,9'
          Dst:             ofpacts_put_openflow_actions
        - Src:             'lib/ofp-flow.c:457,15'
          Dst:             ofpraw_alloc
        - Src:             'lib/ofp-flow.c:459,15'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-flow.c:460,24'
          Dst:             ofputil_tid_command
        - Src:             'lib/ofp-flow.c:462,21'
          Dst:             nx_put_match
        - Src:             'lib/ofp-flow.c:464,29'
          Dst:             htons
        - Src:             'lib/ofp-flow.c:465,29'
          Dst:             htons
        - Src:             'lib/ofp-flow.c:466,25'
          Dst:             htons
        - Src:             'lib/ofp-flow.c:467,26'
          Dst:             htonl
        - Src:             'lib/ofp-flow.c:468,31'
          Dst:             ofp_to_u16
        - Src:             'lib/ofp-flow.c:468,25'
          Dst:             htons
        - Src:             'lib/ofp-flow.c:470,26'
          Dst:             htons
        - Src:             'lib/ofp-flow.c:471,9'
          Dst:             ofpacts_put_openflow_actions
        - Src:             'lib/ofp-flow.c:477,9'
          Dst:             abort
        - Src:             'lib/ofp-flow.c:480,5'
          Dst:             ofpmsg_update_length
    - functionName:    init_this_module_ofp_group
      functionSourceFile: '/src/openvswitch/lib/ofp-group.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 34
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-group.c:34,1'
          Dst:             vlog_insert_module
    - functionName:    ovs_list_is_singleton
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 327
      functionLinenumberEnd: 328
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          28
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_list_is_empty
        - ovs_list_is_short
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/list.h:328,12'
          Dst:             ovs_list_is_short
        - Src:             './include/openvswitch/list.h:328,40'
          Dst:             ovs_list_is_empty
    - functionName:    ovs_list_is_short
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 334
      functionLinenumberEnd: 335
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_list_is_empty
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 320
      functionLinenumberEnd: 321
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    bad_group_cmd
      functionSourceFile: '/src/openvswitch/lib/ofp-group.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1941
      functionLinenumberEnd: 1992
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         22
      ICount:          98
      EdgeCount:       40
      CyclomaticComplexity: 20
      functionsReached:
        - abort
        - ovs_fatal
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-group.c:1946,5'
          Branch Sides:    []
        - Branch String:   'lib/ofp-group.c:1965,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-group.c:1962,9'
          Dst:             abort
        - Src:             'lib/ofp-group.c:1988,9'
          Dst:             abort
        - Src:             'lib/ofp-group.c:1991,5'
          Dst:             ovs_fatal
    - functionName:    parse_group_prop_ntr_selection_method
      functionSourceFile: '/src/openvswitch/lib/ofp-group.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1559
      functionLinenumberEnd: 1641
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         75
      ICount:          373
      EdgeCount:       88
      CyclomaticComplexity: 15
      functionsReached:
        - ntohll
        - ntohs
        - ofpbuf_pull
        - oxm_pull_field_array
        - strcmp
        - strcpy
        - strnlen
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-group.c:1564,5'
          Branch Sides:    []
        - Branch String:   'lib/ofp-group.c:1577,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-group.c:1570,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-group.c:1585,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-group.c:1593,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-group.c:1598,18'
          Dst:             strnlen
        - Src:             'lib/ofp-group.c:1601,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-group.c:1606,9'
          Dst:             strcmp
        - Src:             'lib/ofp-group.c:1607,12'
          Dst:             strcmp
        - Src:             'lib/ofp-group.c:1608,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-group.c:1615,5'
          Dst:             strcpy
        - Src:             'lib/ofp-group.c:1616,34'
          Dst:             ntohll
        - Src:             'lib/ofp-group.c:1618,5'
          Dst:             ofpbuf_pull
        - Src:             'lib/ofp-group.c:1620,18'
          Dst:             ntohs
        - Src:             'lib/ofp-group.c:1621,23'
          Dst:             strcmp
        - Src:             'lib/ofp-group.c:1622,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-group.c:1628,17'
          Dst:             oxm_pull_field_array
        - Src:             'lib/ofp-group.c:1631,13'
          Dst:             vlog_rate_limit
    - functionName:    ntohll
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
        - ntohl
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byte-order.h:36,12'
          Dst:             htonl
        - Src:             'lib/byte-order.h:36,44'
          Dst:             ntohl
        - Src:             'lib/byte-order.h:36,62'
          Dst:             ntohl
    - functionName:    ofpbuf_pull
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 258
      functionLinenumberEnd: 269
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          64
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:259,5'
          Dst:             ovs_ignore
    - functionName:    parse_ofp15_group_properties
      functionSourceFile: '/src/openvswitch/lib/ofp-group.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1649
      functionLinenumberEnd: 1680
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          93
      EdgeCount:       18
      CyclomaticComplexity: 4
      functionsReached:
        - ofpbuf_const_initializer
        - ofpbuf_pull
        - ofpprop_pull
        - ofpprop_unknown
        - parse_group_prop_ntr_selection_method
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/ofp-group.c:1662,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-group.c:1651,9'
          Dst:             ofpbuf_pull
        - Src:             'lib/ofp-group.c:1650,32'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/ofp-group.c:1657,17'
          Dst:             ofpprop_pull
        - Src:             'lib/ofp-group.c:1665,21'
          Dst:             parse_group_prop_ntr_selection_method
        - Src:             'lib/ofp-group.c:1670,21'
          Dst:             ofpprop_unknown
    - functionName:    ofpbuf_const_initializer
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 97
      functionLinenumberEnd: 105
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          30
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofputil_pull_ofp15_buckets
      functionSourceFile: '/src/openvswitch/lib/ofp-group.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1388
      functionLinenumberEnd: 1507
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - int
        - char
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         68
      ICount:          402
      EdgeCount:       85
      CyclomaticComplexity: 19
      functionsReached:
        - htonl
        - htons
        - ntohl
        - ntohs
        - ofpacts_pull_openflow_actions
        - ofpbuf_const_initializer
        - ofpbuf_init
        - ofpbuf_pull
        - ofpbuf_steal_data
        - ofpbuf_try_pull
        - ofpbuf_uninit
        - ofpprop_parse_be16
        - ofpprop_parse_be32
        - ofpprop_pull
        - ofpprop_unknown
        - ofputil_bucket_check_duplicate_id
        - ofputil_bucket_list_destroy
        - ofputil_port_from_ofp11
        - ofputil_port_to_ofp11
        - ovs_list_init
        - ovs_list_push_back
        - vlog_rate_limit
        - xzalloc
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/ofp-group.c:1447,13'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-group.c:1389,5'
          Dst:             ovs_list_init
        - Src:             'lib/ofp-group.c:1395,31'
          Dst:             ofputil_port_to_ofp11
        - Src:             'lib/ofp-group.c:1396,32'
          Dst:             htonl
        - Src:             'lib/ofp-group.c:1397,27'
          Dst:             htons
        - Src:             'lib/ofp-group.c:1399,9'
          Dst:             ofpbuf_init
        - Src:             'lib/ofp-group.c:1401,35'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/ofp-group.c:1403,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-group.c:1408,18'
          Dst:             ntohs
        - Src:             'lib/ofp-group.c:1409,23'
          Dst:             ntohs
        - Src:             'lib/ofp-group.c:1412,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-group.c:1416,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-group.c:1421,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-group.c:1429,15'
          Dst:             ofpacts_pull_openflow_actions
        - Src:             'lib/ofp-group.c:1437,13'
          Dst:             ofpbuf_pull
        - Src:             'lib/ofp-group.c:1436,36'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/ofp-group.c:1442,19'
          Dst:             ofpprop_pull
        - Src:             'lib/ofp-group.c:1449,23'
          Dst:             ofpprop_parse_be16
        - Src:             'lib/ofp-group.c:1453,23'
          Dst:             ofpprop_parse_be32
        - Src:             'lib/ofp-group.c:1457,23'
          Dst:             ofpprop_parse_be32
        - Src:             'lib/ofp-group.c:1461,23'
          Dst:             ofpprop_unknown
        - Src:             'lib/ofp-group.c:1470,18'
          Dst:             xzalloc
        - Src:             'lib/ofp-group.c:1472,26'
          Dst:             ntohs
        - Src:             'lib/ofp-group.c:1473,15'
          Dst:             ofputil_port_from_ofp11
        - Src:             'lib/ofp-group.c:1478,31'
          Dst:             ntohl
        - Src:             'lib/ofp-group.c:1479,29'
          Dst:             ntohl
        - Src:             'lib/ofp-group.c:1481,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-group.c:1487,27'
          Dst:             ofpbuf_steal_data
        - Src:             'lib/ofp-group.c:1489,9'
          Dst:             ovs_list_push_back
        - Src:             'lib/ofp-group.c:1495,9'
          Dst:             ofpbuf_uninit
        - Src:             'lib/ofp-group.c:1496,9'
          Dst:             ofputil_bucket_list_destroy
        - Src:             'lib/ofp-group.c:1500,9'
          Dst:             ofputil_bucket_check_duplicate_id
        - Src:             'lib/ofp-group.c:1501,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-group.c:1502,9'
          Dst:             ofputil_bucket_list_destroy
    - functionName:    ovs_list_init
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofpbuf_try_pull
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 275
      functionLinenumberEnd: 276
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofpbuf_pull
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:276,30'
          Dst:             ofpbuf_pull
    - functionName:    ovs_list_push_back
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 204
      functionLinenumberEnd: 206
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_list_insert
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/list.h:205,5'
          Dst:             ovs_list_insert
    - functionName:    ofputil_bucket_list_destroy
      functionSourceFile: '/src/openvswitch/lib/ofp-group.c'
      linkageType:     InternalLinkage
      functionLinenumber: 100
      functionLinenumberEnd: 107
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          48
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ovs_list_is_empty
        - ovs_list_pop_front
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-group.c:103,5'
          Dst:             ovs_list_is_empty
        - Src:             'lib/ofp-group.c:103,5'
          Dst:             ovs_list_pop_front
    - functionName:    ofputil_bucket_check_duplicate_id
      functionSourceFile: '/src/openvswitch/lib/ofp-group.c'
      linkageType:     InternalLinkage
      functionLinenumber: 169
      functionLinenumberEnd: 184
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         21
      ICount:          111
      EdgeCount:       26
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_list_pop_front
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 261
      functionLinenumberEnd: 265
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_list_remove
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/list.h:264,5'
          Dst:             ovs_list_remove
    - functionName:    ovs_list_remove
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 251
      functionLinenumberEnd: 254
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          25
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_list_insert
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 169
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofputil_pull_ofp11_buckets
      functionSourceFile: '/src/openvswitch/lib/ofp-group.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1319
      functionLinenumberEnd: 1382
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         36
      ICount:          242
      EdgeCount:       46
      CyclomaticComplexity: 12
      functionsReached:
        - ntohl
        - ntohs
        - ofpacts_pull_openflow_actions
        - ofpbuf_init
        - ofpbuf_steal_data
        - ofpbuf_try_pull
        - ofpbuf_uninit
        - ofputil_bucket_list_destroy
        - ofputil_port_from_ofp11
        - ovs_list_init
        - ovs_list_push_back
        - vlog_rate_limit
        - xzalloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-group.c:1323,5'
          Dst:             ovs_list_init
        - Src:             'lib/ofp-group.c:1331,17'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/ofp-group.c:1334,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-group.c:1336,13'
          Dst:             ofputil_bucket_list_destroy
        - Src:             'lib/ofp-group.c:1340,18'
          Dst:             ntohs
        - Src:             'lib/ofp-group.c:1342,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-group.c:1344,13'
          Dst:             ofputil_bucket_list_destroy
        - Src:             'lib/ofp-group.c:1347,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-group.c:1350,13'
          Dst:             ofputil_bucket_list_destroy
        - Src:             'lib/ofp-group.c:1355,9'
          Dst:             ofpbuf_init
        - Src:             'lib/ofp-group.c:1356,17'
          Dst:             ofpacts_pull_openflow_actions
        - Src:             'lib/ofp-group.c:1359,13'
          Dst:             ofpbuf_uninit
        - Src:             'lib/ofp-group.c:1360,13'
          Dst:             ofputil_bucket_list_destroy
        - Src:             'lib/ofp-group.c:1364,18'
          Dst:             xzalloc
        - Src:             'lib/ofp-group.c:1365,26'
          Dst:             ntohs
        - Src:             'lib/ofp-group.c:1366,17'
          Dst:             ofputil_port_from_ofp11
        - Src:             'lib/ofp-group.c:1368,13'
          Dst:             ofpbuf_uninit
        - Src:             'lib/ofp-group.c:1369,13'
          Dst:             ofputil_bucket_list_destroy
        - Src:             'lib/ofp-group.c:1373,31'
          Dst:             ntohl
        - Src:             'lib/ofp-group.c:1376,27'
          Dst:             ofpbuf_steal_data
        - Src:             'lib/ofp-group.c:1378,9'
          Dst:             ovs_list_push_back
    - functionName:    count_1bits
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 332
      functionLinenumberEnd: 347
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          37
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofputil_put_group_prop_ntr_selection_method
      functionSourceFile: '/src/openvswitch/lib/ofp-group.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1213
      functionLinenumberEnd: 1227
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          64
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
        - htonll
        - htons
        - ofpbuf_at_assert
        - ofpbuf_put_zeros
        - ofpprop_end
        - oxm_put_field_array
        - strcpy
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-group.c:1218,5'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-group.c:1219,5'
          Dst:             oxm_put_field_array
        - Src:             'lib/ofp-group.c:1220,12'
          Dst:             ofpbuf_at_assert
        - Src:             'lib/ofp-group.c:1221,18'
          Dst:             htons
        - Src:             'lib/ofp-group.c:1222,26'
          Dst:             htonl
        - Src:             'lib/ofp-group.c:1223,22'
          Dst:             htonl
        - Src:             'lib/ofp-group.c:1224,5'
          Dst:             strcpy
        - Src:             'lib/ofp-group.c:1225,36'
          Dst:             htonll
        - Src:             'lib/ofp-group.c:1226,5'
          Dst:             ofpprop_end
    - functionName:    ofpbuf_at_assert
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 195
      functionLinenumberEnd: 198
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:196,5'
          Dst:             ovs_ignore
        - Src:             './include/openvswitch/ofpbuf.h:197,5'
          Dst:             ovs_ignore
    - functionName:    htonll
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 30
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byte-order.h:30,12'
          Dst:             htonl
        - Src:             'lib/byte-order.h:30,44'
          Dst:             htonl
        - Src:             'lib/byte-order.h:30,62'
          Dst:             htonl
    - functionName:    ofputil_put_ofp15_bucket
      functionSourceFile: '/src/openvswitch/lib/ofp-group.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1180
      functionLinenumberEnd: 1207
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          147
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - htonl
        - htons
        - ofpacts_put_openflow_actions
        - ofpbuf_at_assert
        - ofpbuf_put_zeros
        - ofpprop_put_be32
        - ofpprop_put_u16
        - ofpprop_put_u32
        - ofputil_port_to_ofp11
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-group.c:1185,5'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-group.c:1188,5'
          Dst:             ofpacts_put_openflow_actions
        - Src:             'lib/ofp-group.c:1193,9'
          Dst:             ofpprop_put_u16
        - Src:             'lib/ofp-group.c:1197,26'
          Dst:             ofputil_port_to_ofp11
        - Src:             'lib/ofp-group.c:1196,9'
          Dst:             ofpprop_put_be32
        - Src:             'lib/ofp-group.c:1200,9'
          Dst:             ofpprop_put_u32
        - Src:             'lib/ofp-group.c:1203,10'
          Dst:             ofpbuf_at_assert
        - Src:             'lib/ofp-group.c:1204,15'
          Dst:             htons
        - Src:             'lib/ofp-group.c:1205,28'
          Dst:             htons
        - Src:             'lib/ofp-group.c:1206,21'
          Dst:             htonl
    - functionName:    ofputil_put_ofp11_bucket
      functionSourceFile: '/src/openvswitch/lib/ofp-group.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1161
      functionLinenumberEnd: 1174
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          71
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
        - htons
        - ofpacts_put_openflow_actions
        - ofpbuf_at_assert
        - ofpbuf_put_zeros
        - ofputil_port_to_ofp11
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-group.c:1166,5'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-group.c:1167,5'
          Dst:             ofpacts_put_openflow_actions
        - Src:             'lib/ofp-group.c:1169,10'
          Dst:             ofpbuf_at_assert
        - Src:             'lib/ofp-group.c:1170,15'
          Dst:             htons
        - Src:             'lib/ofp-group.c:1171,18'
          Dst:             htons
        - Src:             'lib/ofp-group.c:1172,22'
          Dst:             ofputil_port_to_ofp11
        - Src:             'lib/ofp-group.c:1173,23'
          Dst:             htonl
    - functionName:    ofpbuf_from_list
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 280
      functionLinenumberEnd: 281
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofputil_bucket_has_liveness
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-group.h'
      linkageType:     InternalLinkage
      functionLinenumber: 80
      functionLinenumberEnd: 82
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          26
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofp_to_u16
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 196
      functionLinenumberEnd: 197
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    bitmap_bit__
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 32
      functionLinenumberEnd: 33
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    bitmap_unit__
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 26
      functionLinenumberEnd: 27
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ip_is_cidr
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 664
      functionLinenumberEnd: 666
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:665,19'
          Dst:             ntohl
    - functionName:    bitmap_is_set
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 90
      functionLinenumberEnd: 91
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - bitmap_bit__
        - bitmap_unit__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/bitmap.h:91,14'
          Dst:             bitmap_unit__
        - Src:             'lib/bitmap.h:91,46'
          Dst:             bitmap_bit__
    - functionName:    parse_bucket_str
      functionSourceFile: '/src/openvswitch/lib/ofp-group.c'
      linkageType:     InternalLinkage
      functionLinenumber: 642
      functionLinenumberEnd: 718
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - char
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         56
      ICount:          334
      EdgeCount:       76
      CyclomaticComplexity: 22
      functionsReached:
        - ds_chomp
        - ds_cstr
        - ds_destroy
        - ds_init
        - ds_put_format
        - ofp_to_u16
        - ofpacts_parse_actions
        - ofpbuf_init
        - ofpbuf_uninit
        - ofputil_bucket_has_liveness
        - ofputil_parse_key_value
        - ofputil_port_from_string
        - str_to_u16
        - str_to_u32
        - strcasecmp
        - xasprintf
        - xstrdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-group.c:653,5'
          Dst:             ds_init
        - Src:             'lib/ofp-group.c:657,12'
          Dst:             ofputil_parse_key_value
        - Src:             'lib/ofp-group.c:658,14'
          Dst:             strcasecmp
        - Src:             'lib/ofp-group.c:659,21'
          Dst:             str_to_u16
        - Src:             'lib/ofp-group.c:660,21'
          Dst:             strcasecmp
        - Src:             'lib/ofp-group.c:661,18'
          Dst:             ofputil_port_from_string
        - Src:             'lib/ofp-group.c:662,21'
          Dst:             ofp_to_u16
        - Src:             'lib/ofp-group.c:662,55'
          Dst:             ofp_to_u16
        - Src:             'lib/ofp-group.c:665,25'
          Dst:             xasprintf
        - Src:             'lib/ofp-group.c:667,21'
          Dst:             strcasecmp
        - Src:             'lib/ofp-group.c:668,21'
          Dst:             str_to_u32
        - Src:             'lib/ofp-group.c:670,25'
          Dst:             xasprintf
        - Src:             'lib/ofp-group.c:673,21'
          Dst:             strcasecmp
        - Src:             'lib/ofp-group.c:674,21'
          Dst:             str_to_u32
        - Src:             'lib/ofp-group.c:676,25'
          Dst:             xasprintf
        - Src:             'lib/ofp-group.c:680,21'
          Dst:             strcasecmp
        - Src:             'lib/ofp-group.c:680,51'
          Dst:             strcasecmp
        - Src:             'lib/ofp-group.c:681,13'
          Dst:             ds_put_format
        - Src:             'lib/ofp-group.c:683,13'
          Dst:             ds_put_format
        - Src:             'lib/ofp-group.c:687,13'
          Dst:             ds_destroy
        - Src:             'lib/ofp-group.c:693,16'
          Dst:             xstrdup
        - Src:             'lib/ofp-group.c:695,38'
          Dst:             ofputil_bucket_has_liveness
        - Src:             'lib/ofp-group.c:696,16'
          Dst:             xstrdup
        - Src:             'lib/ofp-group.c:699,5'
          Dst:             ds_chomp
        - Src:             'lib/ofp-group.c:701,5'
          Dst:             ofpbuf_init
        - Src:             'lib/ofp-group.c:708,35'
          Dst:             ds_cstr
        - Src:             'lib/ofp-group.c:708,13'
          Dst:             ofpacts_parse_actions
        - Src:             'lib/ofp-group.c:709,5'
          Dst:             ds_destroy
        - Src:             'lib/ofp-group.c:711,9'
          Dst:             ofpbuf_uninit
    - functionName:    parse_select_group_field
      functionSourceFile: '/src/openvswitch/lib/ofp-group.c'
      linkageType:     InternalLinkage
      functionLinenumber: 724
      functionLinenumberEnd: 777
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         33
      ICount:          201
      EdgeCount:       44
      CyclomaticComplexity: 13
      functionsReached:
        - bitmap_is_set
        - field_array_set
        - ip_is_cidr
        - is_all_ones
        - is_all_zeros
        - mf_from_name
        - mf_is_mask_valid
        - mf_is_tun_metadata
        - mf_parse_value
        - ofputil_parse_key_value
        - xasprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-group.c:727,12'
          Dst:             ofputil_parse_key_value
        - Src:             'lib/ofp-group.c:728,37'
          Dst:             mf_from_name
        - Src:             'lib/ofp-group.c:734,17'
          Dst:             bitmap_is_set
        - Src:             'lib/ofp-group.c:735,24'
          Dst:             xasprintf
        - Src:             'lib/ofp-group.c:739,25'
          Dst:             mf_parse_value
        - Src:             'lib/ofp-group.c:745,22'
          Dst:             mf_is_tun_metadata
        - Src:             'lib/ofp-group.c:746,21'
          Dst:             is_all_zeros
        - Src:             'lib/ofp-group.c:747,28'
          Dst:             xasprintf
        - Src:             'lib/ofp-group.c:753,22'
          Dst:             mf_is_mask_valid
        - Src:             'lib/ofp-group.c:754,28'
          Dst:             xasprintf
        - Src:             'lib/ofp-group.c:761,13'
          Dst:             field_array_set
        - Src:             'lib/ofp-group.c:763,17'
          Dst:             is_all_ones
        - Src:             'lib/ofp-group.c:766,27'
          Dst:             ip_is_cidr
        - Src:             'lib/ofp-group.c:772,20'
          Dst:             xasprintf
    - functionName:    ofputil_group_bucket_counters_to_ofp11
      functionSourceFile: '/src/openvswitch/lib/ofp-group.c'
      linkageType:     InternalLinkage
      functionLinenumber: 309
      functionLinenumberEnd: 316
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          66
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - htonll
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-group.c:313,38'
          Dst:             htonll
        - Src:             'lib/ofp-group.c:314,36'
          Dst:             htonll
    - functionName:    ofputil_group_mod_format
      functionSourceFile: '/src/openvswitch/lib/ofp-group.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2402
      functionLinenumberEnd: 2413
      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:
        - ofputil_decode_group_mod
        - ofputil_group_mod_format__
        - ofputil_uninit_group_mod
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-group.c:2406,13'
          Dst:             ofputil_decode_group_mod
        - Src:             'lib/ofp-group.c:2410,5'
          Dst:             ofputil_group_mod_format__
        - Src:             'lib/ofp-group.c:2411,5'
          Dst:             ofputil_uninit_group_mod
    - functionName:    ofputil_decode_group_mod
      functionSourceFile: '/src/openvswitch/lib/ofp-group.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2310
      functionLinenumberEnd: 2343
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          109
      EdgeCount:       19
      CyclomaticComplexity: 2
      functionsReached:
        - abort
        - ntohs
        - ofpbuf_const_initializer
        - ofpraw_pull_assert
        - ofputil_check_group_mod
        - ofputil_init_group_properties
        - ofputil_pull_ofp11_group_mod
        - ofputil_pull_ofp15_group_mod
        - ofputil_uninit_group_mod
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/ofp-group.c:2318,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-group.c:2311,5'
          Dst:             ofputil_init_group_properties
        - Src:             'lib/ofp-group.c:2314,54'
          Dst:             ntohs
        - Src:             'lib/ofp-group.c:2314,25'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/ofp-group.c:2315,5'
          Dst:             ofpraw_pull_assert
        - Src:             'lib/ofp-group.c:2323,15'
          Dst:             ofputil_pull_ofp11_group_mod
        - Src:             'lib/ofp-group.c:2328,15'
          Dst:             ofputil_pull_ofp15_group_mod
        - Src:             'lib/ofp-group.c:2332,9'
          Dst:             abort
        - Src:             'lib/ofp-group.c:2338,11'
          Dst:             ofputil_check_group_mod
        - Src:             'lib/ofp-group.c:2340,9'
          Dst:             ofputil_uninit_group_mod
    - functionName:    ofputil_group_mod_format__
      functionSourceFile: '/src/openvswitch/lib/ofp-group.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2350
      functionLinenumberEnd: 2396
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          118
      EdgeCount:       14
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_char
        - ds_put_cstr
        - ds_put_format
        - ofp_print_bucket_id
        - ofputil_group_format
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/ofp-group.c:2356,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-group.c:2353,5'
          Dst:             ds_put_char
        - Src:             'lib/ofp-group.c:2355,5'
          Dst:             ds_put_char
        - Src:             'lib/ofp-group.c:2358,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-group.c:2362,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-group.c:2366,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-group.c:2370,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-group.c:2374,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-group.c:2379,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-group.c:2384,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-group.c:2386,5'
          Dst:             ds_put_char
        - Src:             'lib/ofp-group.c:2389,9'
          Dst:             ofp_print_bucket_id
        - Src:             'lib/ofp-group.c:2393,5'
          Dst:             ofputil_group_format
    - functionName:    ofputil_uninit_group_mod
      functionSourceFile: '/src/openvswitch/lib/ofp-group.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1934
      functionLinenumberEnd: 1937
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofputil_bucket_list_destroy
        - ofputil_group_properties_destroy
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-group.c:1935,5'
          Dst:             ofputil_bucket_list_destroy
        - Src:             'lib/ofp-group.c:1936,5'
          Dst:             ofputil_group_properties_destroy
    - functionName:    ofputil_group_properties_destroy
      functionSourceFile: '/src/openvswitch/lib/ofp-group.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1525
      functionLinenumberEnd: 1527
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ds_put_char
      functionSourceFile: '/src/openvswitch/./include/openvswitch/dynamic-string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_char__
      functionUses:    14
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/dynamic-string.h:99,9'
          Dst:             ds_put_char__
    - functionName:    ofp_print_bucket_id
      functionSourceFile: '/src/openvswitch/lib/ofp-group.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1816
      functionLinenumberEnd: 1839
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          74
      EdgeCount:       15
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_char
        - ds_put_cstr
        - ds_put_format
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/ofp-group.c:1823,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-group.c:1821,5'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-group.c:1825,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-group.c:1828,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-group.c:1831,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-group.c:1834,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-group.c:1838,5'
          Dst:             ds_put_char
    - functionName:    ofputil_group_format
      functionSourceFile: '/src/openvswitch/lib/ofp-group.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1879
      functionLinenumberEnd: 1906
      functionDepth:   0
      returnType:      void
      argCount:        10
      argTypes:
        - 'N/A'
        - int
        - char
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - bool
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          151
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - ds_chomp
        - ds_put_char
        - ds_put_format
        - ofputil_bucket_format
        - ofputil_group_properties_format
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-group.c:1880,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-group.c:1885,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-group.c:1888,5'
          Dst:             ofputil_group_properties_format
        - Src:             'lib/ofp-group.c:1894,5'
          Dst:             ds_put_char
        - Src:             'lib/ofp-group.c:1897,9'
          Dst:             ofputil_bucket_format
        - Src:             'lib/ofp-group.c:1900,13'
          Dst:             ofputil_bucket_format
        - Src:             'lib/ofp-group.c:1902,13'
          Dst:             ds_put_char
        - Src:             'lib/ofp-group.c:1904,9'
          Dst:             ds_chomp
    - functionName:    ofputil_group_properties_format
      functionSourceFile: '/src/openvswitch/lib/ofp-group.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1532
      functionLinenumberEnd: 1552
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          93
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - bitmap_count1
        - ds_put_char
        - ds_put_cstr
        - ds_put_format
        - oxm_format_field_array
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-group.c:1537,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-group.c:1539,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-group.c:1543,16'
          Dst:             bitmap_count1
        - Src:             'lib/ofp-group.c:1545,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-group.c:1546,9'
          Dst:             oxm_format_field_array
        - Src:             'lib/ofp-group.c:1548,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-group.c:1549,9'
          Dst:             oxm_format_field_array
        - Src:             'lib/ofp-group.c:1550,9'
          Dst:             ds_put_char
    - functionName:    ofputil_bucket_format
      functionSourceFile: '/src/openvswitch/lib/ofp-group.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1846
      functionLinenumberEnd: 1869
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          119
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - ds_put_char
        - ds_put_cstr
        - ds_put_format
        - ofp_print_bucket_id
        - ofpacts_format
        - ofputil_format_port
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-group.c:1847,5'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-group.c:1849,5'
          Dst:             ofp_print_bucket_id
        - Src:             'lib/ofp-group.c:1851,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-group.c:1854,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-group.c:1855,9'
          Dst:             ofputil_format_port
        - Src:             'lib/ofp-group.c:1856,9'
          Dst:             ds_put_char
        - Src:             'lib/ofp-group.c:1859,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-group.c:1862,5'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-group.c:1868,5'
          Dst:             ofpacts_format
    - functionName:    bitmap_count1
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 153
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          48
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - count_1bits
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/bitmap.h:159,18'
          Dst:             count_1bits
    - functionName:    ofputil_init_group_properties
      functionSourceFile: '/src/openvswitch/lib/ofp-group.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1511
      functionLinenumberEnd: 1513
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofputil_pull_ofp11_group_mod
      functionSourceFile: '/src/openvswitch/lib/ofp-group.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2152
      functionLinenumberEnd: 2174
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          99
      EdgeCount:       16
      CyclomaticComplexity: 6
      functionsReached:
        - ntohl
        - ntohs
        - ofpbuf_pull
        - ofputil_bucket_list_destroy
        - ofputil_pull_ofp11_buckets
        - ovs_list_is_empty
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-group.c:2156,11'
          Dst:             ofpbuf_pull
        - Src:             'lib/ofp-group.c:2157,19'
          Dst:             ntohs
        - Src:             'lib/ofp-group.c:2159,20'
          Dst:             ntohl
        - Src:             'lib/ofp-group.c:2162,13'
          Dst:             ofputil_pull_ofp11_buckets
        - Src:             'lib/ofp-group.c:2169,13'
          Dst:             ovs_list_is_empty
        - Src:             'lib/ofp-group.c:2171,9'
          Dst:             ofputil_bucket_list_destroy
    - functionName:    ofputil_pull_ofp15_group_mod
      functionSourceFile: '/src/openvswitch/lib/ofp-group.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2180
      functionLinenumberEnd: 2238
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         43
      ICount:          258
      EdgeCount:       52
      CyclomaticComplexity: 11
      functionsReached:
        - ntohl
        - ntohs
        - ofpbuf_pull
        - ofputil_pull_ofp15_buckets
        - ofputil_uninit_group_mod
        - parse_ofp15_group_properties
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-group.c:2191,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-group.c:2185,11'
          Dst:             ofpbuf_pull
        - Src:             'lib/ofp-group.c:2186,19'
          Dst:             ntohs
        - Src:             'lib/ofp-group.c:2188,20'
          Dst:             ntohl
        - Src:             'lib/ofp-group.c:2190,29'
          Dst:             ntohl
        - Src:             'lib/ofp-group.c:2216,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-group.c:2222,23'
          Dst:             ntohs
        - Src:             'lib/ofp-group.c:2226,13'
          Dst:             ofputil_pull_ofp15_buckets
        - Src:             'lib/ofp-group.c:2232,13'
          Dst:             parse_ofp15_group_properties
        - Src:             'lib/ofp-group.c:2235,9'
          Dst:             ofputil_uninit_group_mod
    - functionName:    ofputil_check_group_mod
      functionSourceFile: '/src/openvswitch/lib/ofp-group.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2242
      functionLinenumberEnd: 2303
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         52
      ICount:          240
      EdgeCount:       59
      CyclomaticComplexity: 9
      functionsReached:
        - ofputil_bucket_has_liveness
        - ovs_list_is_empty
        - ovs_list_is_singleton
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-group.c:2243,5'
          Branch Sides:    []
        - Branch String:   'lib/ofp-group.c:2258,5'
          Branch Sides:    []
        - Branch String:   'lib/ofp-group.c:2281,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-group.c:2246,17'
          Dst:             ovs_list_is_singleton
        - Src:             'lib/ofp-group.c:2266,14'
          Dst:             ovs_list_is_empty
        - Src:             'lib/ofp-group.c:2284,17'
          Dst:             ofputil_bucket_has_liveness
        - Src:             'lib/ofp-group.c:2291,18'
          Dst:             ofputil_bucket_has_liveness
    - functionName:    ofputil_encode_ofp15_group_mod
      functionSourceFile: '/src/openvswitch/lib/ofp-group.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2049
      functionLinenumberEnd: 2109
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         40
      ICount:          292
      EdgeCount:       51
      CyclomaticComplexity: 13
      functionsReached:
        - abort
        - htonl
        - htons
        - id_pool_add
        - id_pool_alloc_id
        - id_pool_create
        - id_pool_destroy
        - ofpbuf_at_assert
        - ofpbuf_put_zeros
        - ofpmsg_update_length
        - ofpraw_alloc
        - ofputil_put_group_prop_ntr_selection_method
        - ofputil_put_ofp15_bucket
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-group.c:2056,9'
          Dst:             ofpraw_alloc
        - Src:             'lib/ofp-group.c:2060,5'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-group.c:2070,30'
          Dst:             id_pool_create
        - Src:             'lib/ofp-group.c:2079,25'
          Dst:             id_pool_add
        - Src:             'lib/ofp-group.c:2084,18'
          Dst:             id_pool_alloc_id
        - Src:             'lib/ofp-group.c:2085,17'
          Dst:             abort
        - Src:             'lib/ofp-group.c:2091,9'
          Dst:             ofputil_put_ofp15_bucket
        - Src:             'lib/ofp-group.c:2093,11'
          Dst:             ofpbuf_at_assert
        - Src:             'lib/ofp-group.c:2094,20'
          Dst:             htons
        - Src:             'lib/ofp-group.c:2098,21'
          Dst:             htonl
        - Src:             'lib/ofp-group.c:2099,30'
          Dst:             htonl
        - Src:             'lib/ofp-group.c:2100,29'
          Dst:             htons
        - Src:             'lib/ofp-group.c:2104,9'
          Dst:             ofputil_put_group_prop_ntr_selection_method
        - Src:             'lib/ofp-group.c:2107,5'
          Dst:             id_pool_destroy
        - Src:             'lib/ofp-group.c:2108,5'
          Dst:             ofpmsg_update_length
    - functionName:    ofputil_encode_ofp11_group_mod
      functionSourceFile: '/src/openvswitch/lib/ofp-group.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2001
      functionLinenumberEnd: 2042
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          169
      EdgeCount:       25
      CyclomaticComplexity: 5
      functionsReached:
        - bad_group_cmd
        - htonl
        - htons
        - ofpbuf_at_assert
        - ofpbuf_put_zeros
        - ofpmsg_update_length
        - ofpraw_alloc
        - ofputil_put_ofp11_bucket
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-group.c:2013,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-group.c:2007,9'
          Dst:             ofpraw_alloc
        - Src:             'lib/ofp-group.c:2009,5'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-group.c:2017,13'
          Dst:             bad_group_cmd
        - Src:             'lib/ofp-group.c:2033,9'
          Dst:             ofputil_put_ofp11_bucket
        - Src:             'lib/ofp-group.c:2035,11'
          Dst:             ofpbuf_at_assert
        - Src:             'lib/ofp-group.c:2036,20'
          Dst:             htons
        - Src:             'lib/ofp-group.c:2038,21'
          Dst:             htonl
        - Src:             'lib/ofp-group.c:2040,5'
          Dst:             ofpmsg_update_length
    - functionName:    ofputil_encode_group_mod
      functionSourceFile: '/src/openvswitch/lib/ofp-group.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2130
      functionLinenumberEnd: 2147
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          67
      EdgeCount:       24
      CyclomaticComplexity: 13
      functionsReached:
        - abort
        - ofputil_encode_ofp11_group_mod
        - ofputil_encode_ofp15_group_mod
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/ofp-group.c:2132,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-group.c:2137,16'
          Dst:             ofputil_encode_ofp11_group_mod
        - Src:             'lib/ofp-group.c:2142,16'
          Dst:             ofputil_encode_ofp15_group_mod
        - Src:             'lib/ofp-group.c:2145,9'
          Dst:             abort
    - functionName:    ofputil_group_desc_format
      functionSourceFile: '/src/openvswitch/lib/ofp-group.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1912
      functionLinenumberEnd: 1928
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          76
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ds_put_char
        - ntohs
        - ofpbuf_const_initializer
        - ofputil_decode_group_desc_reply
        - ofputil_group_format
        - ofputil_uninit_group_desc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-group.c:1913,52'
          Dst:             ntohs
        - Src:             'lib/ofp-group.c:1913,23'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/ofp-group.c:1918,18'
          Dst:             ofputil_decode_group_desc_reply
        - Src:             'lib/ofp-group.c:1923,9'
          Dst:             ds_put_char
        - Src:             'lib/ofp-group.c:1924,9'
          Dst:             ds_put_char
        - Src:             'lib/ofp-group.c:1925,9'
          Dst:             ofputil_group_format
        - Src:             'lib/ofp-group.c:1928,9'
          Dst:             ofputil_uninit_group_desc
    - functionName:    ofputil_decode_group_desc_reply
      functionSourceFile: '/src/openvswitch/lib/ofp-group.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1793
      functionLinenumberEnd: 1811
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          67
      EdgeCount:       24
      CyclomaticComplexity: 13
      functionsReached:
        - abort
        - ofputil_decode_ofp11_group_desc_reply
        - ofputil_decode_ofp15_group_desc_reply
        - ofputil_init_group_properties
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-group.c:1796,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-group.c:1794,5'
          Dst:             ofputil_init_group_properties
        - Src:             'lib/ofp-group.c:1802,16'
          Dst:             ofputil_decode_ofp11_group_desc_reply
        - Src:             'lib/ofp-group.c:1806,16'
          Dst:             ofputil_decode_ofp15_group_desc_reply
        - Src:             'lib/ofp-group.c:1809,9'
          Dst:             abort
    - functionName:    ofputil_uninit_group_desc
      functionSourceFile: '/src/openvswitch/lib/ofp-group.c'
      linkageType:     InternalLinkage
      functionLinenumber: 231
      functionLinenumberEnd: 234
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofputil_bucket_list_destroy
        - ofputil_group_properties_destroy
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-group.c:232,5'
          Dst:             ofputil_bucket_list_destroy
        - Src:             'lib/ofp-group.c:233,5'
          Dst:             ofputil_group_properties_destroy
    - functionName:    ofputil_decode_ofp11_group_desc_reply
      functionSourceFile: '/src/openvswitch/lib/ofp-group.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1686
      functionLinenumberEnd: 1716
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          157
      EdgeCount:       33
      CyclomaticComplexity: 9
      functionsReached:
        - ntohl
        - ntohs
        - ofpbuf_try_pull
        - ofpraw_pull_assert
        - ofputil_pull_ofp11_buckets
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-group.c:1691,9'
          Dst:             ofpraw_pull_assert
        - Src:             'lib/ofp-group.c:1698,12'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/ofp-group.c:1700,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-group.c:1705,20'
          Dst:             ntohl
        - Src:             'lib/ofp-group.c:1707,14'
          Dst:             ntohs
        - Src:             'lib/ofp-group.c:1709,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-group.c:1714,12'
          Dst:             ofputil_pull_ofp11_buckets
    - functionName:    ofputil_decode_ofp15_group_desc_reply
      functionSourceFile: '/src/openvswitch/lib/ofp-group.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1722
      functionLinenumberEnd: 1778
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         38
      ICount:          241
      EdgeCount:       49
      CyclomaticComplexity: 13
      functionsReached:
        - ntohl
        - ntohs
        - ofpbuf_try_pull
        - ofpraw_pull_assert
        - ofputil_pull_ofp15_buckets
        - ofputil_uninit_group_desc
        - parse_ofp15_group_properties
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-group.c:1728,9'
          Dst:             ofpraw_pull_assert
        - Src:             'lib/ofp-group.c:1735,12'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/ofp-group.c:1737,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-group.c:1742,20'
          Dst:             ntohl
        - Src:             'lib/ofp-group.c:1744,14'
          Dst:             ntohs
        - Src:             'lib/ofp-group.c:1746,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-group.c:1751,23'
          Dst:             ntohs
        - Src:             'lib/ofp-group.c:1753,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-group.c:1757,13'
          Dst:             ofputil_pull_ofp15_buckets
        - Src:             'lib/ofp-group.c:1771,13'
          Dst:             parse_ofp15_group_properties
        - Src:             'lib/ofp-group.c:1775,9'
          Dst:             ofputil_uninit_group_desc
    - functionName:    ofputil_group_properties_copy
      functionSourceFile: '/src/openvswitch/lib/ofp-group.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1518
      functionLinenumberEnd: 1521
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - xmemdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-group.c:1520,25'
          Dst:             xmemdup
    - functionName:    ofputil_append_ofp15_group_desc_reply
      functionSourceFile: '/src/openvswitch/lib/ofp-group.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1258
      functionLinenumberEnd: 1285
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          153
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - htonl
        - htons
        - ofpbuf_at_assert
        - ofpbuf_from_list
        - ofpbuf_put_zeros
        - ofpmp_postappend
        - ofputil_put_group_prop_ntr_selection_method
        - ofputil_put_ofp15_bucket
        - ovs_list_back
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-group.c:1259,45'
          Dst:             ovs_list_back
        - Src:             'lib/ofp-group.c:1259,28'
          Dst:             ofpbuf_from_list
        - Src:             'lib/ofp-group.c:1265,5'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-group.c:1268,9'
          Dst:             ofputil_put_ofp15_bucket
        - Src:             'lib/ofp-group.c:1271,12'
          Dst:             ofpbuf_at_assert
        - Src:             'lib/ofp-group.c:1273,22'
          Dst:             htonl
        - Src:             'lib/ofp-group.c:1274,30'
          Dst:             htons
        - Src:             'lib/ofp-group.c:1278,9'
          Dst:             ofputil_put_group_prop_ntr_selection_method
        - Src:             'lib/ofp-group.c:1281,12'
          Dst:             ofpbuf_at_assert
        - Src:             'lib/ofp-group.c:1282,20'
          Dst:             htons
        - Src:             'lib/ofp-group.c:1284,5'
          Dst:             ofpmp_postappend
    - functionName:    ovs_list_back
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 295
      functionLinenumberEnd: 300
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovs_list_is_empty
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/list.h:298,17'
          Dst:             ovs_list_is_empty
        - Src:             './include/openvswitch/list.h:298,5'
          Dst:             ovs_ignore
    - functionName:    ofputil_append_ofp11_group_desc_reply
      functionSourceFile: '/src/openvswitch/lib/ofp-group.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1234
      functionLinenumberEnd: 1251
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          107
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - htonl
        - htons
        - ofpbuf_at_assert
        - ofpbuf_from_list
        - ofpbuf_put_zeros
        - ofpmp_postappend
        - ofputil_put_ofp11_bucket
        - ovs_list_back
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-group.c:1235,45'
          Dst:             ovs_list_back
        - Src:             'lib/ofp-group.c:1235,28'
          Dst:             ofpbuf_from_list
        - Src:             'lib/ofp-group.c:1241,5'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-group.c:1243,9'
          Dst:             ofputil_put_ofp11_bucket
        - Src:             'lib/ofp-group.c:1245,12'
          Dst:             ofpbuf_at_assert
        - Src:             'lib/ofp-group.c:1246,20'
          Dst:             htons
        - Src:             'lib/ofp-group.c:1248,22'
          Dst:             htonl
        - Src:             'lib/ofp-group.c:1250,5'
          Dst:             ofpmp_postappend
    - functionName:    ofputil_append_group_desc_reply
      functionSourceFile: '/src/openvswitch/lib/ofp-group.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1294
      functionLinenumberEnd: 1314
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          66
      EdgeCount:       24
      CyclomaticComplexity: 13
      functionsReached:
        - abort
        - ofpmp_version
        - ofputil_append_ofp11_group_desc_reply
        - ofputil_append_ofp15_group_desc_reply
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib/ofp-group.c:1297,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-group.c:1295,32'
          Dst:             ofpmp_version
        - Src:             'lib/ofp-group.c:1303,9'
          Dst:             ofputil_append_ofp11_group_desc_reply
        - Src:             'lib/ofp-group.c:1308,9'
          Dst:             ofputil_append_ofp15_group_desc_reply
        - Src:             'lib/ofp-group.c:1312,9'
          Dst:             abort
    - functionName:    ovs_list_moved
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 229
      functionLinenumberEnd: 235
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_list_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/list.h:231,9'
          Dst:             ovs_list_init
    - functionName:    parse_ofp_group_mod_file
      functionSourceFile: '/src/openvswitch/lib/ofp-group.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1093
      functionLinenumberEnd: 1156
      functionDepth:   0
      returnType:      'N/A'
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         31
      ICount:          230
      EdgeCount:       40
      CyclomaticComplexity: 11
      functionsReached:
        - __errno_location
        - ds_cstr
        - ds_destroy
        - ds_get_preprocessed_line
        - ds_init
        - fclose
        - fopen
        - ofputil_uninit_group_mod
        - ovs_list_moved
        - ovs_strerror
        - parse_ofp_group_mod_str
        - strcmp
        - x2nrealloc
        - xasprintf
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-group.c:1102,15'
          Dst:             strcmp
        - Src:             'lib/ofp-group.c:1102,48'
          Dst:             fopen
        - Src:             'lib/ofp-group.c:1105,50'
          Dst:             __errno_location
        - Src:             'lib/ofp-group.c:1105,37'
          Dst:             ovs_strerror
        - Src:             'lib/ofp-group.c:1104,16'
          Dst:             xasprintf
        - Src:             'lib/ofp-group.c:1109,5'
          Dst:             ds_init
        - Src:             'lib/ofp-group.c:1112,13'
          Dst:             ds_get_preprocessed_line
        - Src:             'lib/ofp-group.c:1120,23'
          Dst:             x2nrealloc
        - Src:             'lib/ofp-group.c:1122,17'
          Dst:             ovs_list_moved
        - Src:             'lib/ofp-group.c:1126,67'
          Dst:             ds_cstr
        - Src:             'lib/ofp-group.c:1126,17'
          Dst:             parse_ofp_group_mod_str
        - Src:             'lib/ofp-group.c:1132,17'
          Dst:             ofputil_uninit_group_mod
        - Src:             'lib/ofp-group.c:1138,13'
          Dst:             ds_destroy
        - Src:             'lib/ofp-group.c:1140,17'
          Dst:             fclose
        - Src:             'lib/ofp-group.c:1143,25'
          Dst:             xasprintf
        - Src:             'lib/ofp-group.c:1151,5'
          Dst:             ds_destroy
        - Src:             'lib/ofp-group.c:1153,9'
          Dst:             fclose
    - functionName:    parse_ofp_group_mod_str
      functionSourceFile: '/src/openvswitch/lib/ofp-group.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1074
      functionLinenumberEnd: 1079
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          39
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - parse_ofp_group_mod_str__
        - xstrdup
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-group.c:1075,20'
          Dst:             xstrdup
        - Src:             'lib/ofp-group.c:1076,19'
          Dst:             parse_ofp_group_mod_str__
    - functionName:    parse_ofp_group_mod_str__
      functionSourceFile: '/src/openvswitch/lib/ofp-group.c'
      linkageType:     InternalLinkage
      functionLinenumber: 785
      functionLinenumberEnd: 1062
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         180
      ICount:          959
      EdgeCount:       243
      CyclomaticComplexity: 65
      functionsReached:
        - abort
        - ofputil_parse_key_value
        - ofputil_uninit_group_mod
        - ovs_list_init
        - ovs_list_is_short
        - ovs_list_push_back
        - parse_bucket_str
        - parse_select_group_field
        - str_to_u32
        - str_to_u64
        - strchr
        - strcmp
        - strcpy
        - strcspn
        - strlen
        - strncmp
        - strspn
        - strstr
        - xasprintf
        - xstrdup
        - xzalloc
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-group.c:824,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-group.c:802,19'
          Dst:             strspn
        - Src:             'lib/ofp-group.c:803,15'
          Dst:             strcspn
        - Src:             'lib/ofp-group.c:805,14'
          Dst:             strncmp
        - Src:             'lib/ofp-group.c:807,21'
          Dst:             strncmp
        - Src:             'lib/ofp-group.c:809,21'
          Dst:             strncmp
        - Src:             'lib/ofp-group.c:811,21'
          Dst:             strncmp
        - Src:             'lib/ofp-group.c:813,21'
          Dst:             strncmp
        - Src:             'lib/ofp-group.c:815,21'
          Dst:             strncmp
        - Src:             'lib/ofp-group.c:852,9'
          Dst:             abort
        - Src:             'lib/ofp-group.c:859,5'
          Dst:             ovs_list_init
        - Src:             'lib/ofp-group.c:868,21'
          Dst:             strstr
        - Src:             'lib/ofp-group.c:871,21'
          Dst:             xstrdup
        - Src:             'lib/ofp-group.c:880,12'
          Dst:             ofputil_parse_key_value
        - Src:             'lib/ofp-group.c:881,14'
          Dst:             strcmp
        - Src:             'lib/ofp-group.c:883,25'
          Dst:             xstrdup
        - Src:             'lib/ofp-group.c:886,18'
          Dst:             strcmp
        - Src:             'lib/ofp-group.c:888,25'
          Dst:             strcmp
        - Src:             'lib/ofp-group.c:890,25'
          Dst:             strcmp
        - Src:             'lib/ofp-group.c:893,25'
          Dst:             str_to_u32
        - Src:             'lib/ofp-group.c:901,29'
          Dst:             xasprintf
        - Src:             'lib/ofp-group.c:908,25'
          Dst:             xstrdup
        - Src:             'lib/ofp-group.c:912,21'
          Dst:             strcmp
        - Src:             'lib/ofp-group.c:913,17'
          Dst:             strcmp
        - Src:             'lib/ofp-group.c:916,25'
          Dst:             str_to_u32
        - Src:             'lib/ofp-group.c:921,29'
          Dst:             xasprintf
        - Src:             'lib/ofp-group.c:926,21'
          Dst:             strcmp
        - Src:             'lib/ofp-group.c:928,25'
          Dst:             xstrdup
        - Src:             'lib/ofp-group.c:931,18'
          Dst:             strcmp
        - Src:             'lib/ofp-group.c:933,25'
          Dst:             strcmp
        - Src:             'lib/ofp-group.c:935,25'
          Dst:             strcmp
        - Src:             'lib/ofp-group.c:937,25'
          Dst:             strcmp
        - Src:             'lib/ofp-group.c:938,25'
          Dst:             strcmp
        - Src:             'lib/ofp-group.c:941,25'
          Dst:             xasprintf
        - Src:             'lib/ofp-group.c:945,21'
          Dst:             strcmp
        - Src:             'lib/ofp-group.c:947,25'
          Dst:             xstrdup
        - Src:             'lib/ofp-group.c:950,17'
          Dst:             strlen
        - Src:             'lib/ofp-group.c:951,25'
          Dst:             xasprintf
        - Src:             'lib/ofp-group.c:958,13'
          Dst:             strcpy
        - Src:             'lib/ofp-group.c:960,21'
          Dst:             strcmp
        - Src:             'lib/ofp-group.c:962,25'
          Dst:             xstrdup
        - Src:             'lib/ofp-group.c:965,21'
          Dst:             str_to_u64
        - Src:             'lib/ofp-group.c:970,21'
          Dst:             strcmp
        - Src:             'lib/ofp-group.c:972,25'
          Dst:             xstrdup
        - Src:             'lib/ofp-group.c:975,21'
          Dst:             parse_select_group_field
        - Src:             'lib/ofp-group.c:983,21'
          Dst:             xasprintf
        - Src:             'lib/ofp-group.c:988,17'
          Dst:             xstrdup
        - Src:             'lib/ofp-group.c:992,17'
          Dst:             xstrdup
        - Src:             'lib/ofp-group.c:997,9'
          Dst:             strcmp
        - Src:             'lib/ofp-group.c:999,17'
          Dst:             xstrdup
        - Src:             'lib/ofp-group.c:1006,17'
          Dst:             xstrdup
        - Src:             'lib/ofp-group.c:1012,21'
          Dst:             xstrdup
        - Src:             'lib/ofp-group.c:1016,17'
          Dst:             xstrdup
        - Src:             'lib/ofp-group.c:1024,19'
          Dst:             strchr
        - Src:             'lib/ofp-group.c:1026,21'
          Dst:             xstrdup
        - Src:             'lib/ofp-group.c:1031,24'
          Dst:             strstr
        - Src:             'lib/ofp-group.c:1036,18'
          Dst:             xzalloc
        - Src:             'lib/ofp-group.c:1037,17'
          Dst:             parse_bucket_str
        - Src:             'lib/ofp-group.c:1043,9'
          Dst:             ovs_list_push_back
        - Src:             'lib/ofp-group.c:1047,21'
          Dst:             xstrdup
        - Src:             'lib/ofp-group.c:1053,42'
          Dst:             ovs_list_is_short
        - Src:             'lib/ofp-group.c:1054,17'
          Dst:             xstrdup
        - Src:             'lib/ofp-group.c:1060,5'
          Dst:             ofputil_uninit_group_mod
    - functionName:    ofputil_group_stats_format
      functionSourceFile: '/src/openvswitch/lib/ofp-group.c'
      linkageType:     InternalLinkage
      functionLinenumber: 595
      functionLinenumberEnd: 635
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         20
      ICount:          157
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - ds_put_char
        - ds_put_cstr
        - ds_put_format
        - ntohs
        - ofp_print_duration
        - ofpbuf_const_initializer
        - ofputil_decode_group_stats_reply
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-group.c:596,52'
          Dst:             ntohs
        - Src:             'lib/ofp-group.c:596,23'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/ofp-group.c:601,18'
          Dst:             ofputil_decode_group_stats_reply
        - Src:             'lib/ofp-group.c:604,17'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-group.c:610,9'
          Dst:             ds_put_char
        - Src:             'lib/ofp-group.c:612,9'
          Dst:             ds_put_char
        - Src:             'lib/ofp-group.c:613,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-group.c:616,13'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-group.c:617,13'
          Dst:             ofp_print_duration
        - Src:             'lib/ofp-group.c:618,13'
          Dst:             ds_put_char
        - Src:             'lib/ofp-group.c:620,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-group.c:621,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-group.c:622,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-group.c:626,17'
          Dst:             ds_put_format
        - Src:             'lib/ofp-group.c:627,17'
          Dst:             ds_put_format
        - Src:             'lib/ofp-group.c:628,17'
          Dst:             ds_put_format
    - functionName:    ofputil_decode_group_stats_reply
      functionSourceFile: '/src/openvswitch/lib/ofp-group.c'
      linkageType:     InternalLinkage
      functionLinenumber: 500
      functionLinenumberEnd: 573
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         48
      ICount:          350
      EdgeCount:       61
      CyclomaticComplexity: 15
      functionsReached:
        - abort
        - ntohl
        - ntohll
        - ntohs
        - ofpbuf_try_pull
        - ofpraw_decode
        - ofpraw_get_name
        - ofpraw_pull
        - vlog_rate_limit
        - xmalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-group.c:510,28'
          Dst:             ofpraw_decode
        - Src:             'lib/ofp-group.c:511,16'
          Dst:             ofpraw_pull
        - Src:             'lib/ofp-group.c:522,17'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/ofp-group.c:529,17'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/ofp-group.c:532,32'
          Dst:             ntohl
        - Src:             'lib/ofp-group.c:533,33'
          Dst:             ntohl
        - Src:             'lib/ofp-group.c:538,9'
          Dst:             abort
        - Src:             'lib/ofp-group.c:542,9'
          Dst:             ofpraw_get_name
        - Src:             'lib/ofp-group.c:542,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-group.c:546,14'
          Dst:             ntohs
        - Src:             'lib/ofp-group.c:548,9'
          Dst:             ofpraw_get_name
        - Src:             'lib/ofp-group.c:548,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-group.c:553,20'
          Dst:             ntohl
        - Src:             'lib/ofp-group.c:554,21'
          Dst:             ntohl
        - Src:             'lib/ofp-group.c:555,24'
          Dst:             ntohll
        - Src:             'lib/ofp-group.c:556,22'
          Dst:             ntohll
        - Src:             'lib/ofp-group.c:559,11'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/ofp-group.c:561,9'
          Dst:             ofpraw_get_name
        - Src:             'lib/ofp-group.c:561,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-group.c:566,24'
          Dst:             xmalloc
        - Src:             'lib/ofp-group.c:568,44'
          Dst:             ntohll
        - Src:             'lib/ofp-group.c:569,42'
          Dst:             ntohll
    - functionName:    ofputil_group_stats_request_format
      functionSourceFile: '/src/openvswitch/lib/ofp-group.c'
      linkageType:     InternalLinkage
      functionLinenumber: 579
      functionLinenumberEnd: 591
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_cstr
        - ofputil_decode_group_stats_request
        - ofputil_format_group
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-group.c:583,13'
          Dst:             ofputil_decode_group_stats_request
        - Src:             'lib/ofp-group.c:588,5'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-group.c:589,5'
          Dst:             ofputil_format_group
    - functionName:    ofputil_decode_group_stats_request
      functionSourceFile: '/src/openvswitch/lib/ofp-group.c'
      linkageType:     InternalLinkage
      functionLinenumber: 480
      functionLinenumberEnd: 483
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohl
        - ofpmsg_body
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-group.c:481,53'
          Dst:             ofpmsg_body
        - Src:             'lib/ofp-group.c:482,17'
          Dst:             ntohl
    - functionName:    ofputil_format_group
      functionSourceFile: '/src/openvswitch/lib/ofp-group.c'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 71
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_cstr
        - ofputil_group_to_string
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-group.c:69,5'
          Dst:             ofputil_group_to_string
        - Src:             'lib/ofp-group.c:70,5'
          Dst:             ds_put_cstr
    - functionName:    ofputil_group_to_string
      functionSourceFile: '/src/openvswitch/lib/ofp-group.c'
      linkageType:     InternalLinkage
      functionLinenumber: 81
      functionLinenumberEnd: 95
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          43
      EdgeCount:       13
      CyclomaticComplexity: 8
      functionsReached:
        - ovs_strlcpy
        - snprintf
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-group.c:82,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-group.c:84,9'
          Dst:             ovs_strlcpy
        - Src:             'lib/ofp-group.c:88,9'
          Dst:             ovs_strlcpy
        - Src:             'lib/ofp-group.c:92,9'
          Dst:             snprintf
    - functionName:    group_type_to_string
      functionSourceFile: '/src/openvswitch/lib/ofp-group.c'
      linkageType:     InternalLinkage
      functionLinenumber: 437
      functionLinenumberEnd: 445
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          44
      EdgeCount:       16
      CyclomaticComplexity: 9
      functionsReached:
        - abort
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-group.c:438,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-group.c:443,14'
          Dst:             abort
    - functionName:    ofputil_group_features_format
      functionSourceFile: '/src/openvswitch/lib/ofp-group.c'
      linkageType:     InternalLinkage
      functionLinenumber: 449
      functionLinenumberEnd: 471
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          84
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ds_put_char
        - ds_put_format
        - group_type_to_string
        - ofpact_bitmap_format
        - ofputil_decode_group_features_reply
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-group.c:453,5'
          Dst:             ofputil_decode_group_features_reply
        - Src:             'lib/ofp-group.c:455,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-group.c:456,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-group.c:457,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-group.c:462,54'
          Dst:             group_type_to_string
        - Src:             'lib/ofp-group.c:462,13'
          Dst:             ds_put_format
        - Src:             'lib/ofp-group.c:463,13'
          Dst:             ds_put_format
        - Src:             'lib/ofp-group.c:465,13'
          Dst:             ds_put_format
        - Src:             'lib/ofp-group.c:466,13'
          Dst:             ofpact_bitmap_format
        - Src:             'lib/ofp-group.c:467,13'
          Dst:             ds_put_char
    - functionName:    ofputil_decode_group_features_reply
      functionSourceFile: '/src/openvswitch/lib/ofp-group.c'
      linkageType:     InternalLinkage
      functionLinenumber: 422
      functionLinenumberEnd: 433
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          81
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - ntohl
        - ofpact_bitmap_from_openflow
        - ofpmsg_body
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-group.c:423,52'
          Dst:             ofpmsg_body
        - Src:             'lib/ofp-group.c:426,23'
          Dst:             ntohl
        - Src:             'lib/ofp-group.c:427,30'
          Dst:             ntohl
        - Src:             'lib/ofp-group.c:429,35'
          Dst:             ntohl
        - Src:             'lib/ofp-group.c:430,32'
          Dst:             ofpact_bitmap_from_openflow
    - functionName:    ofputil_encode_group_features_reply
      functionSourceFile: '/src/openvswitch/lib/ofp-group.c'
      linkageType:     InternalLinkage
      functionLinenumber: 403
      functionLinenumberEnd: 415
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          86
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
        - ofpact_bitmap_to_openflow
        - ofpbuf_put_zeros
        - ofpraw_alloc_stats_reply
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-group.c:404,28'
          Dst:             ofpraw_alloc_stats_reply
        - Src:             'lib/ofp-group.c:406,11'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-group.c:407,18'
          Dst:             htonl
        - Src:             'lib/ofp-group.c:408,25'
          Dst:             htonl
        - Src:             'lib/ofp-group.c:410,30'
          Dst:             htonl
        - Src:             'lib/ofp-group.c:411,27'
          Dst:             ofpact_bitmap_to_openflow
    - functionName:    ofputil_encode_group_features_request
      functionSourceFile: '/src/openvswitch/lib/ofp-group.c'
      linkageType:     InternalLinkage
      functionLinenumber: 390
      functionLinenumberEnd: 394
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpraw_alloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-group.c:391,12'
          Dst:             ofpraw_alloc
    - functionName:    ofputil_group_stats_to_ofp13
      functionSourceFile: '/src/openvswitch/lib/ofp-group.c'
      linkageType:     InternalLinkage
      functionLinenumber: 336
      functionLinenumberEnd: 341
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          39
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
        - ofputil_group_stats_to_ofp11
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-group.c:337,5'
          Dst:             ofputil_group_stats_to_ofp11
        - Src:             'lib/ofp-group.c:338,26'
          Dst:             htonl
        - Src:             'lib/ofp-group.c:339,27'
          Dst:             htonl
    - functionName:    ofputil_group_stats_to_ofp11
      functionSourceFile: '/src/openvswitch/lib/ofp-group.c'
      linkageType:     InternalLinkage
      functionLinenumber: 322
      functionLinenumberEnd: 330
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          58
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
        - htonll
        - htons
        - ofputil_group_bucket_counters_to_ofp11
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-group.c:324,20'
          Dst:             htons
        - Src:             'lib/ofp-group.c:325,22'
          Dst:             htonl
        - Src:             'lib/ofp-group.c:326,23'
          Dst:             htonl
        - Src:             'lib/ofp-group.c:327,26'
          Dst:             htonll
        - Src:             'lib/ofp-group.c:328,24'
          Dst:             htonll
        - Src:             'lib/ofp-group.c:329,5'
          Dst:             ofputil_group_bucket_counters_to_ofp11
    - functionName:    ofputil_append_group_stats
      functionSourceFile: '/src/openvswitch/lib/ofp-group.c'
      linkageType:     InternalLinkage
      functionLinenumber: 349
      functionLinenumberEnd: 384
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          92
      EdgeCount:       24
      CyclomaticComplexity: 13
      functionsReached:
        - abort
        - ofpmp_append
        - ofpmp_version
        - ofputil_group_stats_to_ofp11
        - ofputil_group_stats_to_ofp13
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib/ofp-group.c:356,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-group.c:356,13'
          Dst:             ofpmp_version
        - Src:             'lib/ofp-group.c:362,20'
          Dst:             ofpmp_append
        - Src:             'lib/ofp-group.c:364,13'
          Dst:             ofputil_group_stats_to_ofp11
        - Src:             'lib/ofp-group.c:375,20'
          Dst:             ofpmp_append
        - Src:             'lib/ofp-group.c:377,13'
          Dst:             ofputil_group_stats_to_ofp13
        - Src:             'lib/ofp-group.c:382,9'
          Dst:             abort
    - functionName:    ofputil_group_desc_request_format
      functionSourceFile: '/src/openvswitch/lib/ofp-group.c'
      linkageType:     InternalLinkage
      functionLinenumber: 298
      functionLinenumberEnd: 303
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_cstr
        - ofputil_decode_group_desc_request
        - ofputil_format_group
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-group.c:299,25'
          Dst:             ofputil_decode_group_desc_request
        - Src:             'lib/ofp-group.c:300,5'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-group.c:301,5'
          Dst:             ofputil_format_group
    - functionName:    ofputil_decode_group_desc_request
      functionSourceFile: '/src/openvswitch/lib/ofp-group.c'
      linkageType:     InternalLinkage
      functionLinenumber: 241
      functionLinenumberEnd: 253
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          64
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - abort
        - ntohl
        - ntohs
        - ofpbuf_const_initializer
        - ofpbuf_pull
        - ofpraw_pull_assert
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-group.c:242,58'
          Dst:             ntohs
        - Src:             'lib/ofp-group.c:242,29'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/ofp-group.c:243,23'
          Dst:             ofpraw_pull_assert
        - Src:             'lib/ofp-group.c:248,30'
          Dst:             ofpbuf_pull
        - Src:             'lib/ofp-group.c:249,16'
          Dst:             ntohl
        - Src:             'lib/ofp-group.c:251,9'
          Dst:             abort
    - functionName:    ofputil_encode_group_desc_request
      functionSourceFile: '/src/openvswitch/lib/ofp-group.c'
      linkageType:     InternalLinkage
      functionLinenumber: 265
      functionLinenumberEnd: 291
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          74
      EdgeCount:       24
      CyclomaticComplexity: 13
      functionsReached:
        - abort
        - htonl
        - ofpbuf_put_zeros
        - ofpraw_alloc
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib/ofp-group.c:268,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-group.c:273,19'
          Dst:             ofpraw_alloc
        - Src:             'lib/ofp-group.c:279,19'
          Dst:             ofpraw_alloc
        - Src:             'lib/ofp-group.c:283,15'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-group.c:284,25'
          Dst:             htonl
        - Src:             'lib/ofp-group.c:288,9'
          Dst:             abort
    - functionName:    ofputil_encode_group_stats_request
      functionSourceFile: '/src/openvswitch/lib/ofp-group.c'
      linkageType:     InternalLinkage
      functionLinenumber: 218
      functionLinenumberEnd: 226
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
        - ofpbuf_put_zeros
        - ofpraw_alloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-group.c:219,26'
          Dst:             ofpraw_alloc
        - Src:             'lib/ofp-group.c:223,45'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-group.c:224,21'
          Dst:             htonl
    - functionName:    ofputil_bucket_list_back
      functionSourceFile: '/src/openvswitch/lib/ofp-group.c'
      linkageType:     InternalLinkage
      functionLinenumber: 202
      functionLinenumberEnd: 207
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_list_back
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-group.c:205,5'
          Dst:             ovs_list_back
    - functionName:    ovs_list_front
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 283
      functionLinenumberEnd: 288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovs_list_is_empty
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/list.h:286,17'
          Dst:             ovs_list_is_empty
        - Src:             './include/openvswitch/list.h:286,5'
          Dst:             ovs_ignore
    - functionName:    ofputil_bucket_list_front
      functionSourceFile: '/src/openvswitch/lib/ofp-group.c'
      linkageType:     InternalLinkage
      functionLinenumber: 190
      functionLinenumberEnd: 195
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_list_front
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-group.c:193,5'
          Dst:             ovs_list_front
    - functionName:    ofputil_bucket_find
      functionSourceFile: '/src/openvswitch/lib/ofp-group.c'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 163
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          73
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofputil_bucket_clone_data
      functionSourceFile: '/src/openvswitch/lib/ofp-group.c'
      linkageType:     InternalLinkage
      functionLinenumber: 112
      functionLinenumberEnd: 118
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - xmemdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-group.c:115,11'
          Dst:             xmemdup
        - Src:             'lib/ofp-group.c:116,20'
          Dst:             xmemdup
    - functionName:    ofputil_bucket_clone_list
      functionSourceFile: '/src/openvswitch/lib/ofp-group.c'
      linkageType:     InternalLinkage
      functionLinenumber: 130
      functionLinenumberEnd: 143
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          72
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - ofputil_bucket_clone_data
        - ovs_list_push_back
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-group.c:140,22'
          Dst:             ofputil_bucket_clone_data
        - Src:             'lib/ofp-group.c:141,9'
          Dst:             ovs_list_push_back
    - functionName:    ofputil_group_from_string
      functionSourceFile: '/src/openvswitch/lib/ofp-group.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 59
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          75
      EdgeCount:       21
      CyclomaticComplexity: 6
      functionsReached:
        - str_to_uint
        - strcasecmp
        - vlog
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-group.c:47,10'
          Dst:             strcasecmp
        - Src:             'lib/ofp-group.c:49,17'
          Dst:             strcasecmp
        - Src:             'lib/ofp-group.c:51,17'
          Dst:             str_to_uint
        - Src:             'lib/ofp-group.c:52,9'
          Dst:             vlog
    - functionName:    ds_put_char
      functionSourceFile: '/src/openvswitch/./include/openvswitch/dynamic-string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_char__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/dynamic-string.h:99,9'
          Dst:             ds_put_char__
    - functionName:    print_ipfix_stat
      functionSourceFile: '/src/openvswitch/lib/ofp-ipfix.c'
      linkageType:     InternalLinkage
      functionLinenumber: 116
      functionLinenumberEnd: 128
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ds_put_char
        - ds_put_cstr
        - ds_put_format
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-ipfix.c:117,5'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-ipfix.c:119,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-ipfix.c:121,9'
          Dst:             ds_put_char
        - Src:             'lib/ofp-ipfix.c:124,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-ipfix.c:126,9'
          Dst:             ds_put_cstr
    - functionName:    ntohll
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
        - ntohl
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byte-order.h:36,12'
          Dst:             htonl
        - Src:             'lib/byte-order.h:36,44'
          Dst:             ntohl
        - Src:             'lib/byte-order.h:36,62'
          Dst:             ntohl
    - functionName:    ofpbuf_pull
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 258
      functionLinenumberEnd: 269
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          64
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:259,5'
          Dst:             ovs_ignore
    - functionName:    htonll
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 30
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byte-order.h:30,12'
          Dst:             htonl
        - Src:             'lib/byte-order.h:30,44'
          Dst:             htonl
        - Src:             'lib/byte-order.h:30,62'
          Dst:             htonl
    - functionName:    ofputil_format_ipfix_stats_flow
      functionSourceFile: '/src/openvswitch/lib/ofp-ipfix.c'
      linkageType:     InternalLinkage
      functionLinenumber: 158
      functionLinenumberEnd: 162
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_cstr
        - ds_put_format
        - format_ipfix_stats
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-ipfix.c:159,5'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-ipfix.c:160,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-ipfix.c:161,5'
          Dst:             format_ipfix_stats
    - functionName:    format_ipfix_stats
      functionSourceFile: '/src/openvswitch/lib/ofp-ipfix.c'
      linkageType:     InternalLinkage
      functionLinenumber: 133
      functionLinenumberEnd: 145
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          71
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_char_multiple
        - print_ipfix_stat
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-ipfix.c:134,5'
          Dst:             print_ipfix_stat
        - Src:             'lib/ofp-ipfix.c:135,5'
          Dst:             print_ipfix_stat
        - Src:             'lib/ofp-ipfix.c:136,5'
          Dst:             print_ipfix_stat
        - Src:             'lib/ofp-ipfix.c:137,5'
          Dst:             print_ipfix_stat
        - Src:             'lib/ofp-ipfix.c:138,5'
          Dst:             print_ipfix_stat
        - Src:             'lib/ofp-ipfix.c:139,5'
          Dst:             print_ipfix_stat
        - Src:             'lib/ofp-ipfix.c:140,5'
          Dst:             ds_put_char_multiple
        - Src:             'lib/ofp-ipfix.c:141,5'
          Dst:             print_ipfix_stat
        - Src:             'lib/ofp-ipfix.c:142,5'
          Dst:             print_ipfix_stat
        - Src:             'lib/ofp-ipfix.c:143,5'
          Dst:             print_ipfix_stat
        - Src:             'lib/ofp-ipfix.c:144,5'
          Dst:             print_ipfix_stat
    - functionName:    ofputil_format_ipfix_stats_bridge
      functionSourceFile: '/src/openvswitch/lib/ofp-ipfix.c'
      linkageType:     InternalLinkage
      functionLinenumber: 150
      functionLinenumberEnd: 153
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_cstr
        - format_ipfix_stats
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-ipfix.c:151,5'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-ipfix.c:152,5'
          Dst:             format_ipfix_stats
    - functionName:    ofpbuf_const_initializer
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 97
      functionLinenumberEnd: 105
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          30
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofputil_count_ipfix_stats
      functionSourceFile: '/src/openvswitch/lib/ofp-ipfix.c'
      linkageType:     InternalLinkage
      functionLinenumber: 106
      functionLinenumberEnd: 110
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohs
        - ofpbuf_const_initializer
        - ofpraw_pull_assert
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-ipfix.c:107,52'
          Dst:             ntohs
        - Src:             'lib/ofp-ipfix.c:107,23'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/ofp-ipfix.c:108,5'
          Dst:             ofpraw_pull_assert
    - functionName:    ofputil_ipfix_stats_from_nx
      functionSourceFile: '/src/openvswitch/lib/ofp-ipfix.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 70
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          92
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohl
        - ntohll
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-ipfix.c:58,28'
          Dst:             ntohl
        - Src:             'lib/ofp-ipfix.c:59,23'
          Dst:             ntohll
        - Src:             'lib/ofp-ipfix.c:60,25'
          Dst:             ntohll
        - Src:             'lib/ofp-ipfix.c:61,16'
          Dst:             ntohll
        - Src:             'lib/ofp-ipfix.c:62,21'
          Dst:             ntohll
        - Src:             'lib/ofp-ipfix.c:63,21'
          Dst:             ntohll
        - Src:             'lib/ofp-ipfix.c:64,22'
          Dst:             ntohll
        - Src:             'lib/ofp-ipfix.c:65,27'
          Dst:             ntohll
        - Src:             'lib/ofp-ipfix.c:66,27'
          Dst:             ntohll
        - Src:             'lib/ofp-ipfix.c:67,19'
          Dst:             ntohll
        - Src:             'lib/ofp-ipfix.c:68,21'
          Dst:             ntohll
    - functionName:    ofpbuf_try_pull
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 275
      functionLinenumberEnd: 276
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofpbuf_pull
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:276,30'
          Dst:             ofpbuf_pull
    - functionName:    ofputil_pull_ipfix_stats
      functionSourceFile: '/src/openvswitch/lib/ofp-ipfix.c'
      linkageType:     InternalLinkage
      functionLinenumber: 75
      functionLinenumberEnd: 98
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          93
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - abort
        - ofpbuf_try_pull
        - ofpraw_decode
        - ofpraw_pull
        - ofputil_ipfix_stats_from_nx
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-ipfix.c:81,28'
          Dst:             ofpraw_decode
        - Src:             'lib/ofp-ipfix.c:82,16'
          Dst:             ofpraw_pull
        - Src:             'lib/ofp-ipfix.c:93,17'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/ofp-ipfix.c:94,16'
          Dst:             ofputil_ipfix_stats_from_nx
        - Src:             'lib/ofp-ipfix.c:96,9'
          Dst:             abort
    - functionName:    ofputil_ipfix_stats_to_reply
      functionSourceFile: '/src/openvswitch/lib/ofp-ipfix.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 43
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          96
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
        - htonll
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-ipfix.c:31,31'
          Dst:             htonl
        - Src:             'lib/ofp-ipfix.c:32,26'
          Dst:             htonll
        - Src:             'lib/ofp-ipfix.c:33,28'
          Dst:             htonll
        - Src:             'lib/ofp-ipfix.c:34,19'
          Dst:             htonll
        - Src:             'lib/ofp-ipfix.c:35,24'
          Dst:             htonll
        - Src:             'lib/ofp-ipfix.c:36,24'
          Dst:             htonll
        - Src:             'lib/ofp-ipfix.c:37,25'
          Dst:             htonll
        - Src:             'lib/ofp-ipfix.c:38,30'
          Dst:             htonll
        - Src:             'lib/ofp-ipfix.c:39,30'
          Dst:             htonll
        - Src:             'lib/ofp-ipfix.c:40,22'
          Dst:             htonll
        - Src:             'lib/ofp-ipfix.c:41,24'
          Dst:             htonll
    - functionName:    ofputil_append_ipfix_stat
      functionSourceFile: '/src/openvswitch/lib/ofp-ipfix.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpmp_append
        - ofputil_ipfix_stats_to_reply
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-ipfix.c:50,42'
          Dst:             ofpmp_append
        - Src:             'lib/ofp-ipfix.c:51,5'
          Dst:             ofputil_ipfix_stats_to_reply
    - functionName:    init_this_module_ofp_meter
      functionSourceFile: '/src/openvswitch/lib/ofp-meter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28
      functionLinenumberEnd: 28
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-meter.c:28,1'
          Dst:             vlog_insert_module
    - functionName:    ovs_list_is_empty
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 320
      functionLinenumberEnd: 321
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofputil_format_meter_mod
      functionSourceFile: '/src/openvswitch/lib/ofp-meter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 797
      functionLinenumberEnd: 813
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          54
      EdgeCount:       15
      CyclomaticComplexity: 9
      functionsReached:
        - ds_put_cstr
        - ds_put_format
        - ofputil_format_meter_config
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/ofp-meter.c:798,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-meter.c:800,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-meter.c:803,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-meter.c:806,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-meter.c:809,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-meter.c:812,5'
          Dst:             ofputil_format_meter_config
    - functionName:    ofputil_format_meter_config
      functionSourceFile: '/src/openvswitch/lib/ofp-meter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 347
      functionLinenumberEnd: 360
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          67
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_char
        - ds_put_cstr
        - ofp_print_meter_flags
        - ofputil_format_meter_band
        - ofputil_format_meter_id
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-meter.c:350,5'
          Dst:             ofputil_format_meter_id
        - Src:             'lib/ofp-meter.c:351,5'
          Dst:             ds_put_char
        - Src:             'lib/ofp-meter.c:353,5'
          Dst:             ofp_print_meter_flags
        - Src:             'lib/ofp-meter.c:355,5'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-meter.c:357,9'
          Dst:             ofputil_format_meter_band
        - Src:             'lib/ofp-meter.c:359,5'
          Dst:             ds_put_char
    - functionName:    ofputil_format_meter_id
      functionSourceFile: '/src/openvswitch/lib/ofp-meter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          61
      EdgeCount:       11
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_format
      functionUses:    3
      BranchProfiles:
        - Branch String:   'lib/ofp-meter.c:39,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-meter.c:36,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-meter.c:52,9'
          Dst:             ds_put_format
    - functionName:    ds_put_char
      functionSourceFile: '/src/openvswitch/./include/openvswitch/dynamic-string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_char__
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/dynamic-string.h:99,9'
          Dst:             ds_put_char__
    - functionName:    ofp_print_meter_flags
      functionSourceFile: '/src/openvswitch/lib/ofp-meter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 324
      functionLinenumberEnd: 342
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          93
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - ds_put_cstr
        - ds_put_format
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-meter.c:326,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-meter.c:329,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-meter.c:332,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-meter.c:335,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-meter.c:340,9'
          Dst:             ds_put_format
    - functionName:    ofputil_format_meter_band
      functionSourceFile: '/src/openvswitch/lib/ofp-meter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 59
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          92
      EdgeCount:       14
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_cstr
        - ds_put_format
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-meter.c:61,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-meter.c:60,5'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-meter.c:63,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-meter.c:66,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-meter.c:69,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-meter.c:72,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-meter.c:75,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-meter.c:78,9'
          Dst:             ds_put_format
    - functionName:    parse_ofp_meter_mod_str__
      functionSourceFile: '/src/openvswitch/lib/ofp-meter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 569
      functionLinenumberEnd: 766
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         139
      ICount:          779
      EdgeCount:       185
      CyclomaticComplexity: 48
      functionsReached:
        - abort
        - ofpbuf_put_zeros
        - ofpbuf_steal_data
        - str_to_u32
        - str_to_u8
        - strchr
        - strcmp
        - strstr
        - strtok_r
        - xasprintf
        - xstrdup
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-meter.c:582,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-meter.c:604,9'
          Dst:             abort
        - Src:             'lib/ofp-meter.c:614,20'
          Dst:             strstr
        - Src:             'lib/ofp-meter.c:616,20'
          Dst:             xstrdup
        - Src:             'lib/ofp-meter.c:620,20'
          Dst:             strchr
        - Src:             'lib/ofp-meter.c:622,20'
          Dst:             xstrdup
        - Src:             'lib/ofp-meter.c:627,17'
          Dst:             strtok_r
        - Src:             'lib/ofp-meter.c:630,34'
          Dst:             strcmp
        - Src:             'lib/ofp-meter.c:632,41'
          Dst:             strcmp
        - Src:             'lib/ofp-meter.c:634,41'
          Dst:             strcmp
        - Src:             'lib/ofp-meter.c:636,41'
          Dst:             strcmp
        - Src:             'lib/ofp-meter.c:641,21'
          Dst:             strtok_r
        - Src:             'lib/ofp-meter.c:643,24'
          Dst:             xasprintf
        - Src:             'lib/ofp-meter.c:646,18'
          Dst:             strcmp
        - Src:             'lib/ofp-meter.c:647,22'
          Dst:             strcmp
        - Src:             'lib/ofp-meter.c:649,29'
          Dst:             strcmp
        - Src:             'lib/ofp-meter.c:651,29'
          Dst:             strcmp
        - Src:             'lib/ofp-meter.c:654,35'
          Dst:             str_to_u32
        - Src:             'lib/ofp-meter.c:660,32'
          Dst:             xasprintf
        - Src:             'lib/ofp-meter.c:664,24'
          Dst:             xasprintf
        - Src:             'lib/ofp-meter.c:628,17'
          Dst:             strtok_r
        - Src:             'lib/ofp-meter.c:669,16'
          Dst:             xstrdup
        - Src:             'lib/ofp-meter.c:672,16'
          Dst:             xstrdup
        - Src:             'lib/ofp-meter.c:680,21'
          Dst:             strtok_r
        - Src:             'lib/ofp-meter.c:685,21'
          Dst:             strtok_r
        - Src:             'lib/ofp-meter.c:687,24'
          Dst:             xasprintf
        - Src:             'lib/ofp-meter.c:690,18'
          Dst:             strcmp
        - Src:             'lib/ofp-meter.c:692,24'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-meter.c:695,22'
          Dst:             strcmp
        - Src:             'lib/ofp-meter.c:697,29'
          Dst:             strcmp
        - Src:             'lib/ofp-meter.c:700,28'
          Dst:             xasprintf
        - Src:             'lib/ofp-meter.c:703,24'
          Dst:             xstrdup
        - Src:             'lib/ofp-meter.c:704,25'
          Dst:             strcmp
        - Src:             'lib/ofp-meter.c:705,31'
          Dst:             str_to_u32
        - Src:             'lib/ofp-meter.c:709,25'
          Dst:             strcmp
        - Src:             'lib/ofp-meter.c:710,31'
          Dst:             str_to_u32
        - Src:             'lib/ofp-meter.c:714,25'
          Dst:             strcmp
        - Src:             'lib/ofp-meter.c:715,31'
          Dst:             str_to_u8
        - Src:             'lib/ofp-meter.c:720,24'
          Dst:             xasprintf
        - Src:             'lib/ofp-meter.c:681,21'
          Dst:             strtok_r
        - Src:             'lib/ofp-meter.c:725,20'
          Dst:             xstrdup
        - Src:             'lib/ofp-meter.c:729,27'
          Dst:             ofpbuf_steal_data
        - Src:             'lib/ofp-meter.c:735,24'
          Dst:             xstrdup
        - Src:             'lib/ofp-meter.c:739,28'
          Dst:             xstrdup
        - Src:             'lib/ofp-meter.c:744,28'
          Dst:             xstrdup
        - Src:             'lib/ofp-meter.c:749,24'
          Dst:             xstrdup
        - Src:             'lib/ofp-meter.c:753,28'
          Dst:             xstrdup
        - Src:             'lib/ofp-meter.c:758,28'
          Dst:             xstrdup
    - functionName:    parse_ofp_meter_mod_str
      functionSourceFile: '/src/openvswitch/lib/ofp-meter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 778
      functionLinenumberEnd: 792
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpbuf_init
        - ofpbuf_uninit
        - parse_ofp_meter_mod_str__
        - xstrdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-meter.c:783,5'
          Dst:             ofpbuf_init
        - Src:             'lib/ofp-meter.c:784,14'
          Dst:             xstrdup
        - Src:             'lib/ofp-meter.c:786,13'
          Dst:             parse_ofp_meter_mod_str__
        - Src:             'lib/ofp-meter.c:790,5'
          Dst:             ofpbuf_uninit
    - functionName:    ofputil_encode_meter_mod
      functionSourceFile: '/src/openvswitch/lib/ofp-meter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 543
      functionLinenumberEnd: 560
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          83
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
        - htons
        - ofpbuf_put_zeros
        - ofpmsg_update_length
        - ofpraw_alloc
        - ofputil_put_bands
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-meter.c:548,11'
          Dst:             ofpraw_alloc
        - Src:             'lib/ofp-meter.c:550,11'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-meter.c:551,20'
          Dst:             htons
        - Src:             'lib/ofp-meter.c:553,22'
          Dst:             htons
        - Src:             'lib/ofp-meter.c:555,21'
          Dst:             htonl
        - Src:             'lib/ofp-meter.c:557,5'
          Dst:             ofputil_put_bands
        - Src:             'lib/ofp-meter.c:559,5'
          Dst:             ofpmsg_update_length
    - functionName:    ofputil_put_bands
      functionSourceFile: '/src/openvswitch/lib/ofp-meter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 204
      functionLinenumberEnd: 222
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - short
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          82
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
        - htons
        - ofpbuf_put_zeros
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-meter.c:212,16'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-meter.c:214,22'
          Dst:             htons
        - Src:             'lib/ofp-meter.c:215,21'
          Dst:             htons
        - Src:             'lib/ofp-meter.c:216,22'
          Dst:             htonl
        - Src:             'lib/ofp-meter.c:217,28'
          Dst:             htonl
    - functionName:    ofputil_meter_capabilities_to_name
      functionSourceFile: '/src/openvswitch/lib/ofp-meter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 508
      functionLinenumberEnd: 519
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          40
      EdgeCount:       12
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-meter.c:511,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    ofputil_meter_band_types_to_name
      functionSourceFile: '/src/openvswitch/lib/ofp-meter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 497
      functionLinenumberEnd: 504
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         5
      ICount:          27
      EdgeCount:       8
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-meter.c:498,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    ofputil_format_meter_features
      functionSourceFile: '/src/openvswitch/lib/ofp-meter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 524
      functionLinenumberEnd: 538
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          50
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_char
        - ds_put_cstr
        - ds_put_format
        - ofp_print_bit_names
        - ofputil_meter_band_types_to_name
        - ofputil_meter_capabilities_to_name
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-meter.c:525,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-meter.c:526,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-meter.c:527,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-meter.c:529,5'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-meter.c:530,5'
          Dst:             ofp_print_bit_names
        - Src:             'lib/ofp-meter.c:530,5'
          Dst:             ofputil_meter_band_types_to_name
        - Src:             'lib/ofp-meter.c:532,5'
          Dst:             ds_put_char
        - Src:             'lib/ofp-meter.c:534,5'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-meter.c:535,5'
          Dst:             ofp_print_bit_names
        - Src:             'lib/ofp-meter.c:535,5'
          Dst:             ofputil_meter_capabilities_to_name
        - Src:             'lib/ofp-meter.c:537,5'
          Dst:             ds_put_char
    - functionName:    ofputil_encode_meter_features_reply
      functionSourceFile: '/src/openvswitch/lib/ofp-meter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 479
      functionLinenumberEnd: 492
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          57
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
        - ofpbuf_put_zeros
        - ofpraw_alloc_stats_reply
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-meter.c:483,13'
          Dst:             ofpraw_alloc_stats_reply
        - Src:             'lib/ofp-meter.c:484,11'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-meter.c:486,22'
          Dst:             htonl
        - Src:             'lib/ofp-meter.c:487,23'
          Dst:             htonl
        - Src:             'lib/ofp-meter.c:488,25'
          Dst:             htonl
    - functionName:    ofputil_decode_meter_features
      functionSourceFile: '/src/openvswitch/lib/ofp-meter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 466
      functionLinenumberEnd: 474
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          52
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohl
        - ofpmsg_body
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-meter.c:467,46'
          Dst:             ofpmsg_body
        - Src:             'lib/ofp-meter.c:469,22'
          Dst:             ntohl
        - Src:             'lib/ofp-meter.c:470,22'
          Dst:             ntohl
        - Src:             'lib/ofp-meter.c:471,24'
          Dst:             ntohl
    - functionName:    ofputil_format_meter_stats
      functionSourceFile: '/src/openvswitch/lib/ofp-meter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 443
      functionLinenumberEnd: 461
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          98
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_char
        - ds_put_cstr
        - ds_put_format
        - ofp_print_duration
        - ofputil_format_meter_id
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-meter.c:446,5'
          Dst:             ofputil_format_meter_id
        - Src:             'lib/ofp-meter.c:447,5'
          Dst:             ds_put_char
        - Src:             'lib/ofp-meter.c:448,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-meter.c:449,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-meter.c:450,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-meter.c:451,5'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-meter.c:452,5'
          Dst:             ofp_print_duration
        - Src:             'lib/ofp-meter.c:453,5'
          Dst:             ds_put_char
        - Src:             'lib/ofp-meter.c:455,5'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-meter.c:457,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-meter.c:458,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-meter.c:459,9'
          Dst:             ds_put_format
    - functionName:    ntohll
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
        - ntohl
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byte-order.h:36,12'
          Dst:             htonl
        - Src:             'lib/byte-order.h:36,44'
          Dst:             ntohl
        - Src:             'lib/byte-order.h:36,62'
          Dst:             ntohl
    - functionName:    ofputil_pull_band_stats
      functionSourceFile: '/src/openvswitch/lib/ofp-meter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 365
      functionLinenumberEnd: 388
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          108
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - ntohll
        - ofpbuf_put_uninit
        - ofpbuf_try_pull
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-meter.c:370,12'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/ofp-meter.c:380,11'
          Dst:             ofpbuf_put_uninit
        - Src:             'lib/ofp-meter.c:383,31'
          Dst:             ntohll
        - Src:             'lib/ofp-meter.c:384,29'
          Dst:             ntohll
    - functionName:    ofpbuf_try_pull
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 275
      functionLinenumberEnd: 276
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofpbuf_pull
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:276,30'
          Dst:             ofpbuf_pull
    - functionName:    ofpbuf_pull
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 258
      functionLinenumberEnd: 269
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          64
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:259,5'
          Dst:             ovs_ignore
    - functionName:    ofputil_decode_meter_stats
      functionSourceFile: '/src/openvswitch/lib/ofp-meter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 404
      functionLinenumberEnd: 439
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          157
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - ntohl
        - ntohll
        - ntohs
        - ofpbuf_clear
        - ofpbuf_try_pull
        - ofpraw_pull_assert
        - ofputil_pull_band_stats
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-meter.c:410,9'
          Dst:             ofpraw_pull_assert
        - Src:             'lib/ofp-meter.c:417,11'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/ofp-meter.c:419,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-meter.c:424,5'
          Dst:             ofpbuf_clear
        - Src:             'lib/ofp-meter.c:425,40'
          Dst:             ntohs
        - Src:             'lib/ofp-meter.c:425,11'
          Dst:             ofputil_pull_band_stats
        - Src:             'lib/ofp-meter.c:430,20'
          Dst:             ntohl
        - Src:             'lib/ofp-meter.c:431,22'
          Dst:             ntohl
        - Src:             'lib/ofp-meter.c:432,27'
          Dst:             ntohll
        - Src:             'lib/ofp-meter.c:433,25'
          Dst:             ntohll
        - Src:             'lib/ofp-meter.c:434,24'
          Dst:             ntohl
        - Src:             'lib/ofp-meter.c:435,25'
          Dst:             ntohl
    - functionName:    ofpbuf_clear
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 250
      functionLinenumberEnd: 253
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofputil_decode_meter_config
      functionSourceFile: '/src/openvswitch/lib/ofp-meter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 289
      functionLinenumberEnd: 320
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          129
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - ntohl
        - ntohs
        - ofpbuf_clear
        - ofpbuf_try_pull
        - ofpraw_pull_assert
        - ofputil_pull_bands
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-meter.c:295,9'
          Dst:             ofpraw_pull_assert
        - Src:             'lib/ofp-meter.c:302,11'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/ofp-meter.c:304,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-meter.c:309,5'
          Dst:             ofpbuf_clear
        - Src:             'lib/ofp-meter.c:310,35'
          Dst:             ntohs
        - Src:             'lib/ofp-meter.c:310,11'
          Dst:             ofputil_pull_bands
        - Src:             'lib/ofp-meter.c:315,20'
          Dst:             ntohl
        - Src:             'lib/ofp-meter.c:316,17'
          Dst:             ntohs
    - functionName:    ofputil_pull_bands
      functionSourceFile: '/src/openvswitch/lib/ofp-meter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 85
      functionLinenumberEnd: 120
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          162
      EdgeCount:       28
      CyclomaticComplexity: 9
      functionsReached:
        - ntohl
        - ntohs
        - ofpbuf_put_uninit
        - ofpbuf_try_pull
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-meter.c:90,12'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/ofp-meter.c:96,27'
          Dst:             ntohs
        - Src:             'lib/ofp-meter.c:101,14'
          Dst:             ofpbuf_put_uninit
        - Src:             'lib/ofp-meter.c:102,20'
          Dst:             ntohs
        - Src:             'lib/ofp-meter.c:106,20'
          Dst:             ntohl
        - Src:             'lib/ofp-meter.c:107,26'
          Dst:             ntohl
    - functionName:    htonll
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 30
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byte-order.h:30,12'
          Dst:             htonl
        - Src:             'lib/byte-order.h:30,44'
          Dst:             htonl
        - Src:             'lib/byte-order.h:30,62'
          Dst:             htonl
    - functionName:    ofputil_append_meter_stats
      functionSourceFile: '/src/openvswitch/lib/ofp-meter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 248
      functionLinenumberEnd: 272
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          134
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
        - htonll
        - htons
        - ofpmp_append
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-meter.c:254,13'
          Dst:             ofpmp_append
        - Src:             'lib/ofp-meter.c:256,23'
          Dst:             htonl
        - Src:             'lib/ofp-meter.c:257,18'
          Dst:             htons
        - Src:             'lib/ofp-meter.c:259,25'
          Dst:             htonl
        - Src:             'lib/ofp-meter.c:260,30'
          Dst:             htonll
        - Src:             'lib/ofp-meter.c:261,28'
          Dst:             htonll
        - Src:             'lib/ofp-meter.c:262,27'
          Dst:             htonl
        - Src:             'lib/ofp-meter.c:263,28'
          Dst:             htonl
        - Src:             'lib/ofp-meter.c:269,34'
          Dst:             htonll
        - Src:             'lib/ofp-meter.c:270,32'
          Dst:             htonll
    - functionName:    ofpbuf_at_assert
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 195
      functionLinenumberEnd: 198
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:196,5'
          Dst:             ovs_ignore
        - Src:             './include/openvswitch/ofpbuf.h:197,5'
          Dst:             ovs_ignore
    - functionName:    ovs_list_back
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 295
      functionLinenumberEnd: 300
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovs_list_is_empty
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/list.h:298,17'
          Dst:             ovs_list_is_empty
        - Src:             './include/openvswitch/list.h:298,5'
          Dst:             ovs_ignore
    - functionName:    ofpbuf_from_list
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 280
      functionLinenumberEnd: 281
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofputil_append_meter_config
      functionSourceFile: '/src/openvswitch/lib/ofp-meter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 228
      functionLinenumberEnd: 242
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          69
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
        - htons
        - ofpbuf_at_assert
        - ofpbuf_from_list
        - ofpbuf_put_uninit
        - ofpmp_postappend
        - ofputil_put_bands
        - ovs_list_back
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-meter.c:229,43'
          Dst:             ovs_list_back
        - Src:             'lib/ofp-meter.c:229,26'
          Dst:             ofpbuf_from_list
        - Src:             'lib/ofp-meter.c:233,5'
          Dst:             ofpbuf_put_uninit
        - Src:             'lib/ofp-meter.c:234,5'
          Dst:             ofputil_put_bands
        - Src:             'lib/ofp-meter.c:236,13'
          Dst:             ofpbuf_at_assert
        - Src:             'lib/ofp-meter.c:237,20'
          Dst:             htons
        - Src:             'lib/ofp-meter.c:238,23'
          Dst:             htonl
        - Src:             'lib/ofp-meter.c:239,21'
          Dst:             htons
        - Src:             'lib/ofp-meter.c:241,5'
          Dst:             ofpmp_postappend
    - functionName:    ofputil_encode_meter_request
      functionSourceFile: '/src/openvswitch/lib/ofp-meter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 173
      functionLinenumberEnd: 198
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          70
      EdgeCount:       12
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
        - ofpbuf_put_zeros
        - ofpraw_alloc
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib/ofp-meter.c:178,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-meter.c:191,11'
          Dst:             ofpraw_alloc
        - Src:             'lib/ofp-meter.c:195,15'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-meter.c:196,25'
          Dst:             htonl
    - functionName:    ofputil_decode_meter_request
      functionSourceFile: '/src/openvswitch/lib/ofp-meter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 167
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohl
        - ofpmsg_body
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-meter.c:165,55'
          Dst:             ofpmsg_body
        - Src:             'lib/ofp-meter.c:166,17'
          Dst:             ntohl
    - functionName:    ofpbuf_const_initializer
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 97
      functionLinenumberEnd: 105
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          30
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofputil_decode_meter_mod
      functionSourceFile: '/src/openvswitch/lib/ofp-meter.c'
      linkageType:     InternalLinkage
      functionLinenumber: 126
      functionLinenumberEnd: 160
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          179
      EdgeCount:       28
      CyclomaticComplexity: 9
      functionsReached:
        - ntohl
        - ntohs
        - ofpbuf_const_initializer
        - ofpbuf_pull
        - ofpraw_pull_assert
        - ofputil_pull_bands
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-meter.c:127,52'
          Dst:             ntohs
        - Src:             'lib/ofp-meter.c:127,23'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/ofp-meter.c:128,5'
          Dst:             ofpraw_pull_assert
        - Src:             'lib/ofp-meter.c:129,41'
          Dst:             ofpbuf_pull
        - Src:             'lib/ofp-meter.c:132,19'
          Dst:             ntohs
        - Src:             'lib/ofp-meter.c:138,26'
          Dst:             ntohl
        - Src:             'lib/ofp-meter.c:147,27'
          Dst:             ntohs
        - Src:             'lib/ofp-meter.c:153,17'
          Dst:             ofputil_pull_bands
    - functionName:    init_this_module_ofp_monitor
      functionSourceFile: '/src/openvswitch/lib/ofp-monitor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 34
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-monitor.c:34,1'
          Dst:             vlog_insert_module
    - functionName:    ovs_list_is_empty
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 320
      functionLinenumberEnd: 321
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_list_insert
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 169
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    atomic_count_inc
      functionSourceFile: '/src/openvswitch/lib/ovs-atomic.h'
      linkageType:     InternalLinkage
      functionLinenumber: 451
      functionLinenumberEnd: 456
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofputil_destroy_requestforward
      functionSourceFile: '/src/openvswitch/lib/ofp-monitor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1490
      functionLinenumberEnd: 1510
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          62
      EdgeCount:       19
      CyclomaticComplexity: 11
      functionsReached:
        - abort
        - ofpbuf_uninit
        - ofputil_uninit_group_mod
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-monitor.c:1495,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-monitor.c:1497,9'
          Dst:             ofputil_uninit_group_mod
        - Src:             'lib/ofp-monitor.c:1503,9'
          Dst:             ofpbuf_uninit
        - Src:             'lib/ofp-monitor.c:1508,9'
          Dst:             abort
    - functionName:    ofputil_format_requestforward
      functionSourceFile: '/src/openvswitch/lib/ofp-monitor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1465
      functionLinenumberEnd: 1483
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          65
      EdgeCount:       14
      CyclomaticComplexity: 8
      functionsReached:
        - abort
        - ds_put_cstr
        - ofputil_format_meter_mod
        - ofputil_group_mod_format__
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-monitor.c:1468,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-monitor.c:1466,5'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-monitor.c:1470,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-monitor.c:1471,9'
          Dst:             ofputil_group_mod_format__
        - Src:             'lib/ofp-monitor.c:1476,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-monitor.c:1477,9'
          Dst:             ofputil_format_meter_mod
        - Src:             'lib/ofp-monitor.c:1481,9'
          Dst:             abort
    - functionName:    ofputil_decode_requestforward
      functionSourceFile: '/src/openvswitch/lib/ofp-monitor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1401
      functionLinenumberEnd: 1457
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         30
      ICount:          236
      EdgeCount:       41
      CyclomaticComplexity: 13
      functionsReached:
        - ntohs
        - ofpbuf_const_initializer
        - ofpbuf_init
        - ofpbuf_uninit
        - ofpraw_pull_assert
        - ofptype_decode
        - ofputil_decode_group_mod
        - ofputil_decode_meter_mod
        - ovs_ignore
        - xmalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-monitor.c:1405,55'
          Dst:             ntohs
        - Src:             'lib/ofp-monitor.c:1405,23'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/ofp-monitor.c:1408,32'
          Dst:             ofpraw_pull_assert
        - Src:             'lib/ofp-monitor.c:1409,5'
          Dst:             ovs_ignore
        - Src:             'lib/ofp-monitor.c:1418,30'
          Dst:             ntohs
        - Src:             'lib/ofp-monitor.c:1428,25'
          Dst:             ofptype_decode
        - Src:             'lib/ofp-monitor.c:1436,25'
          Dst:             xmalloc
        - Src:             'lib/ofp-monitor.c:1437,17'
          Dst:             ofputil_decode_group_mod
        - Src:             'lib/ofp-monitor.c:1444,25'
          Dst:             xmalloc
        - Src:             'lib/ofp-monitor.c:1445,9'
          Dst:             ofpbuf_init
        - Src:             'lib/ofp-monitor.c:1446,17'
          Dst:             ofputil_decode_meter_mod
        - Src:             'lib/ofp-monitor.c:1449,13'
          Dst:             ofpbuf_uninit
    - functionName:    ofpbuf_const_initializer
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 97
      functionLinenumberEnd: 105
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          30
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofpbuf_delete
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 172
      functionLinenumberEnd: 177
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          28
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofpbuf_uninit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:174,9'
          Dst:             ofpbuf_uninit
    - functionName:    ofputil_encode_requestforward
      functionSourceFile: '/src/openvswitch/lib/ofp-monitor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1354
      functionLinenumberEnd: 1391
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          133
      EdgeCount:       15
      CyclomaticComplexity: 2
      functionsReached:
        - abort
        - htonl
        - htons
        - ofpbuf_delete
        - ofpbuf_put
        - ofpraw_alloc_xid
        - ofputil_encode_group_mod
        - ofputil_encode_meter_mod
        - ofputil_protocol_to_ofp_version
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib/ofp-monitor.c:1359,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-monitor.c:1355,36'
          Dst:             ofputil_protocol_to_ofp_version
        - Src:             'lib/ofp-monitor.c:1361,17'
          Dst:             ofputil_encode_group_mod
        - Src:             'lib/ofp-monitor.c:1366,17'
          Dst:             ofputil_encode_meter_mod
        - Src:             'lib/ofp-monitor.c:1371,9'
          Dst:             abort
        - Src:             'lib/ofp-monitor.c:1376,24'
          Dst:             htons
        - Src:             'lib/ofp-monitor.c:1387,45'
          Dst:             htonl
        - Src:             'lib/ofp-monitor.c:1386,28'
          Dst:             ofpraw_alloc_xid
        - Src:             'lib/ofp-monitor.c:1388,5'
          Dst:             ofpbuf_put
        - Src:             'lib/ofp-monitor.c:1389,5'
          Dst:             ofpbuf_delete
    - functionName:    ofputil_flow_update_format
      functionSourceFile: '/src/openvswitch/lib/ofp-monitor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1285
      functionLinenumberEnd: 1348
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          199
      EdgeCount:       27
      CyclomaticComplexity: 5
      functionsReached:
        - ds_put_char
        - ds_put_cstr
        - ds_put_format
        - match_format
        - ntohl
        - ntohll
        - ofp_flow_removed_reason_to_string
        - ofpacts_format
        - ofputil_format_table
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-monitor.c:1289,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-monitor.c:1288,5'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-monitor.c:1291,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-monitor.c:1295,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-monitor.c:1300,23'
          Dst:             ofp_flow_removed_reason_to_string
        - Src:             'lib/ofp-monitor.c:1299,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-monitor.c:1306,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-monitor.c:1310,50'
          Dst:             ntohl
        - Src:             'lib/ofp-monitor.c:1310,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-monitor.c:1314,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-monitor.c:1318,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-monitor.c:1323,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-monitor.c:1324,5'
          Dst:             ofputil_format_table
        - Src:             'lib/ofp-monitor.c:1326,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-monitor.c:1329,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-monitor.c:1331,42'
          Dst:             ntohll
        - Src:             'lib/ofp-monitor.c:1331,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-monitor.c:1333,5'
          Dst:             ds_put_char
        - Src:             'lib/ofp-monitor.c:1334,5'
          Dst:             match_format
        - Src:             'lib/ofp-monitor.c:1338,13'
          Dst:             ds_put_char
        - Src:             'lib/ofp-monitor.c:1340,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-monitor.c:1346,9'
          Dst:             ofpacts_format
    - functionName:    ofp_flow_removed_reason_to_string
      functionSourceFile: '/src/openvswitch/lib/ofp-monitor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 63
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          68
      EdgeCount:       25
      CyclomaticComplexity: 14
      functionsReached:
        - snprintf
      functionUses:    3
      BranchProfiles:
        - Branch String:   'lib/ofp-monitor.c:45,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-monitor.c:60,9'
          Dst:             snprintf
    - functionName:    ntohll
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
        - ntohl
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byte-order.h:36,12'
          Dst:             htonl
        - Src:             'lib/byte-order.h:36,44'
          Dst:             ntohl
        - Src:             'lib/byte-order.h:36,62'
          Dst:             ntohl
    - functionName:    ds_put_char
      functionSourceFile: '/src/openvswitch/./include/openvswitch/dynamic-string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_char__
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/dynamic-string.h:99,9'
          Dst:             ds_put_char__
    - functionName:    ofp_to_nx_flow_update_event
      functionSourceFile: '/src/openvswitch/lib/ofp-monitor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 405
      functionLinenumberEnd: 421
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          58
      EdgeCount:       26
      CyclomaticComplexity: 14
      functionsReached:
        - abort
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-monitor.c:406,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-monitor.c:419,9'
          Dst:             abort
    - functionName:    ovs_list_back
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 295
      functionLinenumberEnd: 300
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovs_list_is_empty
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/list.h:298,17'
          Dst:             ovs_list_is_empty
        - Src:             './include/openvswitch/list.h:298,5'
          Dst:             ovs_ignore
    - functionName:    ofpbuf_from_list
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 280
      functionLinenumberEnd: 281
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofputil_append_flow_update
      functionSourceFile: '/src/openvswitch/lib/ofp-monitor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1187
      functionLinenumberEnd: 1278
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          350
      EdgeCount:       24
      CyclomaticComplexity: 4
      functionsReached:
        - htonll
        - htons
        - nx_put_match
        - ofp_to_nx_flow_update_event
        - ofpacts_put_openflow_actions
        - ofpacts_put_openflow_instructions
        - ofpbuf_at_assert
        - ofpbuf_from_list
        - ofpbuf_put_zeros
        - ofpmp_postappend
        - ofpmp_version
        - ovs_list_back
        - oxm_put_match
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib/ofp-monitor.c:1201,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-monitor.c:1191,32'
          Dst:             ofpmp_version
        - Src:             'lib/ofp-monitor.c:1198,28'
          Dst:             ovs_list_back
        - Src:             'lib/ofp-monitor.c:1198,11'
          Dst:             ofpbuf_from_list
        - Src:             'lib/ofp-monitor.c:1211,24'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-monitor.c:1217,17'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-monitor.c:1219,33'
          Dst:             oxm_put_match
        - Src:             'lib/ofp-monitor.c:1220,21'
          Dst:             ofpacts_put_openflow_instructions
        - Src:             'lib/ofp-monitor.c:1224,46'
          Dst:             htonll
        - Src:             'lib/ofp-monitor.c:1224,57'
          Dst:             htonll
        - Src:             'lib/ofp-monitor.c:1223,33'
          Dst:             nx_put_match
        - Src:             'lib/ofp-monitor.c:1225,21'
          Dst:             ofpacts_put_openflow_actions
        - Src:             'lib/ofp-monitor.c:1228,24'
          Dst:             ofpbuf_at_assert
        - Src:             'lib/ofp-monitor.c:1229,32'
          Dst:             htons
        - Src:             'lib/ofp-monitor.c:1230,34'
          Dst:             htons
        - Src:             'lib/ofp-monitor.c:1231,38'
          Dst:             htons
        - Src:             'lib/ofp-monitor.c:1232,38'
          Dst:             htons
        - Src:             'lib/ofp-monitor.c:1233,35'
          Dst:             htons
        - Src:             'lib/ofp-monitor.c:1238,20'
          Dst:             ofpbuf_at_assert
        - Src:             'lib/ofp-monitor.c:1239,28'
          Dst:             htons
        - Src:             'lib/ofp-monitor.c:1240,33'
          Dst:             ofp_to_nx_flow_update_event
        - Src:             'lib/ofp-monitor.c:1240,27'
          Dst:             htons
        - Src:             'lib/ofp-monitor.c:1250,24'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-monitor.c:1255,17'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-monitor.c:1256,17'
          Dst:             oxm_put_match
        - Src:             'lib/ofp-monitor.c:1257,17'
          Dst:             ofpacts_put_openflow_instructions
        - Src:             'lib/ofp-monitor.c:1260,24'
          Dst:             ofpbuf_at_assert
        - Src:             'lib/ofp-monitor.c:1262,34'
          Dst:             htons
        - Src:             'lib/ofp-monitor.c:1263,38'
          Dst:             htons
        - Src:             'lib/ofp-monitor.c:1264,38'
          Dst:             htons
        - Src:             'lib/ofp-monitor.c:1269,20'
          Dst:             ofpbuf_at_assert
        - Src:             'lib/ofp-monitor.c:1270,28'
          Dst:             htons
        - Src:             'lib/ofp-monitor.c:1271,27'
          Dst:             htons
        - Src:             'lib/ofp-monitor.c:1276,5'
          Dst:             ofpmp_postappend
    - functionName:    htonll
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 30
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byte-order.h:30,12'
          Dst:             htonl
        - Src:             'lib/byte-order.h:30,44'
          Dst:             htonl
        - Src:             'lib/byte-order.h:30,62'
          Dst:             htonl
    - functionName:    ofpbuf_at_assert
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 195
      functionLinenumberEnd: 198
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:196,5'
          Dst:             ovs_ignore
        - Src:             './include/openvswitch/ofpbuf.h:197,5'
          Dst:             ovs_ignore
    - functionName:    ovs_list_push_back
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 204
      functionLinenumberEnd: 206
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_list_insert
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/list.h:205,5'
          Dst:             ovs_list_insert
    - functionName:    ovs_list_init
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofputil_start_flow_update
      functionSourceFile: '/src/openvswitch/lib/ofp-monitor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1155
      functionLinenumberEnd: 1181
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          76
      EdgeCount:       24
      CyclomaticComplexity: 13
      functionsReached:
        - abort
        - htonl
        - ofpraw_alloc_xid
        - ofputil_protocol_to_ofp_version
        - ovs_list_init
        - ovs_list_push_back
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib/ofp-monitor.c:1159,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-monitor.c:1157,32'
          Dst:             ofputil_protocol_to_ofp_version
        - Src:             'lib/ofp-monitor.c:1164,32'
          Dst:             htonl
        - Src:             'lib/ofp-monitor.c:1163,15'
          Dst:             ofpraw_alloc_xid
        - Src:             'lib/ofp-monitor.c:1168,32'
          Dst:             htonl
        - Src:             'lib/ofp-monitor.c:1167,15'
          Dst:             ofpraw_alloc_xid
        - Src:             'lib/ofp-monitor.c:1173,32'
          Dst:             htonl
        - Src:             'lib/ofp-monitor.c:1172,15'
          Dst:             ofpraw_alloc_xid
        - Src:             'lib/ofp-monitor.c:1176,9'
          Dst:             abort
        - Src:             'lib/ofp-monitor.c:1179,5'
          Dst:             ovs_list_init
        - Src:             'lib/ofp-monitor.c:1180,5'
          Dst:             ovs_list_push_back
    - functionName:    ofputil_encode_flow_monitor_pause
      functionSourceFile: '/src/openvswitch/lib/ofp-monitor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1095
      functionLinenumberEnd: 1149
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         24
      ICount:          170
      EdgeCount:       25
      CyclomaticComplexity: 3
      functionsReached:
        - abort
        - htonl
        - htons
        - ofpbuf_at_assert
        - ofpbuf_put_zeros
        - ofpmsg_update_length
        - ofpraw_alloc_xid
        - ofputil_protocol_to_ofp_version
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib/ofp-monitor.c:1103,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-monitor.c:1097,32'
          Dst:             ofputil_protocol_to_ofp_version
        - Src:             'lib/ofp-monitor.c:1100,9'
          Dst:             abort
        - Src:             'lib/ofp-monitor.c:1109,45'
          Dst:             htonl
        - Src:             'lib/ofp-monitor.c:1108,19'
          Dst:             ofpraw_alloc_xid
        - Src:             'lib/ofp-monitor.c:1112,45'
          Dst:             htonl
        - Src:             'lib/ofp-monitor.c:1111,19'
          Dst:             ofpraw_alloc_xid
        - Src:             'lib/ofp-monitor.c:1118,45'
          Dst:             htonl
        - Src:             'lib/ofp-monitor.c:1117,19'
          Dst:             ofpraw_alloc_xid
        - Src:             'lib/ofp-monitor.c:1121,45'
          Dst:             htonl
        - Src:             'lib/ofp-monitor.c:1120,19'
          Dst:             ofpraw_alloc_xid
        - Src:             'lib/ofp-monitor.c:1127,52'
          Dst:             htonl
        - Src:             'lib/ofp-monitor.c:1126,15'
          Dst:             ofpraw_alloc_xid
        - Src:             'lib/ofp-monitor.c:1133,9'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-monitor.c:1134,16'
          Dst:             ofpbuf_at_assert
        - Src:             'lib/ofp-monitor.c:1135,23'
          Dst:             htons
        - Src:             'lib/ofp-monitor.c:1136,24'
          Dst:             htons
        - Src:             'lib/ofp-monitor.c:1138,16'
          Dst:             ofpbuf_at_assert
        - Src:             'lib/ofp-monitor.c:1139,24'
          Dst:             htons
        - Src:             'lib/ofp-monitor.c:1140,23'
          Dst:             htons
        - Src:             'lib/ofp-monitor.c:1142,9'
          Dst:             ofpmsg_update_length
        - Src:             'lib/ofp-monitor.c:1146,9'
          Dst:             abort
    - functionName:    ofputil_encode_flow_monitor_cancel
      functionSourceFile: '/src/openvswitch/lib/ofp-monitor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1051
      functionLinenumberEnd: 1089
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          112
      EdgeCount:       31
      CyclomaticComplexity: 17
      functionsReached:
        - abort
        - htonl
        - ofpbuf_at_assert
        - ofpbuf_new
        - ofpbuf_put_uninit
        - ofpbuf_put_zeros
        - ofpraw_alloc
        - ofpraw_put
        - ofputil_protocol_to_ofp_version
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib/ofp-monitor.c:1056,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-monitor.c:1053,32'
          Dst:             ofputil_protocol_to_ofp_version
        - Src:             'lib/ofp-monitor.c:1062,19'
          Dst:             ofpraw_alloc
        - Src:             'lib/ofp-monitor.c:1064,19'
          Dst:             ofpraw_alloc
        - Src:             'lib/ofp-monitor.c:1066,16'
          Dst:             ofpbuf_put_uninit
        - Src:             'lib/ofp-monitor.c:1067,20'
          Dst:             htonl
        - Src:             'lib/ofp-monitor.c:1074,15'
          Dst:             ofpbuf_new
        - Src:             'lib/ofp-monitor.c:1076,9'
          Dst:             ofpraw_put
        - Src:             'lib/ofp-monitor.c:1079,9'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-monitor.c:1081,16'
          Dst:             ofpbuf_at_assert
        - Src:             'lib/ofp-monitor.c:1082,28'
          Dst:             htonl
        - Src:             'lib/ofp-monitor.c:1087,9'
          Dst:             abort
    - functionName:    ofputil_decode_flow_monitor_cancel
      functionSourceFile: '/src/openvswitch/lib/ofp-monitor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1029
      functionLinenumberEnd: 1047
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          57
      EdgeCount:       19
      CyclomaticComplexity: 11
      functionsReached:
        - abort
        - ntohl
        - ofpmsg_body
        - ofpraw_decode
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-monitor.c:1038,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-monitor.c:1033,13'
          Dst:             ofpraw_decode
        - Src:             'lib/ofp-monitor.c:1041,55'
          Dst:             ofpmsg_body
        - Src:             'lib/ofp-monitor.c:1042,16'
          Dst:             ntohl
        - Src:             'lib/ofp-monitor.c:1045,9'
          Dst:             abort
    - functionName:    nx_to_ofp_flow_update_event
      functionSourceFile: '/src/openvswitch/lib/ofp-monitor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 388
      functionLinenumberEnd: 401
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          44
      EdgeCount:       16
      CyclomaticComplexity: 9
      functionsReached:
        - abort
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-monitor.c:389,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-monitor.c:399,9'
          Dst:             abort
    - functionName:    ofpbuf_clear
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 250
      functionLinenumberEnd: 253
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofputil_decode_flow_update
      functionSourceFile: '/src/openvswitch/lib/ofp-monitor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 824
      functionLinenumberEnd: 1025
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         102
      ICount:          761
      EdgeCount:       137
      CyclomaticComplexity: 37
      functionsReached:
        - abort
        - ntohs
        - nx_pull_match
        - nx_to_ofp_flow_update_event
        - ofpacts_pull_openflow_actions
        - ofpacts_pull_openflow_instructions
        - ofpbuf_clear
        - ofpbuf_pull
        - ofpraw_decode
        - ofpraw_get_name
        - ofpraw_pull_assert
        - ofputil_pull_ofp11_match
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-monitor.c:846,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-monitor.c:831,9'
          Dst:             ofpraw_pull_assert
        - Src:             'lib/ofp-monitor.c:834,13'
          Dst:             ofpraw_decode
        - Src:             'lib/ofp-monitor.c:839,5'
          Dst:             ofpbuf_clear
        - Src:             'lib/ofp-monitor.c:857,18'
          Dst:             ntohs
        - Src:             'lib/ofp-monitor.c:862,20'
          Dst:             ntohs
        - Src:             'lib/ofp-monitor.c:870,20'
          Dst:             ofpbuf_pull
        - Src:             'lib/ofp-monitor.c:883,20'
          Dst:             ofpbuf_pull
        - Src:             'lib/ofp-monitor.c:884,25'
          Dst:             ntohs
        - Src:             'lib/ofp-monitor.c:889,30'
          Dst:             ntohs
        - Src:             'lib/ofp-monitor.c:890,36'
          Dst:             ntohs
        - Src:             'lib/ofp-monitor.c:891,36'
          Dst:             ntohs
        - Src:             'lib/ofp-monitor.c:894,32'
          Dst:             ntohs
        - Src:             'lib/ofp-monitor.c:900,25'
          Dst:             ofputil_pull_ofp11_match
        - Src:             'lib/ofp-monitor.c:907,25'
          Dst:             ofpacts_pull_openflow_instructions
        - Src:             'lib/ofp-monitor.c:913,25'
          Dst:             nx_pull_match
        - Src:             'lib/ofp-monitor.c:920,25'
          Dst:             ofpacts_pull_openflow_actions
        - Src:             'lib/ofp-monitor.c:930,13'
          Dst:             ntohs
        - Src:             'lib/ofp-monitor.c:930,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-monitor.c:935,25'
          Dst:             nx_to_ofp_flow_update_event
        - Src:             'lib/ofp-monitor.c:947,25'
          Dst:             ntohs
        - Src:             'lib/ofp-monitor.c:948,18'
          Dst:             ntohs
        - Src:             'lib/ofp-monitor.c:960,20'
          Dst:             ofpbuf_pull
        - Src:             'lib/ofp-monitor.c:971,20'
          Dst:             ofpbuf_pull
        - Src:             'lib/ofp-monitor.c:984,20'
          Dst:             ofpbuf_pull
        - Src:             'lib/ofp-monitor.c:990,36'
          Dst:             ntohs
        - Src:             'lib/ofp-monitor.c:991,36'
          Dst:             ntohs
        - Src:             'lib/ofp-monitor.c:994,32'
          Dst:             ntohs
        - Src:             'lib/ofp-monitor.c:996,21'
          Dst:             ofputil_pull_ofp11_match
        - Src:             'lib/ofp-monitor.c:1003,21'
          Dst:             ofpacts_pull_openflow_instructions
        - Src:             'lib/ofp-monitor.c:1013,13'
          Dst:             ntohs
        - Src:             'lib/ofp-monitor.c:1013,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-monitor.c:1019,9'
          Dst:             abort
        - Src:             'lib/ofp-monitor.c:1022,5'
          Dst:             ofpraw_get_name
        - Src:             'lib/ofp-monitor.c:1022,5'
          Dst:             vlog_rate_limit
    - functionName:    ofpbuf_pull
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 258
      functionLinenumberEnd: 269
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          64
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:259,5'
          Dst:             ovs_ignore
    - functionName:    parse_flow_monitor_request__
      functionSourceFile: '/src/openvswitch/lib/ofp-monitor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 716
      functionLinenumberEnd: 784
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         58
      ICount:          324
      EdgeCount:       77
      CyclomaticComplexity: 21
      functionsReached:
        - atoi
        - atomic_count_inc
        - htons
        - match_init_catchall
        - match_set_dl_type
        - match_set_nw_proto
        - mf_from_name
        - ofp_parse_field
        - ofp_parse_protocol
        - ofputil_parse_key_value
        - ofputil_table_from_string
        - strcmp
        - u16_to_ofp
        - xasprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-monitor.c:720,15'
          Dst:             atomic_count_inc
        - Src:             'lib/ofp-monitor.c:727,5'
          Dst:             match_init_catchall
        - Src:             'lib/ofp-monitor.c:730,12'
          Dst:             ofputil_parse_key_value
        - Src:             'lib/ofp-monitor.c:734,14'
          Dst:             strcmp
        - Src:             'lib/ofp-monitor.c:736,21'
          Dst:             strcmp
        - Src:             'lib/ofp-monitor.c:738,21'
          Dst:             strcmp
        - Src:             'lib/ofp-monitor.c:740,21'
          Dst:             strcmp
        - Src:             'lib/ofp-monitor.c:742,21'
          Dst:             strcmp
        - Src:             'lib/ofp-monitor.c:744,21'
          Dst:             strcmp
        - Src:             'lib/ofp-monitor.c:746,21'
          Dst:             strcmp
        - Src:             'lib/ofp-monitor.c:748,20'
          Dst:             ofp_parse_protocol
        - Src:             'lib/ofp-monitor.c:749,44'
          Dst:             htons
        - Src:             'lib/ofp-monitor.c:749,13'
          Dst:             match_set_dl_type
        - Src:             'lib/ofp-monitor.c:751,17'
          Dst:             match_set_nw_proto
        - Src:             'lib/ofp-monitor.c:753,20'
          Dst:             mf_from_name
        - Src:             'lib/ofp-monitor.c:754,37'
          Dst:             mf_from_name
        - Src:             'lib/ofp-monitor.c:754,21'
          Dst:             ofp_parse_field
        - Src:             'lib/ofp-monitor.c:757,24'
          Dst:             xasprintf
        - Src:             'lib/ofp-monitor.c:762,24'
          Dst:             xasprintf
        - Src:             'lib/ofp-monitor.c:765,18'
          Dst:             strcmp
        - Src:             'lib/ofp-monitor.c:766,22'
          Dst:             ofputil_table_from_string
        - Src:             'lib/ofp-monitor.c:768,29'
          Dst:             xasprintf
        - Src:             'lib/ofp-monitor.c:770,25'
          Dst:             strcmp
        - Src:             'lib/ofp-monitor.c:771,44'
          Dst:             atoi
        - Src:             'lib/ofp-monitor.c:771,33'
          Dst:             u16_to_ofp
        - Src:             'lib/ofp-monitor.c:772,25'
          Dst:             strcmp
        - Src:             'lib/ofp-monitor.c:773,34'
          Dst:             atoi
        - Src:             'lib/ofp-monitor.c:775,24'
          Dst:             xasprintf
    - functionName:    u16_to_ofp
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 214
      functionLinenumberEnd: 215
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    parse_flow_monitor_request
      functionSourceFile: '/src/openvswitch/lib/ofp-monitor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 797
      functionLinenumberEnd: 802
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - parse_flow_monitor_request__
        - xstrdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-monitor.c:798,20'
          Dst:             xstrdup
        - Src:             'lib/ofp-monitor.c:799,19'
          Dst:             parse_flow_monitor_request__
    - functionName:    ofp_flow_monitor_flags_to_name
      functionSourceFile: '/src/openvswitch/lib/ofp-monitor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 645
      functionLinenumberEnd: 659
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          55
      EdgeCount:       18
      CyclomaticComplexity: 10
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-monitor.c:648,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    ofp_flow_monitor_command_to_string
      functionSourceFile: '/src/openvswitch/lib/ofp-monitor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 663
      functionLinenumberEnd: 671
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          39
      EdgeCount:       14
      CyclomaticComplexity: 8
      functionsReached:
        - abort
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-monitor.c:664,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-monitor.c:669,9'
          Dst:             abort
    - functionName:    ofputil_flow_monitor_request_format
      functionSourceFile: '/src/openvswitch/lib/ofp-monitor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 678
      functionLinenumberEnd: 707
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          145
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - ds_chomp
        - ds_put_char
        - ds_put_cstr
        - ds_put_format
        - match_format
        - ofp_flow_monitor_command_to_string
        - ofp_flow_monitor_flags_to_name
        - ofp_print_bit_names
        - ofputil_format_port
        - ofputil_format_table
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-monitor.c:681,23'
          Dst:             ofp_flow_monitor_command_to_string
        - Src:             'lib/ofp-monitor.c:680,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-monitor.c:684,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-monitor.c:685,5'
          Dst:             ofp_print_bit_names
        - Src:             'lib/ofp-monitor.c:685,5'
          Dst:             ofp_flow_monitor_flags_to_name
        - Src:             'lib/ofp-monitor.c:689,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-monitor.c:690,9'
          Dst:             ofputil_format_port
        - Src:             'lib/ofp-monitor.c:694,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-monitor.c:698,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-monitor.c:699,9'
          Dst:             ofputil_format_table
        - Src:             'lib/ofp-monitor.c:703,9'
          Dst:             ds_put_char
        - Src:             'lib/ofp-monitor.c:704,9'
          Dst:             match_format
        - Src:             'lib/ofp-monitor.c:705,9'
          Dst:             ds_chomp
    - functionName:    ofp_to_u16
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 196
      functionLinenumberEnd: 197
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofp_to_nx_flow_monitor_flags
      functionSourceFile: '/src/openvswitch/lib/ofp-monitor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 361
      functionLinenumberEnd: 383
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         19
      ICount:          123
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofputil_append_flow_monitor_request
      functionSourceFile: '/src/openvswitch/lib/ofp-monitor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 569
      functionLinenumberEnd: 641
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          283
      EdgeCount:       27
      CyclomaticComplexity: 4
      functionsReached:
        - abort
        - htonl
        - htonll
        - htons
        - nx_put_match
        - ofp_to_nx_flow_monitor_flags
        - ofp_to_u16
        - ofpbuf_at_assert
        - ofpbuf_put_zeros
        - ofpraw_put
        - ofputil_port_to_ofp11
        - ofputil_protocol_to_ofp_version
        - oxm_put_match
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib/ofp-monitor.c:575,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-monitor.c:572,32'
          Dst:             ofputil_protocol_to_ofp_version
        - Src:             'lib/ofp-monitor.c:582,17'
          Dst:             ofpraw_put
        - Src:             'lib/ofp-monitor.c:586,13'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-monitor.c:587,55'
          Dst:             htonll
        - Src:             'lib/ofp-monitor.c:587,66'
          Dst:             htonll
        - Src:             'lib/ofp-monitor.c:587,25'
          Dst:             nx_put_match
        - Src:             'lib/ofp-monitor.c:589,20'
          Dst:             ofpbuf_at_assert
        - Src:             'lib/ofp-monitor.c:590,24'
          Dst:             htonl
        - Src:             'lib/ofp-monitor.c:591,33'
          Dst:             ofp_to_nx_flow_monitor_flags
        - Src:             'lib/ofp-monitor.c:591,27'
          Dst:             htons
        - Src:             'lib/ofp-monitor.c:592,36'
          Dst:             ofp_to_u16
        - Src:             'lib/ofp-monitor.c:592,30'
          Dst:             htons
        - Src:             'lib/ofp-monitor.c:593,31'
          Dst:             htons
        - Src:             'lib/ofp-monitor.c:601,17'
          Dst:             ofpraw_put
        - Src:             'lib/ofp-monitor.c:605,13'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-monitor.c:606,25'
          Dst:             oxm_put_match
        - Src:             'lib/ofp-monitor.c:608,20'
          Dst:             ofpbuf_at_assert
        - Src:             'lib/ofp-monitor.c:609,24'
          Dst:             htonl
        - Src:             'lib/ofp-monitor.c:610,33'
          Dst:             ofp_to_nx_flow_monitor_flags
        - Src:             'lib/ofp-monitor.c:610,27'
          Dst:             htons
        - Src:             'lib/ofp-monitor.c:611,31'
          Dst:             htons
        - Src:             'lib/ofp-monitor.c:612,30'
          Dst:             ofputil_port_to_ofp11
        - Src:             'lib/ofp-monitor.c:621,17'
          Dst:             ofpraw_put
        - Src:             'lib/ofp-monitor.c:625,13'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-monitor.c:626,13'
          Dst:             oxm_put_match
        - Src:             'lib/ofp-monitor.c:628,20'
          Dst:             ofpbuf_at_assert
        - Src:             'lib/ofp-monitor.c:629,32'
          Dst:             htonl
        - Src:             'lib/ofp-monitor.c:631,30'
          Dst:             ofputil_port_to_ofp11
        - Src:             'lib/ofp-monitor.c:632,31'
          Dst:             htonl
        - Src:             'lib/ofp-monitor.c:633,27'
          Dst:             htons
        - Src:             'lib/ofp-monitor.c:638,13'
          Dst:             abort
    - functionName:    nx_to_ofp_flow_monitor_flags
      functionSourceFile: '/src/openvswitch/lib/ofp-monitor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 334
      functionLinenumberEnd: 356
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         19
      ICount:          123
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofpbuf_try_pull
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 275
      functionLinenumberEnd: 276
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofpbuf_pull
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:276,30'
          Dst:             ofpbuf_pull
    - functionName:    ofputil_decode_flow_monitor_request
      functionSourceFile: '/src/openvswitch/lib/ofp-monitor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 439
      functionLinenumberEnd: 563
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         76
      ICount:          525
      EdgeCount:       97
      CyclomaticComplexity: 23
      functionsReached:
        - abort
        - is_all_zeros
        - ntohl
        - ntohs
        - nx_pull_match
        - nx_to_ofp_flow_monitor_flags
        - ofpbuf_try_pull
        - ofpraw_decode
        - ofpraw_pull
        - ofputil_port_from_ofp11
        - ofputil_pull_ofp11_match
        - u16_to_ofp
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-monitor.c:454,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-monitor.c:444,28'
          Dst:             ofpraw_decode
        - Src:             'lib/ofp-monitor.c:445,16'
          Dst:             ofpraw_pull
        - Src:             'lib/ofp-monitor.c:458,16'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/ofp-monitor.c:460,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-monitor.c:465,17'
          Dst:             ntohs
        - Src:             'lib/ofp-monitor.c:469,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-monitor.c:474,14'
          Dst:             is_all_zeros
        - Src:             'lib/ofp-monitor.c:478,18'
          Dst:             ntohl
        - Src:             'lib/ofp-monitor.c:480,21'
          Dst:             nx_to_ofp_flow_monitor_flags
        - Src:             'lib/ofp-monitor.c:481,35'
          Dst:             ntohs
        - Src:             'lib/ofp-monitor.c:481,24'
          Dst:             u16_to_ofp
        - Src:             'lib/ofp-monitor.c:485,35'
          Dst:             ntohs
        - Src:             'lib/ofp-monitor.c:485,16'
          Dst:             nx_pull_match
        - Src:             'lib/ofp-monitor.c:491,16'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/ofp-monitor.c:493,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-monitor.c:498,17'
          Dst:             ntohs
        - Src:             'lib/ofp-monitor.c:502,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-monitor.c:507,14'
          Dst:             is_all_zeros
        - Src:             'lib/ofp-monitor.c:511,18'
          Dst:             ntohl
        - Src:             'lib/ofp-monitor.c:513,21'
          Dst:             nx_to_ofp_flow_monitor_flags
        - Src:             'lib/ofp-monitor.c:514,17'
          Dst:             ofputil_port_from_ofp11
        - Src:             'lib/ofp-monitor.c:521,16'
          Dst:             ofputil_pull_ofp11_match
        - Src:             'lib/ofp-monitor.c:526,16'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/ofp-monitor.c:528,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-monitor.c:533,17'
          Dst:             ntohs
        - Src:             'lib/ofp-monitor.c:534,18'
          Dst:             ntohl
        - Src:             'lib/ofp-monitor.c:538,20'
          Dst:             ofputil_pull_ofp11_match
        - Src:             'lib/ofp-monitor.c:544,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-monitor.c:551,17'
          Dst:             ofputil_port_from_ofp11
        - Src:             'lib/ofp-monitor.c:555,25'
          Dst:             ntohl
        - Src:             'lib/ofp-monitor.c:558,16'
          Dst:             ofputil_pull_ofp11_match
        - Src:             'lib/ofp-monitor.c:561,9'
          Dst:             abort
    - functionName:    ofputil_flow_removed_format
      functionSourceFile: '/src/openvswitch/lib/ofp-monitor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 302
      functionLinenumberEnd: 330
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          127
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - ds_put_char
        - ds_put_cstr
        - ds_put_format
        - htonll
        - match_format
        - ntohll
        - ofp_flow_removed_reason_to_string
        - ofp_print_duration
        - ofputil_format_table
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-monitor.c:305,5'
          Dst:             ds_put_char
        - Src:             'lib/ofp-monitor.c:306,5'
          Dst:             match_format
        - Src:             'lib/ofp-monitor.c:309,19'
          Dst:             ofp_flow_removed_reason_to_string
        - Src:             'lib/ofp-monitor.c:308,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-monitor.c:313,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-monitor.c:314,9'
          Dst:             ofputil_format_table
        - Src:             'lib/ofp-monitor.c:317,23'
          Dst:             htonll
        - Src:             'lib/ofp-monitor.c:318,47'
          Dst:             ntohll
        - Src:             'lib/ofp-monitor.c:318,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-monitor.c:320,5'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-monitor.c:321,5'
          Dst:             ofp_print_duration
        - Src:             'lib/ofp-monitor.c:322,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-monitor.c:326,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-monitor.c:328,5'
          Dst:             ds_put_format
    - functionName:    unknown_to_zero
      functionSourceFile: '/src/openvswitch/lib/ofp-monitor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 177
      functionLinenumberEnd: 178
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          20
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofputil_encode_flow_removed
      functionSourceFile: '/src/openvswitch/lib/ofp-monitor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 187
      functionLinenumberEnd: 294
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         22
      ICount:          415
      EdgeCount:       22
      CyclomaticComplexity: 2
      functionsReached:
        - abort
        - htonl
        - htonll
        - htons
        - nx_put_match
        - ofpbuf_put_zeros
        - ofpraw_alloc_xid
        - ofputil_match_to_ofp10_match
        - ofputil_match_typical_len
        - ofputil_protocol_to_ofp_version
        - ofputil_put_ofp11_match
        - oxs_put_stats
        - unknown_to_zero
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib/ofp-monitor.c:195,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-monitor.c:203,32'
          Dst:             ofputil_protocol_to_ofp_version
        - Src:             'lib/ofp-monitor.c:204,32'
          Dst:             htonl
        - Src:             'lib/ofp-monitor.c:205,32'
          Dst:             ofputil_match_typical_len
        - Src:             'lib/ofp-monitor.c:202,15'
          Dst:             ofpraw_alloc_xid
        - Src:             'lib/ofp-monitor.c:206,15'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-monitor.c:208,25'
          Dst:             htons
        - Src:             'lib/ofp-monitor.c:211,29'
          Dst:             htonl
        - Src:             'lib/ofp-monitor.c:212,30'
          Dst:             htonl
        - Src:             'lib/ofp-monitor.c:213,29'
          Dst:             htons
        - Src:             'lib/ofp-monitor.c:214,29'
          Dst:             htons
        - Src:             'lib/ofp-monitor.c:215,29'
          Dst:             htonll
        - Src:             'lib/ofp-monitor.c:216,27'
          Dst:             htonll
        - Src:             'lib/ofp-monitor.c:217,9'
          Dst:             ofputil_put_ofp11_match
        - Src:             'lib/ofp-monitor.c:224,32'
          Dst:             ofputil_protocol_to_ofp_version
        - Src:             'lib/ofp-monitor.c:225,32'
          Dst:             htonl
        - Src:             'lib/ofp-monitor.c:226,32'
          Dst:             ofputil_match_typical_len
        - Src:             'lib/ofp-monitor.c:223,15'
          Dst:             ofpraw_alloc_xid
        - Src:             'lib/ofp-monitor.c:227,15'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-monitor.c:229,25'
          Dst:             htons
        - Src:             'lib/ofp-monitor.c:232,29'
          Dst:             htons
        - Src:             'lib/ofp-monitor.c:233,29'
          Dst:             htons
        - Src:             'lib/ofp-monitor.c:234,9'
          Dst:             ofputil_put_ofp11_match
        - Src:             'lib/ofp-monitor.c:244,9'
          Dst:             oxs_put_stats
        - Src:             'lib/ofp-monitor.c:252,32'
          Dst:             htonl
        - Src:             'lib/ofp-monitor.c:251,15'
          Dst:             ofpraw_alloc_xid
        - Src:             'lib/ofp-monitor.c:253,15'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-monitor.c:254,9'
          Dst:             ofputil_match_to_ofp10_match
        - Src:             'lib/ofp-monitor.c:256,25'
          Dst:             htons
        - Src:             'lib/ofp-monitor.c:258,29'
          Dst:             htonl
        - Src:             'lib/ofp-monitor.c:259,30'
          Dst:             htonl
        - Src:             'lib/ofp-monitor.c:260,29'
          Dst:             htons
        - Src:             'lib/ofp-monitor.c:261,36'
          Dst:             unknown_to_zero
        - Src:             'lib/ofp-monitor.c:261,29'
          Dst:             htonll
        - Src:             'lib/ofp-monitor.c:262,34'
          Dst:             unknown_to_zero
        - Src:             'lib/ofp-monitor.c:262,27'
          Dst:             htonll
        - Src:             'lib/ofp-monitor.c:272,32'
          Dst:             htonl
        - Src:             'lib/ofp-monitor.c:271,15'
          Dst:             ofpraw_alloc_xid
        - Src:             'lib/ofp-monitor.c:273,9'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-monitor.c:274,21'
          Dst:             nx_put_match
        - Src:             'lib/ofp-monitor.c:278,25'
          Dst:             htons
        - Src:             'lib/ofp-monitor.c:281,29'
          Dst:             htonl
        - Src:             'lib/ofp-monitor.c:282,30'
          Dst:             htonl
        - Src:             'lib/ofp-monitor.c:283,29'
          Dst:             htons
        - Src:             'lib/ofp-monitor.c:284,26'
          Dst:             htons
        - Src:             'lib/ofp-monitor.c:285,29'
          Dst:             htonll
        - Src:             'lib/ofp-monitor.c:286,27'
          Dst:             htonll
        - Src:             'lib/ofp-monitor.c:291,9'
          Dst:             abort
    - functionName:    ofputil_decode_flow_removed
      functionSourceFile: '/src/openvswitch/lib/ofp-monitor.c'
      linkageType:     InternalLinkage
      functionLinenumber: 71
      functionLinenumberEnd: 169
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         29
      ICount:          430
      EdgeCount:       38
      CyclomaticComplexity: 11
      functionsReached:
        - abort
        - ntohl
        - ntohll
        - ntohs
        - nx_pull_match
        - ofpbuf_const_initializer
        - ofpbuf_pull
        - ofpraw_pull_assert
        - ofputil_match_from_ofp10_match
        - ofputil_pull_ofp11_match
        - oxs_pull_stat
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-monitor.c:72,52'
          Dst:             ntohs
        - Src:             'lib/ofp-monitor.c:72,23'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/ofp-monitor.c:73,23'
          Dst:             ofpraw_pull_assert
        - Src:             'lib/ofp-monitor.c:78,15'
          Dst:             ofpbuf_pull
        - Src:             'lib/ofp-monitor.c:80,17'
          Dst:             ofputil_pull_ofp11_match
        - Src:             'lib/ofp-monitor.c:88,17'
          Dst:             oxs_pull_stat
        - Src:             'lib/ofp-monitor.c:94,24'
          Dst:             ntohs
        - Src:             'lib/ofp-monitor.c:99,28'
          Dst:             ntohs
        - Src:             'lib/ofp-monitor.c:100,28'
          Dst:             ntohs
        - Src:             'lib/ofp-monitor.c:107,15'
          Dst:             ofpbuf_pull
        - Src:             'lib/ofp-monitor.c:109,17'
          Dst:             ofputil_pull_ofp11_match
        - Src:             'lib/ofp-monitor.c:114,24'
          Dst:             ntohs
        - Src:             'lib/ofp-monitor.c:118,28'
          Dst:             ntohl
        - Src:             'lib/ofp-monitor.c:119,29'
          Dst:             ntohl
        - Src:             'lib/ofp-monitor.c:120,28'
          Dst:             ntohs
        - Src:             'lib/ofp-monitor.c:121,28'
          Dst:             ntohs
        - Src:             'lib/ofp-monitor.c:122,28'
          Dst:             ntohll
        - Src:             'lib/ofp-monitor.c:123,26'
          Dst:             ntohll
        - Src:             'lib/ofp-monitor.c:127,15'
          Dst:             ofpbuf_pull
        - Src:             'lib/ofp-monitor.c:129,9'
          Dst:             ofputil_match_from_ofp10_match
        - Src:             'lib/ofp-monitor.c:130,24'
          Dst:             ntohs
        - Src:             'lib/ofp-monitor.c:134,28'
          Dst:             ntohl
        - Src:             'lib/ofp-monitor.c:135,29'
          Dst:             ntohl
        - Src:             'lib/ofp-monitor.c:136,28'
          Dst:             ntohs
        - Src:             'lib/ofp-monitor.c:138,28'
          Dst:             ntohll
        - Src:             'lib/ofp-monitor.c:139,26'
          Dst:             ntohll
        - Src:             'lib/ofp-monitor.c:144,15'
          Dst:             ofpbuf_pull
        - Src:             'lib/ofp-monitor.c:145,35'
          Dst:             ntohs
        - Src:             'lib/ofp-monitor.c:145,17'
          Dst:             nx_pull_match
        - Src:             'lib/ofp-monitor.c:154,24'
          Dst:             ntohs
        - Src:             'lib/ofp-monitor.c:158,28'
          Dst:             ntohl
        - Src:             'lib/ofp-monitor.c:159,29'
          Dst:             ntohl
        - Src:             'lib/ofp-monitor.c:160,28'
          Dst:             ntohs
        - Src:             'lib/ofp-monitor.c:162,28'
          Dst:             ntohll
        - Src:             'lib/ofp-monitor.c:163,26'
          Dst:             ntohll
        - Src:             'lib/ofp-monitor.c:165,9'
          Dst:             abort
    - functionName:    init_this_module_ofp_packet
      functionSourceFile: '/src/openvswitch/lib/ofp-packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 35
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-packet.c:35,1'
          Dst:             vlog_insert_module
    - functionName:    free_afxdp_buf
      functionSourceFile: '/src/openvswitch/lib/netdev-afxdp.h'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 84
      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:    free_dpdk_buf
      functionSourceFile: '/src/openvswitch/lib/netdev-dpdk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 76
      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:    dp_packet_delete
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 271
      functionLinenumberEnd: 290
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          54
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - dp_packet_uninit
        - free_afxdp_buf
        - free_dpdk_buf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:274,13'
          Dst:             free_dpdk_buf
        - Src:             'lib/dp-packet.h:279,13'
          Dst:             free_afxdp_buf
        - Src:             'lib/dp-packet.h:283,9'
          Dst:             dp_packet_uninit
    - functionName:    dp_packet_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 762
      functionLinenumberEnd: 763
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofpbuf_headersize
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 236
      functionLinenumberEnd: 237
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    odp_to_u32
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 202
      functionLinenumberEnd: 203
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofpact_get_UNROLL_XLATE
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ovs_ignore
    - functionName:    put_actions_property
      functionSourceFile: '/src/openvswitch/lib/ofp-packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 410
      functionLinenumberEnd: 416
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofpacts_put_openflow_actions
        - ofpprop_end
        - ofpprop_start_nested
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-packet.c:412,24'
          Dst:             ofpprop_start_nested
        - Src:             'lib/ofp-packet.c:413,9'
          Dst:             ofpacts_put_openflow_actions
        - Src:             'lib/ofp-packet.c:414,9'
          Dst:             ofpprop_end
    - functionName:    ofpact_next
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 212
      functionLinenumberEnd: 213
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofpact_end
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 221
      functionLinenumberEnd: 223
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          23
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofputil_put_packet_in_private
      functionSourceFile: '/src/openvswitch/lib/ofp-packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 436
      functionLinenumberEnd: 523
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         50
      ICount:          359
      EdgeCount:       65
      CyclomaticComplexity: 17
      functionsReached:
        - nx_stack_pop
        - odp_to_u32
        - ofpact_end
        - ofpact_get_UNROLL_XLATE
        - ofpact_next
        - ofpacts_put_openflow_actions
        - ofpbuf_use_const
        - ofpprop_end
        - ofpprop_put
        - ofpprop_put_be64
        - ofpprop_put_flag
        - ofpprop_put_u32
        - ofpprop_put_u8
        - ofpprop_put_uuid
        - ofpprop_start_nested
        - ofputil_put_packet_in
        - put_actions_property
        - uuid_is_zero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-packet.c:437,5'
          Dst:             ofputil_put_packet_in
        - Src:             'lib/ofp-packet.c:439,31'
          Dst:             ofpprop_start_nested
        - Src:             'lib/ofp-packet.c:442,10'
          Dst:             uuid_is_zero
        - Src:             'lib/ofp-packet.c:443,9'
          Dst:             ofpprop_put_uuid
        - Src:             'lib/ofp-packet.c:447,5'
          Dst:             ofpbuf_use_const
        - Src:             'lib/ofp-packet.c:451,24'
          Dst:             nx_stack_pop
        - Src:             'lib/ofp-packet.c:452,9'
          Dst:             ofpprop_put
        - Src:             'lib/ofp-packet.c:456,9'
          Dst:             ofpprop_put_u32
        - Src:             'lib/ofp-packet.c:460,9'
          Dst:             ofpprop_put_flag
        - Src:             'lib/ofp-packet.c:472,42'
          Dst:             ofpact_end
        - Src:             'lib/ofp-packet.c:483,25'
          Dst:             ofpprop_put_u8
        - Src:             'lib/ofp-packet.c:488,25'
          Dst:             ofpprop_put_be64
        - Src:             'lib/ofp-packet.c:495,32'
          Dst:             ofpact_next
        - Src:             'lib/ofp-packet.c:496,17'
          Dst:             put_actions_property
        - Src:             'lib/ofp-packet.c:502,26'
          Dst:             ofpact_get_UNROLL_XLATE
        - Src:             'lib/ofp-packet.c:479,38'
          Dst:             ofpact_next
        - Src:             'lib/ofp-packet.c:508,24'
          Dst:             ofpprop_start_nested
        - Src:             'lib/ofp-packet.c:509,9'
          Dst:             ofpacts_put_openflow_actions
        - Src:             'lib/ofp-packet.c:511,9'
          Dst:             ofpprop_end
        - Src:             'lib/ofp-packet.c:515,46'
          Dst:             odp_to_u32
        - Src:             'lib/ofp-packet.c:515,9'
          Dst:             ofpprop_put_u32
        - Src:             'lib/ofp-packet.c:519,9'
          Dst:             ofpprop_end
    - functionName:    ofputil_put_packet_in
      functionSourceFile: '/src/openvswitch/lib/ofp-packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 384
      functionLinenumberEnd: 404
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          90
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - encode_packet_in_reason
        - ofpprop_end
        - ofpprop_put
        - ofpprop_put_be64
        - ofpprop_put_u32
        - ofpprop_put_u8
        - ofpprop_start
        - oxm_put_raw
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-packet.c:386,5'
          Dst:             ofpprop_put
        - Src:             'lib/ofp-packet.c:388,9'
          Dst:             ofpprop_put_u32
        - Src:             'lib/ofp-packet.c:392,5'
          Dst:             ofpprop_put_u8
        - Src:             'lib/ofp-packet.c:394,9'
          Dst:             ofpprop_put_be64
        - Src:             'lib/ofp-packet.c:399,20'
          Dst:             encode_packet_in_reason
        - Src:             'lib/ofp-packet.c:398,5'
          Dst:             ofpprop_put_u8
        - Src:             'lib/ofp-packet.c:401,20'
          Dst:             ofpprop_start
        - Src:             'lib/ofp-packet.c:402,5'
          Dst:             oxm_put_raw
        - Src:             'lib/ofp-packet.c:403,5'
          Dst:             ofpprop_end
    - functionName:    encode_packet_in_reason
      functionSourceFile: '/src/openvswitch/lib/ofp-packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 354
      functionLinenumberEnd: 376
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         20
      ICount:          89
      EdgeCount:       39
      CyclomaticComplexity: 21
      functionsReached:
        - abort
      functionUses:    5
      BranchProfiles:
        - Branch String:   'lib/ofp-packet.c:355,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-packet.c:374,9'
          Dst:             abort
    - functionName:    ofpbuf_tail
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 203
      functionLinenumberEnd: 205
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          56
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:204,5'
          Dst:             ovs_ignore
    - functionName:    ofpbuf_msgsize
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 244
      functionLinenumberEnd: 245
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpbuf_tail
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:245,20'
          Dst:             ofpbuf_tail
    - functionName:    parse_ofp_packet_out_str__
      functionSourceFile: '/src/openvswitch/lib/ofp-packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1280
      functionLinenumberEnd: 1386
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         50
      ICount:          356
      EdgeCount:       69
      CyclomaticComplexity: 21
      functionsReached:
        - dp_packet_delete
        - dp_packet_size
        - dp_packet_steal_data
        - eth_from_hex
        - htonl
        - match_init_catchall
        - match_set_in_port
        - match_set_packet_type
        - mf_from_name
        - mf_is_pipeline_field
        - ofp_extract_actions
        - ofp_parse_field
        - ofp_to_u16
        - ofpacts_parse_actions
        - ofpbuf_steal_data
        - ofpbuf_uninit
        - ofputil_parse_key_value
        - ofputil_port_from_string
        - strcmp
        - strstr
        - strtoul
        - xasprintf
        - xstrdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-packet.c:1294,5'
          Dst:             match_init_catchall
        - Src:             'lib/ofp-packet.c:1295,5'
          Dst:             match_set_in_port
        - Src:             'lib/ofp-packet.c:1297,15'
          Dst:             ofp_extract_actions
        - Src:             'lib/ofp-packet.c:1299,12'
          Dst:             ofputil_parse_key_value
        - Src:             'lib/ofp-packet.c:1301,21'
          Dst:             xasprintf
        - Src:             'lib/ofp-packet.c:1305,14'
          Dst:             strcmp
        - Src:             'lib/ofp-packet.c:1307,18'
          Dst:             ofputil_port_from_string
        - Src:             'lib/ofp-packet.c:1308,25'
          Dst:             xasprintf
        - Src:             'lib/ofp-packet.c:1311,17'
          Dst:             ofp_to_u16
        - Src:             'lib/ofp-packet.c:1311,39'
          Dst:             ofp_to_u16
        - Src:             'lib/ofp-packet.c:1315,25'
          Dst:             xasprintf
        - Src:             'lib/ofp-packet.c:1320,13'
          Dst:             match_set_in_port
        - Src:             'lib/ofp-packet.c:1321,21'
          Dst:             strcmp
        - Src:             'lib/ofp-packet.c:1323,29'
          Dst:             strstr
        - Src:             'lib/ofp-packet.c:1327,31'
          Dst:             strtoul
        - Src:             'lib/ofp-packet.c:1327,31'
          Dst:             strtoul
        - Src:             'lib/ofp-packet.c:1327,31'
          Dst:             htonl
        - Src:             'lib/ofp-packet.c:1329,17'
          Dst:             match_set_packet_type
        - Src:             'lib/ofp-packet.c:1331,25'
          Dst:             xasprintf
        - Src:             'lib/ofp-packet.c:1334,21'
          Dst:             strcmp
        - Src:             'lib/ofp-packet.c:1335,37'
          Dst:             eth_from_hex
        - Src:             'lib/ofp-packet.c:1337,25'
          Dst:             xasprintf
        - Src:             'lib/ofp-packet.c:1341,41'
          Dst:             mf_from_name
        - Src:             'lib/ofp-packet.c:1343,25'
          Dst:             xasprintf
        - Src:             'lib/ofp-packet.c:1347,21'
          Dst:             ofp_parse_field
        - Src:             'lib/ofp-packet.c:1352,18'
          Dst:             mf_is_pipeline_field
        - Src:             'lib/ofp-packet.c:1353,25'
          Dst:             xasprintf
        - Src:             'lib/ofp-packet.c:1360,21'
          Dst:             dp_packet_size
        - Src:             'lib/ofp-packet.c:1361,17'
          Dst:             xstrdup
        - Src:             'lib/ofp-packet.c:1372,17'
          Dst:             ofpacts_parse_actions
        - Src:             'lib/ofp-packet.c:1379,19'
          Dst:             ofpbuf_steal_data
        - Src:             'lib/ofp-packet.c:1381,22'
          Dst:             dp_packet_size
        - Src:             'lib/ofp-packet.c:1382,18'
          Dst:             dp_packet_steal_data
        - Src:             'lib/ofp-packet.c:1384,5'
          Dst:             ofpbuf_uninit
        - Src:             'lib/ofp-packet.c:1385,5'
          Dst:             dp_packet_delete
    - functionName:    ofp_to_u16
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 196
      functionLinenumberEnd: 197
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    parse_ofp_packet_out_str
      functionSourceFile: '/src/openvswitch/lib/ofp-packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1402
      functionLinenumberEnd: 1414
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - parse_ofp_packet_out_str__
        - xstrdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-packet.c:1403,20'
          Dst:             xstrdup
        - Src:             'lib/ofp-packet.c:1406,13'
          Dst:             parse_ofp_packet_out_str__
    - functionName:    ofputil_packet_out_format
      functionSourceFile: '/src/openvswitch/lib/ofp-packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1243
      functionLinenumberEnd: 1271
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          134
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - ds_put_char
        - ds_put_cstr
        - ds_put_format
        - ds_put_hex_dump
        - match_format
        - ofp_packet_to_string
        - ofpacts_format
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-packet.c:1244,5'
          Dst:             ds_put_char
        - Src:             'lib/ofp-packet.c:1245,5'
          Dst:             match_format
        - Src:             'lib/ofp-packet.c:1247,5'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-packet.c:1253,5'
          Dst:             ofpacts_format
        - Src:             'lib/ofp-packet.c:1256,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-packet.c:1259,28'
          Dst:             ofp_packet_to_string
        - Src:             'lib/ofp-packet.c:1261,13'
          Dst:             ds_put_char
        - Src:             'lib/ofp-packet.c:1262,13'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-packet.c:1266,13'
          Dst:             ds_put_hex_dump
        - Src:             'lib/ofp-packet.c:1269,9'
          Dst:             ds_put_format
    - functionName:    ds_put_char
      functionSourceFile: '/src/openvswitch/./include/openvswitch/dynamic-string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_char__
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/dynamic-string.h:99,9'
          Dst:             ds_put_char__
    - functionName:    ofputil_encode_packet_out
      functionSourceFile: '/src/openvswitch/lib/ofp-packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1160
      functionLinenumberEnd: 1235
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          244
      EdgeCount:       18
      CyclomaticComplexity: 2
      functionsReached:
        - abort
        - htonl
        - htons
        - ofp_to_u16
        - ofpacts_put_openflow_actions
        - ofpbuf_put
        - ofpbuf_put_zeros
        - ofpmsg_update_length
        - ofpraw_alloc
        - ofputil_port_to_ofp11
        - ofputil_protocol_to_ofp_version
        - oxm_put_match
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-packet.c:1170,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-packet.c:1161,36'
          Dst:             ofputil_protocol_to_ofp_version
        - Src:             'lib/ofp-packet.c:1175,15'
          Dst:             ofpraw_alloc
        - Src:             'lib/ofp-packet.c:1176,9'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-packet.c:1178,9'
          Dst:             ofpacts_put_openflow_actions
        - Src:             'lib/ofp-packet.c:1182,26'
          Dst:             htonl
        - Src:             'lib/ofp-packet.c:1183,29'
          Dst:             ofp_to_u16
        - Src:             'lib/ofp-packet.c:1183,23'
          Dst:             htons
        - Src:             'lib/ofp-packet.c:1185,28'
          Dst:             htons
        - Src:             'lib/ofp-packet.c:1196,15'
          Dst:             ofpraw_alloc
        - Src:             'lib/ofp-packet.c:1197,9'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-packet.c:1198,15'
          Dst:             ofpacts_put_openflow_actions
        - Src:             'lib/ofp-packet.c:1201,26'
          Dst:             htonl
        - Src:             'lib/ofp-packet.c:1203,13'
          Dst:             ofputil_port_to_ofp11
        - Src:             'lib/ofp-packet.c:1204,28'
          Dst:             htons
        - Src:             'lib/ofp-packet.c:1213,15'
          Dst:             ofpraw_alloc
        - Src:             'lib/ofp-packet.c:1215,9'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-packet.c:1216,9'
          Dst:             oxm_put_match
        - Src:             'lib/ofp-packet.c:1217,15'
          Dst:             ofpacts_put_openflow_actions
        - Src:             'lib/ofp-packet.c:1220,26'
          Dst:             htonl
        - Src:             'lib/ofp-packet.c:1221,28'
          Dst:             htons
        - Src:             'lib/ofp-packet.c:1226,9'
          Dst:             abort
        - Src:             'lib/ofp-packet.c:1230,9'
          Dst:             ofpbuf_put
        - Src:             'lib/ofp-packet.c:1233,5'
          Dst:             ofpmsg_update_length
    - functionName:    ofpbuf_clear
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 250
      functionLinenumberEnd: 253
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofputil_decode_packet_out
      functionSourceFile: '/src/openvswitch/lib/ofp-packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1070
      functionLinenumberEnd: 1155
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         42
      ICount:          350
      EdgeCount:       56
      CyclomaticComplexity: 16
      functionsReached:
        - abort
        - htonl
        - match_init_catchall
        - match_set_in_port
        - match_set_packet_type
        - ntohl
        - ntohs
        - ofp_to_u16
        - ofpacts_pull_openflow_actions
        - ofpbuf_clear
        - ofpbuf_const_initializer
        - ofpbuf_pull
        - ofpraw_pull_assert
        - ofputil_port_from_ofp11
        - oxm_pull_match_loose
        - u16_to_ofp
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-packet.c:1071,52'
          Dst:             ntohs
        - Src:             'lib/ofp-packet.c:1071,23'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/ofp-packet.c:1072,23'
          Dst:             ofpraw_pull_assert
        - Src:             'lib/ofp-packet.c:1074,5'
          Dst:             ofpbuf_clear
        - Src:             'lib/ofp-packet.c:1075,5'
          Dst:             match_init_catchall
        - Src:             'lib/ofp-packet.c:1078,46'
          Dst:             ofpbuf_pull
        - Src:             'lib/ofp-packet.c:1080,25'
          Dst:             ntohl
        - Src:             'lib/ofp-packet.c:1081,17'
          Dst:             oxm_pull_match_loose
        - Src:             'lib/ofp-packet.c:1090,51'
          Dst:             ntohs
        - Src:             'lib/ofp-packet.c:1090,17'
          Dst:             ofpacts_pull_openflow_actions
        - Src:             'lib/ofp-packet.c:1099,46'
          Dst:             ofpbuf_pull
        - Src:             'lib/ofp-packet.c:1101,25'
          Dst:             ntohl
        - Src:             'lib/ofp-packet.c:1102,17'
          Dst:             ofputil_port_from_ofp11
        - Src:             'lib/ofp-packet.c:1106,51'
          Dst:             htonl
        - Src:             'lib/ofp-packet.c:1106,9'
          Dst:             match_set_packet_type
        - Src:             'lib/ofp-packet.c:1107,9'
          Dst:             match_set_in_port
        - Src:             'lib/ofp-packet.c:1109,51'
          Dst:             ntohs
        - Src:             'lib/ofp-packet.c:1109,17'
          Dst:             ofpacts_pull_openflow_actions
        - Src:             'lib/ofp-packet.c:1117,46'
          Dst:             ofpbuf_pull
        - Src:             'lib/ofp-packet.c:1119,25'
          Dst:             ntohl
        - Src:             'lib/ofp-packet.c:1120,51'
          Dst:             htonl
        - Src:             'lib/ofp-packet.c:1120,9'
          Dst:             match_set_packet_type
        - Src:             'lib/ofp-packet.c:1121,58'
          Dst:             ntohs
        - Src:             'lib/ofp-packet.c:1121,47'
          Dst:             u16_to_ofp
        - Src:             'lib/ofp-packet.c:1121,9'
          Dst:             match_set_in_port
        - Src:             'lib/ofp-packet.c:1123,51'
          Dst:             ntohs
        - Src:             'lib/ofp-packet.c:1123,17'
          Dst:             ofpacts_pull_openflow_actions
        - Src:             'lib/ofp-packet.c:1130,9'
          Dst:             abort
        - Src:             'lib/ofp-packet.c:1134,9'
          Dst:             ofp_to_u16
        - Src:             'lib/ofp-packet.c:1134,32'
          Dst:             ofp_to_u16
        - Src:             'lib/ofp-packet.c:1138,9'
          Dst:             vlog_rate_limit
    - functionName:    ofpbuf_const_initializer
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 97
      functionLinenumberEnd: 105
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          30
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofpbuf_pull
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 258
      functionLinenumberEnd: 269
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          64
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:259,5'
          Dst:             ovs_ignore
    - functionName:    u16_to_ofp
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 214
      functionLinenumberEnd: 215
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ntohll
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
        - ntohl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byte-order.h:36,12'
          Dst:             htonl
        - Src:             'lib/byte-order.h:36,44'
          Dst:             ntohl
        - Src:             'lib/byte-order.h:36,62'
          Dst:             ntohl
    - functionName:    ofputil_packet_in_private_format
      functionSourceFile: '/src/openvswitch/lib/ofp-packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 926
      functionLinenumberEnd: 1036
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         54
      ICount:          450
      EdgeCount:       71
      CyclomaticComplexity: 19
      functionsReached:
        - ds_put_char
        - ds_put_cstr
        - ds_put_format
        - ds_put_hex_dump
        - ds_put_hex_with_delimiter
        - match_format
        - mf_subvalue_format
        - ntohll
        - nx_stack_pop
        - ofp_packet_to_string
        - ofpacts_format
        - ofpbuf_use_const
        - ofputil_format_table
        - ofputil_packet_in_reason_to_string
        - ofputil_table_map_get_name
        - uuid_is_zero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-packet.c:931,12'
          Dst:             ofputil_table_map_get_name
        - Src:             'lib/ofp-packet.c:932,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-packet.c:933,9'
          Dst:             ofputil_format_table
        - Src:             'lib/ofp-packet.c:937,47'
          Dst:             ntohll
        - Src:             'lib/ofp-packet.c:937,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-packet.c:940,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-packet.c:942,5'
          Dst:             match_format
        - Src:             'lib/ofp-packet.c:945,19'
          Dst:             ofputil_packet_in_reason_to_string
        - Src:             'lib/ofp-packet.c:944,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-packet.c:949,5'
          Dst:             ds_put_format
        - Src:             'lib/ofp-packet.c:951,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-packet.c:953,13'
          Dst:             ds_put_format
        - Src:             'lib/ofp-packet.c:956,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-packet.c:958,13'
          Dst:             ds_put_format
        - Src:             'lib/ofp-packet.c:961,5'
          Dst:             ds_put_char
        - Src:             'lib/ofp-packet.c:964,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-packet.c:965,9'
          Dst:             ds_put_hex_with_delimiter
        - Src:             'lib/ofp-packet.c:967,9'
          Dst:             ds_put_char
        - Src:             'lib/ofp-packet.c:970,10'
          Dst:             uuid_is_zero
        - Src:             'lib/ofp-packet.c:971,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-packet.c:976,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-packet.c:979,9'
          Dst:             ofpbuf_use_const
        - Src:             'lib/ofp-packet.c:983,28'
          Dst:             nx_stack_pop
        - Src:             'lib/ofp-packet.c:986,13'
          Dst:             ds_put_char
        - Src:             'lib/ofp-packet.c:989,13'
          Dst:             mf_subvalue_format
        - Src:             'lib/ofp-packet.c:991,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-packet.c:995,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-packet.c:1000,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-packet.c:1010,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-packet.c:1011,9'
          Dst:             ofpacts_format
        - Src:             'lib/ofp-packet.c:1012,9'
          Dst:             ds_put_char
        - Src:             'lib/ofp-packet.c:1016,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-packet.c:1017,9'
          Dst:             ofpacts_format
        - Src:             'lib/ofp-packet.c:1018,9'
          Dst:             ds_put_char
        - Src:             'lib/ofp-packet.c:1022,9'
          Dst:             ds_put_format
        - Src:             'lib/ofp-packet.c:1023,9'
          Dst:             ds_put_char
        - Src:             'lib/ofp-packet.c:1027,24'
          Dst:             ofp_packet_to_string
        - Src:             'lib/ofp-packet.c:1030,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ofp-packet.c:1034,9'
          Dst:             ds_put_hex_dump
    - functionName:    ofputil_packet_in_reason_to_string
      functionSourceFile: '/src/openvswitch/lib/ofp-packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 710
      functionLinenumberEnd: 733
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          78
      EdgeCount:       31
      CyclomaticComplexity: 17
      functionsReached:
        - snprintf
      functionUses:    4
      BranchProfiles:
        - Branch String:   'lib/ofp-packet.c:711,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-packet.c:730,9'
          Dst:             snprintf
    - functionName:    ofputil_packet_in_private_destroy
      functionSourceFile: '/src/openvswitch/lib/ofp-packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1046
      functionLinenumberEnd: 1052
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    u32_to_odp
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 220
      functionLinenumberEnd: 221
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    parse_actions_property
      functionSourceFile: '/src/openvswitch/lib/ofp-packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 790
      functionLinenumberEnd: 799
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          67
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - ofpacts_pull_openflow_actions
        - ofpbuf_headersize
        - ofpbuf_try_pull
        - vlog_rate_limit
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-packet.c:791,36'
          Dst:             ofpbuf_headersize
        - Src:             'lib/ofp-packet.c:791,10'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/ofp-packet.c:792,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-packet.c:797,12'
          Dst:             ofpacts_pull_openflow_actions
    - functionName:    ofpbuf_try_pull
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 275
      functionLinenumberEnd: 276
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofpbuf_pull
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:276,30'
          Dst:             ofpbuf_pull
    - functionName:    ofpact_put_UNROLL_XLATE
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_put
    - functionName:    parse_stack_prop
      functionSourceFile: '/src/openvswitch/lib/ofp-packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 776
      functionLinenumberEnd: 785
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          64
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - nx_stack_push_bottom
        - ofpbuf_msgsize
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-packet.c:777,24'
          Dst:             ofpbuf_msgsize
        - Src:             'lib/ofp-packet.c:779,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-packet.c:783,5'
          Dst:             nx_stack_push_bottom
    - functionName:    ofputil_decode_packet_in_private
      functionSourceFile: '/src/openvswitch/lib/ofp-packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 818
      functionLinenumberEnd: 917
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         31
      ICount:          250
      EdgeCount:       36
      CyclomaticComplexity: 7
      functionsReached:
        - ofpact_put_UNROLL_XLATE
        - ofpbuf_init
        - ofpbuf_steal_data
        - ofpprop_parse_be64
        - ofpprop_parse_u32
        - ofpprop_parse_u8
        - ofpprop_parse_uuid
        - ofpprop_pull
        - ofpprop_unknown
        - ofputil_decode_packet_in
        - ofputil_packet_in_private_destroy
        - parse_actions_property
        - parse_stack_prop
        - u32_to_odp
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-packet.c:849,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-packet.c:823,13'
          Dst:             ofputil_decode_packet_in
        - Src:             'lib/ofp-packet.c:831,5'
          Dst:             ofpbuf_init
        - Src:             'lib/ofp-packet.c:832,5'
          Dst:             ofpbuf_init
        - Src:             'lib/ofp-packet.c:838,5'
          Dst:             ofpbuf_init
        - Src:             'lib/ofp-packet.c:844,17'
          Dst:             ofpprop_pull
        - Src:             'lib/ofp-packet.c:851,21'
          Dst:             ofpprop_parse_uuid
        - Src:             'lib/ofp-packet.c:855,21'
          Dst:             parse_stack_prop
        - Src:             'lib/ofp-packet.c:859,21'
          Dst:             ofpprop_parse_u32
        - Src:             'lib/ofp-packet.c:867,21'
          Dst:             ofpprop_parse_u8
        - Src:             'lib/ofp-packet.c:871,21'
          Dst:             ofpprop_parse_be64
        - Src:             'lib/ofp-packet.c:876,19'
          Dst:             ofpact_put_UNROLL_XLATE
        - Src:             'lib/ofp-packet.c:879,21'
          Dst:             parse_actions_property
        - Src:             'lib/ofp-packet.c:884,21'
          Dst:             parse_actions_property
        - Src:             'lib/ofp-packet.c:889,21'
          Dst:             ofpprop_parse_u32
        - Src:             'lib/ofp-packet.c:891,33'
          Dst:             u32_to_odp
        - Src:             'lib/ofp-packet.c:897,21'
          Dst:             ofpprop_unknown
        - Src:             'lib/ofp-packet.c:906,20'
          Dst:             ofpbuf_steal_data
        - Src:             'lib/ofp-packet.c:908,23'
          Dst:             ofpbuf_steal_data
        - Src:             'lib/ofp-packet.c:910,18'
          Dst:             ofpbuf_steal_data
        - Src:             'lib/ofp-packet.c:913,9'
          Dst:             ofputil_packet_in_private_destroy
    - functionName:    ofputil_decode_packet_in
      functionSourceFile: '/src/openvswitch/lib/ofp-packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 349
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         52
      ICount:          461
      EdgeCount:       69
      CyclomaticComplexity: 19
      functionsReached:
        - abort
        - decode_nx_packet_in2
        - match_init_catchall
        - match_set_in_port
        - ntohl
        - ntohs
        - nx_pull_match_loose
        - ofpbuf_const_initializer
        - ofpbuf_pull
        - ofpbuf_try_pull
        - ofpbuf_use_const
        - ofpraw_pull_assert
        - ofputil_port_from_ofp11
        - oxm_pull_match_loose
        - u16_to_ofp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-packet.c:240,9'
          Dst:             ofpbuf_use_const
        - Src:             'lib/ofp-packet.c:243,52'
          Dst:             ntohs
        - Src:             'lib/ofp-packet.c:243,23'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/ofp-packet.c:244,23'
          Dst:             ofpraw_pull_assert
        - Src:             'lib/ofp-packet.c:246,45'
          Dst:             ofpbuf_pull
        - Src:             'lib/ofp-packet.c:248,37'
          Dst:             ofpbuf_pull
        - Src:             'lib/ofp-packet.c:250,29'
          Dst:             oxm_pull_match_loose
        - Src:             'lib/ofp-packet.c:257,14'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/ofp-packet.c:263,21'
          Dst:             ntohl
        - Src:             'lib/ofp-packet.c:264,21'
          Dst:             ntohs
        - Src:             'lib/ofp-packet.c:274,15'
          Dst:             ofpbuf_pull
        - Src:             'lib/ofp-packet.c:279,9'
          Dst:             match_init_catchall
        - Src:             'lib/ofp-packet.c:281,38'
          Dst:             ntohs
        - Src:             'lib/ofp-packet.c:281,27'
          Dst:             u16_to_ofp
        - Src:             'lib/ofp-packet.c:280,9'
          Dst:             match_set_in_port
        - Src:             'lib/ofp-packet.c:283,21'
          Dst:             ntohl
        - Src:             'lib/ofp-packet.c:284,21'
          Dst:             ntohs
        - Src:             'lib/ofp-packet.c:290,15'
          Dst:             ofpbuf_pull
        - Src:             'lib/ofp-packet.c:295,21'
          Dst:             ntohl
        - Src:             'lib/ofp-packet.c:296,17'
          Dst:             ofputil_port_from_ofp11
        - Src:             'lib/ofp-packet.c:300,9'
          Dst:             match_init_catchall
        - Src:             'lib/ofp-packet.c:301,9'
          Dst:             match_set_in_port
        - Src:             'lib/ofp-packet.c:302,21'
          Dst:             ntohs
        - Src:             'lib/ofp-packet.c:309,15'
          Dst:             ofpbuf_pull
        - Src:             'lib/ofp-packet.c:310,41'
          Dst:             ntohs
        - Src:             'lib/ofp-packet.c:310,17'
          Dst:             nx_pull_match_loose
        - Src:             'lib/ofp-packet.c:317,14'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/ofp-packet.c:325,21'
          Dst:             ntohl
        - Src:             'lib/ofp-packet.c:326,21'
          Dst:             ntohs
        - Src:             'lib/ofp-packet.c:331,29'
          Dst:             decode_nx_packet_in2
        - Src:             'lib/ofp-packet.c:338,9'
          Dst:             abort
    - functionName:    decode_nx_packet_in2
      functionSourceFile: '/src/openvswitch/lib/ofp-packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 110
      functionLinenumberEnd: 201
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         49
      ICount:          303
      EdgeCount:       59
      CyclomaticComplexity: 12
      functionsReached:
        - ntohs
        - ofpbuf_msgsize
        - ofpbuf_use_const
        - ofpprop_parse_be64
        - ofpprop_parse_nested
        - ofpprop_parse_u32
        - ofpprop_parse_u8
        - ofpprop_pull
        - ofpprop_unknown
        - ofpraw_pull_assert
        - oxm_decode_match
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-packet.c:127,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-packet.c:115,39'
          Dst:             ntohs
        - Src:             'lib/ofp-packet.c:115,5'
          Dst:             ofpbuf_use_const
        - Src:             'lib/ofp-packet.c:116,5'
          Dst:             ofpraw_pull_assert
        - Src:             'lib/ofp-packet.c:122,29'
          Dst:             ofpprop_pull
        - Src:             'lib/ofp-packet.c:130,31'
          Dst:             ofpbuf_msgsize
        - Src:             'lib/ofp-packet.c:135,21'
          Dst:             ofpprop_parse_u32
        - Src:             'lib/ofp-packet.c:143,21'
          Dst:             ofpprop_parse_u32
        - Src:             'lib/ofp-packet.c:147,21'
          Dst:             ofpprop_parse_u8
        - Src:             'lib/ofp-packet.c:151,21'
          Dst:             ofpprop_parse_be64
        - Src:             'lib/ofp-packet.c:156,21'
          Dst:             ofpprop_parse_u8
        - Src:             'lib/ofp-packet.c:164,51'
          Dst:             ofpbuf_msgsize
        - Src:             'lib/ofp-packet.c:164,21'
          Dst:             oxm_decode_match
        - Src:             'lib/ofp-packet.c:172,33'
          Dst:             ofpbuf_msgsize
        - Src:             'lib/ofp-packet.c:177,25'
          Dst:             ofpprop_parse_nested
        - Src:             'lib/ofp-packet.c:182,21'
          Dst:             ofpprop_unknown
        - Src:             'lib/ofp-packet.c:191,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ofp-packet.c:196,9'
          Dst:             vlog_rate_limit
    - functionName:    ofputil_encode_resume
      functionSourceFile: '/src/openvswitch/lib/ofp-packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 763
      functionLinenumberEnd: 771
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          51
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpmsg_update_length
        - ofpprop_put_nested
        - ofpraw_alloc_xid
        - ofputil_protocol_to_ofp_version
        - ofputil_put_packet_in
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-packet.c:764,32'
          Dst:             ofputil_protocol_to_ofp_version
        - Src:             'lib/ofp-packet.c:766,26'
          Dst:             ofpraw_alloc_xid
        - Src:             'lib/ofp-packet.c:768,5'
          Dst:             ofputil_put_packet_in
        - Src:             'lib/ofp-packet.c:769,5'
          Dst:             ofpprop_put_nested
        - Src:             'lib/ofp-packet.c:770,5'
          Dst:             ofpmsg_update_length
    - functionName:    ofputil_packet_in_reason_from_string
      functionSourceFile: '/src/openvswitch/lib/ofp-packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 738
      functionLinenumberEnd: 753
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          57
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ofputil_packet_in_reason_to_string
        - strcasecmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-packet.c:745,20'
          Dst:             ofputil_packet_in_reason_to_string
        - Src:             'lib/ofp-packet.c:747,14'
          Dst:             strcasecmp
    - functionName:    ofputil_encode_nx_packet_in2
      functionSourceFile: '/src/openvswitch/lib/ofp-packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 571
      functionLinenumberEnd: 589
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          78
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
        - ofpmsg_update_length
        - ofpprop_put
        - ofpraw_alloc_xid
        - ofputil_put_packet_in_private
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-packet.c:580,43'
          Dst:             htonl
        - Src:             'lib/ofp-packet.c:579,26'
          Dst:             ofpraw_alloc_xid
        - Src:             'lib/ofp-packet.c:582,5'
          Dst:             ofputil_put_packet_in_private
        - Src:             'lib/ofp-packet.c:584,9'
          Dst:             ofpprop_put
        - Src:             'lib/ofp-packet.c:588,5'
          Dst:             ofpmsg_update_length
    - functionName:    ofputil_encode_nx_packet_in
      functionSourceFile: '/src/openvswitch/lib/ofp-packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 545
      functionLinenumberEnd: 565
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          81
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - encode_packet_in_reason
        - htonl
        - htons
        - nx_put_match
        - ofpbuf_put_zeros
        - ofpraw_alloc_xid
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-packet.c:552,28'
          Dst:             htonl
        - Src:             'lib/ofp-packet.c:551,11'
          Dst:             ofpraw_alloc_xid
        - Src:             'lib/ofp-packet.c:553,5'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-packet.c:554,17'
          Dst:             nx_put_match
        - Src:             'lib/ofp-packet.c:555,5'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-packet.c:558,22'
          Dst:             htonl
        - Src:             'lib/ofp-packet.c:559,22'
          Dst:             htons
        - Src:             'lib/ofp-packet.c:560,19'
          Dst:             encode_packet_in_reason
        - Src:             'lib/ofp-packet.c:563,22'
          Dst:             htons
    - functionName:    ofputil_encode_ofp12_packet_in
      functionSourceFile: '/src/openvswitch/lib/ofp-packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 615
      functionLinenumberEnd: 639
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          91
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - encode_packet_in_reason
        - htonl
        - htons
        - ofpbuf_put
        - ofpbuf_put_zeros
        - ofpraw_alloc_xid
        - oxm_put_match
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-packet.c:623,28'
          Dst:             htonl
        - Src:             'lib/ofp-packet.c:622,11'
          Dst:             ofpraw_alloc_xid
        - Src:             'lib/ofp-packet.c:625,35'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-packet.c:626,22'
          Dst:             htonl
        - Src:             'lib/ofp-packet.c:627,22'
          Dst:             htons
        - Src:             'lib/ofp-packet.c:628,19'
          Dst:             encode_packet_in_reason
        - Src:             'lib/ofp-packet.c:633,9'
          Dst:             ofpbuf_put
        - Src:             'lib/ofp-packet.c:636,5'
          Dst:             oxm_put_match
        - Src:             'lib/ofp-packet.c:637,5'
          Dst:             ofpbuf_put_zeros
    - functionName:    ofputil_encode_ofp11_packet_in
      functionSourceFile: '/src/openvswitch/lib/ofp-packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 594
      functionLinenumberEnd: 609
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          66
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - encode_packet_in_reason
        - htonl
        - htons
        - ofpbuf_put_zeros
        - ofpraw_alloc_xid
        - ofputil_port_to_ofp11
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-packet.c:599,28'
          Dst:             htonl
        - Src:             'lib/ofp-packet.c:598,11'
          Dst:             ofpraw_alloc_xid
        - Src:             'lib/ofp-packet.c:600,11'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-packet.c:601,22'
          Dst:             htonl
        - Src:             'lib/ofp-packet.c:602,20'
          Dst:             ofputil_port_to_ofp11
        - Src:             'lib/ofp-packet.c:605,22'
          Dst:             htons
        - Src:             'lib/ofp-packet.c:606,19'
          Dst:             encode_packet_in_reason
    - functionName:    ofputil_encode_ofp10_packet_in
      functionSourceFile: '/src/openvswitch/lib/ofp-packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 527
      functionLinenumberEnd: 539
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          55
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - encode_packet_in_reason
        - htonl
        - htons
        - ofp_to_u16
        - ofpbuf_put_zeros
        - ofpraw_alloc_xid
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-packet.c:532,28'
          Dst:             htonl
        - Src:             'lib/ofp-packet.c:531,11'
          Dst:             ofpraw_alloc_xid
        - Src:             'lib/ofp-packet.c:533,11'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ofp-packet.c:534,22'
          Dst:             htons
        - Src:             'lib/ofp-packet.c:535,26'
          Dst:             ofp_to_u16
        - Src:             'lib/ofp-packet.c:535,20'
          Dst:             htons
        - Src:             'lib/ofp-packet.c:536,19'
          Dst:             encode_packet_in_reason
        - Src:             'lib/ofp-packet.c:537,22'
          Dst:             htonl
    - functionName:    ofputil_encode_packet_in_private
      functionSourceFile: '/src/openvswitch/lib/ofp-packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 657
      functionLinenumberEnd: 702
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          130
      EdgeCount:       40
      CyclomaticComplexity: 20
      functionsReached:
        - abort
        - ofpbuf_put
        - ofpmsg_update_length
        - ofputil_encode_nx_packet_in
        - ofputil_encode_nx_packet_in2
        - ofputil_encode_ofp10_packet_in
        - ofputil_encode_ofp11_packet_in
        - ofputil_encode_ofp12_packet_in
        - ofputil_protocol_to_ofp_version
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib/ofp-packet.c:661,5'
          Branch Sides:    []
        - Branch String:   'lib/ofp-packet.c:663,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-packet.c:658,32'
          Dst:             ofputil_protocol_to_ofp_version
        - Src:             'lib/ofp-packet.c:668,19'
          Dst:             ofputil_encode_ofp10_packet_in
        - Src:             'lib/ofp-packet.c:672,19'
          Dst:             ofputil_encode_ofp11_packet_in
        - Src:             'lib/ofp-packet.c:679,19'
          Dst:             ofputil_encode_ofp12_packet_in
        - Src:             'lib/ofp-packet.c:683,13'
          Dst:             abort
        - Src:             'lib/ofp-packet.c:688,15'
          Dst:             ofputil_encode_nx_packet_in
        - Src:             'lib/ofp-packet.c:692,16'
          Dst:             ofputil_encode_nx_packet_in2
        - Src:             'lib/ofp-packet.c:696,9'
          Dst:             abort
        - Src:             'lib/ofp-packet.c:699,5'
          Dst:             ofpbuf_put
        - Src:             'lib/ofp-packet.c:700,5'
          Dst:             ofpmsg_update_length
    - functionName:    ofputil_decode_set_packet_in_format
      functionSourceFile: '/src/openvswitch/lib/ofp-packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 81
      functionLinenumberEnd: 99
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          83
      EdgeCount:       14
      CyclomaticComplexity: 2
      functionsReached:
        - ntohl
        - ntohs
        - ofpbuf_const_initializer
        - ofpbuf_pull
        - ofpraw_pull_assert
        - ovs_ignore
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-packet.c:87,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-packet.c:82,52'
          Dst:             ntohs
        - Src:             'lib/ofp-packet.c:82,23'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/ofp-packet.c:83,16'
          Dst:             ofpraw_pull_assert
        - Src:             'lib/ofp-packet.c:83,5'
          Dst:             ovs_ignore
        - Src:             'lib/ofp-packet.c:84,23'
          Dst:             ofpbuf_pull
        - Src:             'lib/ofp-packet.c:85,21'
          Dst:             ntohl
        - Src:             'lib/ofp-packet.c:95,9'
          Dst:             vlog_rate_limit
    - functionName:    ofputil_encode_set_packet_in_format
      functionSourceFile: '/src/openvswitch/lib/ofp-packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 69
      functionLinenumberEnd: 75
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
        - ofpbuf_put_uninit
        - ofpraw_alloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-packet.c:70,26'
          Dst:             ofpraw_alloc
        - Src:             'lib/ofp-packet.c:72,22'
          Dst:             ofpbuf_put_uninit
        - Src:             'lib/ofp-packet.c:73,13'
          Dst:             htonl
    - functionName:    ofputil_packet_in_format_from_string
      functionSourceFile: '/src/openvswitch/lib/ofp-packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56
      functionLinenumberEnd: 61
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          65
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - strcmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-packet.c:57,14'
          Dst:             strcmp
        - Src:             'lib/ofp-packet.c:57,40'
          Dst:             strcmp
        - Src:             'lib/ofp-packet.c:59,16'
          Dst:             strcmp
        - Src:             'lib/ofp-packet.c:59,47'
          Dst:             strcmp
        - Src:             'lib/ofp-packet.c:61,16'
          Dst:             strcmp
    - functionName:    ofputil_packet_in_format_to_string
      functionSourceFile: '/src/openvswitch/lib/ofp-packet.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          39
      EdgeCount:       14
      CyclomaticComplexity: 8
      functionsReached:
        - abort
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ofp-packet.c:42,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-packet.c:50,9'
          Dst:             abort
    - functionName:    parse_value
      functionSourceFile: '/src/openvswitch/lib/ofp-parse.c'
      linkageType:     InternalLinkage
      functionLinenumber: 252
      functionLinenumberEnd: 280
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          102
      EdgeCount:       21
      CyclomaticComplexity: 4
      functionsReached:
        - strchr
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/ofp-parse.c:263,17'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ofp-parse.c:259,13'
          Dst:             strchr
    - functionName:    ofputil_parse_key_value
      functionSourceFile: '/src/openvswitch/lib/ofp-parse.c'
      linkageType:     InternalLinkage
      functionLinenumber: 294
      functionLinenumberEnd: 351
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          221
      EdgeCount:       32
      CyclomaticComplexity: 10
      functionsReached:
        - parse_value
        - strcspn
        - strspn
      functionUses:    24
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-parse.c:297,17'
          Dst:             strspn
        - Src:             'lib/ofp-parse.c:306,22'
          Dst:             strcspn
        - Src:             'lib/ofp-parse.c:333,24'
          Dst:             parse_value
        - Src:             'lib/ofp-parse.c:342,22'
          Dst:             parse_value
    - functionName:    ofp_extract_actions
      functionSourceFile: '/src/openvswitch/lib/ofp-parse.c'
      linkageType:     InternalLinkage
      functionLinenumber: 239
      functionLinenumberEnd: 248
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          48
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - strchr
        - strstr
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-parse.c:240,9'
          Dst:             strstr
        - Src:             'lib/ofp-parse.c:243,13'
          Dst:             strchr
    - functionName:    ofp_parse_field
      functionSourceFile: '/src/openvswitch/lib/ofp-parse.c'
      linkageType:     InternalLinkage
      functionLinenumber: 219
      functionLinenumberEnd: 234
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          65
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - match_add_ethernet_prereq
        - mf_parse
        - mf_set
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-parse.c:229,13'
          Dst:             mf_parse
        - Src:             'lib/ofp-parse.c:231,30'
          Dst:             mf_set
        - Src:             'lib/ofp-parse.c:232,9'
          Dst:             match_add_ethernet_prereq
    - functionName:    ofp_parse_protocol
      functionSourceFile: '/src/openvswitch/lib/ofp-parse.c'
      linkageType:     InternalLinkage
      functionLinenumber: 177
      functionLinenumberEnd: 207
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          54
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - strcmp
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-parse.c:200,14'
          Dst:             strcmp
    - functionName:    str_to_connhelper
      functionSourceFile: '/src/openvswitch/lib/ofp-parse.c'
      linkageType:     InternalLinkage
      functionLinenumber: 163
      functionLinenumberEnd: 173
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          48
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - strcmp
        - xasprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-parse.c:164,10'
          Dst:             strcmp
        - Src:             'lib/ofp-parse.c:168,10'
          Dst:             strcmp
        - Src:             'lib/ofp-parse.c:172,12'
          Dst:             xasprintf
    - functionName:    str_to_ip
      functionSourceFile: '/src/openvswitch/lib/ofp-parse.c'
      linkageType:     InternalLinkage
      functionLinenumber: 147
      functionLinenumberEnd: 155
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - lookup_ip
        - xasprintf
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-parse.c:150,9'
          Dst:             lookup_ip
        - Src:             'lib/ofp-parse.c:151,16'
          Dst:             xasprintf
    - functionName:    str_to_mac
      functionSourceFile: '/src/openvswitch/lib/ofp-parse.c'
      linkageType:     InternalLinkage
      functionLinenumber: 134
      functionLinenumberEnd: 139
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_scan
        - xasprintf
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-parse.c:135,10'
          Dst:             ovs_scan
        - Src:             'lib/ofp-parse.c:136,16'
          Dst:             xasprintf
    - functionName:    htonll
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 30
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byte-order.h:30,12'
          Dst:             htonl
        - Src:             'lib/byte-order.h:30,44'
          Dst:             htonl
        - Src:             'lib/byte-order.h:30,62'
          Dst:             htonl
    - functionName:    str_to_be64
      functionSourceFile: '/src/openvswitch/lib/ofp-parse.c'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 125
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonll
        - str_to_u64
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-parse.c:121,13'
          Dst:             str_to_u64
        - Src:             'lib/ofp-parse.c:123,19'
          Dst:             htonll
    - functionName:    str_to_u64
      functionSourceFile: '/src/openvswitch/lib/ofp-parse.c'
      linkageType:     InternalLinkage
      functionLinenumber: 93
      functionLinenumberEnd: 108
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          76
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - __errno_location
        - strtoull
        - xasprintf
        - xstrdup
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-parse.c:98,16'
          Dst:             xstrdup
        - Src:             'lib/ofp-parse.c:101,5'
          Dst:             __errno_location
        - Src:             'lib/ofp-parse.c:102,13'
          Dst:             strtoull
        - Src:             'lib/ofp-parse.c:103,9'
          Dst:             __errno_location
        - Src:             'lib/ofp-parse.c:103,28'
          Dst:             __errno_location
        - Src:             'lib/ofp-parse.c:104,16'
          Dst:             xasprintf
    - functionName:    str_to_u32
      functionSourceFile: '/src/openvswitch/lib/ofp-parse.c'
      linkageType:     InternalLinkage
      functionLinenumber: 73
      functionLinenumberEnd: 85
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          58
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - str_to_ullong
        - xasprintf
        - xstrdup
      functionUses:    18
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-parse.c:77,16'
          Dst:             xstrdup
        - Src:             'lib/ofp-parse.c:80,10'
          Dst:             str_to_ullong
        - Src:             'lib/ofp-parse.c:81,16'
          Dst:             xasprintf
    - functionName:    str_to_u16
      functionSourceFile: '/src/openvswitch/lib/ofp-parse.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 65
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          57
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - str_to_int
        - xasprintf
      functionUses:    25
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-parse.c:60,10'
          Dst:             str_to_int
        - Src:             'lib/ofp-parse.c:61,16'
          Dst:             xasprintf
    - functionName:    str_to_u8
      functionSourceFile: '/src/openvswitch/lib/ofp-parse.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 47
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          57
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - str_to_int
        - xasprintf
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ofp-parse.c:42,10'
          Dst:             str_to_int
        - Src:             'lib/ofp-parse.c:43,16'
          Dst:             xasprintf
    - functionName:    init_this_module_ovs_replay
      functionSourceFile: '/src/openvswitch/lib/ovs-replay.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 31
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-replay.c:31,1'
          Dst:             vlog_insert_module
    - functionName:    ovs_replay_usage
      functionSourceFile: '/src/openvswitch/lib/ovs-replay.c'
      linkageType:     InternalLinkage
      functionLinenumber: 239
      functionLinenumberEnd: 243
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - printf
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-replay.c:240,5'
          Dst:             printf
    - functionName:    ovs_replay_read
      functionSourceFile: '/src/openvswitch/lib/ovs-replay.c'
      linkageType:     InternalLinkage
      functionLinenumber: 203
      functionLinenumberEnd: 234
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         43
      ICount:          203
      EdgeCount:       55
      CyclomaticComplexity: 14
      functionsReached:
        - ferror
        - fread
        - vlog
        - vlog_rate_limit
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-replay.c:206,9'
          Dst:             fread
        - Src:             'lib/ovs-replay.c:207,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ovs-replay.c:212,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ovs-replay.c:218,32'
          Dst:             fread
        - Src:             'lib/ovs-replay.c:219,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ovs-replay.c:223,9'
          Dst:             fread
        - Src:             'lib/ovs-replay.c:225,13'
          Dst:             ferror
        - Src:             'lib/ovs-replay.c:226,13'
          Dst:             vlog
    - functionName:    ovs_replay_write
      functionSourceFile: '/src/openvswitch/lib/ovs-replay.c'
      linkageType:     InternalLinkage
      functionLinenumber: 166
      functionLinenumberEnd: 197
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         36
      ICount:          181
      EdgeCount:       46
      CyclomaticComplexity: 12
      functionsReached:
        - fflush
        - fwrite
        - ovs_replay_get_state
        - ovs_replay_lock
        - ovs_replay_unlock
        - vlog_rate_limit
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-replay.c:167,17'
          Dst:             ovs_replay_get_state
        - Src:             'lib/ovs-replay.c:175,5'
          Dst:             ovs_replay_lock
        - Src:             'lib/ovs-replay.c:178,9'
          Dst:             fwrite
        - Src:             'lib/ovs-replay.c:179,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ovs-replay.c:183,9'
          Dst:             fwrite
        - Src:             'lib/ovs-replay.c:184,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ovs-replay.c:188,29'
          Dst:             fwrite
        - Src:             'lib/ovs-replay.c:189,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ovs-replay.c:194,5'
          Dst:             ovs_replay_unlock
        - Src:             'lib/ovs-replay.c:195,5'
          Dst:             fflush
    - functionName:    ovs_replay_get_state
      functionSourceFile: '/src/openvswitch/lib/ovs-replay.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 53
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    11
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_replay_lock
      functionSourceFile: '/src/openvswitch/lib/ovs-replay.c'
      linkageType:     InternalLinkage
      functionLinenumber: 68
      functionLinenumberEnd: 70
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_mutex_lock_at
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-replay.c:69,5'
          Dst:             ovs_mutex_lock_at
    - 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:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_replay_unlock
      functionSourceFile: '/src/openvswitch/lib/ovs-replay.c'
      linkageType:     InternalLinkage
      functionLinenumber: 75
      functionLinenumberEnd: 77
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_mutex_unlock
      functionUses:    14
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-replay.c:76,5'
          Dst:             ovs_mutex_unlock
    - functionName:    ovs_replay_file_close
      functionSourceFile: '/src/openvswitch/lib/ovs-replay.c'
      linkageType:     InternalLinkage
      functionLinenumber: 159
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - fclose
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-replay.c:160,5'
          Dst:             fclose
    - functionName:    ovs_replay_file_name
      functionSourceFile: '/src/openvswitch/lib/ovs-replay.c'
      linkageType:     InternalLinkage
      functionLinenumber: 88
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         24
      ICount:          143
      EdgeCount:       30
      CyclomaticComplexity: 8
      functionsReached:
        - __ctype_b_loc
        - vlog
        - xasprintf
        - xstrdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-replay.c:89,24'
          Dst:             xstrdup
        - Src:             'lib/ovs-replay.c:99,15'
          Dst:             __ctype_b_loc
        - Src:             'lib/ovs-replay.c:113,16'
          Dst:             xasprintf
        - Src:             'lib/ovs-replay.c:115,5'
          Dst:             vlog
    - functionName:    ovs_replay_file_open
      functionSourceFile: '/src/openvswitch/lib/ovs-replay.c'
      linkageType:     InternalLinkage
      functionLinenumber: 125
      functionLinenumberEnd: 155
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          152
      EdgeCount:       30
      CyclomaticComplexity: 8
      functionsReached:
        - __errno_location
        - abs_file_name
        - fopen
        - fread
        - ovs_ignore
        - ovs_replay_file_name
        - ovs_replay_get_state
        - ovs_rundir
        - ovs_strerror
        - vlog
        - vlog_rate_limit
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-replay.c:127,17'
          Dst:             ovs_replay_get_state
        - Src:             'lib/ovs-replay.c:129,5'
          Dst:             ovs_ignore
        - Src:             'lib/ovs-replay.c:131,16'
          Dst:             ovs_replay_file_name
        - Src:             'lib/ovs-replay.c:133,35'
          Dst:             ovs_rundir
        - Src:             'lib/ovs-replay.c:133,21'
          Dst:             abs_file_name
        - Src:             'lib/ovs-replay.c:139,10'
          Dst:             fopen
        - Src:             'lib/ovs-replay.c:141,9'
          Dst:             __errno_location
        - Src:             'lib/ovs-replay.c:141,9'
          Dst:             ovs_strerror
        - Src:             'lib/ovs-replay.c:141,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ovs-replay.c:144,16'
          Dst:             __errno_location
        - Src:             'lib/ovs-replay.c:149,12'
          Dst:             fread
        - Src:             'lib/ovs-replay.c:150,9'
          Dst:             vlog
    - functionName:    ovs_replay_seqno
      functionSourceFile: '/src/openvswitch/lib/ovs-replay.c'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 83
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_replay_set_dirname
      functionSourceFile: '/src/openvswitch/lib/ovs-replay.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58
      functionLinenumberEnd: 63
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - xstrdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-replay.c:61,19'
          Dst:             xstrdup
    - functionName:    ovs_replay_set_state
      functionSourceFile: '/src/openvswitch/lib/ovs-replay.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    init_this_module_ox_stat
      functionSourceFile: '/src/openvswitch/lib/ox-stat.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26
      functionLinenumberEnd: 26
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ox-stat.c:26,1'
          Dst:             vlog_insert_module
    - functionName:    oxs_put__
      functionSourceFile: '/src/openvswitch/lib/ox-stat.c'
      linkageType:     InternalLinkage
      functionLinenumber: 286
      functionLinenumberEnd: 297
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          55
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
        - htonll
        - is_experimenter_oxs
        - ofpbuf_put
        - ovs_ignore
        - oxs_payload_len
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ox-stat.c:287,9'
          Dst:             is_experimenter_oxs
        - Src:             'lib/ox-stat.c:288,25'
          Dst:             htonll
        - Src:             'lib/ox-stat.c:289,9'
          Dst:             ofpbuf_put
        - Src:             'lib/ox-stat.c:291,25'
          Dst:             htonl
        - Src:             'lib/ox-stat.c:292,9'
          Dst:             ofpbuf_put
        - Src:             'lib/ox-stat.c:295,16'
          Dst:             oxs_payload_len
        - Src:             'lib/ox-stat.c:295,5'
          Dst:             ovs_ignore
        - Src:             'lib/ox-stat.c:296,5'
          Dst:             ofpbuf_put
    - functionName:    is_experimenter_oxs
      functionSourceFile: '/src/openvswitch/lib/ox-stat.c'
      linkageType:     InternalLinkage
      functionLinenumber: 83
      functionLinenumberEnd: 84
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - oxs_class
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ox-stat.c:84,12'
          Dst:             oxs_class
    - functionName:    htonll
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 30
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byte-order.h:30,12'
          Dst:             htonl
        - Src:             'lib/byte-order.h:30,44'
          Dst:             htonl
        - Src:             'lib/byte-order.h:30,62'
          Dst:             htonl
    - functionName:    oxs_payload_len
      functionSourceFile: '/src/openvswitch/lib/ox-stat.c'
      linkageType:     InternalLinkage
      functionLinenumber: 110
      functionLinenumberEnd: 111
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - oxs_experimenter_len
        - oxs_length
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ox-stat.c:111,12'
          Dst:             oxs_length
        - Src:             'lib/ox-stat.c:111,33'
          Dst:             oxs_experimenter_len
    - functionName:    oxs_length
      functionSourceFile: '/src/openvswitch/lib/ox-stat.c'
      linkageType:     InternalLinkage
      functionLinenumber: 79
      functionLinenumberEnd: 79
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    oxs_experimenter_len
      functionSourceFile: '/src/openvswitch/lib/ox-stat.c'
      linkageType:     InternalLinkage
      functionLinenumber: 102
      functionLinenumberEnd: 103
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - is_experimenter_oxs
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ox-stat.c:103,12'
          Dst:             is_experimenter_oxs
    - functionName:    oxs_class
      functionSourceFile: '/src/openvswitch/lib/ox-stat.c'
      linkageType:     InternalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 77
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    unaligned_be32
      functionSourceFile: '/src/openvswitch/lib/unaligned.h'
      linkageType:     InternalLinkage
      functionLinenumber: 90
      functionLinenumberEnd: 90
      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:    unaligned_be64
      functionSourceFile: '/src/openvswitch/lib/unaligned.h'
      linkageType:     InternalLinkage
      functionLinenumber: 91
      functionLinenumberEnd: 91
      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:    oxs_header_len
      functionSourceFile: '/src/openvswitch/lib/ox-stat.c'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - oxs_experimenter_len
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ox-stat.c:119,16'
          Dst:             oxs_experimenter_len
    - functionName:    oxs_experimenter
      functionSourceFile: '/src/openvswitch/lib/ox-stat.c'
      linkageType:     InternalLinkage
      functionLinenumber: 76
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    oxs_field
      functionSourceFile: '/src/openvswitch/lib/ox-stat.c'
      linkageType:     InternalLinkage
      functionLinenumber: 78
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_unaligned_be32
      functionSourceFile: '/src/openvswitch/lib/unaligned.h'
      linkageType:     InternalLinkage
      functionLinenumber: 90
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - unaligned_be32
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/unaligned.h:90,1'
          Dst:             unaligned_be32
    - functionName:    get_unaligned_be64
      functionSourceFile: '/src/openvswitch/lib/unaligned.h'
      linkageType:     InternalLinkage
      functionLinenumber: 91
      functionLinenumberEnd: 91
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - unaligned_be64
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/unaligned.h:91,1'
          Dst:             unaligned_be64
    - functionName:    ntohll
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
        - ntohl
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byte-order.h:36,12'
          Dst:             htonl
        - Src:             'lib/byte-order.h:36,44'
          Dst:             ntohl
        - Src:             'lib/byte-order.h:36,62'
          Dst:             ntohl
    - functionName:    oxs_pull_header__
      functionSourceFile: '/src/openvswitch/lib/ox-stat.c'
      linkageType:     InternalLinkage
      functionLinenumber: 154
      functionLinenumberEnd: 183
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         25
      ICount:          156
      EdgeCount:       31
      CyclomaticComplexity: 8
      functionsReached:
        - get_unaligned_be32
        - get_unaligned_be64
        - is_experimenter_oxs
        - ntohl
        - ntohll
        - ofpbuf_pull
        - oxs_class
        - oxs_experimenter
        - oxs_experimenter_len
        - oxs_field
        - oxs_header_len
        - oxs_length
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ox-stat.c:159,33'
          Dst:             get_unaligned_be32
        - Src:             'lib/ox-stat.c:159,27'
          Dst:             ntohl
        - Src:             'lib/ox-stat.c:160,9'
          Dst:             is_experimenter_oxs
        - Src:             'lib/ox-stat.c:164,26'
          Dst:             get_unaligned_be64
        - Src:             'lib/ox-stat.c:164,19'
          Dst:             ntohll
        - Src:             'lib/ox-stat.c:166,9'
          Dst:             oxs_length
        - Src:             'lib/ox-stat.c:166,31'
          Dst:             oxs_experimenter_len
        - Src:             'lib/ox-stat.c:167,9'
          Dst:             oxs_experimenter
        - Src:             'lib/ox-stat.c:167,9'
          Dst:             oxs_class
        - Src:             'lib/ox-stat.c:167,9'
          Dst:             oxs_field
        - Src:             'lib/ox-stat.c:167,9'
          Dst:             oxs_length
        - Src:             'lib/ox-stat.c:167,9'
          Dst:             oxs_length
        - Src:             'lib/ox-stat.c:167,9'
          Dst:             oxs_header_len
        - Src:             'lib/ox-stat.c:167,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ox-stat.c:173,20'
          Dst:             oxs_header_len
        - Src:             'lib/ox-stat.c:173,5'
          Dst:             ofpbuf_pull
        - Src:             'lib/ox-stat.c:178,5'
          Dst:             vlog_rate_limit
    - functionName:    ofpbuf_pull
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 258
      functionLinenumberEnd: 269
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          64
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:259,5'
          Dst:             ovs_ignore
    - functionName:    oxs_pull_entry__
      functionSourceFile: '/src/openvswitch/lib/ox-stat.c'
      linkageType:     InternalLinkage
      functionLinenumber: 188
      functionLinenumberEnd: 231
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          164
      EdgeCount:       26
      CyclomaticComplexity: 6
      functionsReached:
        - get_unaligned_be32
        - get_unaligned_be64
        - ntohl
        - ntohll
        - ofpbuf_try_pull
        - oxs_class
        - oxs_field
        - oxs_payload_len
        - oxs_pull_header__
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ox-stat.c:201,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ox-stat.c:190,25'
          Dst:             oxs_pull_header__
        - Src:             'lib/ox-stat.c:195,32'
          Dst:             oxs_payload_len
        - Src:             'lib/ox-stat.c:196,27'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/ox-stat.c:203,36'
          Dst:             get_unaligned_be64
        - Src:             'lib/ox-stat.c:203,29'
          Dst:             ntohll
        - Src:             'lib/ox-stat.c:209,34'
          Dst:             get_unaligned_be64
        - Src:             'lib/ox-stat.c:209,27'
          Dst:             ntohll
        - Src:             'lib/ox-stat.c:212,38'
          Dst:             get_unaligned_be64
        - Src:             'lib/ox-stat.c:212,31'
          Dst:             ntohll
        - Src:             'lib/ox-stat.c:215,36'
          Dst:             get_unaligned_be64
        - Src:             'lib/ox-stat.c:215,29'
          Dst:             ntohll
        - Src:             'lib/ox-stat.c:218,35'
          Dst:             get_unaligned_be32
        - Src:             'lib/ox-stat.c:218,29'
          Dst:             ntohl
        - Src:             'lib/ox-stat.c:226,12'
          Dst:             oxs_class
        - Src:             'lib/ox-stat.c:227,12'
          Dst:             oxs_field
        - Src:             'lib/ox-stat.c:228,32'
          Dst:             oxs_field
    - functionName:    ofpbuf_try_pull
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 275
      functionLinenumberEnd: 276
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofpbuf_pull
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:276,30'
          Dst:             ofpbuf_pull
    - functionName:    ofpbuf_const_initializer
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 97
      functionLinenumberEnd: 105
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          30
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofpbuf_at
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 183
      functionLinenumberEnd: 189
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:185,9'
          Dst:             ovs_ignore
    - functionName:    oxs_put32
      functionSourceFile: '/src/openvswitch/lib/ox-stat.c'
      linkageType:     InternalLinkage
      functionLinenumber: 301
      functionLinenumberEnd: 304
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
        - oxs_put__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ox-stat.c:302,22'
          Dst:             htonl
        - Src:             'lib/ox-stat.c:303,5'
          Dst:             oxs_put__
    - functionName:    oxs_put64
      functionSourceFile: '/src/openvswitch/lib/ox-stat.c'
      linkageType:     InternalLinkage
      functionLinenumber: 308
      functionLinenumberEnd: 311
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonll
        - oxs_put__
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ox-stat.c:309,22'
          Dst:             htonll
        - Src:             'lib/ox-stat.c:310,5'
          Dst:             oxs_put__
    - functionName:    oxs_put_stats
      functionSourceFile: '/src/openvswitch/lib/ox-stat.c'
      linkageType:     InternalLinkage
      functionLinenumber: 325
      functionLinenumberEnd: 355
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          161
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - htons
        - ofpbuf_at
        - ofpbuf_put_zeros
        - oxs_put32
        - oxs_put64
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ox-stat.c:330,5'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/ox-stat.c:334,9'
          Dst:             oxs_put64
        - Src:             'lib/ox-stat.c:339,9'
          Dst:             oxs_put64
        - Src:             'lib/ox-stat.c:342,9'
          Dst:             oxs_put64
        - Src:             'lib/ox-stat.c:345,9'
          Dst:             oxs_put64
        - Src:             'lib/ox-stat.c:348,9'
          Dst:             oxs_put32
        - Src:             'lib/ox-stat.c:352,11'
          Dst:             ofpbuf_at
        - Src:             'lib/ox-stat.c:353,19'
          Dst:             htons
        - Src:             'lib/ox-stat.c:354,5'
          Dst:             ofpbuf_put_zeros
    - functionName:    oxs_pull_raw
      functionSourceFile: '/src/openvswitch/lib/ox-stat.c'
      linkageType:     InternalLinkage
      functionLinenumber: 236
      functionLinenumberEnd: 249
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          94
      EdgeCount:       21
      CyclomaticComplexity: 6
      functionsReached:
        - ofpbuf_const_initializer
        - ofperr_to_string
        - oxs_pull_entry__
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ox-stat.c:237,23'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/ox-stat.c:240,29'
          Dst:             oxs_pull_entry__
        - Src:             'lib/ox-stat.c:242,13'
          Dst:             ofperr_to_string
        - Src:             'lib/ox-stat.c:242,13'
          Dst:             vlog_rate_limit
    - functionName:    oxs_pull_stat
      functionSourceFile: '/src/openvswitch/lib/ox-stat.c'
      linkageType:     InternalLinkage
      functionLinenumber: 258
      functionLinenumberEnd: 281
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          120
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - ntohs
        - ofpbuf_try_pull
        - oxs_pull_raw
        - vlog_rate_limit
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ox-stat.c:266,25'
          Dst:             ntohs
        - Src:             'lib/ox-stat.c:271,18'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/ox-stat.c:273,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ox-stat.c:279,12'
          Dst:             oxs_pull_raw
    - functionName:    init_this_module_pcap
      functionSourceFile: '/src/openvswitch/lib/pcap-file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 35
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/pcap-file.c:35,1'
          Dst:             vlog_insert_module
    - functionName:    dp_packet_reset_outer_offsets
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 413
      functionLinenumberEnd: 418
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_reset_offload
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1069
      functionLinenumberEnd: 1072
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_reset_offsets
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 424
      functionLinenumberEnd: 428
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_reset_outer_offsets
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:425,5'
          Dst:             dp_packet_reset_outer_offsets
    - functionName:    hmap_insert_fast
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 289
      functionLinenumberEnd: 295
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          38
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_insert_at
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 306
      functionLinenumberEnd: 311
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_expand_at
        - hmap_insert_fast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:307,5'
          Dst:             hmap_insert_fast
        - Src:             './include/openvswitch/hmap.h:309,9'
          Dst:             hmap_expand_at
    - functionName:    hmap_next_with_hash__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 348
      functionLinenumberEnd: 352
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          40
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_next_with_hash
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 395
      functionLinenumberEnd: 396
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next_with_hash__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:396,12'
          Dst:             hmap_next_with_hash__
    - functionName:    hmap_first_with_hash
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 360
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next_with_hash__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:360,12'
          Dst:             hmap_next_with_hash__
    - functionName:    dp_packet_tail
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 326
      functionLinenumberEnd: 327
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_data
        - dp_packet_size
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:327,21'
          Dst:             dp_packet_data
        - Src:             'lib/dp-packet.h:327,41'
          Dst:             dp_packet_size
    - functionName:    dp_packet_data
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 845
      functionLinenumberEnd: 847
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __packet_data
        - dp_packet_base
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:846,12'
          Dst:             __packet_data
        - Src:             'lib/dp-packet.h:847,23'
          Dst:             dp_packet_base
        - Src:             'lib/dp-packet.h:847,43'
          Dst:             __packet_data
    - functionName:    dp_packet_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 762
      functionLinenumberEnd: 763
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __packet_data
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 774
      functionLinenumberEnd: 775
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_base
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 750
      functionLinenumberEnd: 751
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_l4_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 502
      functionLinenumberEnd: 505
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_l2_pad_size
        - dp_packet_l4
        - dp_packet_tail
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:504,25'
          Dst:             dp_packet_tail
        - Src:             'lib/dp-packet.h:504,59'
          Dst:             dp_packet_l4
        - Src:             'lib/dp-packet.h:505,11'
          Dst:             dp_packet_l2_pad_size
    - functionName:    dp_packet_l4
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 475
      functionLinenumberEnd: 477
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_data
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:477,23'
          Dst:             dp_packet_data
    - functionName:    dp_packet_l2_pad_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 432
      functionLinenumberEnd: 433
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_remove
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 317
      functionLinenumberEnd: 324
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          48
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_next__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 401
      functionLinenumberEnd: 410
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          51
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __packet_set_data
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 780
      functionLinenumberEnd: 782
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_set_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 768
      functionLinenumberEnd: 770
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_set_data
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 852
      functionLinenumberEnd: 858
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __packet_set_data
        - dp_packet_base
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:854,55'
          Dst:             dp_packet_base
        - Src:             'lib/dp-packet.h:854,9'
          Dst:             __packet_set_data
        - Src:             'lib/dp-packet.h:856,9'
          Dst:             __packet_set_data
    - functionName:    free_afxdp_buf
      functionSourceFile: '/src/openvswitch/lib/netdev-afxdp.h'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 84
      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:    free_dpdk_buf
      functionSourceFile: '/src/openvswitch/lib/netdev-dpdk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 76
      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:    dp_packet_clear
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 364
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_base
        - dp_packet_reset_offload
        - dp_packet_reset_offsets
        - dp_packet_set_data
        - dp_packet_set_size
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:360,27'
          Dst:             dp_packet_base
        - Src:             'lib/dp-packet.h:360,5'
          Dst:             dp_packet_set_data
        - Src:             'lib/dp-packet.h:361,5'
          Dst:             dp_packet_set_size
        - Src:             'lib/dp-packet.h:362,5'
          Dst:             dp_packet_reset_offsets
        - Src:             'lib/dp-packet.h:363,5'
          Dst:             dp_packet_reset_offload
    - functionName:    tcp_stream_new
      functionSourceFile: '/src/openvswitch/lib/pcap-file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 374
      functionLinenumberEnd: 382
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          38
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_init
        - hmap_insert_at
        - xmalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/pcap-file.c:377,14'
          Dst:             xmalloc
        - Src:             'lib/pcap-file.c:378,5'
          Dst:             hmap_insert_at
        - Src:             'lib/pcap-file.c:381,5'
          Dst:             dp_packet_init
    - functionName:    tcp_stream_lookup
      functionSourceFile: '/src/openvswitch/lib/pcap-file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 361
      functionLinenumberEnd: 370
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          73
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_first_with_hash
        - hmap_next_with_hash
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/pcap-file.c:364,5'
          Dst:             hmap_first_with_hash
        - Src:             'lib/pcap-file.c:365,14'
          Dst:             memcmp
        - Src:             'lib/pcap-file.c:364,5'
          Dst:             hmap_next_with_hash
    - functionName:    get_16aligned_be32
      functionSourceFile: '/src/openvswitch/lib/unaligned.h'
      linkageType:     InternalLinkage
      functionLinenumber: 246
      functionLinenumberEnd: 250
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_get_tcp_payload_length
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 579
      functionLinenumberEnd: 587
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_get_tcp_payload
        - dp_packet_l2_pad_size
        - dp_packet_tail
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:580,31'
          Dst:             dp_packet_get_tcp_payload
        - Src:             'lib/dp-packet.h:582,26'
          Dst:             dp_packet_tail
        - Src:             'lib/dp-packet.h:582,48'
          Dst:             dp_packet_l2_pad_size
    - functionName:    dp_packet_get_tcp_payload
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 547
      functionLinenumberEnd: 559
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          86
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - dp_packet_l4
        - dp_packet_l4_size
        - ntohs
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:548,22'
          Dst:             dp_packet_l4_size
        - Src:             'lib/dp-packet.h:551,34'
          Dst:             dp_packet_l4
        - Src:             'lib/dp-packet.h:552,23'
          Dst:             ntohs
    - functionName:    tcp_reader_run
      functionSourceFile: '/src/openvswitch/lib/pcap-file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 399
      functionLinenumberEnd: 459
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         32
      ICount:          255
      EdgeCount:       43
      CyclomaticComplexity: 13
      functionsReached:
        - dp_packet_base
        - dp_packet_clear
        - dp_packet_data
        - dp_packet_get_tcp_payload
        - dp_packet_get_tcp_payload_length
        - dp_packet_l4
        - dp_packet_put
        - dp_packet_shift
        - get_16aligned_be32
        - hash_bytes
        - htons
        - ntohl
        - ntohs
        - tcp_stream_destroy
        - tcp_stream_lookup
        - tcp_stream_new
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/pcap-file.c:408,22'
          Dst:             dp_packet_get_tcp_payload
        - Src:             'lib/pcap-file.c:410,26'
          Dst:             htons
        - Src:             'lib/pcap-file.c:415,11'
          Dst:             dp_packet_l4
        - Src:             'lib/pcap-file.c:416,13'
          Dst:             ntohs
        - Src:             'lib/pcap-file.c:417,17'
          Dst:             dp_packet_get_tcp_payload_length
        - Src:             'lib/pcap-file.c:418,17'
          Dst:             get_16aligned_be32
        - Src:             'lib/pcap-file.c:418,11'
          Dst:             ntohl
        - Src:             'lib/pcap-file.c:426,12'
          Dst:             hash_bytes
        - Src:             'lib/pcap-file.c:429,14'
          Dst:             tcp_stream_lookup
        - Src:             'lib/pcap-file.c:432,22'
          Dst:             tcp_stream_new
        - Src:             'lib/pcap-file.c:441,9'
          Dst:             dp_packet_clear
        - Src:             'lib/pcap-file.c:445,9'
          Dst:             tcp_stream_destroy
        - Src:             'lib/pcap-file.c:451,43'
          Dst:             dp_packet_base
        - Src:             'lib/pcap-file.c:451,78'
          Dst:             dp_packet_data
        - Src:             'lib/pcap-file.c:451,9'
          Dst:             dp_packet_shift
        - Src:             'lib/pcap-file.c:453,9'
          Dst:             dp_packet_put
    - functionName:    tcp_stream_destroy
      functionSourceFile: '/src/openvswitch/lib/pcap-file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 327
      functionLinenumberEnd: 331
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_uninit
        - hmap_remove
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/pcap-file.c:328,5'
          Dst:             hmap_remove
        - Src:             'lib/pcap-file.c:329,5'
          Dst:             dp_packet_uninit
    - functionName:    hmap_next
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 429
      functionLinenumberEnd: 432
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_next__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:432,15'
          Dst:             hmap_next__
    - functionName:    hmap_first
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 416
      functionLinenumberEnd: 417
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:417,12'
          Dst:             hmap_next__
    - functionName:    tcp_reader_close
      functionSourceFile: '/src/openvswitch/lib/pcap-file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 348
      functionLinenumberEnd: 356
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          64
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - hmap_destroy
        - hmap_first
        - hmap_next
        - tcp_stream_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/pcap-file.c:351,5'
          Dst:             hmap_first
        - Src:             'lib/pcap-file.c:351,5'
          Dst:             hmap_next
        - Src:             'lib/pcap-file.c:352,9'
          Dst:             tcp_stream_destroy
        - Src:             'lib/pcap-file.c:354,5'
          Dst:             hmap_destroy
    - functionName:    tcp_reader_open
      functionSourceFile: '/src/openvswitch/lib/pcap-file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 337
      functionLinenumberEnd: 342
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_init
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/pcap-file.c:340,9'
          Dst:             xmalloc
        - Src:             'lib/pcap-file.c:341,5'
          Dst:             hmap_init
    - functionName:    dp_packet_is_eth
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 397
      functionLinenumberEnd: 398
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:398,30'
          Dst:             htonl
    - functionName:    ovs_pcap_write
      functionSourceFile: '/src/openvswitch/lib/pcap-file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 282
      functionLinenumberEnd: 298
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          68
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_data
        - dp_packet_is_eth
        - dp_packet_size
        - fflush
        - fwrite
        - ovs_ignore
        - xgettimeofday
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/pcap-file.c:283,27'
          Dst:             dp_packet_data
        - Src:             'lib/pcap-file.c:287,16'
          Dst:             dp_packet_is_eth
        - Src:             'lib/pcap-file.c:287,5'
          Dst:             ovs_ignore
        - Src:             'lib/pcap-file.c:288,5'
          Dst:             ovs_ignore
        - Src:             'lib/pcap-file.c:290,5'
          Dst:             xgettimeofday
        - Src:             'lib/pcap-file.c:293,20'
          Dst:             dp_packet_size
        - Src:             'lib/pcap-file.c:294,20'
          Dst:             dp_packet_size
        - Src:             'lib/pcap-file.c:295,16'
          Dst:             fwrite
        - Src:             'lib/pcap-file.c:295,5'
          Dst:             ovs_ignore
        - Src:             'lib/pcap-file.c:296,32'
          Dst:             dp_packet_size
        - Src:             'lib/pcap-file.c:296,16'
          Dst:             fwrite
        - Src:             'lib/pcap-file.c:296,5'
          Dst:             ovs_ignore
        - Src:             'lib/pcap-file.c:297,5'
          Dst:             fflush
    - functionName:    dp_packet_pull
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 370
      functionLinenumberEnd: 375
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          45
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_data
        - dp_packet_l2_pad_size
        - dp_packet_set_data
        - dp_packet_set_size
        - dp_packet_size
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:371,18'
          Dst:             dp_packet_data
        - Src:             'lib/dp-packet.h:372,16'
          Dst:             dp_packet_size
        - Src:             'lib/dp-packet.h:372,36'
          Dst:             dp_packet_l2_pad_size
        - Src:             'lib/dp-packet.h:372,5'
          Dst:             ovs_ignore
        - Src:             'lib/dp-packet.h:373,36'
          Dst:             dp_packet_data
        - Src:             'lib/dp-packet.h:373,5'
          Dst:             dp_packet_set_data
        - Src:             'lib/dp-packet.h:374,27'
          Dst:             dp_packet_size
        - Src:             'lib/dp-packet.h:374,5'
          Dst:             dp_packet_set_size
    - functionName:    dp_packet_delete
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 271
      functionLinenumberEnd: 290
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          54
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - dp_packet_uninit
        - free_afxdp_buf
        - free_dpdk_buf
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:274,13'
          Dst:             free_dpdk_buf
        - Src:             'lib/dp-packet.h:279,13'
          Dst:             free_afxdp_buf
        - Src:             'lib/dp-packet.h:283,9'
          Dst:             dp_packet_uninit
    - functionName:    ovs_pcap_read
      functionSourceFile: '/src/openvswitch/lib/pcap-file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 184
      functionLinenumberEnd: 278
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         62
      ICount:          377
      EdgeCount:       80
      CyclomaticComplexity: 20
      functionsReached:
        - __errno_location
        - dp_packet_delete
        - dp_packet_new
        - dp_packet_pull
        - dp_packet_push
        - dp_packet_put_uninit
        - ferror
        - fread
        - htons
        - ovs_hex_dump
        - ovs_retval_to_string
        - uint32_byteswap
        - vlog
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/pcap-file.c:194,9'
          Dst:             fread
        - Src:             'lib/pcap-file.c:195,13'
          Dst:             ferror
        - Src:             'lib/pcap-file.c:196,25'
          Dst:             __errno_location
        - Src:             'lib/pcap-file.c:197,13'
          Dst:             ovs_retval_to_string
        - Src:             'lib/pcap-file.c:197,13'
          Dst:             vlog
        - Src:             'lib/pcap-file.c:209,15'
          Dst:             uint32_byteswap
        - Src:             'lib/pcap-file.c:211,13'
          Dst:             uint32_byteswap
        - Src:             'lib/pcap-file.c:211,13'
          Dst:             vlog
        - Src:             'lib/pcap-file.c:220,34'
          Dst:             uint32_byteswap
        - Src:             'lib/pcap-file.c:221,37'
          Dst:             uint32_byteswap
        - Src:             'lib/pcap-file.c:229,11'
          Dst:             dp_packet_new
        - Src:             'lib/pcap-file.c:230,12'
          Dst:             dp_packet_put_uninit
        - Src:             'lib/pcap-file.c:231,9'
          Dst:             fread
        - Src:             'lib/pcap-file.c:232,21'
          Dst:             ferror
        - Src:             'lib/pcap-file.c:232,44'
          Dst:             __errno_location
        - Src:             'lib/pcap-file.c:233,9'
          Dst:             ovs_retval_to_string
        - Src:             'lib/pcap-file.c:233,9'
          Dst:             vlog
        - Src:             'lib/pcap-file.c:235,9'
          Dst:             dp_packet_delete
        - Src:             'lib/pcap-file.c:253,13'
          Dst:             vlog
        - Src:             'lib/pcap-file.c:254,13'
          Dst:             dp_packet_delete
        - Src:             'lib/pcap-file.c:259,15'
          Dst:             dp_packet_pull
        - Src:             'lib/pcap-file.c:260,29'
          Dst:             htons
        - Src:             'lib/pcap-file.c:261,13'
          Dst:             ovs_hex_dump
        - Src:             'lib/pcap-file.c:262,13'
          Dst:             vlog
        - Src:             'lib/pcap-file.c:263,13'
          Dst:             dp_packet_delete
        - Src:             'lib/pcap-file.c:273,9'
          Dst:             dp_packet_push
    - functionName:    uint32_byteswap
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 67
      functionLinenumberEnd: 71
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_pcap_stdout
      functionSourceFile: '/src/openvswitch/lib/pcap-file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 125
      functionLinenumberEnd: 128
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/pcap-file.c:126,32'
          Dst:             xmalloc
    - functionName:    ovs_pcap_write_header
      functionSourceFile: '/src/openvswitch/lib/pcap-file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 166
      functionLinenumberEnd: 179
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          39
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - fflush
        - fwrite
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/pcap-file.c:177,16'
          Dst:             fwrite
        - Src:             'lib/pcap-file.c:177,5'
          Dst:             ovs_ignore
        - Src:             'lib/pcap-file.c:178,5'
          Dst:             fflush
    - functionName:    ovs_pcap_close
      functionSourceFile: '/src/openvswitch/lib/pcap-file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 302
      functionLinenumberEnd: 307
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - fclose
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/pcap-file.c:304,9'
          Dst:             fclose
    - functionName:    ovs_pcap_read_header
      functionSourceFile: '/src/openvswitch/lib/pcap-file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 133
      functionLinenumberEnd: 162
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         44
      ICount:          226
      EdgeCount:       56
      CyclomaticComplexity: 14
      functionsReached:
        - __errno_location
        - ferror
        - fread
        - ovs_retval_to_string
        - uint32_byteswap
        - vlog
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/pcap-file.c:135,9'
          Dst:             fread
        - Src:             'lib/pcap-file.c:136,21'
          Dst:             ferror
        - Src:             'lib/pcap-file.c:136,44'
          Dst:             __errno_location
        - Src:             'lib/pcap-file.c:137,9'
          Dst:             ovs_retval_to_string
        - Src:             'lib/pcap-file.c:137,9'
          Dst:             vlog
        - Src:             'lib/pcap-file.c:149,9'
          Dst:             vlog
        - Src:             'lib/pcap-file.c:154,35'
          Dst:             uint32_byteswap
        - Src:             'lib/pcap-file.c:157,9'
          Dst:             vlog
    - functionName:    ovs_pcap_open
      functionSourceFile: '/src/openvswitch/lib/pcap-file.c'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         31
      ICount:          186
      EdgeCount:       37
      CyclomaticComplexity: 8
      functionsReached:
        - __errno_location
        - abort
        - fileno
        - fopen
        - fstat
        - ovs_ignore
        - ovs_pcap_close
        - ovs_pcap_read_header
        - ovs_pcap_write_header
        - ovs_strerror
        - strcmp
        - vlog
        - xmalloc
      functionUses:    3
      BranchProfiles:
        - Branch String:   'lib/pcap-file.c:96,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/pcap-file.c:79,17'
          Dst:             strcmp
        - Src:             'lib/pcap-file.c:80,17'
          Dst:             strcmp
        - Src:             'lib/pcap-file.c:81,17'
          Dst:             strcmp
        - Src:             'lib/pcap-file.c:79,5'
          Dst:             ovs_ignore
        - Src:             'lib/pcap-file.c:83,14'
          Dst:             xmalloc
        - Src:             'lib/pcap-file.c:84,20'
          Dst:             fopen
        - Src:             'lib/pcap-file.c:87,9'
          Dst:             __errno_location
        - Src:             'lib/pcap-file.c:87,9'
          Dst:             ovs_strerror
        - Src:             'lib/pcap-file.c:87,9'
          Dst:             vlog
        - Src:             'lib/pcap-file.c:98,17'
          Dst:             ovs_pcap_read_header
        - Src:             'lib/pcap-file.c:100,13'
          Dst:             __errno_location
        - Src:             'lib/pcap-file.c:101,13'
          Dst:             ovs_pcap_close
        - Src:             'lib/pcap-file.c:107,9'
          Dst:             ovs_pcap_write_header
        - Src:             'lib/pcap-file.c:111,20'
          Dst:             fileno
        - Src:             'lib/pcap-file.c:111,14'
          Dst:             fstat
        - Src:             'lib/pcap-file.c:112,13'
          Dst:             ovs_pcap_write_header
        - Src:             'lib/pcap-file.c:117,9'
          Dst:             abort
    - 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:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    init_this_module_reconnect
      functionSourceFile: '/src/openvswitch/lib/reconnect.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26
      functionLinenumberEnd: 26
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/reconnect.c:26,1'
          Dst:             vlog_insert_module
    - functionName:    reconnect_state_name__
      functionSourceFile: '/src/openvswitch/lib/reconnect.c'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 91
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          52
      EdgeCount:       18
      CyclomaticComplexity: 10
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/reconnect.c:85,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    reconnect_get_stats
      functionSourceFile: '/src/openvswitch/lib/reconnect.c'
      linkageType:     InternalLinkage
      functionLinenumber: 731
      functionLinenumberEnd: 750
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          123
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - is_connected_state
        - reconnect_get_last_connect_elapsed
        - reconnect_get_last_disconnect_elapsed
        - reconnect_is_connected
        - reconnect_state_name__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/reconnect.c:738,27'
          Dst:             reconnect_is_connected
        - Src:             'lib/reconnect.c:740,11'
          Dst:             reconnect_get_last_connect_elapsed
        - Src:             'lib/reconnect.c:742,11'
          Dst:             reconnect_get_last_disconnect_elapsed
        - Src:             'lib/reconnect.c:744,12'
          Dst:             is_connected_state
        - Src:             'lib/reconnect.c:745,14'
          Dst:             reconnect_get_last_connect_elapsed
        - Src:             'lib/reconnect.c:748,20'
          Dst:             reconnect_state_name__
    - functionName:    reconnect_is_connected
      functionSourceFile: '/src/openvswitch/lib/reconnect.c'
      linkageType:     InternalLinkage
      functionLinenumber: 701
      functionLinenumberEnd: 702
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - is_connected_state
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/reconnect.c:702,12'
          Dst:             is_connected_state
    - functionName:    reconnect_get_last_connect_elapsed
      functionSourceFile: '/src/openvswitch/lib/reconnect.c'
      linkageType:     InternalLinkage
      functionLinenumber: 711
      functionLinenumberEnd: 713
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          29
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    reconnect_get_last_disconnect_elapsed
      functionSourceFile: '/src/openvswitch/lib/reconnect.c'
      linkageType:     InternalLinkage
      functionLinenumber: 722
      functionLinenumberEnd: 724
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          29
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    is_connected_state
      functionSourceFile: '/src/openvswitch/lib/reconnect.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    reconnect_timeout
      functionSourceFile: '/src/openvswitch/lib/reconnect.c'
      linkageType:     InternalLinkage
      functionLinenumber: 686
      functionLinenumberEnd: 693
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          76
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - reconnect_deadline__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/reconnect.c:687,30'
          Dst:             reconnect_deadline__
    - functionName:    reconnect_deadline__
      functionSourceFile: '/src/openvswitch/lib/reconnect.c'
      linkageType:     InternalLinkage
      functionLinenumber: 544
      functionLinenumberEnd: 593
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         33
      ICount:          216
      EdgeCount:       39
      CyclomaticComplexity: 8
      functionsReached:
        - abort
        - ovs_ignore
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/reconnect.c:546,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/reconnect.c:545,5'
          Dst:             ovs_ignore
        - Src:             'lib/reconnect.c:592,5'
          Dst:             abort
    - functionName:    reconnect_wait
      functionSourceFile: '/src/openvswitch/lib/reconnect.c'
      linkageType:     InternalLinkage
      functionLinenumber: 674
      functionLinenumberEnd: 679
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - poll_timer_wait_at
        - reconnect_timeout
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/reconnect.c:675,19'
          Dst:             reconnect_timeout
        - Src:             'lib/reconnect.c:677,9'
          Dst:             poll_timer_wait_at
    - functionName:    reconnect_run
      functionSourceFile: '/src/openvswitch/lib/reconnect.c'
      linkageType:     InternalLinkage
      functionLinenumber: 633
      functionLinenumberEnd: 668
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         27
      ICount:          152
      EdgeCount:       29
      CyclomaticComplexity: 4
      functionsReached:
        - abort
        - reconnect_deadline__
        - reconnect_transition__
        - vlog
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/reconnect.c:635,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/reconnect.c:634,16'
          Dst:             reconnect_deadline__
        - Src:             'lib/reconnect.c:646,13'
          Dst:             vlog
        - Src:             'lib/reconnect.c:648,13'
          Dst:             reconnect_transition__
        - Src:             'lib/reconnect.c:652,13'
          Dst:             vlog
        - Src:             'lib/reconnect.c:664,9'
          Dst:             abort
    - functionName:    reconnect_transition__
      functionSourceFile: '/src/openvswitch/lib/reconnect.c'
      linkageType:     InternalLinkage
      functionLinenumber: 523
      functionLinenumberEnd: 540
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          131
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - is_connected_state
        - reconnect_state_name__
        - vlog
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/reconnect.c:530,9'
          Dst:             is_connected_state
        - Src:             'lib/reconnect.c:530,43'
          Dst:             is_connected_state
        - Src:             'lib/reconnect.c:531,13'
          Dst:             is_connected_state
        - Src:             'lib/reconnect.c:537,5'
          Dst:             reconnect_state_name__
        - Src:             'lib/reconnect.c:537,5'
          Dst:             vlog
    - functionName:    reconnect_receive_attempted
      functionSourceFile: '/src/openvswitch/lib/reconnect.c'
      linkageType:     InternalLinkage
      functionLinenumber: 516
      functionLinenumberEnd: 518
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    reconnect_activity
      functionSourceFile: '/src/openvswitch/lib/reconnect.c'
      linkageType:     InternalLinkage
      functionLinenumber: 500
      functionLinenumberEnd: 505
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - reconnect_transition__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/reconnect.c:502,9'
          Dst:             reconnect_transition__
    - functionName:    reconnect_connect_failed
      functionSourceFile: '/src/openvswitch/lib/reconnect.c'
      linkageType:     InternalLinkage
      functionLinenumber: 491
      functionLinenumberEnd: 494
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - reconnect_connecting
        - reconnect_disconnected
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/reconnect.c:492,5'
          Dst:             reconnect_connecting
        - Src:             'lib/reconnect.c:493,5'
          Dst:             reconnect_disconnected
    - functionName:    reconnect_connecting
      functionSourceFile: '/src/openvswitch/lib/reconnect.c'
      linkageType:     InternalLinkage
      functionLinenumber: 421
      functionLinenumberEnd: 430
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         22
      ICount:          106
      EdgeCount:       27
      CyclomaticComplexity: 7
      functionsReached:
        - reconnect_transition__
        - vlog
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/reconnect.c:424,13'
          Dst:             vlog
        - Src:             'lib/reconnect.c:426,13'
          Dst:             vlog
        - Src:             'lib/reconnect.c:428,9'
          Dst:             reconnect_transition__
    - functionName:    reconnect_disconnected
      functionSourceFile: '/src/openvswitch/lib/reconnect.c'
      linkageType:     InternalLinkage
      functionLinenumber: 342
      functionLinenumberEnd: 412
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         101
      ICount:          529
      EdgeCount:       128
      CyclomaticComplexity: 29
      functionsReached:
        - ovs_strerror
        - reconnect_may_retry
        - reconnect_transition__
        - vlog
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/reconnect.c:347,17'
          Dst:             ovs_strerror
        - Src:             'lib/reconnect.c:347,17'
          Dst:             vlog
        - Src:             'lib/reconnect.c:350,17'
          Dst:             vlog
        - Src:             'lib/reconnect.c:352,17'
          Dst:             vlog
        - Src:             'lib/reconnect.c:356,17'
          Dst:             ovs_strerror
        - Src:             'lib/reconnect.c:356,17'
          Dst:             vlog
        - Src:             'lib/reconnect.c:359,17'
          Dst:             vlog
        - Src:             'lib/reconnect.c:365,17'
          Dst:             ovs_strerror
        - Src:             'lib/reconnect.c:365,17'
          Dst:             vlog
        - Src:             'lib/reconnect.c:368,17'
          Dst:             vlog
        - Src:             'lib/reconnect.c:380,14'
          Dst:             reconnect_may_retry
        - Src:             'lib/reconnect.c:381,13'
          Dst:             reconnect_transition__
        - Src:             'lib/reconnect.c:398,17'
          Dst:             vlog
        - Src:             'lib/reconnect.c:403,21'
          Dst:             vlog
        - Src:             'lib/reconnect.c:410,9'
          Dst:             reconnect_transition__
    - functionName:    reconnect_may_retry
      functionSourceFile: '/src/openvswitch/lib/reconnect.c'
      linkageType:     InternalLinkage
      functionLinenumber: 754
      functionLinenumberEnd: 759
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    reconnect_connected
      functionSourceFile: '/src/openvswitch/lib/reconnect.c'
      linkageType:     InternalLinkage
      functionLinenumber: 476
      functionLinenumberEnd: 484
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          63
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - is_connected_state
        - reconnect_connecting
        - reconnect_transition__
        - vlog
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/reconnect.c:477,10'
          Dst:             is_connected_state
        - Src:             'lib/reconnect.c:478,9'
          Dst:             reconnect_connecting
        - Src:             'lib/reconnect.c:480,9'
          Dst:             vlog
        - Src:             'lib/reconnect.c:481,9'
          Dst:             reconnect_transition__
    - functionName:    reconnect_listen_error
      functionSourceFile: '/src/openvswitch/lib/reconnect.c'
      linkageType:     InternalLinkage
      functionLinenumber: 461
      functionLinenumberEnd: 465
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - reconnect_disconnected
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/reconnect.c:463,9'
          Dst:             reconnect_disconnected
    - functionName:    reconnect_listening
      functionSourceFile: '/src/openvswitch/lib/reconnect.c'
      linkageType:     InternalLinkage
      functionLinenumber: 445
      functionLinenumberEnd: 450
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          57
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - reconnect_transition__
        - vlog
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/reconnect.c:447,9'
          Dst:             vlog
        - Src:             'lib/reconnect.c:448,9'
          Dst:             reconnect_transition__
    - functionName:    reconnect_force_reconnect
      functionSourceFile: '/src/openvswitch/lib/reconnect.c'
      linkageType:     InternalLinkage
      functionLinenumber: 328
      functionLinenumberEnd: 332
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - reconnect_transition__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/reconnect.c:330,9'
          Dst:             reconnect_transition__
    - functionName:    reconnect_disable
      functionSourceFile: '/src/openvswitch/lib/reconnect.c'
      linkageType:     InternalLinkage
      functionLinenumber: 316
      functionLinenumberEnd: 320
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - reconnect_transition__
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/reconnect.c:318,9'
          Dst:             reconnect_transition__
    - functionName:    reconnect_enable
      functionSourceFile: '/src/openvswitch/lib/reconnect.c'
      linkageType:     InternalLinkage
      functionLinenumber: 305
      functionLinenumberEnd: 310
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          42
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - reconnect_may_retry
        - reconnect_transition__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/reconnect.c:306,33'
          Dst:             reconnect_may_retry
        - Src:             'lib/reconnect.c:307,9'
          Dst:             reconnect_transition__
    - functionName:    reconnect_is_enabled
      functionSourceFile: '/src/openvswitch/lib/reconnect.c'
      linkageType:     InternalLinkage
      functionLinenumber: 294
      functionLinenumberEnd: 295
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    reconnect_set_passive
      functionSourceFile: '/src/openvswitch/lib/reconnect.c'
      linkageType:     InternalLinkage
      functionLinenumber: 275
      functionLinenumberEnd: 286
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - bool
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          91
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - reconnect_may_retry
        - reconnect_transition__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/reconnect.c:281,44'
          Dst:             reconnect_may_retry
        - Src:             'lib/reconnect.c:282,13'
          Dst:             reconnect_transition__
    - functionName:    reconnect_is_passive
      functionSourceFile: '/src/openvswitch/lib/reconnect.c'
      linkageType:     InternalLinkage
      functionLinenumber: 266
      functionLinenumberEnd: 267
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    reconnect_set_probe_interval
      functionSourceFile: '/src/openvswitch/lib/reconnect.c'
      linkageType:     InternalLinkage
      functionLinenumber: 258
      functionLinenumberEnd: 260
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          35
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    reconnect_set_backoff
      functionSourceFile: '/src/openvswitch/lib/reconnect.c'
      linkageType:     InternalLinkage
      functionLinenumber: 233
      functionLinenumberEnd: 245
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          106
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    reconnect_set_backoff_free_tries
      functionSourceFile: '/src/openvswitch/lib/reconnect.c'
      linkageType:     InternalLinkage
      functionLinenumber: 218
      functionLinenumberEnd: 220
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    reconnect_get_max_tries
      functionSourceFile: '/src/openvswitch/lib/reconnect.c'
      linkageType:     InternalLinkage
      functionLinenumber: 209
      functionLinenumberEnd: 210
      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:    reconnect_set_max_tries
      functionSourceFile: '/src/openvswitch/lib/reconnect.c'
      linkageType:     InternalLinkage
      functionLinenumber: 201
      functionLinenumberEnd: 203
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    reconnect_get_probe_interval
      functionSourceFile: '/src/openvswitch/lib/reconnect.c'
      linkageType:     InternalLinkage
      functionLinenumber: 189
      functionLinenumberEnd: 190
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    reconnect_get_max_backoff
      functionSourceFile: '/src/openvswitch/lib/reconnect.c'
      linkageType:     InternalLinkage
      functionLinenumber: 177
      functionLinenumberEnd: 178
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    reconnect_get_min_backoff
      functionSourceFile: '/src/openvswitch/lib/reconnect.c'
      linkageType:     InternalLinkage
      functionLinenumber: 169
      functionLinenumberEnd: 170
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    reconnect_set_name
      functionSourceFile: '/src/openvswitch/lib/reconnect.c'
      linkageType:     InternalLinkage
      functionLinenumber: 160
      functionLinenumberEnd: 163
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - xstrdup
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/reconnect.c:162,17'
          Dst:             xstrdup
    - functionName:    reconnect_get_name
      functionSourceFile: '/src/openvswitch/lib/reconnect.c'
      linkageType:     InternalLinkage
      functionLinenumber: 150
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    reconnect_set_quiet
      functionSourceFile: '/src/openvswitch/lib/reconnect.c'
      linkageType:     InternalLinkage
      functionLinenumber: 143
      functionLinenumberEnd: 145
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    reconnect_destroy
      functionSourceFile: '/src/openvswitch/lib/reconnect.c'
      linkageType:     InternalLinkage
      functionLinenumber: 124
      functionLinenumberEnd: 129
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    reconnect_create
      functionSourceFile: '/src/openvswitch/lib/reconnect.c'
      linkageType:     InternalLinkage
      functionLinenumber: 98
      functionLinenumberEnd: 118
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          67
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - xstrdup
        - xzalloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/reconnect.c:99,29'
          Dst:             xzalloc
        - Src:             'lib/reconnect.c:101,17'
          Dst:             xstrdup
    - functionName:    init_this_module_sha1
      functionSourceFile: '/src/openvswitch/lib/sha1.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 46
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/sha1.c:46,1'
          Dst:             vlog_insert_module
    - functionName:    f4
      functionSourceFile: '/src/openvswitch/lib/sha1.c'
      linkageType:     InternalLinkage
      functionLinenumber: 182
      functionLinenumberEnd: 183
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    20
      BranchProfiles:  []
      Callsites:       []
    - functionName:    f3
      functionSourceFile: '/src/openvswitch/lib/sha1.c'
      linkageType:     InternalLinkage
      functionLinenumber: 176
      functionLinenumberEnd: 177
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    20
      BranchProfiles:  []
      Callsites:       []
    - functionName:    f2
      functionSourceFile: '/src/openvswitch/lib/sha1.c'
      linkageType:     InternalLinkage
      functionLinenumber: 170
      functionLinenumberEnd: 171
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    20
      BranchProfiles:  []
      Callsites:       []
    - functionName:    f1
      functionSourceFile: '/src/openvswitch/lib/sha1.c'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 165
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    20
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rotate32
      functionSourceFile: '/src/openvswitch/lib/sha1.c'
      linkageType:     InternalLinkage
      functionLinenumber: 195
      functionLinenumberEnd: 196
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    161
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_sha1_bytes
      functionSourceFile: '/src/openvswitch/lib/sha1.c'
      linkageType:     InternalLinkage
      functionLinenumber: 397
      functionLinenumberEnd: 403
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_sha1_final
        - ovs_sha1_init
        - ovs_sha1_update
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/sha1.c:400,5'
          Dst:             ovs_sha1_init
        - Src:             'lib/sha1.c:401,5'
          Dst:             ovs_sha1_update
        - Src:             'lib/sha1.c:402,5'
          Dst:             ovs_sha1_final
    - functionName:    ovs_sha1_init
      functionSourceFile: '/src/openvswitch/lib/sha1.c'
      linkageType:     InternalLinkage
      functionLinenumber: 301
      functionLinenumberEnd: 310
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          43
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_sha1_update
      functionSourceFile: '/src/openvswitch/lib/sha1.c'
      linkageType:     InternalLinkage
      functionLinenumber: 320
      functionLinenumberEnd: 354
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          194
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - maybe_byte_reverse
        - sha_transform
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/sha1.c:339,13'
          Dst:             maybe_byte_reverse
        - Src:             'lib/sha1.c:340,13'
          Dst:             sha_transform
        - Src:             'lib/sha1.c:349,9'
          Dst:             maybe_byte_reverse
        - Src:             'lib/sha1.c:350,9'
          Dst:             sha_transform
    - functionName:    ovs_sha1_final
      functionSourceFile: '/src/openvswitch/lib/sha1.c'
      linkageType:     InternalLinkage
      functionLinenumber: 363
      functionLinenumberEnd: 392
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          175
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - maybe_byte_reverse
        - sha_transform
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/sha1.c:373,9'
          Dst:             maybe_byte_reverse
        - Src:             'lib/sha1.c:374,9'
          Dst:             sha_transform
        - Src:             'lib/sha1.c:380,5'
          Dst:             maybe_byte_reverse
        - Src:             'lib/sha1.c:383,5'
          Dst:             sha_transform
    - functionName:    maybe_byte_reverse
      functionSourceFile: '/src/openvswitch/lib/sha1.c'
      linkageType:     InternalLinkage
      functionLinenumber: 274
      functionLinenumberEnd: 293
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         5
      ICount:          79
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sha_transform
      functionSourceFile: '/src/openvswitch/lib/sha1.c'
      linkageType:     InternalLinkage
      functionLinenumber: 214
      functionLinenumberEnd: 269
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         171
      ICount:          2489
      EdgeCount:       173
      CyclomaticComplexity: 4
      functionsReached:
        - f1
        - f2
        - f3
        - f4
        - rotate32
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/sha1.c:223,16'
          Dst:             rotate32
        - Src:             'lib/sha1.c:231,5'
          Dst:             rotate32
        - Src:             'lib/sha1.c:231,5'
          Dst:             f1
        - Src:             'lib/sha1.c:231,5'
          Dst:             rotate32
        - Src:             'lib/sha1.c:231,18'
          Dst:             rotate32
        - Src:             'lib/sha1.c:231,18'
          Dst:             f1
        - Src:             'lib/sha1.c:231,18'
          Dst:             rotate32
        - Src:             'lib/sha1.c:231,31'
          Dst:             rotate32
        - Src:             'lib/sha1.c:231,31'
          Dst:             f1
        - Src:             'lib/sha1.c:231,31'
          Dst:             rotate32
        - Src:             'lib/sha1.c:231,44'
          Dst:             rotate32
        - Src:             'lib/sha1.c:231,44'
          Dst:             f1
        - Src:             'lib/sha1.c:231,44'
          Dst:             rotate32
        - Src:             'lib/sha1.c:231,57'
          Dst:             rotate32
        - Src:             'lib/sha1.c:231,57'
          Dst:             f1
        - Src:             'lib/sha1.c:231,57'
          Dst:             rotate32
        - Src:             'lib/sha1.c:232,5'
          Dst:             rotate32
        - Src:             'lib/sha1.c:232,5'
          Dst:             f1
        - Src:             'lib/sha1.c:232,5'
          Dst:             rotate32
        - Src:             'lib/sha1.c:232,18'
          Dst:             rotate32
        - Src:             'lib/sha1.c:232,18'
          Dst:             f1
        - Src:             'lib/sha1.c:232,18'
          Dst:             rotate32
        - Src:             'lib/sha1.c:232,31'
          Dst:             rotate32
        - Src:             'lib/sha1.c:232,31'
          Dst:             f1
        - Src:             'lib/sha1.c:232,31'
          Dst:             rotate32
        - Src:             'lib/sha1.c:232,44'
          Dst:             rotate32
        - Src:             'lib/sha1.c:232,44'
          Dst:             f1
        - Src:             'lib/sha1.c:232,44'
          Dst:             rotate32
        - Src:             'lib/sha1.c:232,57'
          Dst:             rotate32
        - Src:             'lib/sha1.c:232,57'
          Dst:             f1
        - Src:             'lib/sha1.c:232,57'
          Dst:             rotate32
        - Src:             'lib/sha1.c:233,5'
          Dst:             rotate32
        - Src:             'lib/sha1.c:233,5'
          Dst:             f1
        - Src:             'lib/sha1.c:233,5'
          Dst:             rotate32
        - Src:             'lib/sha1.c:233,18'
          Dst:             rotate32
        - Src:             'lib/sha1.c:233,18'
          Dst:             f1
        - Src:             'lib/sha1.c:233,18'
          Dst:             rotate32
        - Src:             'lib/sha1.c:233,31'
          Dst:             rotate32
        - Src:             'lib/sha1.c:233,31'
          Dst:             f1
        - Src:             'lib/sha1.c:233,31'
          Dst:             rotate32
        - Src:             'lib/sha1.c:233,44'
          Dst:             rotate32
        - Src:             'lib/sha1.c:233,44'
          Dst:             f1
        - Src:             'lib/sha1.c:233,44'
          Dst:             rotate32
        - Src:             'lib/sha1.c:233,57'
          Dst:             rotate32
        - Src:             'lib/sha1.c:233,57'
          Dst:             f1
        - Src:             'lib/sha1.c:233,57'
          Dst:             rotate32
        - Src:             'lib/sha1.c:234,5'
          Dst:             rotate32
        - Src:             'lib/sha1.c:234,5'
          Dst:             f1
        - Src:             'lib/sha1.c:234,5'
          Dst:             rotate32
        - Src:             'lib/sha1.c:234,18'
          Dst:             rotate32
        - Src:             'lib/sha1.c:234,18'
          Dst:             f1
        - Src:             'lib/sha1.c:234,18'
          Dst:             rotate32
        - Src:             'lib/sha1.c:234,31'
          Dst:             rotate32
        - Src:             'lib/sha1.c:234,31'
          Dst:             f1
        - Src:             'lib/sha1.c:234,31'
          Dst:             rotate32
        - Src:             'lib/sha1.c:234,44'
          Dst:             rotate32
        - Src:             'lib/sha1.c:234,44'
          Dst:             f1
        - Src:             'lib/sha1.c:234,44'
          Dst:             rotate32
        - Src:             'lib/sha1.c:234,57'
          Dst:             rotate32
        - Src:             'lib/sha1.c:234,57'
          Dst:             f1
        - Src:             'lib/sha1.c:234,57'
          Dst:             rotate32
        - Src:             'lib/sha1.c:236,5'
          Dst:             rotate32
        - Src:             'lib/sha1.c:236,5'
          Dst:             f2
        - Src:             'lib/sha1.c:236,5'
          Dst:             rotate32
        - Src:             'lib/sha1.c:236,18'
          Dst:             rotate32
        - Src:             'lib/sha1.c:236,18'
          Dst:             f2
        - Src:             'lib/sha1.c:236,18'
          Dst:             rotate32
        - Src:             'lib/sha1.c:236,31'
          Dst:             rotate32
        - Src:             'lib/sha1.c:236,31'
          Dst:             f2
        - Src:             'lib/sha1.c:236,31'
          Dst:             rotate32
        - Src:             'lib/sha1.c:236,44'
          Dst:             rotate32
        - Src:             'lib/sha1.c:236,44'
          Dst:             f2
        - Src:             'lib/sha1.c:236,44'
          Dst:             rotate32
        - Src:             'lib/sha1.c:236,57'
          Dst:             rotate32
        - Src:             'lib/sha1.c:236,57'
          Dst:             f2
        - Src:             'lib/sha1.c:236,57'
          Dst:             rotate32
        - Src:             'lib/sha1.c:237,5'
          Dst:             rotate32
        - Src:             'lib/sha1.c:237,5'
          Dst:             f2
        - Src:             'lib/sha1.c:237,5'
          Dst:             rotate32
        - Src:             'lib/sha1.c:237,18'
          Dst:             rotate32
        - Src:             'lib/sha1.c:237,18'
          Dst:             f2
        - Src:             'lib/sha1.c:237,18'
          Dst:             rotate32
        - Src:             'lib/sha1.c:237,31'
          Dst:             rotate32
        - Src:             'lib/sha1.c:237,31'
          Dst:             f2
        - Src:             'lib/sha1.c:237,31'
          Dst:             rotate32
        - Src:             'lib/sha1.c:237,44'
          Dst:             rotate32
        - Src:             'lib/sha1.c:237,44'
          Dst:             f2
        - Src:             'lib/sha1.c:237,44'
          Dst:             rotate32
        - Src:             'lib/sha1.c:237,57'
          Dst:             rotate32
        - Src:             'lib/sha1.c:237,57'
          Dst:             f2
        - Src:             'lib/sha1.c:237,57'
          Dst:             rotate32
        - Src:             'lib/sha1.c:238,5'
          Dst:             rotate32
        - Src:             'lib/sha1.c:238,5'
          Dst:             f2
        - Src:             'lib/sha1.c:238,5'
          Dst:             rotate32
        - Src:             'lib/sha1.c:238,18'
          Dst:             rotate32
        - Src:             'lib/sha1.c:238,18'
          Dst:             f2
        - Src:             'lib/sha1.c:238,18'
          Dst:             rotate32
        - Src:             'lib/sha1.c:238,31'
          Dst:             rotate32
        - Src:             'lib/sha1.c:238,31'
          Dst:             f2
        - Src:             'lib/sha1.c:238,31'
          Dst:             rotate32
        - Src:             'lib/sha1.c:238,44'
          Dst:             rotate32
        - Src:             'lib/sha1.c:238,44'
          Dst:             f2
        - Src:             'lib/sha1.c:238,44'
          Dst:             rotate32
        - Src:             'lib/sha1.c:238,57'
          Dst:             rotate32
        - Src:             'lib/sha1.c:238,57'
          Dst:             f2
        - Src:             'lib/sha1.c:238,57'
          Dst:             rotate32
        - Src:             'lib/sha1.c:239,5'
          Dst:             rotate32
        - Src:             'lib/sha1.c:239,5'
          Dst:             f2
        - Src:             'lib/sha1.c:239,5'
          Dst:             rotate32
        - Src:             'lib/sha1.c:239,18'
          Dst:             rotate32
        - Src:             'lib/sha1.c:239,18'
          Dst:             f2
        - Src:             'lib/sha1.c:239,18'
          Dst:             rotate32
        - Src:             'lib/sha1.c:239,31'
          Dst:             rotate32
        - Src:             'lib/sha1.c:239,31'
          Dst:             f2
        - Src:             'lib/sha1.c:239,31'
          Dst:             rotate32
        - Src:             'lib/sha1.c:239,44'
          Dst:             rotate32
        - Src:             'lib/sha1.c:239,44'
          Dst:             f2
        - Src:             'lib/sha1.c:239,44'
          Dst:             rotate32
        - Src:             'lib/sha1.c:239,57'
          Dst:             rotate32
        - Src:             'lib/sha1.c:239,57'
          Dst:             f2
        - Src:             'lib/sha1.c:239,57'
          Dst:             rotate32
        - Src:             'lib/sha1.c:241,5'
          Dst:             rotate32
        - Src:             'lib/sha1.c:241,5'
          Dst:             f3
        - Src:             'lib/sha1.c:241,5'
          Dst:             rotate32
        - Src:             'lib/sha1.c:241,18'
          Dst:             rotate32
        - Src:             'lib/sha1.c:241,18'
          Dst:             f3
        - Src:             'lib/sha1.c:241,18'
          Dst:             rotate32
        - Src:             'lib/sha1.c:241,31'
          Dst:             rotate32
        - Src:             'lib/sha1.c:241,31'
          Dst:             f3
        - Src:             'lib/sha1.c:241,31'
          Dst:             rotate32
        - Src:             'lib/sha1.c:241,44'
          Dst:             rotate32
        - Src:             'lib/sha1.c:241,44'
          Dst:             f3
        - Src:             'lib/sha1.c:241,44'
          Dst:             rotate32
        - Src:             'lib/sha1.c:241,57'
          Dst:             rotate32
        - Src:             'lib/sha1.c:241,57'
          Dst:             f3
        - Src:             'lib/sha1.c:241,57'
          Dst:             rotate32
        - Src:             'lib/sha1.c:242,5'
          Dst:             rotate32
        - Src:             'lib/sha1.c:242,5'
          Dst:             f3
        - Src:             'lib/sha1.c:242,5'
          Dst:             rotate32
        - Src:             'lib/sha1.c:242,18'
          Dst:             rotate32
        - Src:             'lib/sha1.c:242,18'
          Dst:             f3
        - Src:             'lib/sha1.c:242,18'
          Dst:             rotate32
        - Src:             'lib/sha1.c:242,31'
          Dst:             rotate32
        - Src:             'lib/sha1.c:242,31'
          Dst:             f3
        - Src:             'lib/sha1.c:242,31'
          Dst:             rotate32
        - Src:             'lib/sha1.c:242,44'
          Dst:             rotate32
        - Src:             'lib/sha1.c:242,44'
          Dst:             f3
        - Src:             'lib/sha1.c:242,44'
          Dst:             rotate32
        - Src:             'lib/sha1.c:242,57'
          Dst:             rotate32
        - Src:             'lib/sha1.c:242,57'
          Dst:             f3
        - Src:             'lib/sha1.c:242,57'
          Dst:             rotate32
        - Src:             'lib/sha1.c:243,5'
          Dst:             rotate32
        - Src:             'lib/sha1.c:243,5'
          Dst:             f3
        - Src:             'lib/sha1.c:243,5'
          Dst:             rotate32
        - Src:             'lib/sha1.c:243,18'
          Dst:             rotate32
        - Src:             'lib/sha1.c:243,18'
          Dst:             f3
        - Src:             'lib/sha1.c:243,18'
          Dst:             rotate32
        - Src:             'lib/sha1.c:243,31'
          Dst:             rotate32
        - Src:             'lib/sha1.c:243,31'
          Dst:             f3
        - Src:             'lib/sha1.c:243,31'
          Dst:             rotate32
        - Src:             'lib/sha1.c:243,44'
          Dst:             rotate32
        - Src:             'lib/sha1.c:243,44'
          Dst:             f3
        - Src:             'lib/sha1.c:243,44'
          Dst:             rotate32
        - Src:             'lib/sha1.c:243,57'
          Dst:             rotate32
        - Src:             'lib/sha1.c:243,57'
          Dst:             f3
        - Src:             'lib/sha1.c:243,57'
          Dst:             rotate32
        - Src:             'lib/sha1.c:244,5'
          Dst:             rotate32
        - Src:             'lib/sha1.c:244,5'
          Dst:             f3
        - Src:             'lib/sha1.c:244,5'
          Dst:             rotate32
        - Src:             'lib/sha1.c:244,18'
          Dst:             rotate32
        - Src:             'lib/sha1.c:244,18'
          Dst:             f3
        - Src:             'lib/sha1.c:244,18'
          Dst:             rotate32
        - Src:             'lib/sha1.c:244,31'
          Dst:             rotate32
        - Src:             'lib/sha1.c:244,31'
          Dst:             f3
        - Src:             'lib/sha1.c:244,31'
          Dst:             rotate32
        - Src:             'lib/sha1.c:244,44'
          Dst:             rotate32
        - Src:             'lib/sha1.c:244,44'
          Dst:             f3
        - Src:             'lib/sha1.c:244,44'
          Dst:             rotate32
        - Src:             'lib/sha1.c:244,57'
          Dst:             rotate32
        - Src:             'lib/sha1.c:244,57'
          Dst:             f3
        - Src:             'lib/sha1.c:244,57'
          Dst:             rotate32
        - Src:             'lib/sha1.c:246,5'
          Dst:             rotate32
        - Src:             'lib/sha1.c:246,5'
          Dst:             f4
        - Src:             'lib/sha1.c:246,5'
          Dst:             rotate32
        - Src:             'lib/sha1.c:246,18'
          Dst:             rotate32
        - Src:             'lib/sha1.c:246,18'
          Dst:             f4
        - Src:             'lib/sha1.c:246,18'
          Dst:             rotate32
        - Src:             'lib/sha1.c:246,31'
          Dst:             rotate32
        - Src:             'lib/sha1.c:246,31'
          Dst:             f4
        - Src:             'lib/sha1.c:246,31'
          Dst:             rotate32
        - Src:             'lib/sha1.c:246,44'
          Dst:             rotate32
        - Src:             'lib/sha1.c:246,44'
          Dst:             f4
        - Src:             'lib/sha1.c:246,44'
          Dst:             rotate32
        - Src:             'lib/sha1.c:246,57'
          Dst:             rotate32
        - Src:             'lib/sha1.c:246,57'
          Dst:             f4
        - Src:             'lib/sha1.c:246,57'
          Dst:             rotate32
        - Src:             'lib/sha1.c:247,5'
          Dst:             rotate32
        - Src:             'lib/sha1.c:247,5'
          Dst:             f4
        - Src:             'lib/sha1.c:247,5'
          Dst:             rotate32
        - Src:             'lib/sha1.c:247,18'
          Dst:             rotate32
        - Src:             'lib/sha1.c:247,18'
          Dst:             f4
        - Src:             'lib/sha1.c:247,18'
          Dst:             rotate32
        - Src:             'lib/sha1.c:247,31'
          Dst:             rotate32
        - Src:             'lib/sha1.c:247,31'
          Dst:             f4
        - Src:             'lib/sha1.c:247,31'
          Dst:             rotate32
        - Src:             'lib/sha1.c:247,44'
          Dst:             rotate32
        - Src:             'lib/sha1.c:247,44'
          Dst:             f4
        - Src:             'lib/sha1.c:247,44'
          Dst:             rotate32
        - Src:             'lib/sha1.c:247,57'
          Dst:             rotate32
        - Src:             'lib/sha1.c:247,57'
          Dst:             f4
        - Src:             'lib/sha1.c:247,57'
          Dst:             rotate32
        - Src:             'lib/sha1.c:248,5'
          Dst:             rotate32
        - Src:             'lib/sha1.c:248,5'
          Dst:             f4
        - Src:             'lib/sha1.c:248,5'
          Dst:             rotate32
        - Src:             'lib/sha1.c:248,18'
          Dst:             rotate32
        - Src:             'lib/sha1.c:248,18'
          Dst:             f4
        - Src:             'lib/sha1.c:248,18'
          Dst:             rotate32
        - Src:             'lib/sha1.c:248,31'
          Dst:             rotate32
        - Src:             'lib/sha1.c:248,31'
          Dst:             f4
        - Src:             'lib/sha1.c:248,31'
          Dst:             rotate32
        - Src:             'lib/sha1.c:248,44'
          Dst:             rotate32
        - Src:             'lib/sha1.c:248,44'
          Dst:             f4
        - Src:             'lib/sha1.c:248,44'
          Dst:             rotate32
        - Src:             'lib/sha1.c:248,57'
          Dst:             rotate32
        - Src:             'lib/sha1.c:248,57'
          Dst:             f4
        - Src:             'lib/sha1.c:248,57'
          Dst:             rotate32
        - Src:             'lib/sha1.c:249,5'
          Dst:             rotate32
        - Src:             'lib/sha1.c:249,5'
          Dst:             f4
        - Src:             'lib/sha1.c:249,5'
          Dst:             rotate32
        - Src:             'lib/sha1.c:249,18'
          Dst:             rotate32
        - Src:             'lib/sha1.c:249,18'
          Dst:             f4
        - Src:             'lib/sha1.c:249,18'
          Dst:             rotate32
        - Src:             'lib/sha1.c:249,31'
          Dst:             rotate32
        - Src:             'lib/sha1.c:249,31'
          Dst:             f4
        - Src:             'lib/sha1.c:249,31'
          Dst:             rotate32
        - Src:             'lib/sha1.c:249,44'
          Dst:             rotate32
        - Src:             'lib/sha1.c:249,44'
          Dst:             f4
        - Src:             'lib/sha1.c:249,44'
          Dst:             rotate32
        - Src:             'lib/sha1.c:249,57'
          Dst:             rotate32
        - Src:             'lib/sha1.c:249,57'
          Dst:             f4
        - Src:             'lib/sha1.c:249,57'
          Dst:             rotate32
    - functionName:    sha1_from_hex
      functionSourceFile: '/src/openvswitch/lib/sha1.c'
      linkageType:     InternalLinkage
      functionLinenumber: 141
      functionLinenumberEnd: 154
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          57
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - hexits_value
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/sha1.c:147,21'
          Dst:             hexits_value
    - functionName:    sha1_to_hex
      functionSourceFile: '/src/openvswitch/lib/sha1.c'
      linkageType:     InternalLinkage
      functionLinenumber: 129
      functionLinenumberEnd: 137
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         5
      ICount:          56
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sha1_bytes
      functionSourceFile: '/src/openvswitch/lib/sha1.c'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 124
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sha1_final
        - sha1_init
        - sha1_update
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/sha1.c:121,5'
          Dst:             sha1_init
        - Src:             'lib/sha1.c:122,5'
          Dst:             sha1_update
        - Src:             'lib/sha1.c:123,5'
          Dst:             sha1_final
    - functionName:    sha1_init
      functionSourceFile: '/src/openvswitch/lib/sha1.c'
      linkageType:     InternalLinkage
      functionLinenumber: 65
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - EVP_DigestInit_ex
        - EVP_MD_CTX_new
        - EVP_sha1
        - log_openssl_err
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/sha1.c:67,21'
          Dst:             EVP_MD_CTX_new
        - Src:             'lib/sha1.c:68,43'
          Dst:             EVP_sha1
        - Src:             'lib/sha1.c:68,10'
          Dst:             EVP_DigestInit_ex
        - Src:             'lib/sha1.c:69,9'
          Dst:             log_openssl_err
    - functionName:    sha1_update
      functionSourceFile: '/src/openvswitch/lib/sha1.c'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 92
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - EVP_DigestUpdate
        - log_openssl_err
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/sha1.c:86,10'
          Dst:             EVP_DigestUpdate
        - Src:             'lib/sha1.c:87,9'
          Dst:             log_openssl_err
    - functionName:    sha1_final
      functionSourceFile: '/src/openvswitch/lib/sha1.c'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 113
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - EVP_DigestFinal_ex
        - EVP_MD_CTX_free
        - log_openssl_err
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/sha1.c:105,10'
          Dst:             EVP_DigestFinal_ex
        - Src:             'lib/sha1.c:106,9'
          Dst:             log_openssl_err
        - Src:             'lib/sha1.c:108,5'
          Dst:             ovs_ignore
        - Src:             'lib/sha1.c:109,5'
          Dst:             EVP_MD_CTX_free
    - functionName:    EVP_DigestFinal_ex
      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:    log_openssl_err
      functionSourceFile: '/src/openvswitch/lib/sha1.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached:
        - ERR_error_string_n
        - ERR_get_error
        - vlog_fatal
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/sha1.c:54,24'
          Dst:             ERR_get_error
        - Src:             'lib/sha1.c:54,5'
          Dst:             ERR_error_string_n
        - Src:             'lib/sha1.c:55,5'
          Dst:             vlog_fatal
    - functionName:    EVP_MD_CTX_free
      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:    ERR_get_error
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    19
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ERR_error_string_n
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_DigestUpdate
      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:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_MD_CTX_new
      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:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    EVP_sha1
      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:    EVP_DigestInit_ex
      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:    hmap_insert_fast
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 289
      functionLinenumberEnd: 295
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          38
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_insert_at
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 306
      functionLinenumberEnd: 311
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_expand_at
        - hmap_insert_fast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:307,5'
          Dst:             hmap_insert_fast
        - Src:             './include/openvswitch/hmap.h:309,9'
          Dst:             hmap_expand_at
    - functionName:    hmap_next_with_hash__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 348
      functionLinenumberEnd: 352
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          40
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_next_with_hash
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 395
      functionLinenumberEnd: 396
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next_with_hash__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:396,12'
          Dst:             hmap_next_with_hash__
    - functionName:    hmap_first_with_hash
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 360
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next_with_hash__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:360,12'
          Dst:             hmap_next_with_hash__
    - functionName:    hash_rot
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 32
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhash_add__
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hash_rot
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:71,12'
          Dst:             hash_rot
    - functionName:    mhash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_rot
        - mhash_add__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:78,12'
          Dst:             mhash_add__
        - Src:             'lib/hash.h:79,12'
          Dst:             hash_rot
    - functionName:    mhash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 108
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_add
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:109,12'
          Dst:             mhash_add
    - functionName:    hash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:119,12'
          Dst:             mhash_finish
    - functionName:    hash_2words
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 153
      functionLinenumberEnd: 154
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_add
        - hash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:154,33'
          Dst:             hash_add
        - Src:             'lib/hash.h:154,24'
          Dst:             hash_add
        - Src:             'lib/hash.h:154,12'
          Dst:             hash_finish
    - functionName:    hmap_next__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 401
      functionLinenumberEnd: 410
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          51
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_int
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 408
      functionLinenumberEnd: 409
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_2words
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:409,12'
          Dst:             hash_2words
    - functionName:    simap_hash
      functionSourceFile: '/src/openvswitch/lib/simap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 249
      functionLinenumberEnd: 257
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          71
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - hash_int
        - hash_name
        - hmap_first
        - hmap_next
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/simap.c:253,5'
          Dst:             hmap_first
        - Src:             'lib/simap.c:255,48'
          Dst:             strlen
        - Src:             'lib/simap.c:255,26'
          Dst:             hash_name
        - Src:             'lib/simap.c:254,17'
          Dst:             hash_int
        - Src:             'lib/simap.c:253,5'
          Dst:             hmap_next
    - functionName:    hmap_first
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 416
      functionLinenumberEnd: 417
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next__
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:417,12'
          Dst:             hmap_next__
    - functionName:    hash_name
      functionSourceFile: '/src/openvswitch/lib/simap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 262
      functionLinenumberEnd: 263
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_bytes
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/simap.c:263,12'
          Dst:             hash_bytes
    - functionName:    hmap_next
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 429
      functionLinenumberEnd: 432
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_next__
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:432,15'
          Dst:             hmap_next__
    - functionName:    simap_equal
      functionSourceFile: '/src/openvswitch/lib/simap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 232
      functionLinenumberEnd: 245
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          99
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - hmap_first
        - hmap_next
        - simap_count
        - simap_find
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/simap.c:233,9'
          Dst:             simap_count
        - Src:             'lib/simap.c:233,27'
          Dst:             simap_count
        - Src:             'lib/simap.c:238,5'
          Dst:             hmap_first
        - Src:             'lib/simap.c:239,39'
          Dst:             simap_find
        - Src:             'lib/simap.c:238,5'
          Dst:             hmap_next
    - functionName:    simap_count
      functionSourceFile: '/src/openvswitch/lib/simap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 87
      functionLinenumberEnd: 89
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_count
        - ovs_ignore
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/simap.c:88,5'
          Dst:             ovs_ignore
        - Src:             'lib/simap.c:89,12'
          Dst:             hmap_count
    - functionName:    simap_find
      functionSourceFile: '/src/openvswitch/lib/simap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 169
      functionLinenumberEnd: 170
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - simap_find_len
        - strlen
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/simap.c:170,40'
          Dst:             strlen
        - Src:             'lib/simap.c:170,12'
          Dst:             simap_find_len
    - functionName:    simap_find_len
      functionSourceFile: '/src/openvswitch/lib/simap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 177
      functionLinenumberEnd: 178
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_name
        - simap_find__
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/simap.c:178,43'
          Dst:             hash_name
        - Src:             'lib/simap.c:178,12'
          Dst:             simap_find__
    - functionName:    simap_find__
      functionSourceFile: '/src/openvswitch/lib/simap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 269
      functionLinenumberEnd: 278
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          93
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - hmap_first_with_hash
        - hmap_next_with_hash
        - strncmp
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/simap.c:272,5'
          Dst:             hmap_first_with_hash
        - Src:             'lib/simap.c:273,14'
          Dst:             strncmp
        - Src:             'lib/simap.c:272,5'
          Dst:             hmap_next_with_hash
    - functionName:    hmap_count
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 263
      functionLinenumberEnd: 264
      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:    compare_nodes_by_name
      functionSourceFile: '/src/openvswitch/lib/simap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 293
      functionLinenumberEnd: 296
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/simap.c:296,12'
          Dst:             strcmp
    - functionName:    simap_sort
      functionSourceFile: '/src/openvswitch/lib/simap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 206
      functionLinenumberEnd: 226
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          91
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - compare_nodes_by_name
        - hmap_first
        - hmap_next
        - ovs_ignore
        - qsort
        - simap_count
        - simap_is_empty
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/simap.c:207,9'
          Dst:             simap_is_empty
        - Src:             'lib/simap.c:214,13'
          Dst:             simap_count
        - Src:             'lib/simap.c:215,17'
          Dst:             xmalloc
        - Src:             'lib/simap.c:217,9'
          Dst:             hmap_first
        - Src:             'lib/simap.c:217,9'
          Dst:             hmap_next
        - Src:             'lib/simap.c:220,9'
          Dst:             ovs_ignore
        - Src:             'lib/simap.c:222,9'
          Dst:             qsort
        - Src:             'lib/simap.c:222,9'
          Dst:             compare_nodes_by_name
    - functionName:    simap_is_empty
      functionSourceFile: '/src/openvswitch/lib/simap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 80
      functionLinenumberEnd: 81
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_is_empty
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/simap.c:81,12'
          Dst:             hmap_is_empty
    - functionName:    hmap_is_empty
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 281
      functionLinenumberEnd: 282
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    simap_contains
      functionSourceFile: '/src/openvswitch/lib/simap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 193
      functionLinenumberEnd: 194
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - simap_find
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/simap.c:194,12'
          Dst:             simap_find
    - functionName:    simap_get
      functionSourceFile: '/src/openvswitch/lib/simap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 185
      functionLinenumberEnd: 187
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - simap_find
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/simap.c:186,31'
          Dst:             simap_find
    - functionName:    simap_find_and_delete
      functionSourceFile: '/src/openvswitch/lib/simap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 163
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - simap_delete
        - simap_find
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/simap.c:157,31'
          Dst:             simap_find
        - Src:             'lib/simap.c:159,9'
          Dst:             simap_delete
    - functionName:    simap_delete
      functionSourceFile: '/src/openvswitch/lib/simap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 146
      functionLinenumberEnd: 150
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_remove
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/simap.c:147,5'
          Dst:             hmap_remove
    - functionName:    hmap_remove
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 317
      functionLinenumberEnd: 324
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          48
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    simap_increase
      functionSourceFile: '/src/openvswitch/lib/simap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 124
      functionLinenumberEnd: 141
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          74
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - hash_name
        - simap_add_nocopy__
        - simap_find__
        - strlen
        - xmemdup0
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/simap.c:126,25'
          Dst:             strlen
        - Src:             'lib/simap.c:127,23'
          Dst:             hash_name
        - Src:             'lib/simap.c:130,16'
          Dst:             simap_find__
        - Src:             'lib/simap.c:134,46'
          Dst:             xmemdup0
        - Src:             'lib/simap.c:134,20'
          Dst:             simap_add_nocopy__
    - functionName:    simap_add_nocopy__
      functionSourceFile: '/src/openvswitch/lib/simap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 283
      functionLinenumberEnd: 288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_insert_at
        - xmalloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/simap.c:284,31'
          Dst:             xmalloc
        - Src:             'lib/simap.c:287,5'
          Dst:             hmap_insert_at
    - functionName:    simap_put
      functionSourceFile: '/src/openvswitch/lib/simap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 99
      functionLinenumberEnd: 112
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          59
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hash_name
        - simap_add_nocopy__
        - simap_find__
        - strlen
        - xmemdup0
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/simap.c:100,21'
          Dst:             strlen
        - Src:             'lib/simap.c:101,19'
          Dst:             hash_name
        - Src:             'lib/simap.c:104,12'
          Dst:             simap_find__
        - Src:             'lib/simap.c:109,35'
          Dst:             xmemdup0
        - Src:             'lib/simap.c:109,9'
          Dst:             simap_add_nocopy__
    - functionName:    simap_moved
      functionSourceFile: '/src/openvswitch/lib/simap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 59
      functionLinenumberEnd: 61
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_moved
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/simap.c:60,5'
          Dst:             hmap_moved
    - functionName:    simap_swap
      functionSourceFile: '/src/openvswitch/lib/simap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51
      functionLinenumberEnd: 53
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_swap
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/simap.c:52,5'
          Dst:             hmap_swap
    - functionName:    simap_clear
      functionSourceFile: '/src/openvswitch/lib/simap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          67
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - hmap_first
        - hmap_next
        - hmap_remove
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/simap.c:69,5'
          Dst:             hmap_first
        - Src:             'lib/simap.c:69,5'
          Dst:             hmap_next
        - Src:             'lib/simap.c:70,9'
          Dst:             hmap_remove
    - functionName:    simap_destroy
      functionSourceFile: '/src/openvswitch/lib/simap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41
      functionLinenumberEnd: 46
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_destroy
        - simap_clear
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/simap.c:43,9'
          Dst:             simap_clear
        - Src:             'lib/simap.c:44,9'
          Dst:             hmap_destroy
    - functionName:    simap_init
      functionSourceFile: '/src/openvswitch/lib/simap.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_init
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/simap.c:35,5'
          Dst:             hmap_init
    - functionName:    init_this_module_stream
      functionSourceFile: '/src/openvswitch/lib/stream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 44
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream.c:44,1'
          Dst:             vlog_insert_module
    - functionName:    pstream_open_init_coverage
      functionSourceFile: '/src/openvswitch/lib/stream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 46
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream.c:46,1'
          Dst:             coverage_counter_register
    - functionName:    stream_open_init_coverage
      functionSourceFile: '/src/openvswitch/lib/stream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 47
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream.c:47,1'
          Dst:             coverage_counter_register
    - functionName:    stream_open_count
      functionSourceFile: '/src/openvswitch/lib/stream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 47
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_stream_open_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream.c:47,1'
          Dst:             counter_stream_open_get
    - functionName:    counter_stream_open_get
      functionSourceFile: '/src/openvswitch/lib/stream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 47
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_stream_open_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream.c:47,1'
          Dst:             counter_stream_open_get_unsafe
    - functionName:    counter_stream_open_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/stream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 47
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pstream_open_count
      functionSourceFile: '/src/openvswitch/lib/stream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 46
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_pstream_open_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream.c:46,1'
          Dst:             counter_pstream_open_get
    - functionName:    counter_pstream_open_get
      functionSourceFile: '/src/openvswitch/lib/stream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 46
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_pstream_open_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream.c:46,1'
          Dst:             counter_pstream_open_get_unsafe
    - functionName:    counter_pstream_open_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/stream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 46
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    check_stream_classes
      functionSourceFile: '/src/openvswitch/lib/stream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 76
      functionLinenumberEnd: 108
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          4
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    stream_content_type_to_string
      functionSourceFile: '/src/openvswitch/lib/stream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 817
      functionLinenumberEnd: 832
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          37
      EdgeCount:       14
      CyclomaticComplexity: 8
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/stream.c:818,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    stream_guess_content
      functionSourceFile: '/src/openvswitch/lib/stream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 798
      functionLinenumberEnd: 812
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          52
      EdgeCount:       17
      CyclomaticComplexity: 10
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/stream.c:801,9'
          Branch Sides:    []
      Callsites:       []
    - functionName:    stream_report_content
      functionSourceFile: '/src/openvswitch/lib/stream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 843
      functionLinenumberEnd: 855
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          54
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - stream_content_type_to_string
        - stream_guess_content
        - vlog_rate_limit
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream.c:847,19'
          Dst:             stream_guess_content
        - Src:             'lib/stream.c:852,25'
          Dst:             stream_content_type_to_string
        - Src:             'lib/stream.c:853,25'
          Dst:             stream_content_type_to_string
        - Src:             'lib/stream.c:849,9'
          Dst:             vlog_rate_limit
    - functionName:    stream_parse_target_with_default_port
      functionSourceFile: '/src/openvswitch/lib/stream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 789
      functionLinenumberEnd: 791
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          46
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - inet_parse_active
        - strncmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream.c:790,15'
          Dst:             strncmp
        - Src:             'lib/stream.c:790,46'
          Dst:             strncmp
        - Src:             'lib/stream.c:791,16'
          Dst:             inet_parse_active
    - functionName:    pstream_open_with_default_port
      functionSourceFile: '/src/openvswitch/lib/stream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 762
      functionLinenumberEnd: 775
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - short
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          73
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - count_fields
        - pstream_open
        - strncmp
        - xasprintf
        - xstrdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream.c:766,11'
          Dst:             strncmp
        - Src:             'lib/stream.c:766,42'
          Dst:             strncmp
        - Src:             'lib/stream.c:767,12'
          Dst:             count_fields
        - Src:             'lib/stream.c:768,16'
          Dst:             xasprintf
        - Src:             'lib/stream.c:770,16'
          Dst:             xstrdup
        - Src:             'lib/stream.c:772,13'
          Dst:             pstream_open
    - functionName:    count_fields
      functionSourceFile: '/src/openvswitch/lib/stream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 708
      functionLinenumberEnd: 720
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          45
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - strtok_r
        - xstrdup
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream.c:713,9'
          Dst:             xstrdup
        - Src:             'lib/stream.c:714,18'
          Dst:             strtok_r
        - Src:             'lib/stream.c:715,18'
          Dst:             strtok_r
    - functionName:    pstream_open
      functionSourceFile: '/src/openvswitch/lib/stream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 548
      functionLinenumberEnd: 579
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          77
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - pstream_lookup_class
        - pstream_open_add
        - pstream_replay_open_wfd
        - strchr
        - xstrdup
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream.c:554,5'
          Dst:             pstream_open_add
        - Src:             'lib/stream.c:557,13'
          Dst:             pstream_lookup_class
        - Src:             'lib/stream.c:563,27'
          Dst:             strchr
        - Src:             'lib/stream.c:563,19'
          Dst:             xstrdup
        - Src:             'lib/stream.c:567,5'
          Dst:             pstream_replay_open_wfd
    - functionName:    pstream_open_add
      functionSourceFile: '/src/openvswitch/lib/stream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 46
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_pstream_open_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream.c:46,1'
          Dst:             counter_pstream_open_get
    - functionName:    pstream_lookup_class
      functionSourceFile: '/src/openvswitch/lib/stream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 485
      functionLinenumberEnd: 509
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          106
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - check_stream_classes
        - memcmp
        - ovs_replay_get_state
        - strcspn
        - strlen
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream.c:489,5'
          Dst:             check_stream_classes
        - Src:             'lib/stream.c:492,18'
          Dst:             strcspn
        - Src:             'lib/stream.c:498,13'
          Dst:             strlen
        - Src:             'lib/stream.c:499,17'
          Dst:             memcmp
        - Src:             'lib/stream.c:500,17'
          Dst:             ovs_replay_get_state
    - functionName:    ovsthread_once_start
      functionSourceFile: '/src/openvswitch/./include/openvswitch/thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsthread_once_start__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/thread.h:161,12'
          Dst:             ovsthread_once_start__
    - functionName:    stream_open_with_default_port
      functionSourceFile: '/src/openvswitch/lib/stream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 730
      functionLinenumberEnd: 752
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - short
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          121
      EdgeCount:       35
      CyclomaticComplexity: 9
      functionsReached:
        - count_fields
        - ovsthread_once_done
        - ovsthread_once_start
        - stream_open
        - strncmp
        - vlog
        - xasprintf
        - xstrdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream.c:734,11'
          Dst:             strncmp
        - Src:             'lib/stream.c:734,41'
          Dst:             strncmp
        - Src:             'lib/stream.c:735,12'
          Dst:             count_fields
        - Src:             'lib/stream.c:737,13'
          Dst:             ovsthread_once_start
        - Src:             'lib/stream.c:737,13'
          Dst:             vlog
        - Src:             'lib/stream.c:737,13'
          Dst:             ovsthread_once_done
        - Src:             'lib/stream.c:741,13'
          Dst:             ovsthread_once_start
        - Src:             'lib/stream.c:741,13'
          Dst:             vlog
        - Src:             'lib/stream.c:741,13'
          Dst:             ovsthread_once_done
        - Src:             'lib/stream.c:745,16'
          Dst:             xasprintf
        - Src:             'lib/stream.c:747,16'
          Dst:             xstrdup
        - Src:             'lib/stream.c:749,13'
          Dst:             stream_open
    - functionName:    stream_open
      functionSourceFile: '/src/openvswitch/lib/stream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 217
      functionLinenumberEnd: 248
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          77
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - strchr
        - stream_lookup_class
        - stream_open_add
        - stream_replay_open_wfd
        - xstrdup
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream.c:223,5'
          Dst:             stream_open_add
        - Src:             'lib/stream.c:226,13'
          Dst:             stream_lookup_class
        - Src:             'lib/stream.c:232,27'
          Dst:             strchr
        - Src:             'lib/stream.c:232,19'
          Dst:             xstrdup
        - Src:             'lib/stream.c:236,5'
          Dst:             stream_replay_open_wfd
    - functionName:    stream_open_add
      functionSourceFile: '/src/openvswitch/lib/stream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 47
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_stream_open_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream.c:47,1'
          Dst:             counter_stream_open_get
    - functionName:    stream_lookup_class
      functionSourceFile: '/src/openvswitch/lib/stream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 173
      functionLinenumberEnd: 197
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          106
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - check_stream_classes
        - memcmp
        - ovs_replay_get_state
        - strcspn
        - strlen
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream.c:177,5'
          Dst:             check_stream_classes
        - Src:             'lib/stream.c:180,18'
          Dst:             strcspn
        - Src:             'lib/stream.c:186,13'
          Dst:             strlen
        - Src:             'lib/stream.c:187,17'
          Dst:             memcmp
        - Src:             'lib/stream.c:188,17'
          Dst:             ovs_replay_get_state
    - functionName:    pstream_set_bound_port
      functionSourceFile: '/src/openvswitch/lib/stream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 702
      functionLinenumberEnd: 704
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pstream_init
      functionSourceFile: '/src/openvswitch/lib/stream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 694
      functionLinenumberEnd: 698
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          20
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    stream_init
      functionSourceFile: '/src/openvswitch/lib/stream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 679
      functionLinenumberEnd: 688
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          75
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ovs_ignore
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream.c:687,5'
          Dst:             ovs_ignore
    - functionName:    pstream_get_bound_port
      functionSourceFile: '/src/openvswitch/lib/stream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 655
      functionLinenumberEnd: 656
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pstream_wait
      functionSourceFile: '/src/openvswitch/lib/stream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 647
      functionLinenumberEnd: 649
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pstream_accept_block
      functionSourceFile: '/src/openvswitch/lib/stream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 631
      functionLinenumberEnd: 642
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          46
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - fatal_signal_run
        - poll_block
        - pstream_accept
        - pstream_wait
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream.c:634,5'
          Dst:             fatal_signal_run
        - Src:             'lib/stream.c:635,21'
          Dst:             pstream_accept
        - Src:             'lib/stream.c:636,9'
          Dst:             pstream_wait
        - Src:             'lib/stream.c:637,9'
          Dst:             poll_block
    - functionName:    pstream_accept
      functionSourceFile: '/src/openvswitch/lib/stream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 609
      functionLinenumberEnd: 620
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          77
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ovs_ignore
        - pstream_replay_write_accept
        - stream_replay_open_wfd
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream.c:613,9'
          Dst:             pstream_replay_write_accept
        - Src:             'lib/stream.c:615,9'
          Dst:             ovs_ignore
        - Src:             'lib/stream.c:617,9'
          Dst:             pstream_replay_write_accept
        - Src:             'lib/stream.c:618,9'
          Dst:             stream_replay_open_wfd
    - functionName:    pstream_close
      functionSourceFile: '/src/openvswitch/lib/stream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 592
      functionLinenumberEnd: 599
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - pstream_replay_close_wfd
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream.c:595,9'
          Dst:             pstream_replay_close_wfd
    - functionName:    pstream_get_name
      functionSourceFile: '/src/openvswitch/lib/stream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 585
      functionLinenumberEnd: 586
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    stream_or_pstream_needs_probes
      functionSourceFile: '/src/openvswitch/lib/stream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 526
      functionLinenumberEnd: 537
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          52
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - pstream_lookup_class
        - stream_lookup_class
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream.c:530,10'
          Dst:             stream_lookup_class
        - Src:             'lib/stream.c:532,17'
          Dst:             pstream_lookup_class
    - functionName:    pstream_verify_name
      functionSourceFile: '/src/openvswitch/lib/stream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 515
      functionLinenumberEnd: 517
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - pstream_lookup_class
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream.c:517,12'
          Dst:             pstream_lookup_class
    - functionName:    stream_get_peer_id
      functionSourceFile: '/src/openvswitch/lib/stream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 475
      functionLinenumberEnd: 476
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    stream_set_peer_id
      functionSourceFile: '/src/openvswitch/lib/stream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 468
      functionLinenumberEnd: 471
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - xstrdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream.c:470,23'
          Dst:             xstrdup
    - functionName:    stream_send_wait
      functionSourceFile: '/src/openvswitch/lib/stream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 462
      functionLinenumberEnd: 464
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - stream_wait
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream.c:463,5'
          Dst:             stream_wait
    - functionName:    stream_wait
      functionSourceFile: '/src/openvswitch/lib/stream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 432
      functionLinenumberEnd: 446
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          71
      EdgeCount:       14
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
        - poll_immediate_wake_at
      functionUses:    3
      BranchProfiles:
        - Branch String:   'lib/stream.c:436,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/stream.c:433,5'
          Dst:             ovs_ignore
        - Src:             'lib/stream.c:442,9'
          Dst:             poll_immediate_wake_at
    - functionName:    stream_recv_wait
      functionSourceFile: '/src/openvswitch/lib/stream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 456
      functionLinenumberEnd: 458
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - stream_wait
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream.c:457,5'
          Dst:             stream_wait
    - functionName:    stream_send
      functionSourceFile: '/src/openvswitch/lib/stream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 398
      functionLinenumberEnd: 405
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          65
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - stream_connect
        - stream_replay_write
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream.c:399,18'
          Dst:             stream_connect
        - Src:             'lib/stream.c:404,5'
          Dst:             stream_replay_write
    - functionName:    stream_connect
      functionSourceFile: '/src/openvswitch/lib/stream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 339
      functionLinenumberEnd: 361
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          64
      EdgeCount:       25
      CyclomaticComplexity: 14
      functionsReached:
        - abort
        - scs_connecting
      functionUses:    6
      BranchProfiles:
        - Branch String:   'lib/stream.c:344,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/stream.c:346,13'
          Dst:             scs_connecting
        - Src:             'lib/stream.c:356,13'
          Dst:             abort
    - functionName:    scs_connecting
      functionSourceFile: '/src/openvswitch/lib/stream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 322
      functionLinenumberEnd: 331
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          59
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream.c:324,5'
          Dst:             ovs_ignore
    - functionName:    stream_recv
      functionSourceFile: '/src/openvswitch/lib/stream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 376
      functionLinenumberEnd: 384
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          65
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - stream_connect
        - stream_replay_write
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream.c:377,18'
          Dst:             stream_connect
        - Src:             'lib/stream.c:383,5'
          Dst:             stream_replay_write
    - functionName:    stream_get_name
      functionSourceFile: '/src/openvswitch/lib/stream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 316
      functionLinenumberEnd: 317
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          21
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    stream_close
      functionSourceFile: '/src/openvswitch/lib/stream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 301
      functionLinenumberEnd: 310
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - stream_replay_close_wfd
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream.c:305,9'
          Dst:             stream_replay_close_wfd
    - functionName:    stream_connect_wait
      functionSourceFile: '/src/openvswitch/lib/stream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 450
      functionLinenumberEnd: 452
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - stream_wait
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream.c:451,5'
          Dst:             stream_wait
    - functionName:    stream_run_wait
      functionSourceFile: '/src/openvswitch/lib/stream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 422
      functionLinenumberEnd: 426
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    stream_run
      functionSourceFile: '/src/openvswitch/lib/stream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 412
      functionLinenumberEnd: 416
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    stream_open_block
      functionSourceFile: '/src/openvswitch/lib/stream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 264
      functionLinenumberEnd: 295
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          128
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - fatal_signal_run
        - ovs_ignore
        - poll_block
        - poll_timer_wait_until_at
        - stream_close
        - stream_connect
        - stream_connect_wait
        - stream_run
        - stream_run_wait
        - time_msec
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream.c:267,5'
          Dst:             fatal_signal_run
        - Src:             'lib/stream.c:271,37'
          Dst:             time_msec
        - Src:             'lib/stream.c:273,25'
          Dst:             stream_connect
        - Src:             'lib/stream.c:274,42'
          Dst:             time_msec
        - Src:             'lib/stream.c:278,13'
          Dst:             stream_run
        - Src:             'lib/stream.c:279,13'
          Dst:             stream_run_wait
        - Src:             'lib/stream.c:280,13'
          Dst:             stream_connect_wait
        - Src:             'lib/stream.c:282,17'
          Dst:             poll_timer_wait_until_at
        - Src:             'lib/stream.c:284,13'
          Dst:             poll_block
        - Src:             'lib/stream.c:286,9'
          Dst:             ovs_ignore
        - Src:             'lib/stream.c:290,9'
          Dst:             stream_close
    - functionName:    stream_verify_name
      functionSourceFile: '/src/openvswitch/lib/stream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 203
      functionLinenumberEnd: 205
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - stream_lookup_class
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream.c:205,12'
          Dst:             stream_lookup_class
    - functionName:    stream_usage
      functionSourceFile: '/src/openvswitch/lib/stream.c'
      linkageType:     InternalLinkage
      functionLinenumber: 115
      functionLinenumberEnd: 165
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - bool
        - bool
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          70
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - printf
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream.c:120,5'
          Dst:             printf
        - Src:             'lib/stream.c:122,9'
          Dst:             printf
        - Src:             'lib/stream.c:123,9'
          Dst:             printf
        - Src:             'lib/stream.c:126,9'
          Dst:             printf
        - Src:             'lib/stream.c:129,9'
          Dst:             printf
        - Src:             'lib/stream.c:134,9'
          Dst:             printf
        - Src:             'lib/stream.c:135,9'
          Dst:             printf
        - Src:             'lib/stream.c:138,9'
          Dst:             printf
        - Src:             'lib/stream.c:141,9'
          Dst:             printf
        - Src:             'lib/stream.c:143,9'
          Dst:             printf
        - Src:             'lib/stream.c:148,5'
          Dst:             printf
        - Src:             'lib/stream.c:153,9'
          Dst:             printf
        - Src:             'lib/stream.c:156,5'
          Dst:             printf
    - functionName:    init_this_module_svec
      functionSourceFile: '/src/openvswitch/lib/svec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27
      functionLinenumberEnd: 27
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/svec.c:27,1'
          Dst:             vlog_insert_module
    - functionName:    svec_pop_back
      functionSourceFile: '/src/openvswitch/lib/svec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 414
      functionLinenumberEnd: 417
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/svec.c:415,5'
          Dst:             ovs_ignore
    - functionName:    svec_back
      functionSourceFile: '/src/openvswitch/lib/svec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 407
      functionLinenumberEnd: 409
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/svec.c:408,5'
          Dst:             ovs_ignore
    - functionName:    svec_join
      functionSourceFile: '/src/openvswitch/lib/svec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 390
      functionLinenumberEnd: 402
      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:
        - ds_cstr
        - ds_init
        - ds_put_cstr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/svec.c:394,5'
          Dst:             ds_init
        - Src:             'lib/svec.c:397,13'
          Dst:             ds_put_cstr
        - Src:             'lib/svec.c:399,9'
          Dst:             ds_put_cstr
        - Src:             'lib/svec.c:401,5'
          Dst:             ds_put_cstr
        - Src:             'lib/svec.c:402,12'
          Dst:             ds_cstr
    - functionName:    svec_equal
      functionSourceFile: '/src/openvswitch/lib/svec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 373
      functionLinenumberEnd: 385
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          75
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - strcmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/svec.c:380,13'
          Dst:             strcmp
    - functionName:    ds_put_char
      functionSourceFile: '/src/openvswitch/./include/openvswitch/dynamic-string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_char__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/dynamic-string.h:99,9'
          Dst:             ds_put_char__
    - functionName:    svec_parse_words
      functionSourceFile: '/src/openvswitch/lib/svec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 329
      functionLinenumberEnd: 369
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         57
      ICount:          278
      EdgeCount:       73
      CyclomaticComplexity: 18
      functionsReached:
        - __ctype_b_loc
        - ds_clear
        - ds_cstr
        - ds_destroy
        - ds_put_char
        - svec_add
        - vlog
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/svec.c:336,16'
          Dst:             __ctype_b_loc
        - Src:             'lib/svec.c:343,9'
          Dst:             ds_clear
        - Src:             'lib/svec.c:352,21'
          Dst:             vlog
        - Src:             'lib/svec.c:355,17'
          Dst:             ds_put_char
        - Src:             'lib/svec.c:356,24'
          Dst:             __ctype_b_loc
        - Src:             'lib/svec.c:360,17'
          Dst:             ds_put_char
        - Src:             'lib/svec.c:363,24'
          Dst:             ds_cstr
        - Src:             'lib/svec.c:363,9'
          Dst:             svec_add
        - Src:             'lib/svec.c:365,13'
          Dst:             vlog
        - Src:             'lib/svec.c:368,5'
          Dst:             ds_destroy
    - functionName:    svec_add
      functionSourceFile: '/src/openvswitch/lib/svec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 70
      functionLinenumberEnd: 72
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - svec_add_nocopy
        - xstrdup
      functionUses:    16
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/svec.c:71,27'
          Dst:             xstrdup
        - Src:             'lib/svec.c:71,5'
          Dst:             svec_add_nocopy
    - functionName:    svec_add_nocopy
      functionSourceFile: '/src/openvswitch/lib/svec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 99
      functionLinenumberEnd: 102
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - svec_expand
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/svec.c:100,5'
          Dst:             svec_expand
    - functionName:    svec_expand
      functionSourceFile: '/src/openvswitch/lib/svec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 90
      functionLinenumberEnd: 95
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - x2nrealloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/svec.c:92,23'
          Dst:             x2nrealloc
    - functionName:    svec_print
      functionSourceFile: '/src/openvswitch/lib/svec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 316
      functionLinenumberEnd: 323
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          45
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - printf
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/svec.c:319,5'
          Dst:             printf
        - Src:             'lib/svec.c:321,9'
          Dst:             printf
    - functionName:    svec_get_duplicate
      functionSourceFile: '/src/openvswitch/lib/svec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 293
      functionLinenumberEnd: 304
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          80
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - ovs_ignore
        - strcmp
        - svec_is_sorted
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/svec.c:294,16'
          Dst:             svec_is_sorted
        - Src:             'lib/svec.c:294,5'
          Dst:             ovs_ignore
        - Src:             'lib/svec.c:298,18'
          Dst:             strcmp
    - functionName:    svec_is_sorted
      functionSourceFile: '/src/openvswitch/lib/svec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 274
      functionLinenumberEnd: 283
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          60
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - strcmp
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/svec.c:278,13'
          Dst:             strcmp
    - functionName:    svec_is_unique
      functionSourceFile: '/src/openvswitch/lib/svec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 287
      functionLinenumberEnd: 288
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - svec_get_duplicate
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/svec.c:288,12'
          Dst:             svec_get_duplicate
    - functionName:    svec_contains_unsorted
      functionSourceFile: '/src/openvswitch/lib/svec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 252
      functionLinenumberEnd: 259
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          56
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/svec.c:254,14'
          Dst:             strcmp
    - functionName:    svec_contains
      functionSourceFile: '/src/openvswitch/lib/svec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 246
      functionLinenumberEnd: 247
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - svec_find
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/svec.c:247,12'
          Dst:             svec_find
    - functionName:    svec_find
      functionSourceFile: '/src/openvswitch/lib/svec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 263
      functionLinenumberEnd: 269
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - bsearch
        - compare_strings
        - ovs_ignore
        - svec_is_sorted
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/svec.c:266,16'
          Dst:             svec_is_sorted
        - Src:             'lib/svec.c:266,5'
          Dst:             ovs_ignore
        - Src:             'lib/svec.c:267,9'
          Dst:             bsearch
        - Src:             'lib/svec.c:267,9'
          Dst:             compare_strings
    - functionName:    compare_strings
      functionSourceFile: '/src/openvswitch/lib/svec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 122
      functionLinenumberEnd: 125
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - strcmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/svec.c:125,12'
          Dst:             strcmp
    - functionName:    bsearch
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    svec_diff
      functionSourceFile: '/src/openvswitch/lib/svec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 198
      functionLinenumberEnd: 242
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         47
      ICount:          261
      EdgeCount:       61
      CyclomaticComplexity: 16
      functionsReached:
        - ovs_ignore
        - strcmp
        - svec_add
        - svec_init
        - svec_is_sorted
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/svec.c:201,16'
          Dst:             svec_is_sorted
        - Src:             'lib/svec.c:201,5'
          Dst:             ovs_ignore
        - Src:             'lib/svec.c:202,16'
          Dst:             svec_is_sorted
        - Src:             'lib/svec.c:202,5'
          Dst:             ovs_ignore
        - Src:             'lib/svec.c:204,9'
          Dst:             svec_init
        - Src:             'lib/svec.c:207,9'
          Dst:             svec_init
        - Src:             'lib/svec.c:210,9'
          Dst:             svec_init
        - Src:             'lib/svec.c:213,19'
          Dst:             strcmp
        - Src:             'lib/svec.c:216,17'
          Dst:             svec_add
        - Src:             'lib/svec.c:221,17'
          Dst:             svec_add
        - Src:             'lib/svec.c:226,17'
          Dst:             svec_add
        - Src:             'lib/svec.c:234,13'
          Dst:             svec_add
        - Src:             'lib/svec.c:239,13'
          Dst:             svec_add
    - functionName:    svec_init
      functionSourceFile: '/src/openvswitch/lib/svec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 35
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    swap_strings
      functionSourceFile: '/src/openvswitch/lib/svec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 180
      functionLinenumberEnd: 184
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          19
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    random_range
      functionSourceFile: '/src/openvswitch/lib/random.h'
      linkageType:     InternalLinkage
      functionLinenumber: 32
      functionLinenumberEnd: 33
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - random_uint32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/random.h:33,12'
          Dst:             random_uint32
    - functionName:    svec_shuffle
      functionSourceFile: '/src/openvswitch/lib/svec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 188
      functionLinenumberEnd: 193
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          57
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - random_range
        - swap_strings
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/svec.c:190,24'
          Dst:             random_range
        - Src:             'lib/svec.c:191,9'
          Dst:             swap_strings
    - functionName:    svec_compact
      functionSourceFile: '/src/openvswitch/lib/svec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 167
      functionLinenumberEnd: 176
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          63
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    svec_swap
      functionSourceFile: '/src/openvswitch/lib/svec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 308
      functionLinenumberEnd: 312
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    svec_unique
      functionSourceFile: '/src/openvswitch/lib/svec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 145
      functionLinenumberEnd: 163
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          91
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - ovs_ignore
        - strcmp
        - svec_add
        - svec_destroy
        - svec_init
        - svec_is_sorted
        - svec_swap
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/svec.c:146,16'
          Dst:             svec_is_sorted
        - Src:             'lib/svec.c:146,5'
          Dst:             ovs_ignore
        - Src:             'lib/svec.c:153,9'
          Dst:             svec_init
        - Src:             'lib/svec.c:154,9'
          Dst:             svec_add
        - Src:             'lib/svec.c:156,17'
          Dst:             strcmp
        - Src:             'lib/svec.c:157,17'
          Dst:             svec_add
        - Src:             'lib/svec.c:160,9'
          Dst:             svec_swap
        - Src:             'lib/svec.c:161,9'
          Dst:             svec_destroy
    - functionName:    svec_destroy
      functionSourceFile: '/src/openvswitch/lib/svec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 49
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - svec_clear
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/svec.c:47,5'
          Dst:             svec_clear
    - functionName:    svec_clear
      functionSourceFile: '/src/openvswitch/lib/svec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 60
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          44
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    svec_sort_unique
      functionSourceFile: '/src/openvswitch/lib/svec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 138
      functionLinenumberEnd: 141
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - svec_sort
        - svec_unique
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/svec.c:139,5'
          Dst:             svec_sort
        - Src:             'lib/svec.c:140,5'
          Dst:             svec_unique
    - functionName:    svec_sort
      functionSourceFile: '/src/openvswitch/lib/svec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 130
      functionLinenumberEnd: 134
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - compare_strings
        - qsort
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/svec.c:132,9'
          Dst:             qsort
        - Src:             'lib/svec.c:132,9'
          Dst:             compare_strings
    - functionName:    svec_terminate
      functionSourceFile: '/src/openvswitch/lib/svec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 115
      functionLinenumberEnd: 118
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - svec_expand
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/svec.c:116,5'
          Dst:             svec_expand
    - functionName:    svec_del
      functionSourceFile: '/src/openvswitch/lib/svec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 76
      functionLinenumberEnd: 86
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          63
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - svec_find
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/svec.c:79,14'
          Dst:             svec_find
    - functionName:    svec_is_empty
      functionSourceFile: '/src/openvswitch/lib/svec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 65
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    svec_append
      functionSourceFile: '/src/openvswitch/lib/svec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 106
      functionLinenumberEnd: 111
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          44
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - svec_add
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/svec.c:109,9'
          Dst:             svec_add
    - functionName:    svec_clone
      functionSourceFile: '/src/openvswitch/lib/svec.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 42
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - svec_append
        - svec_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/svec.c:40,5'
          Dst:             svec_init
        - Src:             'lib/svec.c:41,5'
          Dst:             svec_append
    - functionName:    syslog_direct_log
      functionSourceFile: '/src/openvswitch/lib/syslog-direct.c'
      linkageType:     InternalLinkage
      functionLinenumber: 81
      functionLinenumberEnd: 110
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          117
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - __errno_location
        - ds_cstr
        - ds_destroy
        - ds_put_format
        - send
        - strlen
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/syslog-direct.c:99,5'
          Dst:             ds_put_format
        - Src:             'lib/syslog-direct.c:100,16'
          Dst:             ds_cstr
        - Src:             'lib/syslog-direct.c:101,16'
          Dst:             strlen
        - Src:             'lib/syslog-direct.c:101,16'
          Dst:             strlen
        - Src:             'lib/syslog-direct.c:102,12'
          Dst:             send
        - Src:             'lib/syslog-direct.c:102,58'
          Dst:             __errno_location
        - Src:             'lib/syslog-direct.c:109,5'
          Dst:             ds_destroy
    - functionName:    syslog_direct_open
      functionSourceFile: '/src/openvswitch/lib/syslog-direct.c'
      linkageType:     InternalLinkage
      functionLinenumber: 73
      functionLinenumberEnd: 77
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    syslog_direct_create
      functionSourceFile: '/src/openvswitch/lib/syslog-direct.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51
      functionLinenumberEnd: 68
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          63
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - inet_open_active
        - make_unix_socket
        - strncmp
        - xmalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/syslog-direct.c:52,34'
          Dst:             xmalloc
        - Src:             'lib/syslog-direct.c:60,10'
          Dst:             strncmp
        - Src:             'lib/syslog-direct.c:61,9'
          Dst:             inet_open_active
        - Src:             'lib/syslog-direct.c:62,17'
          Dst:             strncmp
        - Src:             'lib/syslog-direct.c:63,20'
          Dst:             make_unix_socket
    - functionName:    syslog_libc_log
      functionSourceFile: '/src/openvswitch/lib/syslog-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - syslog
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/syslog-libc.c:75,5'
          Dst:             syslog
    - functionName:    syslog
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    syslog_libc_open
      functionSourceFile: '/src/openvswitch/lib/syslog-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 59
      functionLinenumberEnd: 70
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nullable_xstrdup
        - openlog
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/syslog-libc.c:67,13'
          Dst:             nullable_xstrdup
        - Src:             'lib/syslog-libc.c:69,5'
          Dst:             openlog
    - functionName:    openlog
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    syslog_libc_create
      functionSourceFile: '/src/openvswitch/lib/syslog-libc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - xmalloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/syslog-libc.c:49,32'
          Dst:             xmalloc
    - functionName:    syslog_null_log
      functionSourceFile: '/src/openvswitch/lib/syslog-null.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58
      functionLinenumberEnd: 60
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    syslog_null_open
      functionSourceFile: '/src/openvswitch/lib/syslog-null.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51
      functionLinenumberEnd: 53
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    syslog_null_create
      functionSourceFile: '/src/openvswitch/lib/syslog-null.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40
      functionLinenumberEnd: 46
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - xmalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/syslog-null.c:41,32'
          Dst:             xmalloc
    - functionName:    timer_wait_at
      functionSourceFile: '/src/openvswitch/lib/timer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42
      functionLinenumberEnd: 46
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - poll_timer_wait_until_at
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/timer.c:44,9'
          Dst:             poll_timer_wait_until_at
    - functionName:    timer_msecs_until_expired
      functionSourceFile: '/src/openvswitch/lib/timer.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27
      functionLinenumberEnd: 33
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          40
      EdgeCount:       13
      CyclomaticComplexity: 8
      functionsReached:
        - time_msec
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib/timer.c:28,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/timer.c:31,32'
          Dst:             time_msec
    - functionName:    in6_addr_set_mapped_ipv4
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1225
      functionLinenumberEnd: 1227
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - in6_addr_mapped_ipv4
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:1226,12'
          Dst:             in6_addr_mapped_ipv4
    - functionName:    in6_addr_mapped_ipv4
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1215
      functionLinenumberEnd: 1220
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          20
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    lookup_any
      functionSourceFile: '/src/openvswitch/lib/tnl-neigh-cache.c'
      linkageType:     InternalLinkage
      functionLinenumber: 458
      functionLinenumberEnd: 471
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          52
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - addr_is_ipv6
        - in6_addr_set_mapped_ipv4
        - lookup_ip
        - lookup_ipv6
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tnl-neigh-cache.c:459,9'
          Dst:             addr_is_ipv6
        - Src:             'lib/tnl-neigh-cache.c:460,16'
          Dst:             lookup_ipv6
        - Src:             'lib/tnl-neigh-cache.c:464,13'
          Dst:             lookup_ip
        - Src:             'lib/tnl-neigh-cache.c:466,13'
          Dst:             in6_addr_set_mapped_ipv4
    - functionName:    ds_put_char
      functionSourceFile: '/src/openvswitch/./include/openvswitch/dynamic-string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_char__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/dynamic-string.h:99,9'
          Dst:             ds_put_char__
    - functionName:    be32_to_be16
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 135
      functionLinenumberEnd: 135
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pt_ns_type_be
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1577
      functionLinenumberEnd: 1578
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - be32_to_be16
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:1578,12'
          Dst:             be32_to_be16
    - functionName:    pt_ns
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1570
      functionLinenumberEnd: 1571
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:1571,12'
          Dst:             ntohl
    - functionName:    get_dl_type
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1036
      functionLinenumberEnd: 1044
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          53
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - htonl
        - htons
        - pt_ns
        - pt_ns_type_be
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:1037,30'
          Dst:             htonl
        - Src:             'lib/flow.h:1039,16'
          Dst:             pt_ns
        - Src:             'lib/flow.h:1040,16'
          Dst:             pt_ns_type_be
        - Src:             'lib/flow.h:1042,16'
          Dst:             htons
    - functionName:    is_icmpv6
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1107
      functionLinenumberEnd: 1115
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          53
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - get_dl_type
        - htons
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:1108,9'
          Dst:             get_dl_type
        - Src:             'lib/flow.h:1108,30'
          Dst:             htons
    - functionName:    is_nd
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1119
      functionLinenumberEnd: 1135
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          98
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - htons
        - is_icmpv6
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:1120,9'
          Dst:             is_icmpv6
        - Src:             'lib/flow.h:1124,29'
          Dst:             htons
        - Src:             'lib/flow.h:1131,33'
          Dst:             htons
        - Src:             'lib/flow.h:1132,33'
          Dst:             htons
    - functionName:    tnl_arp_set
      functionSourceFile: '/src/openvswitch/lib/tnl-neigh-cache.c'
      linkageType:     InternalLinkage
      functionLinenumber: 241
      functionLinenumberEnd: 244
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - in6_addr_mapped_ipv4
        - tnl_neigh_set
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tnl-neigh-cache.c:242,28'
          Dst:             in6_addr_mapped_ipv4
        - Src:             'lib/tnl-neigh-cache.c:243,5'
          Dst:             tnl_neigh_set
    - functionName:    tnl_neigh_set
      functionSourceFile: '/src/openvswitch/lib/tnl-neigh-cache.c'
      linkageType:     InternalLinkage
      functionLinenumber: 199
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          141
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - cmap_insert
        - eth_addr_equals
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovs_strlcpy
        - seq_change
        - time_msec
        - tnl_neigh_delete
        - tnl_neigh_get_aging
        - tnl_neigh_hash
        - tnl_neigh_is_complete
        - tnl_neigh_lookup__
        - xmalloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tnl-neigh-cache.c:200,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/tnl-neigh-cache.c:201,37'
          Dst:             tnl_neigh_lookup__
        - Src:             'lib/tnl-neigh-cache.c:205,14'
          Dst:             tnl_neigh_is_complete
        - Src:             'lib/tnl-neigh-cache.c:207,20'
          Dst:             eth_addr_equals
        - Src:             'lib/tnl-neigh-cache.c:208,13'
          Dst:             time_msec
        - Src:             'lib/tnl-neigh-cache.c:208,13'
          Dst:             tnl_neigh_get_aging
        - Src:             'lib/tnl-neigh-cache.c:210,13'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/tnl-neigh-cache.c:213,13'
          Dst:             tnl_neigh_delete
        - Src:             'lib/tnl-neigh-cache.c:218,17'
          Dst:             xmalloc
        - Src:             'lib/tnl-neigh-cache.c:221,9'
          Dst:             ovs_strlcpy
        - Src:             'lib/tnl-neigh-cache.c:225,5'
          Dst:             time_msec
        - Src:             'lib/tnl-neigh-cache.c:225,5'
          Dst:             tnl_neigh_get_aging
        - Src:             'lib/tnl-neigh-cache.c:231,48'
          Dst:             tnl_neigh_hash
        - Src:             'lib/tnl-neigh-cache.c:231,9'
          Dst:             cmap_insert
        - Src:             'lib/tnl-neigh-cache.c:234,5'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/tnl-neigh-cache.c:235,5'
          Dst:             seq_change
    - functionName:    tnl_neigh_lookup__
      functionSourceFile: '/src/openvswitch/lib/tnl-neigh-cache.c'
      linkageType:     InternalLinkage
      functionLinenumber: 112
      functionLinenumberEnd: 133
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          112
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - cmap_find
        - cmap_node_next
        - ipv6_addr_equals
        - strcmp
        - time_msec
        - tnl_neigh_expired
        - tnl_neigh_get_aging
        - tnl_neigh_hash
        - tnl_neigh_is_complete
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tnl-neigh-cache.c:116,12'
          Dst:             tnl_neigh_hash
        - Src:             'lib/tnl-neigh-cache.c:117,5'
          Dst:             cmap_find
        - Src:             'lib/tnl-neigh-cache.c:118,13'
          Dst:             ipv6_addr_equals
        - Src:             'lib/tnl-neigh-cache.c:118,51'
          Dst:             strcmp
        - Src:             'lib/tnl-neigh-cache.c:119,17'
          Dst:             tnl_neigh_expired
        - Src:             'lib/tnl-neigh-cache.c:123,17'
          Dst:             tnl_neigh_is_complete
        - Src:             'lib/tnl-neigh-cache.c:124,17'
          Dst:             time_msec
        - Src:             'lib/tnl-neigh-cache.c:124,17'
          Dst:             tnl_neigh_get_aging
        - Src:             'lib/tnl-neigh-cache.c:117,5'
          Dst:             cmap_node_next
    - functionName:    tnl_neigh_is_complete
      functionSourceFile: '/src/openvswitch/lib/tnl-neigh-cache.c'
      linkageType:     InternalLinkage
      functionLinenumber: 103
      functionLinenumberEnd: 107
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    eth_addr_equals
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 272
      functionLinenumberEnd: 273
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - eth_addr_compare_3way
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:273,13'
          Dst:             eth_addr_compare_3way
    - functionName:    tnl_neigh_get_aging
      functionSourceFile: '/src/openvswitch/lib/tnl-neigh-cache.c'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 88
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    tnl_neigh_delete
      functionSourceFile: '/src/openvswitch/lib/tnl-neigh-cache.c'
      linkageType:     InternalLinkage
      functionLinenumber: 190
      functionLinenumberEnd: 194
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - cmap_remove
        - neigh_entry_free
        - ovsrcu_postpone__
        - tnl_neigh_hash
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tnl-neigh-cache.c:191,21'
          Dst:             tnl_neigh_hash
        - Src:             'lib/tnl-neigh-cache.c:192,5'
          Dst:             cmap_remove
        - Src:             'lib/tnl-neigh-cache.c:193,5'
          Dst:             ovsrcu_postpone__
        - Src:             'lib/tnl-neigh-cache.c:193,5'
          Dst:             neigh_entry_free
    - functionName:    tnl_neigh_hash
      functionSourceFile: '/src/openvswitch/lib/tnl-neigh-cache.c'
      linkageType:     InternalLinkage
      functionLinenumber: 68
      functionLinenumberEnd: 69
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_bytes
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tnl-neigh-cache.c:69,12'
          Dst:             hash_bytes
    - functionName:    cmap_remove
      functionSourceFile: '/src/openvswitch/lib/cmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 293
      functionLinenumberEnd: 294
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - cmap_replace
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/cmap.h:294,12'
          Dst:             cmap_replace
    - functionName:    neigh_entry_free
      functionSourceFile: '/src/openvswitch/lib/tnl-neigh-cache.c'
      linkageType:     InternalLinkage
      functionLinenumber: 184
      functionLinenumberEnd: 186
      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:    eth_addr_compare_3way
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 261
      functionLinenumberEnd: 262
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:262,12'
          Dst:             memcmp
    - functionName:    ipv6_addr_equals
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1184
      functionLinenumberEnd: 1186
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          80
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    tnl_neigh_expired
      functionSourceFile: '/src/openvswitch/lib/tnl-neigh-cache.c'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 79
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - time_msec
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tnl-neigh-cache.c:79,23'
          Dst:             time_msec
    - functionName:    cmap_node_next
      functionSourceFile: '/src/openvswitch/lib/cmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 67
      functionLinenumberEnd: 68
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          22
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    eth_addr_is_zero
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 246
      functionLinenumberEnd: 247
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          25
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    is_garp
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1144
      functionLinenumberEnd: 1151
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          67
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - is_arp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:1145,9'
          Dst:             is_arp
    - functionName:    is_arp
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1138
      functionLinenumberEnd: 1139
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htons
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:1139,30'
          Dst:             htons
    - functionName:    tnl_neigh_cache_retrans_time
      functionSourceFile: '/src/openvswitch/lib/tnl-neigh-cache.c'
      linkageType:     InternalLinkage
      functionLinenumber: 413
      functionLinenumberEnd: 454
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          139
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - cmap_cursor_advance
        - cmap_cursor_start
        - ds_cstr
        - ds_destroy
        - ds_put_format
        - ovs_scan
        - time_msec
        - tnl_neigh_get_aging
        - tnl_neigh_get_retrans_time
        - tnl_neigh_is_complete
        - unixctl_command_reply
        - unixctl_command_reply_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tnl-neigh-cache.c:420,39'
          Dst:             tnl_neigh_get_retrans_time
        - Src:             'lib/tnl-neigh-cache.c:420,9'
          Dst:             ds_put_format
        - Src:             'lib/tnl-neigh-cache.c:421,37'
          Dst:             ds_cstr
        - Src:             'lib/tnl-neigh-cache.c:421,9'
          Dst:             unixctl_command_reply
        - Src:             'lib/tnl-neigh-cache.c:422,9'
          Dst:             ds_destroy
        - Src:             'lib/tnl-neigh-cache.c:428,10'
          Dst:             ovs_scan
        - Src:             'lib/tnl-neigh-cache.c:429,9'
          Dst:             unixctl_command_reply_error
        - Src:             'lib/tnl-neigh-cache.c:431,31'
          Dst:             tnl_neigh_get_aging
        - Src:             'lib/tnl-neigh-cache.c:432,9'
          Dst:             unixctl_command_reply_error
        - Src:             'lib/tnl-neigh-cache.c:439,15'
          Dst:             time_msec
        - Src:             'lib/tnl-neigh-cache.c:441,5'
          Dst:             cmap_cursor_start
        - Src:             'lib/tnl-neigh-cache.c:441,5'
          Dst:             cmap_cursor_advance
        - Src:             'lib/tnl-neigh-cache.c:442,13'
          Dst:             tnl_neigh_is_complete
        - Src:             'lib/tnl-neigh-cache.c:453,5'
          Dst:             unixctl_command_reply
    - functionName:    tnl_neigh_get_retrans_time
      functionSourceFile: '/src/openvswitch/lib/tnl-neigh-cache.c'
      linkageType:     InternalLinkage
      functionLinenumber: 93
      functionLinenumberEnd: 98
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    tnl_neigh_cache_aging
      functionSourceFile: '/src/openvswitch/lib/tnl-neigh-cache.c'
      linkageType:     InternalLinkage
      functionLinenumber: 367
      functionLinenumberEnd: 408
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          152
      EdgeCount:       32
      CyclomaticComplexity: 10
      functionsReached:
        - cmap_cursor_advance
        - cmap_cursor_start
        - ds_cstr
        - ds_destroy
        - ds_put_format
        - ovs_scan
        - time_msec
        - tnl_neigh_get_aging
        - tnl_neigh_get_retrans_time
        - unixctl_command_reply
        - unixctl_command_reply_error
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tnl-neigh-cache.c:374,39'
          Dst:             tnl_neigh_get_aging
        - Src:             'lib/tnl-neigh-cache.c:374,9'
          Dst:             ds_put_format
        - Src:             'lib/tnl-neigh-cache.c:375,37'
          Dst:             ds_cstr
        - Src:             'lib/tnl-neigh-cache.c:375,9'
          Dst:             unixctl_command_reply
        - Src:             'lib/tnl-neigh-cache.c:376,9'
          Dst:             ds_destroy
        - Src:             'lib/tnl-neigh-cache.c:381,10'
          Dst:             ovs_scan
        - Src:             'lib/tnl-neigh-cache.c:383,9'
          Dst:             unixctl_command_reply_error
        - Src:             'lib/tnl-neigh-cache.c:389,17'
          Dst:             tnl_neigh_get_retrans_time
        - Src:             'lib/tnl-neigh-cache.c:390,9'
          Dst:             unixctl_command_reply_error
        - Src:             'lib/tnl-neigh-cache.c:396,15'
          Dst:             time_msec
        - Src:             'lib/tnl-neigh-cache.c:398,5'
          Dst:             cmap_cursor_start
        - Src:             'lib/tnl-neigh-cache.c:398,5'
          Dst:             cmap_cursor_advance
        - Src:             'lib/tnl-neigh-cache.c:407,5'
          Dst:             unixctl_command_reply
    - functionName:    tnl_neigh_cache_flush
      functionSourceFile: '/src/openvswitch/lib/tnl-neigh-cache.c'
      linkageType:     InternalLinkage
      functionLinenumber: 348
      functionLinenumberEnd: 362
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          71
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - cmap_cursor_advance
        - cmap_cursor_start
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - seq_change
        - tnl_neigh_delete
        - unixctl_command_reply
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tnl-neigh-cache.c:352,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/tnl-neigh-cache.c:353,5'
          Dst:             cmap_cursor_start
        - Src:             'lib/tnl-neigh-cache.c:353,5'
          Dst:             cmap_cursor_advance
        - Src:             'lib/tnl-neigh-cache.c:354,9'
          Dst:             tnl_neigh_delete
        - Src:             'lib/tnl-neigh-cache.c:357,5'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/tnl-neigh-cache.c:359,9'
          Dst:             seq_change
        - Src:             'lib/tnl-neigh-cache.c:361,5'
          Dst:             unixctl_command_reply
    - functionName:    tnl_neigh_cache_add
      functionSourceFile: '/src/openvswitch/lib/tnl-neigh-cache.c'
      linkageType:     InternalLinkage
      functionLinenumber: 476
      functionLinenumberEnd: 493
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          63
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - eth_addr_from_string
        - lookup_any
        - tnl_neigh_set
        - unixctl_command_reply
        - unixctl_command_reply_error
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tnl-neigh-cache.c:481,9'
          Dst:             lookup_any
        - Src:             'lib/tnl-neigh-cache.c:482,9'
          Dst:             unixctl_command_reply_error
        - Src:             'lib/tnl-neigh-cache.c:486,10'
          Dst:             eth_addr_from_string
        - Src:             'lib/tnl-neigh-cache.c:487,9'
          Dst:             unixctl_command_reply_error
        - Src:             'lib/tnl-neigh-cache.c:491,5'
          Dst:             tnl_neigh_set
        - Src:             'lib/tnl-neigh-cache.c:492,5'
          Dst:             unixctl_command_reply
    - functionName:    tnl_neigh_cache_show
      functionSourceFile: '/src/openvswitch/lib/tnl-neigh-cache.c'
      linkageType:     InternalLinkage
      functionLinenumber: 498
      functionLinenumberEnd: 530
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          148
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - cmap_cursor_advance
        - cmap_cursor_start
        - ds_cstr
        - ds_destroy
        - ds_put_char
        - ds_put_char_multiple
        - ds_put_cstr
        - ds_put_format
        - ipv6_format_mapped
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - tnl_neigh_expired
        - tnl_neigh_is_complete
        - unixctl_command_reply
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tnl-neigh-cache.c:502,5'
          Dst:             ds_put_cstr
        - Src:             'lib/tnl-neigh-cache.c:503,5'
          Dst:             ds_put_cstr
        - Src:             'lib/tnl-neigh-cache.c:504,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/tnl-neigh-cache.c:505,5'
          Dst:             cmap_cursor_start
        - Src:             'lib/tnl-neigh-cache.c:505,5'
          Dst:             cmap_cursor_advance
        - Src:             'lib/tnl-neigh-cache.c:509,9'
          Dst:             ipv6_format_mapped
        - Src:             'lib/tnl-neigh-cache.c:512,9'
          Dst:             ds_put_char_multiple
        - Src:             'lib/tnl-neigh-cache.c:514,13'
          Dst:             tnl_neigh_is_complete
        - Src:             'lib/tnl-neigh-cache.c:515,13'
          Dst:             ds_put_format
        - Src:             'lib/tnl-neigh-cache.c:518,13'
          Dst:             ds_put_format
        - Src:             'lib/tnl-neigh-cache.c:521,13'
          Dst:             tnl_neigh_expired
        - Src:             'lib/tnl-neigh-cache.c:522,13'
          Dst:             ds_put_format
        - Src:             'lib/tnl-neigh-cache.c:524,9'
          Dst:             ds_put_char
        - Src:             'lib/tnl-neigh-cache.c:527,5'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/tnl-neigh-cache.c:528,33'
          Dst:             ds_cstr
        - Src:             'lib/tnl-neigh-cache.c:528,5'
          Dst:             unixctl_command_reply
        - Src:             'lib/tnl-neigh-cache.c:529,5'
          Dst:             ds_destroy
    - functionName:    tnl_neigh_cache_init
      functionSourceFile: '/src/openvswitch/lib/tnl-neigh-cache.c'
      linkageType:     InternalLinkage
      functionLinenumber: 534
      functionLinenumberEnd: 555
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - tnl_neigh_cache_add
        - tnl_neigh_cache_aging
        - tnl_neigh_cache_flush
        - tnl_neigh_cache_retrans_time
        - tnl_neigh_cache_show
        - unixctl_command_register
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tnl-neigh-cache.c:537,5'
          Dst:             unixctl_command_register
        - Src:             'lib/tnl-neigh-cache.c:537,5'
          Dst:             tnl_neigh_cache_show
        - Src:             'lib/tnl-neigh-cache.c:539,5'
          Dst:             unixctl_command_register
        - Src:             'lib/tnl-neigh-cache.c:539,5'
          Dst:             tnl_neigh_cache_add
        - Src:             'lib/tnl-neigh-cache.c:541,5'
          Dst:             unixctl_command_register
        - Src:             'lib/tnl-neigh-cache.c:541,5'
          Dst:             tnl_neigh_cache_flush
        - Src:             'lib/tnl-neigh-cache.c:543,5'
          Dst:             unixctl_command_register
        - Src:             'lib/tnl-neigh-cache.c:543,5'
          Dst:             tnl_neigh_cache_aging
        - Src:             'lib/tnl-neigh-cache.c:545,5'
          Dst:             unixctl_command_register
        - Src:             'lib/tnl-neigh-cache.c:545,5'
          Dst:             tnl_neigh_cache_show
        - Src:             'lib/tnl-neigh-cache.c:547,5'
          Dst:             unixctl_command_register
        - Src:             'lib/tnl-neigh-cache.c:547,5'
          Dst:             tnl_neigh_cache_add
        - Src:             'lib/tnl-neigh-cache.c:549,5'
          Dst:             unixctl_command_register
        - Src:             'lib/tnl-neigh-cache.c:549,5'
          Dst:             tnl_neigh_cache_flush
        - Src:             'lib/tnl-neigh-cache.c:551,5'
          Dst:             unixctl_command_register
        - Src:             'lib/tnl-neigh-cache.c:551,5'
          Dst:             tnl_neigh_cache_aging
        - Src:             'lib/tnl-neigh-cache.c:553,5'
          Dst:             unixctl_command_register
        - Src:             'lib/tnl-neigh-cache.c:553,5'
          Dst:             tnl_neigh_cache_retrans_time
    - functionName:    tnl_neigh_flush
      functionSourceFile: '/src/openvswitch/lib/tnl-neigh-cache.c'
      linkageType:     InternalLinkage
      functionLinenumber: 327
      functionLinenumberEnd: 343
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          77
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - cmap_cursor_advance
        - cmap_cursor_start
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - seq_change
        - strcmp
        - tnl_neigh_delete
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tnl-neigh-cache.c:331,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/tnl-neigh-cache.c:332,5'
          Dst:             cmap_cursor_start
        - Src:             'lib/tnl-neigh-cache.c:332,5'
          Dst:             cmap_cursor_advance
        - Src:             'lib/tnl-neigh-cache.c:333,14'
          Dst:             strcmp
        - Src:             'lib/tnl-neigh-cache.c:334,13'
          Dst:             tnl_neigh_delete
        - Src:             'lib/tnl-neigh-cache.c:338,5'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/tnl-neigh-cache.c:341,9'
          Dst:             seq_change
    - functionName:    tnl_neigh_cache_run
      functionSourceFile: '/src/openvswitch/lib/tnl-neigh-cache.c'
      linkageType:     InternalLinkage
      functionLinenumber: 307
      functionLinenumberEnd: 323
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         15
      ICount:          70
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - cmap_cursor_advance
        - cmap_cursor_start
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - seq_change
        - tnl_neigh_delete
        - tnl_neigh_expired
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tnl-neigh-cache.c:311,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/tnl-neigh-cache.c:312,5'
          Dst:             cmap_cursor_start
        - Src:             'lib/tnl-neigh-cache.c:312,5'
          Dst:             cmap_cursor_advance
        - Src:             'lib/tnl-neigh-cache.c:313,13'
          Dst:             tnl_neigh_expired
        - Src:             'lib/tnl-neigh-cache.c:314,13'
          Dst:             tnl_neigh_delete
        - Src:             'lib/tnl-neigh-cache.c:318,5'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/tnl-neigh-cache.c:321,9'
          Dst:             seq_change
    - functionName:    tnl_nd_snoop
      functionSourceFile: '/src/openvswitch/lib/tnl-neigh-cache.c'
      linkageType:     InternalLinkage
      functionLinenumber: 269
      functionLinenumberEnd: 291
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          113
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - eth_addr_is_zero
        - htons
        - is_nd
        - tnl_neigh_set
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tnl-neigh-cache.c:270,10'
          Dst:             is_nd
        - Src:             'lib/tnl-neigh-cache.c:270,45'
          Dst:             htons
        - Src:             'lib/tnl-neigh-cache.c:279,9'
          Dst:             eth_addr_is_zero
        - Src:             'lib/tnl-neigh-cache.c:288,9'
          Dst:             tnl_neigh_set
    - functionName:    tnl_arp_snoop
      functionSourceFile: '/src/openvswitch/lib/tnl-neigh-cache.c'
      linkageType:     InternalLinkage
      functionLinenumber: 249
      functionLinenumberEnd: 264
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          130
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - eth_addr_is_zero
        - is_arp
        - is_garp
        - tnl_arp_set
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tnl-neigh-cache.c:251,10'
          Dst:             is_arp
        - Src:             'lib/tnl-neigh-cache.c:252,14'
          Dst:             is_garp
        - Src:             'lib/tnl-neigh-cache.c:254,12'
          Dst:             eth_addr_is_zero
        - Src:             'lib/tnl-neigh-cache.c:261,9'
          Dst:             tnl_arp_set
    - functionName:    tnl_neigh_snoop
      functionSourceFile: '/src/openvswitch/lib/tnl-neigh-cache.c'
      linkageType:     InternalLinkage
      functionLinenumber: 296
      functionLinenumberEnd: 303
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - tnl_arp_snoop
        - tnl_nd_snoop
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tnl-neigh-cache.c:298,11'
          Dst:             tnl_arp_snoop
        - Src:             'lib/tnl-neigh-cache.c:302,12'
          Dst:             tnl_nd_snoop
    - functionName:    tnl_neigh_set_partial
      functionSourceFile: '/src/openvswitch/lib/tnl-neigh-cache.c'
      linkageType:     InternalLinkage
      functionLinenumber: 137
      functionLinenumberEnd: 157
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          69
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - cmap_insert
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovs_strlcpy
        - seq_change
        - time_msec
        - tnl_neigh_get_retrans_time
        - tnl_neigh_hash
        - tnl_neigh_lookup__
        - xmalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tnl-neigh-cache.c:138,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/tnl-neigh-cache.c:139,37'
          Dst:             tnl_neigh_lookup__
        - Src:             'lib/tnl-neigh-cache.c:143,9'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/tnl-neigh-cache.c:146,13'
          Dst:             xmalloc
        - Src:             'lib/tnl-neigh-cache.c:150,5'
          Dst:             time_msec
        - Src:             'lib/tnl-neigh-cache.c:150,5'
          Dst:             tnl_neigh_get_retrans_time
        - Src:             'lib/tnl-neigh-cache.c:152,5'
          Dst:             ovs_strlcpy
        - Src:             'lib/tnl-neigh-cache.c:153,44'
          Dst:             tnl_neigh_hash
        - Src:             'lib/tnl-neigh-cache.c:153,5'
          Dst:             cmap_insert
        - Src:             'lib/tnl-neigh-cache.c:155,5'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/tnl-neigh-cache.c:156,5'
          Dst:             seq_change
    - functionName:    tnl_neigh_lookup
      functionSourceFile: '/src/openvswitch/lib/tnl-neigh-cache.c'
      linkageType:     InternalLinkage
      functionLinenumber: 162
      functionLinenumberEnd: 179
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          72
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - tnl_neigh_get_retrans_time
        - tnl_neigh_is_complete
        - tnl_neigh_lookup__
        - tnl_neigh_set_partial
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tnl-neigh-cache.c:166,13'
          Dst:             tnl_neigh_lookup__
        - Src:             'lib/tnl-neigh-cache.c:168,13'
          Dst:             tnl_neigh_is_complete
        - Src:             'lib/tnl-neigh-cache.c:174,34'
          Dst:             tnl_neigh_get_retrans_time
        - Src:             'lib/tnl-neigh-cache.c:176,9'
          Dst:             tnl_neigh_set_partial
    - functionName:    init_this_module_native_tnl
      functionSourceFile: '/src/openvswitch/lib/netdev-native-tnl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51
      functionLinenumberEnd: 51
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-native-tnl.c:51,1'
          Dst:             vlog_insert_module
    - functionName:    native_tnl_l3csum_checked_init_coverage
      functionSourceFile: '/src/openvswitch/lib/netdev-native-tnl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-native-tnl.c:54,1'
          Dst:             coverage_counter_register
    - functionName:    native_tnl_l3csum_err_init_coverage
      functionSourceFile: '/src/openvswitch/lib/netdev-native-tnl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-native-tnl.c:55,1'
          Dst:             coverage_counter_register
    - functionName:    native_tnl_l4csum_checked_init_coverage
      functionSourceFile: '/src/openvswitch/lib/netdev-native-tnl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-native-tnl.c:56,1'
          Dst:             coverage_counter_register
    - functionName:    native_tnl_l4csum_err_init_coverage
      functionSourceFile: '/src/openvswitch/lib/netdev-native-tnl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 57
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-native-tnl.c:57,1'
          Dst:             coverage_counter_register
    - functionName:    native_tnl_l4csum_err_count
      functionSourceFile: '/src/openvswitch/lib/netdev-native-tnl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 57
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_native_tnl_l4csum_err_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-native-tnl.c:57,1'
          Dst:             counter_native_tnl_l4csum_err_get
    - functionName:    counter_native_tnl_l4csum_err_get
      functionSourceFile: '/src/openvswitch/lib/netdev-native-tnl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 57
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_native_tnl_l4csum_err_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-native-tnl.c:57,1'
          Dst:             counter_native_tnl_l4csum_err_get_unsafe
    - functionName:    counter_native_tnl_l4csum_err_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/netdev-native-tnl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 57
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    native_tnl_l4csum_checked_count
      functionSourceFile: '/src/openvswitch/lib/netdev-native-tnl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_native_tnl_l4csum_checked_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-native-tnl.c:56,1'
          Dst:             counter_native_tnl_l4csum_checked_get
    - functionName:    counter_native_tnl_l4csum_checked_get
      functionSourceFile: '/src/openvswitch/lib/netdev-native-tnl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_native_tnl_l4csum_checked_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-native-tnl.c:56,1'
          Dst:             counter_native_tnl_l4csum_checked_get_unsafe
    - functionName:    counter_native_tnl_l4csum_checked_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/netdev-native-tnl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    native_tnl_l3csum_err_count
      functionSourceFile: '/src/openvswitch/lib/netdev-native-tnl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_native_tnl_l3csum_err_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-native-tnl.c:55,1'
          Dst:             counter_native_tnl_l3csum_err_get
    - functionName:    counter_native_tnl_l3csum_err_get
      functionSourceFile: '/src/openvswitch/lib/netdev-native-tnl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_native_tnl_l3csum_err_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-native-tnl.c:55,1'
          Dst:             counter_native_tnl_l3csum_err_get_unsafe
    - functionName:    counter_native_tnl_l3csum_err_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/netdev-native-tnl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    native_tnl_l3csum_checked_count
      functionSourceFile: '/src/openvswitch/lib/netdev-native-tnl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_native_tnl_l3csum_checked_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-native-tnl.c:54,1'
          Dst:             counter_native_tnl_l3csum_checked_get
    - functionName:    counter_native_tnl_l3csum_checked_get
      functionSourceFile: '/src/openvswitch/lib/netdev-native-tnl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_native_tnl_l3csum_checked_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-native-tnl.c:54,1'
          Dst:             counter_native_tnl_l3csum_checked_get_unsafe
    - functionName:    counter_native_tnl_l3csum_checked_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/netdev-native-tnl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    native_tnl_l4csum_err_add
      functionSourceFile: '/src/openvswitch/lib/netdev-native-tnl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 57
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_native_tnl_l4csum_err_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-native-tnl.c:57,1'
          Dst:             counter_native_tnl_l4csum_err_get
    - functionName:    dp_packet_l4_checksum_set_bad
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1324
      functionLinenumberEnd: 1327
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    native_tnl_l4csum_checked_add
      functionSourceFile: '/src/openvswitch/lib/netdev-native-tnl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_native_tnl_l4csum_checked_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-native-tnl.c:56,1'
          Dst:             counter_native_tnl_l4csum_checked_get
    - functionName:    dp_packet_l4_checksum_unknown
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1348
      functionLinenumberEnd: 1349
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_l4_checksum_bad
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1317
      functionLinenumberEnd: 1319
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_l2_pad_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 432
      functionLinenumberEnd: 433
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_tail
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 326
      functionLinenumberEnd: 327
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_data
        - dp_packet_size
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:327,21'
          Dst:             dp_packet_data
        - Src:             'lib/dp-packet.h:327,41'
          Dst:             dp_packet_size
    - functionName:    dp_packet_data
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 845
      functionLinenumberEnd: 847
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __packet_data
        - dp_packet_base
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:846,12'
          Dst:             __packet_data
        - Src:             'lib/dp-packet.h:847,23'
          Dst:             dp_packet_base
        - Src:             'lib/dp-packet.h:847,43'
          Dst:             __packet_data
    - functionName:    dp_packet_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 762
      functionLinenumberEnd: 763
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    15
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __packet_data
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 774
      functionLinenumberEnd: 775
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_base
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 750
      functionLinenumberEnd: 751
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    native_tnl_l3csum_err_add
      functionSourceFile: '/src/openvswitch/lib/netdev-native-tnl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_native_tnl_l3csum_err_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-native-tnl.c:55,1'
          Dst:             counter_native_tnl_l3csum_err_get
    - functionName:    dp_packet_ip_checksum_set_good
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1142
      functionLinenumberEnd: 1145
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_ip_checksum_set_bad
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1156
      functionLinenumberEnd: 1159
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    native_tnl_l3csum_checked_add
      functionSourceFile: '/src/openvswitch/lib/netdev-native-tnl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_native_tnl_l3csum_checked_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-native-tnl.c:54,1'
          Dst:             counter_native_tnl_l3csum_checked_get
    - functionName:    dp_packet_ip_checksum_unknown
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1179
      functionLinenumberEnd: 1180
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_ip_checksum_bad
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1149
      functionLinenumberEnd: 1151
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_l4
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 475
      functionLinenumberEnd: 477
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_data
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:477,23'
          Dst:             dp_packet_data
    - functionName:    be32_to_be16
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 135
      functionLinenumberEnd: 135
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    is_vport_class
      functionSourceFile: '/src/openvswitch/lib/netdev-vport-private.h'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    free_afxdp_buf
      functionSourceFile: '/src/openvswitch/lib/netdev-afxdp.h'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 84
      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:    free_dpdk_buf
      functionSourceFile: '/src/openvswitch/lib/netdev-dpdk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 76
      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:    __packet_set_data
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 780
      functionLinenumberEnd: 782
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_set_data
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 852
      functionLinenumberEnd: 858
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __packet_set_data
        - dp_packet_base
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:854,55'
          Dst:             dp_packet_base
        - Src:             'lib/dp-packet.h:854,9'
          Dst:             __packet_set_data
        - Src:             'lib/dp-packet.h:856,9'
          Dst:             __packet_set_data
    - functionName:    dp_packet_set_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 768
      functionLinenumberEnd: 770
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_reset_packet
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1426
      functionLinenumberEnd: 1430
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_data
        - dp_packet_reset_offsets
        - dp_packet_set_data
        - dp_packet_set_size
        - dp_packet_size
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:1427,27'
          Dst:             dp_packet_size
        - Src:             'lib/dp-packet.h:1427,5'
          Dst:             dp_packet_set_size
        - Src:             'lib/dp-packet.h:1428,46'
          Dst:             dp_packet_data
        - Src:             'lib/dp-packet.h:1428,5'
          Dst:             dp_packet_set_data
        - Src:             'lib/dp-packet.h:1429,5'
          Dst:             dp_packet_reset_offsets
    - functionName:    dp_packet_reset_offsets
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 424
      functionLinenumberEnd: 428
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_reset_outer_offsets
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:425,5'
          Dst:             dp_packet_reset_outer_offsets
    - functionName:    dp_packet_reset_outer_offsets
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 413
      functionLinenumberEnd: 418
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_is_eth
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 397
      functionLinenumberEnd: 398
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:398,30'
          Dst:             htonl
    - functionName:    dp_packet_eth
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 405
      functionLinenumberEnd: 407
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          39
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - dp_packet_data
        - dp_packet_is_eth
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:406,13'
          Dst:             dp_packet_is_eth
        - Src:             'lib/dp-packet.h:407,15'
          Dst:             dp_packet_data
    - functionName:    dp_packet_tunnel_set_gre
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1129
      functionLinenumberEnd: 1131
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_tunnel_set_vxlan
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1115
      functionLinenumberEnd: 1118
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_tunnel_set_geneve
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1101
      functionLinenumberEnd: 1104
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_rss_ptr
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 645
      functionLinenumberEnd: 646
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_tnl_egress_port_range
      functionSourceFile: '/src/openvswitch/lib/netdev-native-tnl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1310
      functionLinenumberEnd: 1349
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          126
      EdgeCount:       28
      CyclomaticComplexity: 9
      functionsReached:
        - atoi
        - ds_cstr
        - ds_destroy
        - ds_put_format
        - seq_change
        - unixctl_command_reply
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-native-tnl.c:1316,9'
          Dst:             ds_put_format
        - Src:             'lib/netdev-native-tnl.c:1319,37'
          Dst:             ds_cstr
        - Src:             'lib/netdev-native-tnl.c:1319,9'
          Dst:             unixctl_command_reply
        - Src:             'lib/netdev-native-tnl.c:1320,9'
          Dst:             ds_destroy
        - Src:             'lib/netdev-native-tnl.c:1328,12'
          Dst:             atoi
        - Src:             'lib/netdev-native-tnl.c:1330,9'
          Dst:             unixctl_command_reply
        - Src:             'lib/netdev-native-tnl.c:1333,12'
          Dst:             atoi
        - Src:             'lib/netdev-native-tnl.c:1335,9'
          Dst:             unixctl_command_reply
        - Src:             'lib/netdev-native-tnl.c:1346,5'
          Dst:             seq_change
        - Src:             'lib/netdev-native-tnl.c:1348,5'
          Dst:             unixctl_command_reply
    - functionName:    netdev_geneve_build_header
      functionSourceFile: '/src/openvswitch/lib/netdev-native-tnl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1284
      functionLinenumberEnd: 1303
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          113
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
        - htons
        - netdev_get_tunnel_config
        - ntohll
        - put_16aligned_be32
        - tun_metadata_to_geneve_header
        - udp_build_header
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-native-tnl.c:1289,28'
          Dst:             netdev_get_tunnel_config
        - Src:             'lib/netdev-native-tnl.c:1289,11'
          Dst:             udp_build_header
        - Src:             'lib/netdev-native-tnl.c:1291,41'
          Dst:             ntohll
        - Src:             'lib/netdev-native-tnl.c:1291,35'
          Dst:             htonl
        - Src:             'lib/netdev-native-tnl.c:1291,5'
          Dst:             put_16aligned_be32
        - Src:             'lib/netdev-native-tnl.c:1293,15'
          Dst:             tun_metadata_to_geneve_header
        - Src:             'lib/netdev-native-tnl.c:1299,23'
          Dst:             htons
    - functionName:    udp_build_header
      functionSourceFile: '/src/openvswitch/lib/netdev-native-tnl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 412
      functionLinenumberEnd: 425
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          60
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htons
        - netdev_tnl_ip_build_header
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-native-tnl.c:415,11'
          Dst:             netdev_tnl_ip_build_header
        - Src:             'lib/netdev-native-tnl.c:422,25'
          Dst:             htons
    - functionName:    ntohll
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
        - ntohl
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byte-order.h:36,12'
          Dst:             htonl
        - Src:             'lib/byte-order.h:36,44'
          Dst:             ntohl
        - Src:             'lib/byte-order.h:36,62'
          Dst:             ntohl
    - functionName:    put_16aligned_be32
      functionSourceFile: '/src/openvswitch/lib/unaligned.h'
      linkageType:     InternalLinkage
      functionLinenumber: 257
      functionLinenumberEnd: 265
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          19
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    16
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_tnl_ip_build_header
      functionSourceFile: '/src/openvswitch/lib/netdev-native-tnl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 365
      functionLinenumberEnd: 406
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - char
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          176
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - eth_build_header
        - htonl
        - htons
        - in6_addr_get_mapped_ipv4
        - put_16aligned_be32
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-native-tnl.c:368,10'
          Dst:             eth_build_header
        - Src:             'lib/netdev-native-tnl.c:370,27'
          Dst:             in6_addr_get_mapped_ipv4
        - Src:             'lib/netdev-native-tnl.c:379,9'
          Dst:             put_16aligned_be32
        - Src:             'lib/netdev-native-tnl.c:380,9'
          Dst:             put_16aligned_be32
        - Src:             'lib/netdev-native-tnl.c:383,27'
          Dst:             htons
        - Src:             'lib/netdev-native-tnl.c:395,44'
          Dst:             htonl
        - Src:             'lib/netdev-native-tnl.c:396,28'
          Dst:             htonl
        - Src:             'lib/netdev-native-tnl.c:397,42'
          Dst:             htonl
        - Src:             'lib/netdev-native-tnl.c:395,9'
          Dst:             put_16aligned_be32
    - functionName:    eth_build_header
      functionSourceFile: '/src/openvswitch/lib/netdev-native-tnl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 347
      functionLinenumberEnd: 358
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          53
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htons
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-native-tnl.c:356,21'
          Dst:             htons
    - functionName:    in6_addr_get_mapped_ipv4
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1231
      functionLinenumberEnd: 1239
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          75
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - get_16aligned_be32
        - htonl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:1234,9'
          Dst:             htonl
        - Src:             'lib/packets.h:1235,16'
          Dst:             get_16aligned_be32
    - functionName:    get_16aligned_be32
      functionSourceFile: '/src/openvswitch/lib/unaligned.h'
      linkageType:     InternalLinkage
      functionLinenumber: 246
      functionLinenumberEnd: 250
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    14
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_geneve_pop_header
      functionSourceFile: '/src/openvswitch/lib/netdev-native-tnl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1226
      functionLinenumberEnd: 1278
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         35
      ICount:          266
      EdgeCount:       44
      CyclomaticComplexity: 11
      functionsReached:
        - dp_packet_delete
        - dp_packet_l4_size
        - dp_packet_size
        - get_16aligned_be32
        - htonl
        - htonll
        - htons
        - ntohl
        - ntohs
        - pkt_metadata_init_tnl
        - tnl_ol_pop
        - udp_extract_tnl_md
        - vlog_rate_limit
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-native-tnl.c:1232,5'
          Dst:             pkt_metadata_init_tnl
        - Src:             'lib/netdev-native-tnl.c:1233,28'
          Dst:             dp_packet_l4_size
        - Src:             'lib/netdev-native-tnl.c:1234,9'
          Dst:             dp_packet_l4_size
        - Src:             'lib/netdev-native-tnl.c:1234,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/netdev-native-tnl.c:1239,11'
          Dst:             udp_extract_tnl_md
        - Src:             'lib/netdev-native-tnl.c:1246,16'
          Dst:             dp_packet_size
        - Src:             'lib/netdev-native-tnl.c:1247,9'
          Dst:             dp_packet_size
        - Src:             'lib/netdev-native-tnl.c:1247,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/netdev-native-tnl.c:1253,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/netdev-native-tnl.c:1257,28'
          Dst:             htons
        - Src:             'lib/netdev-native-tnl.c:1258,9'
          Dst:             ntohs
        - Src:             'lib/netdev-native-tnl.c:1258,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/netdev-native-tnl.c:1264,32'
          Dst:             get_16aligned_be32
        - Src:             'lib/netdev-native-tnl.c:1264,26'
          Dst:             ntohl
        - Src:             'lib/netdev-native-tnl.c:1264,19'
          Dst:             htonll
        - Src:             'lib/netdev-native-tnl.c:1271,27'
          Dst:             htonl
        - Src:             'lib/netdev-native-tnl.c:1272,5'
          Dst:             tnl_ol_pop
        - Src:             'lib/netdev-native-tnl.c:1276,5'
          Dst:             dp_packet_delete
    - functionName:    pkt_metadata_init_tnl
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 146
      functionLinenumberEnd: 155
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          19
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_l4_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 502
      functionLinenumberEnd: 505
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_l2_pad_size
        - dp_packet_l4
        - dp_packet_tail
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:504,25'
          Dst:             dp_packet_tail
        - Src:             'lib/dp-packet.h:504,59'
          Dst:             dp_packet_l4
        - Src:             'lib/dp-packet.h:505,11'
          Dst:             dp_packet_l2_pad_size
    - functionName:    udp_extract_tnl_md
      functionSourceFile: '/src/openvswitch/lib/netdev-native-tnl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 235
      functionLinenumberEnd: 277
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          170
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - csum_continue
        - csum_finish
        - dp_packet_data
        - dp_packet_eth
        - dp_packet_l3
        - dp_packet_l4_checksum_bad
        - dp_packet_l4_checksum_set_bad
        - dp_packet_l4_checksum_set_good
        - dp_packet_l4_checksum_unknown
        - dp_packet_size
        - ip_extract_tnl_md
        - native_tnl_l4csum_checked_add
        - native_tnl_l4csum_err_add
        - netdev_tnl_is_header_ipv6
        - packet_csum_pseudoheader
        - packet_csum_pseudoheader6
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-native-tnl.c:238,11'
          Dst:             ip_extract_tnl_md
        - Src:             'lib/netdev-native-tnl.c:244,25'
          Dst:             dp_packet_l4_checksum_bad
        - Src:             'lib/netdev-native-tnl.c:246,13'
          Dst:             dp_packet_l4_checksum_unknown
        - Src:             'lib/netdev-native-tnl.c:248,13'
          Dst:             native_tnl_l4csum_checked_add
        - Src:             'lib/netdev-native-tnl.c:249,43'
          Dst:             dp_packet_data
        - Src:             'lib/netdev-native-tnl.c:249,17'
          Dst:             netdev_tnl_is_header_ipv6
        - Src:             'lib/netdev-native-tnl.c:250,50'
          Dst:             dp_packet_l3
        - Src:             'lib/netdev-native-tnl.c:250,24'
          Dst:             packet_csum_pseudoheader6
        - Src:             'lib/netdev-native-tnl.c:252,49'
          Dst:             dp_packet_l3
        - Src:             'lib/netdev-native-tnl.c:252,24'
          Dst:             packet_csum_pseudoheader
        - Src:             'lib/netdev-native-tnl.c:255,45'
          Dst:             dp_packet_size
        - Src:             'lib/netdev-native-tnl.c:257,58'
          Dst:             dp_packet_eth
        - Src:             'lib/netdev-native-tnl.c:255,20'
          Dst:             csum_continue
        - Src:             'lib/netdev-native-tnl.c:259,17'
          Dst:             csum_finish
        - Src:             'lib/netdev-native-tnl.c:260,17'
          Dst:             dp_packet_l4_checksum_set_bad
        - Src:             'lib/netdev-native-tnl.c:263,17'
          Dst:             dp_packet_l4_checksum_set_good
        - Src:             'lib/netdev-native-tnl.c:267,13'
          Dst:             native_tnl_l4csum_err_add
    - functionName:    htonll
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 30
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byte-order.h:30,12'
          Dst:             htonl
        - Src:             'lib/byte-order.h:30,44'
          Dst:             htonl
        - Src:             'lib/byte-order.h:30,62'
          Dst:             htonl
    - functionName:    tnl_ol_pop
      functionSourceFile: '/src/openvswitch/lib/netdev-native-tnl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 297
      functionLinenumberEnd: 301
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_reset_packet
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-native-tnl.c:300,5'
          Dst:             dp_packet_reset_packet
    - functionName:    dp_packet_delete
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 271
      functionLinenumberEnd: 290
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          54
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - dp_packet_uninit
        - free_afxdp_buf
        - free_dpdk_buf
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:274,13'
          Dst:             free_dpdk_buf
        - Src:             'lib/dp-packet.h:279,13'
          Dst:             free_afxdp_buf
        - Src:             'lib/dp-packet.h:283,9'
          Dst:             dp_packet_uninit
    - functionName:    ip_extract_tnl_md
      functionSourceFile: '/src/openvswitch/lib/netdev-native-tnl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 95
      functionLinenumberEnd: 180
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         53
      ICount:          396
      EdgeCount:       68
      CyclomaticComplexity: 17
      functionsReached:
        - csum
        - dp_packet_data
        - dp_packet_ip_checksum_bad
        - dp_packet_ip_checksum_set_bad
        - dp_packet_ip_checksum_set_good
        - dp_packet_ip_checksum_unknown
        - dp_packet_l3
        - dp_packet_l4
        - dp_packet_size
        - get_16aligned_be32
        - htons
        - native_tnl_l3csum_checked_add
        - native_tnl_l3csum_err_add
        - ntohl
        - ntohs
        - vlog_rate_limit
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-native-tnl.c:102,10'
          Dst:             dp_packet_l3
        - Src:             'lib/netdev-native-tnl.c:105,10'
          Dst:             dp_packet_l4
        - Src:             'lib/netdev-native-tnl.c:113,15'
          Dst:             dp_packet_size
        - Src:             'lib/netdev-native-tnl.c:114,37'
          Dst:             dp_packet_data
        - Src:             'lib/netdev-native-tnl.c:117,25'
          Dst:             dp_packet_ip_checksum_bad
        - Src:             'lib/netdev-native-tnl.c:122,13'
          Dst:             dp_packet_ip_checksum_unknown
        - Src:             'lib/netdev-native-tnl.c:123,13'
          Dst:             native_tnl_l3csum_checked_add
        - Src:             'lib/netdev-native-tnl.c:124,17'
          Dst:             csum
        - Src:             'lib/netdev-native-tnl.c:125,17'
          Dst:             dp_packet_ip_checksum_set_bad
        - Src:             'lib/netdev-native-tnl.c:128,17'
          Dst:             dp_packet_ip_checksum_set_good
        - Src:             'lib/netdev-native-tnl.c:132,13'
          Dst:             native_tnl_l3csum_err_add
        - Src:             'lib/netdev-native-tnl.c:133,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/netdev-native-tnl.c:137,13'
          Dst:             ntohs
        - Src:             'lib/netdev-native-tnl.c:138,13'
          Dst:             ntohs
        - Src:             'lib/netdev-native-tnl.c:138,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/netdev-native-tnl.c:143,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/netdev-native-tnl.c:148,18'
          Dst:             get_16aligned_be32
        - Src:             'lib/netdev-native-tnl.c:149,18'
          Dst:             get_16aligned_be32
        - Src:             'lib/netdev-native-tnl.c:156,31'
          Dst:             htons
        - Src:             'lib/netdev-native-tnl.c:163,28'
          Dst:             get_16aligned_be32
        - Src:             'lib/netdev-native-tnl.c:168,23'
          Dst:             ntohl
        - Src:             'lib/netdev-native-tnl.c:174,9'
          Dst:             vlog_rate_limit
    - functionName:    netdev_tnl_is_header_ipv6
      functionSourceFile: '/src/openvswitch/lib/netdev-native-tnl.h'
      linkageType:     InternalLinkage
      functionLinenumber: 105
      functionLinenumberEnd: 108
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htons
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-native-tnl.h:108,29'
          Dst:             htons
    - functionName:    dp_packet_l3
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 461
      functionLinenumberEnd: 463
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_data
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:463,23'
          Dst:             dp_packet_data
    - functionName:    dp_packet_l4_checksum_set_good
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1310
      functionLinenumberEnd: 1313
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pt_ns_type
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1584
      functionLinenumberEnd: 1585
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohs
        - pt_ns_type_be
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:1585,18'
          Dst:             pt_ns_type_be
        - Src:             'lib/packets.h:1585,12'
          Dst:             ntohs
    - functionName:    pt_ns_type_be
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1577
      functionLinenumberEnd: 1578
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - be32_to_be16
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:1578,12'
          Dst:             be32_to_be16
    - functionName:    netdev_vxlan_build_header
      functionSourceFile: '/src/openvswitch/lib/netdev-native-tnl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1179
      functionLinenumberEnd: 1222
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          171
      EdgeCount:       21
      CyclomaticComplexity: 4
      functionsReached:
        - htonl
        - netdev_get_tunnel_config
        - ntohll
        - pt_ns
        - pt_ns_type
        - put_16aligned_be32
        - udp_build_header
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib/netdev-native-tnl.c:1194,13'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/netdev-native-tnl.c:1183,15'
          Dst:             netdev_get_tunnel_config
        - Src:             'lib/netdev-native-tnl.c:1185,11'
          Dst:             udp_build_header
        - Src:             'lib/netdev-native-tnl.c:1188,44'
          Dst:             htonl
        - Src:             'lib/netdev-native-tnl.c:1188,9'
          Dst:             put_16aligned_be32
        - Src:             'lib/netdev-native-tnl.c:1190,34'
          Dst:             ntohll
        - Src:             'lib/netdev-native-tnl.c:1190,28'
          Dst:             htonl
        - Src:             'lib/netdev-native-tnl.c:1189,9'
          Dst:             put_16aligned_be32
        - Src:             'lib/netdev-native-tnl.c:1191,42'
          Dst:             htonl
        - Src:             'lib/netdev-native-tnl.c:1193,20'
          Dst:             pt_ns
        - Src:             'lib/netdev-native-tnl.c:1194,21'
          Dst:             pt_ns_type
        - Src:             'lib/netdev-native-tnl.c:1214,44'
          Dst:             htonl
        - Src:             'lib/netdev-native-tnl.c:1214,9'
          Dst:             put_16aligned_be32
        - Src:             'lib/netdev-native-tnl.c:1216,34'
          Dst:             ntohll
        - Src:             'lib/netdev-native-tnl.c:1216,28'
          Dst:             htonl
        - Src:             'lib/netdev-native-tnl.c:1215,9'
          Dst:             put_16aligned_be32
    - functionName:    pt_ns
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1570
      functionLinenumberEnd: 1571
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohl
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:1571,12'
          Dst:             ntohl
    - functionName:    netdev_vxlan_pop_header
      functionSourceFile: '/src/openvswitch/lib/netdev-native-tnl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1107
      functionLinenumberEnd: 1173
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         33
      ICount:          229
      EdgeCount:       40
      CyclomaticComplexity: 9
      functionsReached:
        - dp_packet_delete
        - dp_packet_l4_size
        - get_16aligned_be32
        - htonl
        - htonll
        - ntohl
        - ovs_ignore
        - pkt_metadata_init_tnl
        - tnl_ol_pop
        - udp_extract_tnl_md
        - vlog_rate_limit
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib/netdev-native-tnl.c:1135,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/netdev-native-tnl.c:1115,5'
          Dst:             ovs_ignore
        - Src:             'lib/netdev-native-tnl.c:1116,5'
          Dst:             ovs_ignore
        - Src:             'lib/netdev-native-tnl.c:1118,5'
          Dst:             pkt_metadata_init_tnl
        - Src:             'lib/netdev-native-tnl.c:1119,22'
          Dst:             dp_packet_l4_size
        - Src:             'lib/netdev-native-tnl.c:1123,11'
          Dst:             udp_extract_tnl_md
        - Src:             'lib/netdev-native-tnl.c:1128,16'
          Dst:             get_16aligned_be32
        - Src:             'lib/netdev-native-tnl.c:1129,20'
          Dst:             htonl
        - Src:             'lib/netdev-native-tnl.c:1130,21'
          Dst:             htonl
        - Src:             'lib/netdev-native-tnl.c:1153,21'
          Dst:             htonl
        - Src:             'lib/netdev-native-tnl.c:1154,9'
          Dst:             get_16aligned_be32
        - Src:             'lib/netdev-native-tnl.c:1154,44'
          Dst:             htonl
        - Src:             'lib/netdev-native-tnl.c:1155,9'
          Dst:             ntohl
        - Src:             'lib/netdev-native-tnl.c:1155,9'
          Dst:             get_16aligned_be32
        - Src:             'lib/netdev-native-tnl.c:1155,9'
          Dst:             ntohl
        - Src:             'lib/netdev-native-tnl.c:1155,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/netdev-native-tnl.c:1160,32'
          Dst:             get_16aligned_be32
        - Src:             'lib/netdev-native-tnl.c:1160,26'
          Dst:             ntohl
        - Src:             'lib/netdev-native-tnl.c:1160,19'
          Dst:             htonll
        - Src:             'lib/netdev-native-tnl.c:1163,27'
          Dst:             htonl
        - Src:             'lib/netdev-native-tnl.c:1164,5'
          Dst:             tnl_ol_pop
        - Src:             'lib/netdev-native-tnl.c:1171,5'
          Dst:             dp_packet_delete
    - functionName:    dp_packet_l3_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 491
      functionLinenumberEnd: 494
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_l2_pad_size
        - dp_packet_l3
        - dp_packet_tail
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:493,25'
          Dst:             dp_packet_tail
        - Src:             'lib/dp-packet.h:493,59'
          Dst:             dp_packet_l3
        - Src:             'lib/dp-packet.h:494,11'
          Dst:             dp_packet_l2_pad_size
    - functionName:    netdev_srv6_pop_header
      functionSourceFile: '/src/openvswitch/lib/netdev-native-tnl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1048
      functionLinenumberEnd: 1103
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         29
      ICount:          175
      EdgeCount:       38
      CyclomaticComplexity: 11
      functionsReached:
        - dp_packet_delete
        - dp_packet_l3
        - dp_packet_l3_size
        - htonl
        - ip_extract_tnl_md
        - parse_ipv6_ext_hdrs
        - pkt_metadata_init_tnl
        - tnl_ol_pop
        - vlog_rate_limit
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-native-tnl.c:1049,46'
          Dst:             dp_packet_l3
        - Src:             'lib/netdev-native-tnl.c:1063,12'
          Dst:             dp_packet_l3_size
        - Src:             'lib/netdev-native-tnl.c:1069,10'
          Dst:             parse_ipv6_ext_hdrs
        - Src:             'lib/netdev-native-tnl.c:1079,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/netdev-native-tnl.c:1085,31'
          Dst:             htonl
        - Src:             'lib/netdev-native-tnl.c:1087,31'
          Dst:             htonl
        - Src:             'lib/netdev-native-tnl.c:1092,5'
          Dst:             pkt_metadata_init_tnl
        - Src:             'lib/netdev-native-tnl.c:1093,10'
          Dst:             ip_extract_tnl_md
        - Src:             'lib/netdev-native-tnl.c:1097,5'
          Dst:             tnl_ol_pop
        - Src:             'lib/netdev-native-tnl.c:1101,5'
          Dst:             dp_packet_delete
    - functionName:    netdev_srv6_push_header
      functionSourceFile: '/src/openvswitch/lib/netdev-native-tnl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1015
      functionLinenumberEnd: 1044
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          97
      EdgeCount:       11
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_get_rss_hash
        - dp_packet_l3
        - get_16aligned_be32
        - htonl
        - netdev_tnl_ipv6_hdr
        - netdev_tnl_push_ip_header
        - ntohl
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib/netdev-native-tnl.c:1027,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/netdev-native-tnl.c:1022,17'
          Dst:             dp_packet_l3
        - Src:             'lib/netdev-native-tnl.c:1023,17'
          Dst:             netdev_tnl_ipv6_hdr
        - Src:             'lib/netdev-native-tnl.c:1024,28'
          Dst:             get_16aligned_be32
        - Src:             'lib/netdev-native-tnl.c:1024,22'
          Dst:             ntohl
        - Src:             'lib/netdev-native-tnl.c:1029,22'
          Dst:             get_16aligned_be32
        - Src:             'lib/netdev-native-tnl.c:1029,16'
          Dst:             ntohl
        - Src:             'lib/netdev-native-tnl.c:1030,42'
          Dst:             htonl
        - Src:             'lib/netdev-native-tnl.c:1038,28'
          Dst:             dp_packet_get_rss_hash
        - Src:             'lib/netdev-native-tnl.c:1038,22'
          Dst:             htonl
        - Src:             'lib/netdev-native-tnl.c:1042,5'
          Dst:             netdev_tnl_push_ip_header
    - functionName:    netdev_tnl_ipv6_hdr
      functionSourceFile: '/src/openvswitch/lib/netdev-native-tnl.h'
      linkageType:     InternalLinkage
      functionLinenumber: 119
      functionLinenumberEnd: 120
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_get_rss_hash
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1050
      functionLinenumberEnd: 1051
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_rss_ptr
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:1051,13'
          Dst:             dp_packet_rss_ptr
    - functionName:    netdev_tnl_push_ip_header
      functionSourceFile: '/src/openvswitch/lib/netdev-native-tnl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 195
      functionLinenumberEnd: 230
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          125
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_ip_checksum_set_partial
        - dp_packet_ip_checksum_set_unknown
        - dp_packet_push_uninit
        - dp_packet_reset_offsets
        - dp_packet_size
        - htonl
        - htons
        - netdev_tnl_ip_hdr
        - netdev_tnl_ipv6_hdr
        - netdev_tnl_is_header_ipv6
        - packet_set_ipv6_flow_label
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-native-tnl.c:200,11'
          Dst:             dp_packet_push_uninit
        - Src:             'lib/netdev-native-tnl.c:201,20'
          Dst:             dp_packet_size
        - Src:             'lib/netdev-native-tnl.c:205,27'
          Dst:             htonl
        - Src:             'lib/netdev-native-tnl.c:206,5'
          Dst:             dp_packet_reset_offsets
        - Src:             'lib/netdev-native-tnl.c:209,9'
          Dst:             netdev_tnl_is_header_ipv6
        - Src:             'lib/netdev-native-tnl.c:210,15'
          Dst:             netdev_tnl_ipv6_hdr
        - Src:             'lib/netdev-native-tnl.c:212,25'
          Dst:             htons
        - Src:             'lib/netdev-native-tnl.c:213,9'
          Dst:             packet_set_ipv6_flow_label
        - Src:             'lib/netdev-native-tnl.c:214,9'
          Dst:             dp_packet_ip_checksum_set_unknown
        - Src:             'lib/netdev-native-tnl.c:216,26'
          Dst:             dp_packet_size
        - Src:             'lib/netdev-native-tnl.c:220,14'
          Dst:             netdev_tnl_ip_hdr
        - Src:             'lib/netdev-native-tnl.c:221,26'
          Dst:             htons
        - Src:             'lib/netdev-native-tnl.c:224,9'
          Dst:             dp_packet_ip_checksum_set_partial
        - Src:             'lib/netdev-native-tnl.c:226,26'
          Dst:             dp_packet_size
    - functionName:    dp_packet_ip_checksum_set_unknown
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1185
      functionLinenumberEnd: 1187
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_tnl_ip_hdr
      functionSourceFile: '/src/openvswitch/lib/netdev-native-tnl.h'
      linkageType:     InternalLinkage
      functionLinenumber: 113
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_ip_checksum_set_partial
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1173
      functionLinenumberEnd: 1175
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ipv6_addr_equals
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1184
      functionLinenumberEnd: 1186
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          80
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_srv6_build_header
      functionSourceFile: '/src/openvswitch/lib/netdev-native-tnl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 949
      functionLinenumberEnd: 1008
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          206
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - htonl
        - htons
        - ipv6_addr_equals
        - netdev_get_tunnel_config
        - netdev_tnl_ip_build_header
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-native-tnl.c:958,15'
          Dst:             netdev_get_tunnel_config
        - Src:             'lib/netdev-native-tnl.c:971,10'
          Dst:             ipv6_addr_equals
        - Src:             'lib/netdev-native-tnl.c:979,38'
          Dst:             htonl
        - Src:             'lib/netdev-native-tnl.c:978,11'
          Dst:             netdev_tnl_ip_build_header
        - Src:             'lib/netdev-native-tnl.c:989,20'
          Dst:             htons
        - Src:             'lib/netdev-native-tnl.c:991,27'
          Dst:             htons
    - functionName:    netdev_gtpu_build_header
      functionSourceFile: '/src/openvswitch/lib/netdev-native-tnl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 916
      functionLinenumberEnd: 942
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          136
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - be64_to_be32
        - netdev_get_tunnel_config
        - put_16aligned_be32
        - udp_build_header
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-native-tnl.c:921,15'
          Dst:             netdev_get_tunnel_config
        - Src:             'lib/netdev-native-tnl.c:923,12'
          Dst:             udp_build_header
        - Src:             'lib/netdev-native-tnl.c:931,24'
          Dst:             be64_to_be32
        - Src:             'lib/netdev-native-tnl.c:930,5'
          Dst:             put_16aligned_be32
    - functionName:    be64_to_be32
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 133
      functionLinenumberEnd: 133
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_gtpu_push_header
      functionSourceFile: '/src/openvswitch/lib/netdev-native-tnl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 881
      functionLinenumberEnd: 910
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          99
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - atomic_count_inc
        - dp_packet_l4_checksum_set_partial
        - dp_packet_l4_proto_set_udp
        - dp_packet_size
        - htons
        - netdev_tnl_get_src_port
        - netdev_tnl_push_ip_header
        - netdev_vport_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-native-tnl.c:882,32'
          Dst:             netdev_vport_cast
        - Src:             'lib/netdev-native-tnl.c:891,15'
          Dst:             netdev_tnl_get_src_port
        - Src:             'lib/netdev-native-tnl.c:893,19'
          Dst:             dp_packet_size
        - Src:             'lib/netdev-native-tnl.c:894,11'
          Dst:             netdev_tnl_push_ip_header
        - Src:             'lib/netdev-native-tnl.c:897,20'
          Dst:             htons
        - Src:             'lib/netdev-native-tnl.c:899,5'
          Dst:             dp_packet_l4_proto_set_udp
        - Src:             'lib/netdev-native-tnl.c:900,5'
          Dst:             dp_packet_l4_checksum_set_partial
        - Src:             'lib/netdev-native-tnl.c:906,24'
          Dst:             atomic_count_inc
        - Src:             'lib/netdev-native-tnl.c:906,18'
          Dst:             htons
        - Src:             'lib/netdev-native-tnl.c:909,18'
          Dst:             htons
    - functionName:    netdev_vport_cast
      functionSourceFile: '/src/openvswitch/lib/netdev-vport-private.h'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - is_vport_class
        - netdev_get_class
        - ovs_ignore
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-vport-private.h:61,31'
          Dst:             netdev_get_class
        - Src:             'lib/netdev-vport-private.h:61,16'
          Dst:             is_vport_class
        - Src:             'lib/netdev-vport-private.h:61,5'
          Dst:             ovs_ignore
    - functionName:    netdev_tnl_get_src_port
      functionSourceFile: '/src/openvswitch/lib/netdev-native-tnl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 73
      functionLinenumberEnd: 89
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          60
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_get_rss_hash
        - dp_packet_rss_valid
        - dp_packet_set_rss_hash
        - flow_extract
        - flow_hash_5tuple
        - htons
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-native-tnl.c:76,9'
          Dst:             dp_packet_rss_valid
        - Src:             'lib/netdev-native-tnl.c:77,16'
          Dst:             dp_packet_get_rss_hash
        - Src:             'lib/netdev-native-tnl.c:81,9'
          Dst:             flow_extract
        - Src:             'lib/netdev-native-tnl.c:82,16'
          Dst:             flow_hash_5tuple
        - Src:             'lib/netdev-native-tnl.c:84,9'
          Dst:             dp_packet_set_rss_hash
        - Src:             'lib/netdev-native-tnl.c:89,12'
          Dst:             htons
    - functionName:    dp_packet_l4_proto_set_udp
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1280
      functionLinenumberEnd: 1283
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_l4_checksum_set_partial
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1342
      functionLinenumberEnd: 1344
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    atomic_count_inc
      functionSourceFile: '/src/openvswitch/lib/ovs-atomic.h'
      linkageType:     InternalLinkage
      functionLinenumber: 451
      functionLinenumberEnd: 456
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_rss_valid
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1063
      functionLinenumberEnd: 1064
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_set_rss_hash
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1056
      functionLinenumberEnd: 1059
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_rss_ptr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:1057,6'
          Dst:             dp_packet_rss_ptr
    - functionName:    ovsthread_once_start
      functionSourceFile: '/src/openvswitch/./include/openvswitch/thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsthread_once_start__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/thread.h:161,12'
          Dst:             ovsthread_once_start__
    - functionName:    be32_to_be64
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 132
      functionLinenumberEnd: 132
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_gtpu_pop_header
      functionSourceFile: '/src/openvswitch/lib/netdev-native-tnl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 816
      functionLinenumberEnd: 874
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         31
      ICount:          212
      EdgeCount:       39
      CyclomaticComplexity: 10
      functionsReached:
        - be32_to_be64
        - dp_packet_delete
        - dp_packet_l4_size
        - get_16aligned_be32
        - htonl
        - ovs_ignore
        - ovsthread_once_done
        - ovsthread_once_start
        - pkt_metadata_init_tnl
        - tnl_ol_pop
        - udp_extract_tnl_md
        - vlog
        - vlog_rate_limit
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-native-tnl.c:823,5'
          Dst:             ovs_ignore
        - Src:             'lib/netdev-native-tnl.c:824,5'
          Dst:             ovs_ignore
        - Src:             'lib/netdev-native-tnl.c:826,5'
          Dst:             pkt_metadata_init_tnl
        - Src:             'lib/netdev-native-tnl.c:827,21'
          Dst:             dp_packet_l4_size
        - Src:             'lib/netdev-native-tnl.c:831,12'
          Dst:             udp_extract_tnl_md
        - Src:             'lib/netdev-native-tnl.c:838,32'
          Dst:             get_16aligned_be32
        - Src:             'lib/netdev-native-tnl.c:838,19'
          Dst:             be32_to_be64
        - Src:             'lib/netdev-native-tnl.c:851,35'
          Dst:             htonl
        - Src:             'lib/netdev-native-tnl.c:853,35'
          Dst:             htonl
        - Src:             'lib/netdev-native-tnl.c:855,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/netdev-native-tnl.c:857,9'
          Dst:             tnl_ol_pop
        - Src:             'lib/netdev-native-tnl.c:864,31'
          Dst:             htonl
        - Src:             'lib/netdev-native-tnl.c:865,9'
          Dst:             ovsthread_once_start
        - Src:             'lib/netdev-native-tnl.c:865,9'
          Dst:             vlog
        - Src:             'lib/netdev-native-tnl.c:865,9'
          Dst:             ovsthread_once_done
        - Src:             'lib/netdev-native-tnl.c:872,5'
          Dst:             dp_packet_delete
    - functionName:    set_hwid
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1386
      functionLinenumberEnd: 1389
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          36
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_sid
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1375
      functionLinenumberEnd: 1378
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          35
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_erspan_build_header
      functionSourceFile: '/src/openvswitch/lib/netdev-native-tnl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 733
      functionLinenumberEnd: 812
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         33
      ICount:          302
      EdgeCount:       42
      CyclomaticComplexity: 11
      functionsReached:
        - be64_to_be32
        - htonl
        - htons
        - netdev_get_tunnel_config
        - netdev_tnl_ip_build_header
        - ntohl
        - put_16aligned_be32
        - set_hwid
        - set_sid
        - vlog_rate_limit
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-native-tnl.c:742,12'
          Dst:             netdev_tnl_ip_build_header
        - Src:             'lib/netdev-native-tnl.c:745,20'
          Dst:             be64_to_be32
        - Src:             'lib/netdev-native-tnl.c:745,14'
          Dst:             ntohl
        - Src:             'lib/netdev-native-tnl.c:753,15'
          Dst:             netdev_get_tunnel_config
        - Src:             'lib/netdev-native-tnl.c:762,26'
          Dst:             htons
        - Src:             'lib/netdev-native-tnl.c:763,23'
          Dst:             htons
        - Src:             'lib/netdev-native-tnl.c:765,9'
          Dst:             set_sid
        - Src:             'lib/netdev-native-tnl.c:771,28'
          Dst:             htonl
        - Src:             'lib/netdev-native-tnl.c:770,9'
          Dst:             put_16aligned_be32
        - Src:             'lib/netdev-native-tnl.c:777,26'
          Dst:             htons
        - Src:             'lib/netdev-native-tnl.c:778,23'
          Dst:             htons
        - Src:             'lib/netdev-native-tnl.c:780,9'
          Dst:             set_sid
        - Src:             'lib/netdev-native-tnl.c:784,9'
          Dst:             put_16aligned_be32
        - Src:             'lib/netdev-native-tnl.c:787,13'
          Dst:             set_hwid
        - Src:             'lib/netdev-native-tnl.c:789,13'
          Dst:             set_hwid
        - Src:             'lib/netdev-native-tnl.c:800,9'
          Dst:             vlog_rate_limit
    - functionName:    get_erspan_ts
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1404
      functionLinenumberEnd: 1419
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          44
      EdgeCount:       18
      CyclomaticComplexity: 10
      functionsReached:
        - abort
        - htonl
        - time_wall_usec
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/packets.h:1407,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/packets.h:1409,31'
          Dst:             time_wall_usec
        - Src:             'lib/packets.h:1409,14'
          Dst:             htonl
        - Src:             'lib/packets.h:1416,9'
          Dst:             abort
    - functionName:    netdev_erspan_push_header
      functionSourceFile: '/src/openvswitch/lib/netdev-native-tnl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 707
      functionLinenumberEnd: 727
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          73
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - atomic_count_inc
        - get_erspan_ts
        - htonl
        - htons
        - netdev_tnl_push_ip_header
        - netdev_vport_cast
        - put_16aligned_be32
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-native-tnl.c:708,32'
          Dst:             netdev_vport_cast
        - Src:             'lib/netdev-native-tnl.c:714,12'
          Dst:             netdev_tnl_push_ip_header
        - Src:             'lib/netdev-native-tnl.c:719,37'
          Dst:             atomic_count_inc
        - Src:             'lib/netdev-native-tnl.c:719,31'
          Dst:             htonl
        - Src:             'lib/netdev-native-tnl.c:719,5'
          Dst:             put_16aligned_be32
        - Src:             'lib/netdev-native-tnl.c:722,27'
          Dst:             htons
        - Src:             'lib/netdev-native-tnl.c:725,45'
          Dst:             get_erspan_ts
        - Src:             'lib/netdev-native-tnl.c:725,9'
          Dst:             put_16aligned_be32
    - functionName:    get_hwid
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1381
      functionLinenumberEnd: 1382
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_sid
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1370
      functionLinenumberEnd: 1371
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          20
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    be16_to_be64
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 131
      functionLinenumberEnd: 131
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_erspan_pop_header
      functionSourceFile: '/src/openvswitch/lib/netdev-native-tnl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 637
      functionLinenumberEnd: 700
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         29
      ICount:          256
      EdgeCount:       38
      CyclomaticComplexity: 11
      functionsReached:
        - be16_to_be64
        - dp_packet_data
        - dp_packet_delete
        - dp_packet_size
        - get_16aligned_be32
        - get_hwid
        - get_sid
        - htons
        - ip_extract_tnl_md
        - netdev_tnl_is_header_ipv6
        - ntohl
        - ntohs
        - pkt_metadata_init_tnl
        - tnl_ol_pop
        - vlog_rate_limit
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-native-tnl.c:646,39'
          Dst:             dp_packet_data
        - Src:             'lib/netdev-native-tnl.c:646,13'
          Dst:             netdev_tnl_is_header_ipv6
        - Src:             'lib/netdev-native-tnl.c:649,5'
          Dst:             pkt_metadata_init_tnl
        - Src:             'lib/netdev-native-tnl.c:650,16'
          Dst:             dp_packet_size
        - Src:             'lib/netdev-native-tnl.c:654,12'
          Dst:             ip_extract_tnl_md
        - Src:             'lib/netdev-native-tnl.c:659,21'
          Dst:             ntohs
        - Src:             'lib/netdev-native-tnl.c:665,24'
          Dst:             htons
        - Src:             'lib/netdev-native-tnl.c:670,38'
          Dst:             get_sid
        - Src:             'lib/netdev-native-tnl.c:670,32'
          Dst:             htons
        - Src:             'lib/netdev-native-tnl.c:670,19'
          Dst:             be16_to_be64
        - Src:             'lib/netdev-native-tnl.c:676,33'
          Dst:             get_16aligned_be32
        - Src:             'lib/netdev-native-tnl.c:676,27'
          Dst:             ntohl
        - Src:             'lib/netdev-native-tnl.c:682,28'
          Dst:             get_hwid
        - Src:             'lib/netdev-native-tnl.c:686,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/netdev-native-tnl.c:690,16'
          Dst:             dp_packet_size
        - Src:             'lib/netdev-native-tnl.c:694,5'
          Dst:             tnl_ol_pop
        - Src:             'lib/netdev-native-tnl.c:698,5'
          Dst:             dp_packet_delete
    - functionName:    netdev_gre_build_header
      functionSourceFile: '/src/openvswitch/lib/netdev-native-tnl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 586
      functionLinenumberEnd: 633
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          208
      EdgeCount:       28
      CyclomaticComplexity: 8
      functionsReached:
        - be64_to_be32
        - htonl
        - htons
        - netdev_get_tunnel_config
        - netdev_tnl_ip_build_header
        - pt_ns
        - pt_ns_type_be
        - put_16aligned_be32
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-native-tnl.c:592,12'
          Dst:             netdev_tnl_ip_build_header
        - Src:             'lib/netdev-native-tnl.c:594,38'
          Dst:             htonl
        - Src:             'lib/netdev-native-tnl.c:595,26'
          Dst:             htons
        - Src:             'lib/netdev-native-tnl.c:596,16'
          Dst:             pt_ns
        - Src:             'lib/netdev-native-tnl.c:597,26'
          Dst:             pt_ns_type_be
        - Src:             'lib/netdev-native-tnl.c:605,24'
          Dst:             htons
        - Src:             'lib/netdev-native-tnl.c:606,9'
          Dst:             put_16aligned_be32
        - Src:             'lib/netdev-native-tnl.c:610,15'
          Dst:             netdev_get_tunnel_config
        - Src:             'lib/netdev-native-tnl.c:613,24'
          Dst:             htons
        - Src:             'lib/netdev-native-tnl.c:614,37'
          Dst:             be64_to_be32
        - Src:             'lib/netdev-native-tnl.c:614,9'
          Dst:             put_16aligned_be32
        - Src:             'lib/netdev-native-tnl.c:619,24'
          Dst:             htons
    - functionName:    gre_header_len
      functionSourceFile: '/src/openvswitch/lib/netdev-native-tnl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 430
      functionLinenumberEnd: 442
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          73
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - htons
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-native-tnl.c:433,17'
          Dst:             htons
        - Src:             'lib/netdev-native-tnl.c:436,17'
          Dst:             htons
        - Src:             'lib/netdev-native-tnl.c:439,17'
          Dst:             htons
    - functionName:    dp_packet_get_tso_segsz
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 798
      functionLinenumberEnd: 799
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_gre_push_header
      functionSourceFile: '/src/openvswitch/lib/netdev-native-tnl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 543
      functionLinenumberEnd: 580
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          187
      EdgeCount:       29
      CyclomaticComplexity: 8
      functionsReached:
        - atomic_count_inc
        - csum
        - dp_packet_get_tso_segsz
        - gre_header_len
        - htonl
        - htons
        - netdev_tnl_push_ip_header
        - netdev_vport_cast
        - put_16aligned_be32
        - tnl_ol_push
        - vlog_rate_limit
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-native-tnl.c:544,32'
          Dst:             netdev_vport_cast
        - Src:             'lib/netdev-native-tnl.c:550,5'
          Dst:             tnl_ol_push
        - Src:             'lib/netdev-native-tnl.c:552,12'
          Dst:             netdev_tnl_push_ip_header
        - Src:             'lib/netdev-native-tnl.c:555,23'
          Dst:             htons
        - Src:             'lib/netdev-native-tnl.c:557,21'
          Dst:             csum
        - Src:             'lib/netdev-native-tnl.c:560,23'
          Dst:             htons
        - Src:             'lib/netdev-native-tnl.c:561,14'
          Dst:             dp_packet_get_tso_segsz
        - Src:             'lib/netdev-native-tnl.c:563,27'
          Dst:             gre_header_len
        - Src:             'lib/netdev-native-tnl.c:568,38'
          Dst:             atomic_count_inc
        - Src:             'lib/netdev-native-tnl.c:568,32'
          Dst:             htonl
        - Src:             'lib/netdev-native-tnl.c:567,13'
          Dst:             put_16aligned_be32
        - Src:             'lib/netdev-native-tnl.c:570,13'
          Dst:             vlog_rate_limit
    - functionName:    tnl_ol_push
      functionSourceFile: '/src/openvswitch/lib/netdev-native-tnl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 282
      functionLinenumberEnd: 293
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          73
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - dp_packet_tunnel_set_geneve
        - dp_packet_tunnel_set_gre
        - dp_packet_tunnel_set_vxlan
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-native-tnl.c:286,9'
          Dst:             dp_packet_tunnel_set_geneve
        - Src:             'lib/netdev-native-tnl.c:288,9'
          Dst:             dp_packet_tunnel_set_vxlan
        - Src:             'lib/netdev-native-tnl.c:291,9'
          Dst:             dp_packet_tunnel_set_gre
    - functionName:    parse_gre_header
      functionSourceFile: '/src/openvswitch/lib/netdev-native-tnl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 448
      functionLinenumberEnd: 505
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         27
      ICount:          220
      EdgeCount:       36
      CyclomaticComplexity: 11
      functionsReached:
        - be32_to_be64
        - csum
        - dp_packet_eth
        - dp_packet_size
        - get_16aligned_be32
        - gre_header_len
        - htonl
        - htons
        - ip_extract_tnl_md
        - ntohs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-native-tnl.c:455,12'
          Dst:             ip_extract_tnl_md
        - Src:             'lib/netdev-native-tnl.c:460,25'
          Dst:             htons
        - Src:             'lib/netdev-native-tnl.c:464,19'
          Dst:             gre_header_len
        - Src:             'lib/netdev-native-tnl.c:465,16'
          Dst:             dp_packet_size
        - Src:             'lib/netdev-native-tnl.c:470,23'
          Dst:             htons
        - Src:             'lib/netdev-native-tnl.c:473,31'
          Dst:             dp_packet_size
        - Src:             'lib/netdev-native-tnl.c:475,55'
          Dst:             dp_packet_eth
        - Src:             'lib/netdev-native-tnl.c:473,20'
          Dst:             csum
        - Src:             'lib/netdev-native-tnl.c:483,23'
          Dst:             htons
        - Src:             'lib/netdev-native-tnl.c:484,36'
          Dst:             get_16aligned_be32
        - Src:             'lib/netdev-native-tnl.c:484,23'
          Dst:             be32_to_be64
        - Src:             'lib/netdev-native-tnl.c:489,23'
          Dst:             htons
        - Src:             'lib/netdev-native-tnl.c:494,21'
          Dst:             ntohs
        - Src:             'lib/netdev-native-tnl.c:496,31'
          Dst:             htonl
        - Src:             'lib/netdev-native-tnl.c:499,31'
          Dst:             htonl
    - functionName:    netdev_gre_pop_header
      functionSourceFile: '/src/openvswitch/lib/netdev-native-tnl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 509
      functionLinenumberEnd: 536
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          77
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - dp_packet_data
        - dp_packet_delete
        - dp_packet_size
        - netdev_tnl_is_header_ipv6
        - ovs_ignore
        - parse_gre_header
        - pkt_metadata_init_tnl
        - tnl_ol_pop
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-native-tnl.c:510,27'
          Dst:             dp_packet_data
        - Src:             'lib/netdev-native-tnl.c:515,5'
          Dst:             ovs_ignore
        - Src:             'lib/netdev-native-tnl.c:517,13'
          Dst:             netdev_tnl_is_header_ipv6
        - Src:             'lib/netdev-native-tnl.c:520,5'
          Dst:             pkt_metadata_init_tnl
        - Src:             'lib/netdev-native-tnl.c:521,16'
          Dst:             dp_packet_size
        - Src:             'lib/netdev-native-tnl.c:525,12'
          Dst:             parse_gre_header
        - Src:             'lib/netdev-native-tnl.c:530,5'
          Dst:             tnl_ol_pop
        - Src:             'lib/netdev-native-tnl.c:534,5'
          Dst:             dp_packet_delete
    - functionName:    netdev_tnl_push_udp_header
      functionSourceFile: '/src/openvswitch/lib/netdev-native-tnl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 308
      functionLinenumberEnd: 342
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          143
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - dp_packet_l4_checksum_set_good
        - dp_packet_l4_checksum_set_partial
        - dp_packet_l4_proto_set_udp
        - dpif_offload_netdev_udp_tnl_get_src_port
        - htons
        - netdev_tnl_get_src_port
        - netdev_tnl_push_ip_header
        - tnl_ol_push
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netdev-native-tnl.c:317,29'
          Dst:             dpif_offload_netdev_udp_tnl_get_src_port
        - Src:             'lib/netdev-native-tnl.c:319,19'
          Dst:             netdev_tnl_get_src_port
        - Src:             'lib/netdev-native-tnl.c:322,5'
          Dst:             tnl_ol_push
        - Src:             'lib/netdev-native-tnl.c:323,11'
          Dst:             netdev_tnl_push_ip_header
        - Src:             'lib/netdev-native-tnl.c:327,20'
          Dst:             htons
        - Src:             'lib/netdev-native-tnl.c:329,5'
          Dst:             dp_packet_l4_proto_set_udp
        - Src:             'lib/netdev-native-tnl.c:331,9'
          Dst:             dp_packet_l4_checksum_set_partial
        - Src:             'lib/netdev-native-tnl.c:333,9'
          Dst:             dp_packet_l4_checksum_set_good
    - functionName:    token_bucket_wait_at
      functionSourceFile: '/src/openvswitch/lib/token-bucket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 90
      functionLinenumberEnd: 97
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - poll_immediate_wake_at
        - poll_timer_wait_until_at
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/token-bucket.c:92,9'
          Dst:             poll_immediate_wake_at
        - Src:             'lib/token-bucket.c:95,9'
          Dst:             poll_timer_wait_until_at
    - functionName:    sat_add
      functionSourceFile: '/src/openvswitch/lib/sat-math.h'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 32
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          27
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sat_mul
      functionSourceFile: '/src/openvswitch/lib/sat-math.h'
      linkageType:     InternalLinkage
      functionLinenumber: 83
      functionLinenumberEnd: 84
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          36
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    token_bucket_withdraw
      functionSourceFile: '/src/openvswitch/lib/token-bucket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 83
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          132
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - sat_add
        - sat_mul
        - time_msec
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/token-bucket.c:65,29'
          Dst:             time_msec
        - Src:             'lib/token-bucket.c:70,32'
          Dst:             sat_mul
        - Src:             'lib/token-bucket.c:71,35'
          Dst:             sat_add
    - functionName:    token_bucket_set
      functionSourceFile: '/src/openvswitch/lib/token-bucket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          37
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    token_bucket_init
      functionSourceFile: '/src/openvswitch/lib/token-bucket.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 40
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          24
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    invalid_utf8_sequence
      functionSourceFile: '/src/openvswitch/lib/unicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          60
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ds_init
        - ds_put_cstr
        - ds_put_format
        - ds_steal_cstr
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/unicode.c:71,5'
          Dst:             ds_init
        - Src:             'lib/unicode.c:72,5'
          Dst:             ds_put_cstr
        - Src:             'lib/unicode.c:74,9'
          Dst:             ds_put_format
        - Src:             'lib/unicode.c:76,12'
          Dst:             ds_steal_cstr
    - functionName:    lookup_utf8_sequence
      functionSourceFile: '/src/openvswitch/lib/unicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 85
      functionLinenumberEnd: 124
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          68
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    utf8_validate
      functionSourceFile: '/src/openvswitch/lib/unicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 134
      functionLinenumberEnd: 164
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         24
      ICount:          159
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - invalid_utf8_sequence
        - lookup_utf8_sequence
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/unicode.c:146,19'
          Dst:             lookup_utf8_sequence
        - Src:             'lib/unicode.c:148,24'
          Dst:             invalid_utf8_sequence
        - Src:             'lib/unicode.c:154,28'
          Dst:             invalid_utf8_sequence
    - functionName:    utf8_length
      functionSourceFile: '/src/openvswitch/lib/unicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48
      functionLinenumberEnd: 58
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         5
      ICount:          41
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    utf16_decode_surrogate_pair
      functionSourceFile: '/src/openvswitch/lib/unicode.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32
      functionLinenumberEnd: 42
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          32
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    init_this_module_daemon_unix
      functionSourceFile: '/src/openvswitch/lib/daemon-unix.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 46
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/daemon-unix.c:46,1'
          Dst:             vlog_insert_module
    - functionName:    lock_pidfile__
      functionSourceFile: '/src/openvswitch/lib/daemon-unix.c'
      linkageType:     InternalLinkage
      functionLinenumber: 557
      functionLinenumberEnd: 569
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          66
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - __errno_location
        - fcntl
        - fileno
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/daemon-unix.c:567,23'
          Dst:             fileno
        - Src:             'lib/daemon-unix.c:567,17'
          Dst:             fcntl
        - Src:             'lib/daemon-unix.c:567,59'
          Dst:             __errno_location
    - functionName:    check_already_running
      functionSourceFile: '/src/openvswitch/lib/daemon-unix.c'
      linkageType:     InternalLinkage
      functionLinenumber: 702
      functionLinenumberEnd: 710
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         8
      ICount:          45
      EdgeCount:       8
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_strerror
        - read_pidfile__
        - vlog_fatal
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/daemon-unix.c:703,20'
          Dst:             read_pidfile__
        - Src:             'lib/daemon-unix.c:705,9'
          Dst:             vlog_fatal
        - Src:             'lib/daemon-unix.c:707,9'
          Dst:             ovs_strerror
        - Src:             'lib/daemon-unix.c:707,9'
          Dst:             vlog_fatal
    - functionName:    read_pidfile__
      functionSourceFile: '/src/openvswitch/lib/daemon-unix.c'
      linkageType:     InternalLinkage
      functionLinenumber: 582
      functionLinenumberEnd: 688
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         103
      ICount:          488
      EdgeCount:       134
      CyclomaticComplexity: 33
      functionsReached:
        - __errno_location
        - fclose
        - ferror
        - fgets
        - fileno
        - fopen
        - fstat
        - getpid
        - lock_pidfile
        - lock_pidfile__
        - ovs_strerror
        - stat
        - strtoul
        - unlink
        - vlog
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/daemon-unix.c:590,13'
          Dst:             stat
        - Src:             'lib/daemon-unix.c:597,16'
          Dst:             getpid
        - Src:             'lib/daemon-unix.c:600,12'
          Dst:             fopen
        - Src:             'lib/daemon-unix.c:602,13'
          Dst:             __errno_location
        - Src:             'lib/daemon-unix.c:605,17'
          Dst:             __errno_location
        - Src:             'lib/daemon-unix.c:606,9'
          Dst:             ovs_strerror
        - Src:             'lib/daemon-unix.c:606,9'
          Dst:             vlog
        - Src:             'lib/daemon-unix.c:610,13'
          Dst:             lock_pidfile__
        - Src:             'lib/daemon-unix.c:612,9'
          Dst:             ovs_strerror
        - Src:             'lib/daemon-unix.c:612,9'
          Dst:             vlog
        - Src:             'lib/daemon-unix.c:625,13'
          Dst:             vlog
        - Src:             'lib/daemon-unix.c:630,17'
          Dst:             lock_pidfile
        - Src:             'lib/daemon-unix.c:633,13'
          Dst:             vlog
        - Src:             'lib/daemon-unix.c:638,13'
          Dst:             stat
        - Src:             'lib/daemon-unix.c:638,41'
          Dst:             fileno
        - Src:             'lib/daemon-unix.c:638,35'
          Dst:             fstat
        - Src:             'lib/daemon-unix.c:643,13'
          Dst:             vlog
        - Src:             'lib/daemon-unix.c:648,13'
          Dst:             unlink
        - Src:             'lib/daemon-unix.c:649,21'
          Dst:             __errno_location
        - Src:             'lib/daemon-unix.c:650,13'
          Dst:             ovs_strerror
        - Src:             'lib/daemon-unix.c:650,13'
          Dst:             vlog
        - Src:             'lib/daemon-unix.c:654,9'
          Dst:             vlog
        - Src:             'lib/daemon-unix.c:655,9'
          Dst:             fclose
        - Src:             'lib/daemon-unix.c:659,10'
          Dst:             fgets
        - Src:             'lib/daemon-unix.c:660,13'
          Dst:             ferror
        - Src:             'lib/daemon-unix.c:661,21'
          Dst:             __errno_location
        - Src:             'lib/daemon-unix.c:662,13'
          Dst:             ovs_strerror
        - Src:             'lib/daemon-unix.c:662,13'
          Dst:             vlog
        - Src:             'lib/daemon-unix.c:665,13'
          Dst:             vlog
        - Src:             'lib/daemon-unix.c:670,22'
          Dst:             strtoul
        - Src:             'lib/daemon-unix.c:675,9'
          Dst:             vlog
        - Src:             'lib/daemon-unix.c:680,5'
          Dst:             fclose
        - Src:             'lib/daemon-unix.c:685,9'
          Dst:             fclose
    - functionName:    lock_pidfile
      functionSourceFile: '/src/openvswitch/lib/daemon-unix.c'
      linkageType:     InternalLinkage
      functionLinenumber: 574
      functionLinenumberEnd: 577
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - lock_pidfile__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/daemon-unix.c:577,12'
          Dst:             lock_pidfile__
    - functionName:    should_restart
      functionSourceFile: '/src/openvswitch/lib/daemon-unix.c'
      linkageType:     InternalLinkage
      functionLinenumber: 323
      functionLinenumberEnd: 341
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          55
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fork_and_clean_up
      functionSourceFile: '/src/openvswitch/lib/daemon-unix.c'
      linkageType:     InternalLinkage
      functionLinenumber: 229
      functionLinenumberEnd: 238
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         9
      ICount:          38
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - fatal_signal_fork
        - lockfile_postfork
        - xfork_at
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/daemon-unix.c:230,17'
          Dst:             xfork_at
        - Src:             'lib/daemon-unix.c:233,9'
          Dst:             fatal_signal_fork
        - Src:             'lib/daemon-unix.c:236,9'
          Dst:             lockfile_postfork
    - functionName:    enlarge_buffer
      functionSourceFile: '/src/openvswitch/lib/daemon-unix.c'
      linkageType:     InternalLinkage
      functionLinenumber: 939
      functionLinenumberEnd: 949
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - xrealloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/daemon-unix.c:943,16'
          Dst:             xrealloc
    - functionName:    get_sysconf_buffer_size
      functionSourceFile: '/src/openvswitch/lib/daemon-unix.c'
      linkageType:     InternalLinkage
      functionLinenumber: 898
      functionLinenumberEnd: 931
      functionDepth:   0
      returnType:      size_t
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         21
      ICount:          111
      EdgeCount:       25
      CyclomaticComplexity: 6
      functionsReached:
        - __errno_location
        - ovs_strerror
        - sysconf
        - vlog_fatal
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/daemon-unix.c:903,5'
          Dst:             __errno_location
        - Src:             'lib/daemon-unix.c:904,19'
          Dst:             sysconf
        - Src:             'lib/daemon-unix.c:905,13'
          Dst:             __errno_location
        - Src:             'lib/daemon-unix.c:906,13'
          Dst:             __errno_location
        - Src:             'lib/daemon-unix.c:906,13'
          Dst:             ovs_strerror
        - Src:             'lib/daemon-unix.c:906,13'
          Dst:             vlog_fatal
        - Src:             'lib/daemon-unix.c:917,5'
          Dst:             __errno_location
        - Src:             'lib/daemon-unix.c:918,19'
          Dst:             sysconf
        - Src:             'lib/daemon-unix.c:919,13'
          Dst:             __errno_location
        - Src:             'lib/daemon-unix.c:920,13'
          Dst:             __errno_location
        - Src:             'lib/daemon-unix.c:920,13'
          Dst:             ovs_strerror
        - Src:             'lib/daemon-unix.c:920,13'
          Dst:             vlog_fatal
    - functionName:    daemon_set_new_user
      functionSourceFile: '/src/openvswitch/lib/daemon-unix.c'
      linkageType:     InternalLinkage
      functionLinenumber: 964
      functionLinenumberEnd: 1066
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         60
      ICount:          333
      EdgeCount:       74
      CyclomaticComplexity: 16
      functionsReached:
        - enlarge_buffer
        - get_sysconf_buffer_size
        - geteuid
        - getgid
        - getgrnam_r
        - getpwnam_r
        - getpwuid_r
        - getuid
        - ovs_strerror
        - strchr
        - strcmp
        - strlen
        - strspn
        - vlog_fatal
        - xmalloc
        - xmemdup0
        - xstrdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/daemon-unix.c:965,23'
          Dst:             strchr
        - Src:             'lib/daemon-unix.c:968,20'
          Dst:             get_sysconf_buffer_size
        - Src:             'lib/daemon-unix.c:969,11'
          Dst:             getuid
        - Src:             'lib/daemon-unix.c:970,11'
          Dst:             getgid
        - Src:             'lib/daemon-unix.c:972,9'
          Dst:             geteuid
        - Src:             'lib/daemon-unix.c:973,9'
          Dst:             vlog_fatal
        - Src:             'lib/daemon-unix.c:976,18'
          Dst:             strspn
        - Src:             'lib/daemon-unix.c:977,42'
          Dst:             strlen
        - Src:             'lib/daemon-unix.c:983,11'
          Dst:             xmalloc
        - Src:             'lib/daemon-unix.c:985,16'
          Dst:             xmemdup0
        - Src:             'lib/daemon-unix.c:987,21'
          Dst:             getpwnam_r
        - Src:             'lib/daemon-unix.c:988,18'
          Dst:             enlarge_buffer
        - Src:             'lib/daemon-unix.c:994,13'
          Dst:             ovs_strerror
        - Src:             'lib/daemon-unix.c:994,13'
          Dst:             vlog_fatal
        - Src:             'lib/daemon-unix.c:998,13'
          Dst:             vlog_fatal
        - Src:             'lib/daemon-unix.c:1002,21'
          Dst:             getpwuid_r
        - Src:             'lib/daemon-unix.c:1003,18'
          Dst:             enlarge_buffer
        - Src:             'lib/daemon-unix.c:1009,13'
          Dst:             ovs_strerror
        - Src:             'lib/daemon-unix.c:1009,13'
          Dst:             vlog_fatal
        - Src:             'lib/daemon-unix.c:1012,16'
          Dst:             xstrdup
        - Src:             'lib/daemon-unix.c:1021,19'
          Dst:             strspn
        - Src:             'lib/daemon-unix.c:1027,19'
          Dst:             xmalloc
        - Src:             'lib/daemon-unix.c:1028,25'
          Dst:             getgrnam_r
        - Src:             'lib/daemon-unix.c:1030,22'
          Dst:             enlarge_buffer
        - Src:             'lib/daemon-unix.c:1036,17'
          Dst:             ovs_strerror
        - Src:             'lib/daemon-unix.c:1036,17'
          Dst:             vlog_fatal
        - Src:             'lib/daemon-unix.c:1041,17'
          Dst:             vlog_fatal
        - Src:             'lib/daemon-unix.c:1049,26'
          Dst:             strcmp
        - Src:             'lib/daemon-unix.c:1055,21'
          Dst:             vlog_fatal
    - 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:    1
      BranchProfiles:  []
      Callsites:       []
    - 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:    1
      BranchProfiles:  []
      Callsites:       []
    - 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:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    getgrnam_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:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    daemon_become_new_user
      functionSourceFile: '/src/openvswitch/lib/daemon-unix.c'
      linkageType:     InternalLinkage
      functionLinenumber: 879
      functionLinenumberEnd: 886
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - bool
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - assert_single_threaded_at
        - daemon_become_new_user__
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/daemon-unix.c:880,5'
          Dst:             assert_single_threaded_at
        - Src:             'lib/daemon-unix.c:882,9'
          Dst:             daemon_become_new_user__
    - functionName:    daemon_become_new_user__
      functionSourceFile: '/src/openvswitch/lib/daemon-unix.c'
      linkageType:     InternalLinkage
      functionLinenumber: 858
      functionLinenumberEnd: 865
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - bool
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_change_owner_unix
        - vlog_fatal
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/daemon-unix.c:858,5'
          Dst:             vlog_change_owner_unix
        - Src:             'lib/daemon-unix.c:865,13'
          Dst:             vlog_fatal
    - functionName:    read_pidfile
      functionSourceFile: '/src/openvswitch/lib/daemon-unix.c'
      linkageType:     InternalLinkage
      functionLinenumber: 694
      functionLinenumberEnd: 695
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - read_pidfile__
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/daemon-unix.c:695,12'
          Dst:             read_pidfile__
    - functionName:    daemon_usage
      functionSourceFile: '/src/openvswitch/lib/daemon-unix.c'
      linkageType:     InternalLinkage
      functionLinenumber: 542
      functionLinenumberEnd: 553
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          14
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_rundir
        - printf
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/daemon-unix.c:552,9'
          Dst:             ovs_rundir
        - Src:             'lib/daemon-unix.c:543,5'
          Dst:             printf
    - functionName:    daemonize_post_detach
      functionSourceFile: '/src/openvswitch/lib/daemon-unix.c'
      linkageType:     InternalLinkage
      functionLinenumber: 531
      functionLinenumberEnd: 538
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         9
      ICount:          35
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - chdir
        - close_standard_fds
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/daemon-unix.c:534,24'
          Dst:             chdir
        - Src:             'lib/daemon-unix.c:534,13'
          Dst:             ovs_ignore
        - Src:             'lib/daemon-unix.c:536,9'
          Dst:             close_standard_fds
    - functionName:    chdir
      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:    daemonize_complete
      functionSourceFile: '/src/openvswitch/lib/daemon-unix.c'
      linkageType:     InternalLinkage
      functionLinenumber: 508
      functionLinenumberEnd: 520
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         9
      ICount:          40
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - daemonize_post_detach
        - fork_notify_startup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/daemon-unix.c:517,9'
          Dst:             fork_notify_startup
        - Src:             'lib/daemon-unix.c:518,9'
          Dst:             daemonize_post_detach
    - functionName:    fork_notify_startup
      functionSourceFile: '/src/openvswitch/lib/daemon-unix.c'
      linkageType:     InternalLinkage
      functionLinenumber: 309
      functionLinenumberEnd: 319
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          41
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_strerror
        - vlog_fatal
        - write_fully
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/daemon-unix.c:314,17'
          Dst:             write_fully
        - Src:             'lib/daemon-unix.c:316,13'
          Dst:             ovs_strerror
        - Src:             'lib/daemon-unix.c:316,13'
          Dst:             vlog_fatal
    - functionName:    make_pidfile
      functionSourceFile: '/src/openvswitch/lib/daemon-unix.c'
      linkageType:     InternalLinkage
      functionLinenumber: 146
      functionLinenumberEnd: 219
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         21
      ICount:          163
      EdgeCount:       23
      CyclomaticComplexity: 4
      functionsReached:
        - __errno_location
        - check_already_running
        - fatal_signal_add_file_to_unlink
        - fatal_signal_remove_file_to_unlink
        - fflush
        - fileno
        - fopen
        - fprintf
        - fstat
        - ftruncate
        - getpid
        - lock_pidfile
        - ovs_strerror
        - rename
        - vlog_fatal
        - xasprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/daemon-unix.c:147,20'
          Dst:             getpid
        - Src:             'lib/daemon-unix.c:155,19'
          Dst:             xasprintf
        - Src:             'lib/daemon-unix.c:156,9'
          Dst:             fatal_signal_add_file_to_unlink
        - Src:             'lib/daemon-unix.c:161,19'
          Dst:             xasprintf
        - Src:             'lib/daemon-unix.c:164,12'
          Dst:             fopen
        - Src:             'lib/daemon-unix.c:166,9'
          Dst:             __errno_location
        - Src:             'lib/daemon-unix.c:166,9'
          Dst:             ovs_strerror
        - Src:             'lib/daemon-unix.c:166,9'
          Dst:             vlog_fatal
        - Src:             'lib/daemon-unix.c:169,13'
          Dst:             lock_pidfile
        - Src:             'lib/daemon-unix.c:174,9'
          Dst:             ovs_strerror
        - Src:             'lib/daemon-unix.c:174,9'
          Dst:             vlog_fatal
        - Src:             'lib/daemon-unix.c:181,9'
          Dst:             fatal_signal_add_file_to_unlink
        - Src:             'lib/daemon-unix.c:182,9'
          Dst:             check_already_running
        - Src:             'lib/daemon-unix.c:185,15'
          Dst:             fileno
        - Src:             'lib/daemon-unix.c:185,9'
          Dst:             fstat
        - Src:             'lib/daemon-unix.c:186,9'
          Dst:             __errno_location
        - Src:             'lib/daemon-unix.c:186,9'
          Dst:             ovs_strerror
        - Src:             'lib/daemon-unix.c:186,9'
          Dst:             vlog_fatal
        - Src:             'lib/daemon-unix.c:189,19'
          Dst:             fileno
        - Src:             'lib/daemon-unix.c:189,9'
          Dst:             ftruncate
        - Src:             'lib/daemon-unix.c:190,9'
          Dst:             __errno_location
        - Src:             'lib/daemon-unix.c:190,9'
          Dst:             ovs_strerror
        - Src:             'lib/daemon-unix.c:190,9'
          Dst:             vlog_fatal
        - Src:             'lib/daemon-unix.c:193,5'
          Dst:             fprintf
        - Src:             'lib/daemon-unix.c:194,9'
          Dst:             fflush
        - Src:             'lib/daemon-unix.c:195,9'
          Dst:             __errno_location
        - Src:             'lib/daemon-unix.c:195,9'
          Dst:             ovs_strerror
        - Src:             'lib/daemon-unix.c:195,9'
          Dst:             vlog_fatal
        - Src:             'lib/daemon-unix.c:198,13'
          Dst:             rename
        - Src:             'lib/daemon-unix.c:202,5'
          Dst:             fatal_signal_remove_file_to_unlink
        - Src:             'lib/daemon-unix.c:205,9'
          Dst:             __errno_location
        - Src:             'lib/daemon-unix.c:205,9'
          Dst:             ovs_strerror
        - Src:             'lib/daemon-unix.c:205,9'
          Dst:             vlog_fatal
        - Src:             'lib/daemon-unix.c:210,5'
          Dst:             fatal_signal_add_file_to_unlink
    - functionName:    ftruncate
      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:    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:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    monitor_daemon
      functionSourceFile: '/src/openvswitch/lib/daemon-unix.c'
      linkageType:     InternalLinkage
      functionLinenumber: 345
      functionLinenumberEnd: 439
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         64
      ICount:          325
      EdgeCount:       79
      CyclomaticComplexity: 17
      functionsReached:
        - __errno_location
        - close
        - exit
        - fork_and_wait_for_startup
        - log_received_backtrace
        - ovs_cmdl_proctitle_restore
        - ovs_cmdl_proctitle_set
        - ovs_strerror
        - process_status_msg
        - set_subprogram_name
        - setrlimit
        - should_restart
        - time
        - vlog
        - vlog_close_log_file
        - vlog_fatal
        - vlog_get_log_file
        - vlog_set_log_file
        - waitpid
        - xasprintf
        - xsleep
        - xstrdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/daemon-unix.c:353,5'
          Dst:             set_subprogram_name
        - Src:             'lib/daemon-unix.c:354,18'
          Dst:             xstrdup
        - Src:             'lib/daemon-unix.c:360,9'
          Dst:             ovs_cmdl_proctitle_set
        - Src:             'lib/daemon-unix.c:364,30'
          Dst:             vlog_get_log_file
        - Src:             'lib/daemon-unix.c:365,13'
          Dst:             vlog_close_log_file
        - Src:             'lib/daemon-unix.c:368,26'
          Dst:             waitpid
        - Src:             'lib/daemon-unix.c:369,40'
          Dst:             __errno_location
        - Src:             'lib/daemon-unix.c:371,13'
          Dst:             vlog_set_log_file
        - Src:             'lib/daemon-unix.c:374,17'
          Dst:             ovs_strerror
        - Src:             'lib/daemon-unix.c:374,17'
          Dst:             vlog_fatal
        - Src:             'lib/daemon-unix.c:379,23'
          Dst:             process_status_msg
        - Src:             'lib/daemon-unix.c:380,17'
          Dst:             should_restart
        - Src:             'lib/daemon-unix.c:382,30'
          Dst:             xasprintf
        - Src:             'lib/daemon-unix.c:393,25'
          Dst:             setrlimit
        - Src:             'lib/daemon-unix.c:394,25'
          Dst:             __errno_location
        - Src:             'lib/daemon-unix.c:394,25'
          Dst:             ovs_strerror
        - Src:             'lib/daemon-unix.c:394,25'
          Dst:             vlog
        - Src:             'lib/daemon-unix.c:399,17'
          Dst:             log_received_backtrace
        - Src:             'lib/daemon-unix.c:400,17'
          Dst:             close
        - Src:             'lib/daemon-unix.c:404,21'
          Dst:             time
        - Src:             'lib/daemon-unix.c:405,21'
          Dst:             vlog
        - Src:             'lib/daemon-unix.c:408,38'
          Dst:             time
        - Src:             'lib/daemon-unix.c:413,25'
          Dst:             xsleep
        - Src:             'lib/daemon-unix.c:416,32'
          Dst:             time
        - Src:             'lib/daemon-unix.c:418,17'
          Dst:             vlog
        - Src:             'lib/daemon-unix.c:419,32'
          Dst:             fork_and_wait_for_startup
        - Src:             'lib/daemon-unix.c:427,17'
          Dst:             vlog
        - Src:             'lib/daemon-unix.c:430,17'
          Dst:             exit
        - Src:             'lib/daemon-unix.c:437,5'
          Dst:             ovs_cmdl_proctitle_restore
        - Src:             'lib/daemon-unix.c:438,5'
          Dst:             set_subprogram_name
    - functionName:    waitpid
      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:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    setrlimit
      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:    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:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fork_and_wait_for_startup
      functionSourceFile: '/src/openvswitch/lib/daemon-unix.c'
      linkageType:     InternalLinkage
      functionLinenumber: 257
      functionLinenumberEnd: 304
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         35
      ICount:          182
      EdgeCount:       42
      CyclomaticComplexity: 9
      functionsReached:
        - __errno_location
        - abort
        - close
        - exit
        - fork_and_clean_up
        - ovs_strerror
        - process_status_msg
        - read_fully
        - vlog
        - vlog_fatal
        - waitpid
        - xpipe
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/daemon-unix.c:262,5'
          Dst:             xpipe
        - Src:             'lib/daemon-unix.c:264,11'
          Dst:             fork_and_clean_up
        - Src:             'lib/daemon-unix.c:270,9'
          Dst:             close
        - Src:             'lib/daemon-unix.c:271,13'
          Dst:             read_fully
        - Src:             'lib/daemon-unix.c:276,26'
          Dst:             waitpid
        - Src:             'lib/daemon-unix.c:277,38'
          Dst:             __errno_location
        - Src:             'lib/daemon-unix.c:283,21'
          Dst:             exit
        - Src:             'lib/daemon-unix.c:285,40'
          Dst:             process_status_msg
        - Src:             'lib/daemon-unix.c:286,21'
          Dst:             vlog
        - Src:             'lib/daemon-unix.c:292,17'
          Dst:             __errno_location
        - Src:             'lib/daemon-unix.c:292,17'
          Dst:             ovs_strerror
        - Src:             'lib/daemon-unix.c:292,17'
          Dst:             vlog_fatal
        - Src:             'lib/daemon-unix.c:294,17'
          Dst:             abort
        - Src:             'lib/daemon-unix.c:300,9'
          Dst:             close
    - functionName:    daemonize_start
      functionSourceFile: '/src/openvswitch/lib/daemon-unix.c'
      linkageType:     InternalLinkage
      functionLinenumber: 448
      functionLinenumberEnd: 499
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - bool
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         27
      ICount:          127
      EdgeCount:       33
      CyclomaticComplexity: 8
      functionsReached:
        - assert_single_threaded_at
        - close_standard_fds
        - daemon_become_new_user__
        - exit
        - forbid_forking
        - fork_and_wait_for_startup
        - fork_notify_startup
        - make_pidfile
        - monitor_daemon
        - setsid
        - vlog_fatal
        - vlog_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/daemon-unix.c:449,5'
          Dst:             assert_single_threaded_at
        - Src:             'lib/daemon-unix.c:453,9'
          Dst:             daemon_become_new_user__
        - Src:             'lib/daemon-unix.c:460,13'
          Dst:             fork_and_wait_for_startup
        - Src:             'lib/daemon-unix.c:461,13'
          Dst:             vlog_fatal
        - Src:             'lib/daemon-unix.c:465,13'
          Dst:             exit
        - Src:             'lib/daemon-unix.c:469,9'
          Dst:             setsid
        - Src:             'lib/daemon-unix.c:476,13'
          Dst:             fork_and_wait_for_startup
        - Src:             'lib/daemon-unix.c:477,13'
          Dst:             vlog_fatal
        - Src:             'lib/daemon-unix.c:481,13'
          Dst:             fork_notify_startup
        - Src:             'lib/daemon-unix.c:483,17'
          Dst:             close_standard_fds
        - Src:             'lib/daemon-unix.c:485,13'
          Dst:             monitor_daemon
        - Src:             'lib/daemon-unix.c:490,5'
          Dst:             forbid_forking
        - Src:             'lib/daemon-unix.c:493,9'
          Dst:             make_pidfile
        - Src:             'lib/daemon-unix.c:498,5'
          Dst:             vlog_init
    - functionName:    setsid
      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:    daemon_set_monitor
      functionSourceFile: '/src/openvswitch/lib/daemon-unix.c'
      linkageType:     InternalLinkage
      functionLinenumber: 137
      functionLinenumberEnd: 139
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_detach
      functionSourceFile: '/src/openvswitch/lib/daemon-unix.c'
      linkageType:     InternalLinkage
      functionLinenumber: 129
      functionLinenumberEnd: 131
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ignore_existing_pidfile
      functionSourceFile: '/src/openvswitch/lib/daemon-unix.c'
      linkageType:     InternalLinkage
      functionLinenumber: 121
      functionLinenumberEnd: 123
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_no_chdir
      functionSourceFile: '/src/openvswitch/lib/daemon-unix.c'
      linkageType:     InternalLinkage
      functionLinenumber: 112
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    make_pidfile_name
      functionSourceFile: '/src/openvswitch/lib/daemon-unix.c'
      linkageType:     InternalLinkage
      functionLinenumber: 103
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - abs_file_name
        - ovs_rundir
        - xasprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/daemon-unix.c:105,38'
          Dst:             ovs_rundir
        - Src:             'lib/daemon-unix.c:105,15'
          Dst:             xasprintf
        - Src:             'lib/daemon-unix.c:106,29'
          Dst:             ovs_rundir
        - Src:             'lib/daemon-unix.c:106,15'
          Dst:             abs_file_name
    - functionName:    init_this_module_signals
      functionSourceFile: '/src/openvswitch/lib/signals.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 30
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/signals.c:30,1'
          Dst:             vlog_insert_module
    - functionName:    xsigaction
      functionSourceFile: '/src/openvswitch/lib/signals.c'
      linkageType:     InternalLinkage
      functionLinenumber: 72
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         5
      ICount:          39
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - __errno_location
        - ovs_strerror
        - sigaction
        - signal_name
        - vlog_fatal
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/signals.c:73,9'
          Dst:             sigaction
        - Src:             'lib/signals.c:76,9'
          Dst:             signal_name
        - Src:             'lib/signals.c:76,9'
          Dst:             __errno_location
        - Src:             'lib/signals.c:76,9'
          Dst:             ovs_strerror
        - Src:             'lib/signals.c:76,9'
          Dst:             vlog_fatal
    - 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:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    signal_name
      functionSourceFile: '/src/openvswitch/lib/signals.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51
      functionLinenumberEnd: 68
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          61
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - snprintf
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/signals.c:66,5'
          Dst:             snprintf
    - functionName:    init_this_module_stream_unix
      functionSourceFile: '/src/openvswitch/lib/stream-unix.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-unix.c:39,1'
          Dst:             vlog_insert_module
    - functionName:    atomic_count_inc
      functionSourceFile: '/src/openvswitch/lib/ovs-atomic.h'
      linkageType:     InternalLinkage
      functionLinenumber: 451
      functionLinenumberEnd: 456
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    punix_accept
      functionSourceFile: '/src/openvswitch/lib/stream-unix.c'
      linkageType:     InternalLinkage
      functionLinenumber: 113
      functionLinenumberEnd: 127
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - atomic_count_inc
        - get_unix_name_len
        - new_fd_stream
        - xasprintf
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-unix.c:115,20'
          Dst:             get_unix_name_len
        - Src:             'lib/stream-unix.c:119,22'
          Dst:             xasprintf
        - Src:             'lib/stream-unix.c:125,43'
          Dst:             atomic_count_inc
        - Src:             'lib/stream-unix.c:125,22'
          Dst:             xasprintf
        - Src:             'lib/stream-unix.c:127,12'
          Dst:             new_fd_stream
    - functionName:    pfd_open
      functionSourceFile: '/src/openvswitch/lib/stream-unix.c'
      linkageType:     InternalLinkage
      functionLinenumber: 147
      functionLinenumberEnd: 180
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         40
      ICount:          202
      EdgeCount:       51
      CyclomaticComplexity: 13
      functionsReached:
        - __errno_location
        - getsockopt
        - new_fd_pstream
        - ovs_strerror
        - punix_accept
        - set_nonblocking
        - str_to_long
        - vlog
        - xstrdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-unix.c:150,10'
          Dst:             str_to_long
        - Src:             'lib/stream-unix.c:151,9'
          Dst:             vlog
        - Src:             'lib/stream-unix.c:158,9'
          Dst:             getsockopt
        - Src:             'lib/stream-unix.c:159,9'
          Dst:             __errno_location
        - Src:             'lib/stream-unix.c:159,9'
          Dst:             ovs_strerror
        - Src:             'lib/stream-unix.c:159,9'
          Dst:             vlog
        - Src:             'lib/stream-unix.c:160,16'
          Dst:             __errno_location
        - Src:             'lib/stream-unix.c:163,9'
          Dst:             vlog
        - Src:             'lib/stream-unix.c:168,9'
          Dst:             getsockopt
        - Src:             'lib/stream-unix.c:170,9'
          Dst:             vlog
        - Src:             'lib/stream-unix.c:174,17'
          Dst:             set_nonblocking
        - Src:             'lib/stream-unix.c:179,27'
          Dst:             xstrdup
        - Src:             'lib/stream-unix.c:179,12'
          Dst:             new_fd_pstream
        - Src:             'lib/stream-unix.c:179,12'
          Dst:             punix_accept
    - functionName:    punix_open
      functionSourceFile: '/src/openvswitch/lib/stream-unix.c'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 108
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          118
      EdgeCount:       22
      CyclomaticComplexity: 6
      functionsReached:
        - __errno_location
        - abs_file_name
        - close
        - listen
        - make_unix_socket
        - new_fd_pstream
        - ovs_rundir
        - ovs_strerror
        - punix_accept
        - vlog
        - xstrdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-unix.c:90,31'
          Dst:             ovs_rundir
        - Src:             'lib/stream-unix.c:90,17'
          Dst:             abs_file_name
        - Src:             'lib/stream-unix.c:91,10'
          Dst:             make_unix_socket
        - Src:             'lib/stream-unix.c:93,9'
          Dst:             __errno_location
        - Src:             'lib/stream-unix.c:93,9'
          Dst:             ovs_strerror
        - Src:             'lib/stream-unix.c:93,9'
          Dst:             vlog
        - Src:             'lib/stream-unix.c:95,16'
          Dst:             __errno_location
        - Src:             'lib/stream-unix.c:98,9'
          Dst:             listen
        - Src:             'lib/stream-unix.c:99,17'
          Dst:             __errno_location
        - Src:             'lib/stream-unix.c:100,9'
          Dst:             ovs_strerror
        - Src:             'lib/stream-unix.c:100,9'
          Dst:             vlog
        - Src:             'lib/stream-unix.c:101,9'
          Dst:             close
        - Src:             'lib/stream-unix.c:106,27'
          Dst:             xstrdup
        - Src:             'lib/stream-unix.c:106,12'
          Dst:             new_fd_pstream
        - Src:             'lib/stream-unix.c:106,12'
          Dst:             punix_accept
    - functionName:    unix_open
      functionSourceFile: '/src/openvswitch/lib/stream-unix.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 63
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          80
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - abs_file_name
        - check_connection_completion
        - make_unix_socket
        - new_fd_stream
        - ovs_rundir
        - ovs_strerror
        - vlog
        - xstrdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-unix.c:50,34'
          Dst:             ovs_rundir
        - Src:             'lib/stream-unix.c:50,20'
          Dst:             abs_file_name
        - Src:             'lib/stream-unix.c:51,10'
          Dst:             make_unix_socket
        - Src:             'lib/stream-unix.c:54,9'
          Dst:             ovs_strerror
        - Src:             'lib/stream-unix.c:54,9'
          Dst:             vlog
        - Src:             'lib/stream-unix.c:61,26'
          Dst:             xstrdup
        - Src:             'lib/stream-unix.c:61,45'
          Dst:             check_connection_completion
        - Src:             'lib/stream-unix.c:61,12'
          Dst:             new_fd_stream
    - functionName:    init_this_module_dpif_netlink
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 68
      functionLinenumberEnd: 68
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:68,1'
          Dst:             vlog_insert_module
    - functionName:    netnsid_set_local
      functionSourceFile: '/src/openvswitch/lib/netnsid.h'
      linkageType:     InternalLinkage
      functionLinenumber: 92
      functionLinenumberEnd: 94
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netnsid_set
      functionSourceFile: '/src/openvswitch/lib/netnsid.h'
      linkageType:     InternalLinkage
      functionLinenumber: 126
      functionLinenumberEnd: 133
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netnsid.h:129,9'
          Dst:             ovs_ignore
    - functionName:    dpif_netlink_unixctl_dispatch_mode
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4439
      functionLinenumberEnd: 4472
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          93
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - dpif_netlink_dp_dump_start
        - dpif_netlink_dp_from_ofpbuf
        - dpif_netlink_init
        - ds_cstr
        - ds_destroy
        - ds_put_format
        - nl_dump_done
        - nl_dump_next
        - ofpbuf_uninit
        - ofpbuf_use_stub
        - unixctl_command_reply
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:4446,13'
          Dst:             dpif_netlink_init
        - Src:             'lib/dpif-netlink.c:4451,5'
          Dst:             ofpbuf_use_stub
        - Src:             'lib/dpif-netlink.c:4452,5'
          Dst:             dpif_netlink_dp_dump_start
        - Src:             'lib/dpif-netlink.c:4453,12'
          Dst:             nl_dump_next
        - Src:             'lib/dpif-netlink.c:4455,14'
          Dst:             dpif_netlink_dp_from_ofpbuf
        - Src:             'lib/dpif-netlink.c:4456,13'
          Dst:             ds_put_format
        - Src:             'lib/dpif-netlink.c:4458,17'
          Dst:             ds_put_format
        - Src:             'lib/dpif-netlink.c:4460,17'
          Dst:             ds_put_format
        - Src:             'lib/dpif-netlink.c:4462,13'
          Dst:             ds_put_format
        - Src:             'lib/dpif-netlink.c:4465,5'
          Dst:             ofpbuf_uninit
        - Src:             'lib/dpif-netlink.c:4466,13'
          Dst:             nl_dump_done
        - Src:             'lib/dpif-netlink.c:4468,37'
          Dst:             ds_cstr
        - Src:             'lib/dpif-netlink.c:4468,9'
          Dst:             unixctl_command_reply
        - Src:             'lib/dpif-netlink.c:4471,5'
          Dst:             ds_destroy
    - functionName:    dpif_netlink_init
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3756
      functionLinenumberEnd: 3800
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         45
      ICount:          181
      EdgeCount:       57
      CyclomaticComplexity: 14
      functionsReached:
        - dpif_netlink_unixctl_dispatch_mode
        - nl_lookup_genl_family
        - nl_lookup_genl_mcgroup
        - ovsthread_once_done
        - ovsthread_once_start
        - unixctl_command_register
        - vlog
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:3760,9'
          Dst:             ovsthread_once_start
        - Src:             'lib/dpif-netlink.c:3761,17'
          Dst:             nl_lookup_genl_family
        - Src:             'lib/dpif-netlink.c:3764,13'
          Dst:             vlog
        - Src:             'lib/dpif-netlink.c:3769,21'
          Dst:             nl_lookup_genl_family
        - Src:             'lib/dpif-netlink.c:3772,21'
          Dst:             nl_lookup_genl_family
        - Src:             'lib/dpif-netlink.c:3775,21'
          Dst:             nl_lookup_genl_family
        - Src:             'lib/dpif-netlink.c:3779,21'
          Dst:             nl_lookup_genl_mcgroup
        - Src:             'lib/dpif-netlink.c:3783,17'
          Dst:             nl_lookup_genl_family
        - Src:             'lib/dpif-netlink.c:3784,17'
          Dst:             vlog
        - Src:             'lib/dpif-netlink.c:3787,13'
          Dst:             nl_lookup_genl_family
        - Src:             'lib/dpif-netlink.c:3789,13'
          Dst:             vlog
        - Src:             'lib/dpif-netlink.c:3794,9'
          Dst:             unixctl_command_register
        - Src:             'lib/dpif-netlink.c:3794,9'
          Dst:             dpif_netlink_unixctl_dispatch_mode
        - Src:             'lib/dpif-netlink.c:3797,9'
          Dst:             ovsthread_once_done
    - functionName:    dpif_netlink_dp_dump_start
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4111
      functionLinenumberEnd: 4122
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dpif_netlink_dp_init
        - dpif_netlink_dp_to_ofpbuf
        - nl_dump_start
        - ofpbuf_delete
        - ofpbuf_new
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:4115,5'
          Dst:             dpif_netlink_dp_init
        - Src:             'lib/dpif-netlink.c:4118,11'
          Dst:             ofpbuf_new
        - Src:             'lib/dpif-netlink.c:4119,5'
          Dst:             dpif_netlink_dp_to_ofpbuf
        - Src:             'lib/dpif-netlink.c:4120,5'
          Dst:             nl_dump_start
        - Src:             'lib/dpif-netlink.c:4121,5'
          Dst:             ofpbuf_delete
    - functionName:    dpif_netlink_dp_from_ofpbuf
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4009
      functionLinenumberEnd: 4062
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         27
      ICount:          174
      EdgeCount:       36
      CyclomaticComplexity: 11
      functionsReached:
        - dpif_netlink_dp_init
        - nl_attr_get
        - nl_attr_get_string
        - nl_attr_get_u32
        - nl_policy_parse
        - ofpbuf_const_initializer
        - ofpbuf_try_pull
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:4025,5'
          Dst:             dpif_netlink_dp_init
        - Src:             'lib/dpif-netlink.c:4027,23'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/dpif-netlink.c:4028,30'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/dpif-netlink.c:4029,31'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/dpif-netlink.c:4030,37'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/dpif-netlink.c:4035,13'
          Dst:             nl_policy_parse
        - Src:             'lib/dpif-netlink.c:4042,16'
          Dst:             nl_attr_get_string
        - Src:             'lib/dpif-netlink.c:4044,21'
          Dst:             nl_attr_get
        - Src:             'lib/dpif-netlink.c:4048,30'
          Dst:             nl_attr_get
        - Src:             'lib/dpif-netlink.c:4052,29'
          Dst:             nl_attr_get_u32
        - Src:             'lib/dpif-netlink.c:4056,26'
          Dst:             nl_attr_get_u32
    - functionName:    dpif_netlink_dp_init
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4104
      functionLinenumberEnd: 4107
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofpbuf_const_initializer
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 97
      functionLinenumberEnd: 105
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          30
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofpbuf_try_pull
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 275
      functionLinenumberEnd: 276
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofpbuf_pull
      functionUses:    18
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:276,30'
          Dst:             ofpbuf_pull
    - functionName:    ofpbuf_pull
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 258
      functionLinenumberEnd: 269
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          64
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:259,5'
          Dst:             ovs_ignore
    - functionName:    dpif_netlink_dp_to_ofpbuf
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4067
      functionLinenumberEnd: 4099
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          129
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - nl_msg_put_genlmsghdr
        - nl_msg_put_string
        - nl_msg_put_u32
        - nl_msg_put_unspec
        - ofpbuf_put_uninit
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:4070,5'
          Dst:             nl_msg_put_genlmsghdr
        - Src:             'lib/dpif-netlink.c:4074,18'
          Dst:             ofpbuf_put_uninit
        - Src:             'lib/dpif-netlink.c:4078,9'
          Dst:             nl_msg_put_string
        - Src:             'lib/dpif-netlink.c:4082,9'
          Dst:             nl_msg_put_u32
        - Src:             'lib/dpif-netlink.c:4086,9'
          Dst:             nl_msg_put_u32
        - Src:             'lib/dpif-netlink.c:4090,9'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/dpif-netlink.c:4095,9'
          Dst:             nl_msg_put_u32
    - functionName:    ofpbuf_delete
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 172
      functionLinenumberEnd: 177
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          28
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofpbuf_uninit
      functionUses:    31
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:174,9'
          Dst:             ofpbuf_uninit
    - functionName:    ovsthread_once_start
      functionSourceFile: '/src/openvswitch/./include/openvswitch/thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsthread_once_start__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/thread.h:161,12'
          Dst:             ovsthread_once_start__
    - functionName:    dpif_netlink_meter_get_stats
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3403
      functionLinenumberEnd: 3482
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - short
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         42
      ICount:          298
      EdgeCount:       54
      CyclomaticComplexity: 14
      functionsReached:
        - dpif_netlink_cast
        - dpif_netlink_meter_init
        - dpif_netlink_meter_transact
        - get_32aligned_u64
        - nl_attr_find_nested
        - nl_attr_get
        - nl_attr_get_size
        - nl_attr_get_u32
        - nl_attr_is_valid
        - nl_attr_len_pad
        - nl_attr_next
        - nl_msg_put_u32
        - ofpbuf_delete
        - ovs_strerror
        - vlog_rate_limit
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:3404,33'
          Dst:             dpif_netlink_cast
        - Src:             'lib/dpif-netlink.c:3416,5'
          Dst:             dpif_netlink_meter_init
        - Src:             'lib/dpif-netlink.c:3418,5'
          Dst:             nl_msg_put_u32
        - Src:             'lib/dpif-netlink.c:3420,17'
          Dst:             dpif_netlink_meter_transact
        - Src:             'lib/dpif-netlink.c:3425,9'
          Dst:             ovs_strerror
        - Src:             'lib/dpif-netlink.c:3425,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-netlink.c:3433,12'
          Dst:             nl_attr_get_u32
        - Src:             'lib/dpif-netlink.c:3435,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-netlink.c:3437,9'
          Dst:             ofpbuf_delete
        - Src:             'lib/dpif-netlink.c:3447,16'
          Dst:             nl_attr_get
        - Src:             'lib/dpif-netlink.c:3448,34'
          Dst:             get_32aligned_u64
        - Src:             'lib/dpif-netlink.c:3449,32'
          Dst:             get_32aligned_u64
        - Src:             'lib/dpif-netlink.c:3453,13'
          Dst:             nl_attr_get
        - Src:             'lib/dpif-netlink.c:3453,13'
          Dst:             nl_attr_get_size
        - Src:             'lib/dpif-netlink.c:3453,13'
          Dst:             nl_attr_is_valid
        - Src:             'lib/dpif-netlink.c:3455,28'
          Dst:             nl_attr_find_nested
        - Src:             'lib/dpif-netlink.c:3456,33'
          Dst:             nl_attr_get_size
        - Src:             'lib/dpif-netlink.c:3458,28'
          Dst:             nl_attr_get
        - Src:             'lib/dpif-netlink.c:3462,31'
          Dst:             get_32aligned_u64
        - Src:             'lib/dpif-netlink.c:3464,31'
          Dst:             get_32aligned_u64
        - Src:             'lib/dpif-netlink.c:3453,13'
          Dst:             nl_attr_len_pad
        - Src:             'lib/dpif-netlink.c:3453,13'
          Dst:             nl_attr_next
        - Src:             'lib/dpif-netlink.c:3480,5'
          Dst:             ofpbuf_delete
    - functionName:    dpif_netlink_cast
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 264
      functionLinenumberEnd: 266
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dpif_assert_class
      functionUses:    31
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:265,5'
          Dst:             dpif_assert_class
    - functionName:    dpif_netlink_meter_init
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3199
      functionLinenumberEnd: 3208
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          40
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_msg_put_genlmsghdr
        - ofpbuf_put_uninit
        - ofpbuf_use_stub
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:3200,5'
          Dst:             ofpbuf_use_stub
        - Src:             'lib/dpif-netlink.c:3202,5'
          Dst:             nl_msg_put_genlmsghdr
        - Src:             'lib/dpif-netlink.c:3206,18'
          Dst:             ofpbuf_put_uninit
    - functionName:    dpif_netlink_meter_transact
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3220
      functionLinenumberEnd: 3242
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          131
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - nl_policy_parse
        - nl_transact
        - ofpbuf_delete
        - ofpbuf_try_pull
        - ofpbuf_uninit
        - vlog_rate_limit
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:3221,17'
          Dst:             nl_transact
        - Src:             'lib/dpif-netlink.c:3222,5'
          Dst:             ofpbuf_uninit
        - Src:             'lib/dpif-netlink.c:3228,30'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/dpif-netlink.c:3229,31'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/dpif-netlink.c:3230,37'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/dpif-netlink.c:3234,13'
          Dst:             nl_policy_parse
        - Src:             'lib/dpif-netlink.c:3236,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-netlink.c:3238,9'
          Dst:             ofpbuf_delete
    - functionName:    get_32aligned_u64
      functionSourceFile: '/src/openvswitch/lib/unaligned.h'
      linkageType:     InternalLinkage
      functionLinenumber: 208
      functionLinenumberEnd: 209
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    13
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nl_attr_is_valid
      functionSourceFile: '/src/openvswitch/lib/netlink.h'
      linkageType:     InternalLinkage
      functionLinenumber: 171
      functionLinenumberEnd: 174
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nl_attr_len_pad
      functionSourceFile: '/src/openvswitch/lib/netlink.h'
      linkageType:     InternalLinkage
      functionLinenumber: 179
      functionLinenumberEnd: 182
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          37
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nl_attr_next
      functionSourceFile: '/src/openvswitch/lib/netlink.h'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 165
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_assert_class
      functionSourceFile: '/src/openvswitch/lib/dpif-provider.h'
      linkageType:     InternalLinkage
      functionLinenumber: 62
      functionLinenumberEnd: 64
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-provider.h:63,5'
          Dst:             ovs_ignore
    - functionName:    dpif_netlink_enumerate
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 277
      functionLinenumberEnd: 299
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          65
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - dpif_netlink_dp_dump_start
        - dpif_netlink_dp_from_ofpbuf
        - dpif_netlink_init
        - nl_dump_done
        - nl_dump_next
        - ofpbuf_uninit
        - ofpbuf_use_stub
        - sset_add
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:283,13'
          Dst:             dpif_netlink_init
        - Src:             'lib/dpif-netlink.c:288,5'
          Dst:             ofpbuf_use_stub
        - Src:             'lib/dpif-netlink.c:289,5'
          Dst:             dpif_netlink_dp_dump_start
        - Src:             'lib/dpif-netlink.c:290,12'
          Dst:             nl_dump_next
        - Src:             'lib/dpif-netlink.c:293,14'
          Dst:             dpif_netlink_dp_from_ofpbuf
        - Src:             'lib/dpif-netlink.c:294,13'
          Dst:             sset_add
        - Src:             'lib/dpif-netlink.c:297,5'
          Dst:             ofpbuf_uninit
        - Src:             'lib/dpif-netlink.c:298,12'
          Dst:             nl_dump_done
    - functionName:    dpif_netlink_open
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 304
      functionLinenumberEnd: 401
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         34
      ICount:          246
      EdgeCount:       44
      CyclomaticComplexity: 12
      functionsReached:
        - dpif_netlink_cast
        - dpif_netlink_dp_init
        - dpif_netlink_dp_transact
        - dpif_netlink_init
        - dpif_netlink_set_features
        - dpif_netlink_upcall_per_cpu
        - ofpbuf_delete
        - open_dpif
        - vlog
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:310,13'
          Dst:             dpif_netlink_init
        - Src:             'lib/dpif-netlink.c:316,5'
          Dst:             dpif_netlink_dp_init
        - Src:             'lib/dpif-netlink.c:326,17'
          Dst:             dpif_netlink_dp_transact
        - Src:             'lib/dpif-netlink.c:331,9'
          Dst:             ofpbuf_delete
        - Src:             'lib/dpif-netlink.c:346,13'
          Dst:             dpif_netlink_dp_transact
        - Src:             'lib/dpif-netlink.c:366,17'
          Dst:             dpif_netlink_dp_transact
        - Src:             'lib/dpif-netlink.c:370,21'
          Dst:             dpif_netlink_dp_transact
        - Src:             'lib/dpif-netlink.c:376,17'
          Dst:             open_dpif
        - Src:             'lib/dpif-netlink.c:377,9'
          Dst:             dpif_netlink_set_features
        - Src:             'lib/dpif-netlink.c:379,9'
          Dst:             vlog
        - Src:             'lib/dpif-netlink.c:385,17'
          Dst:             dpif_netlink_dp_transact
        - Src:             'lib/dpif-netlink.c:389,17'
          Dst:             open_dpif
        - Src:             'lib/dpif-netlink.c:392,5'
          Dst:             ofpbuf_delete
        - Src:             'lib/dpif-netlink.c:395,9'
          Dst:             dpif_netlink_cast
        - Src:             'lib/dpif-netlink.c:395,9'
          Dst:             dpif_netlink_upcall_per_cpu
        - Src:             'lib/dpif-netlink.c:395,9'
          Dst:             vlog
    - functionName:    dpif_netlink_close
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 598
      functionLinenumberEnd: 613
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - destroy_all_channels
        - destroy_all_handlers
        - dpif_netlink_cast
        - dpif_netlink_upcall_per_cpu
        - fat_rwlock_destroy
        - fat_rwlock_unlock
        - fat_rwlock_wrlock
        - nl_sock_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:599,33'
          Dst:             dpif_netlink_cast
        - Src:             'lib/dpif-netlink.c:601,5'
          Dst:             nl_sock_destroy
        - Src:             'lib/dpif-netlink.c:603,5'
          Dst:             fat_rwlock_wrlock
        - Src:             'lib/dpif-netlink.c:604,9'
          Dst:             dpif_netlink_upcall_per_cpu
        - Src:             'lib/dpif-netlink.c:605,9'
          Dst:             destroy_all_handlers
        - Src:             'lib/dpif-netlink.c:607,9'
          Dst:             destroy_all_channels
        - Src:             'lib/dpif-netlink.c:609,5'
          Dst:             fat_rwlock_unlock
        - Src:             'lib/dpif-netlink.c:611,5'
          Dst:             fat_rwlock_destroy
    - functionName:    dpif_netlink_destroy
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 617
      functionLinenumberEnd: 624
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dpif_netlink_cast
        - dpif_netlink_dp_init
        - dpif_netlink_dp_transact
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:618,33'
          Dst:             dpif_netlink_cast
        - Src:             'lib/dpif-netlink.c:621,5'
          Dst:             dpif_netlink_dp_init
        - Src:             'lib/dpif-netlink.c:624,12'
          Dst:             dpif_netlink_dp_transact
    - functionName:    dpif_netlink_run
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 629
      functionLinenumberEnd: 641
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          52
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - dpif_netlink_cast
        - dpif_netlink_refresh_handlers_vport_dispatch
        - dpif_netlink_upcall_per_cpu
        - fat_rwlock_unlock
        - fat_rwlock_wrlock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:630,33'
          Dst:             dpif_netlink_cast
        - Src:             'lib/dpif-netlink.c:632,10'
          Dst:             dpif_netlink_upcall_per_cpu
        - Src:             'lib/dpif-netlink.c:635,13'
          Dst:             fat_rwlock_wrlock
        - Src:             'lib/dpif-netlink.c:636,13'
          Dst:             dpif_netlink_refresh_handlers_vport_dispatch
        - Src:             'lib/dpif-netlink.c:638,13'
          Dst:             fat_rwlock_unlock
    - functionName:    dpif_netlink_get_stats
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 646
      functionLinenumberEnd: 681
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          131
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - dpif_netlink_dp_get
        - get_32aligned_u64
        - ofpbuf_delete
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:651,13'
          Dst:             dpif_netlink_dp_get
        - Src:             'lib/dpif-netlink.c:656,31'
          Dst:             get_32aligned_u64
        - Src:             'lib/dpif-netlink.c:657,31'
          Dst:             get_32aligned_u64
        - Src:             'lib/dpif-netlink.c:658,31'
          Dst:             get_32aligned_u64
        - Src:             'lib/dpif-netlink.c:659,31'
          Dst:             get_32aligned_u64
        - Src:             'lib/dpif-netlink.c:664,33'
          Dst:             get_32aligned_u64
        - Src:             'lib/dpif-netlink.c:666,34'
          Dst:             get_32aligned_u64
        - Src:             'lib/dpif-netlink.c:679,9'
          Dst:             ofpbuf_delete
    - functionName:    dpif_netlink_set_features
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 741
      functionLinenumberEnd: 763
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          82
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - dpif_netlink_cast
        - dpif_netlink_dp_init
        - dpif_netlink_dp_transact
        - ofpbuf_delete
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:742,33'
          Dst:             dpif_netlink_cast
        - Src:             'lib/dpif-netlink.c:747,5'
          Dst:             dpif_netlink_dp_init
        - Src:             'lib/dpif-netlink.c:753,13'
          Dst:             dpif_netlink_dp_transact
        - Src:             'lib/dpif-netlink.c:756,9'
          Dst:             ofpbuf_delete
    - functionName:    dpif_netlink_get_features
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 767
      functionLinenumberEnd: 770
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dpif_netlink_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:768,33'
          Dst:             dpif_netlink_cast
    - functionName:    dpif_netlink_port_add
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 928
      functionLinenumberEnd: 976
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         32
      ICount:          177
      EdgeCount:       41
      CyclomaticComplexity: 11
      functionsReached:
        - dpif_name
        - dpif_netlink_cast
        - dpif_netlink_port_add__
        - dpif_netlink_rtnl_tunnel_create
        - dpif_netlink_rtnl_tunnel_destroy
        - fat_rwlock_unlock
        - fat_rwlock_wrlock
        - netdev_get_name
        - netdev_get_tunnel_config
        - netdev_get_type
        - netdev_linux_ethtool_set_flag
        - netdev_to_ovs_vport_type
        - netdev_vport_get_dpif_port
        - ovs_strerror
        - vlog_rate_limit
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:929,33'
          Dst:             dpif_netlink_cast
        - Src:             'lib/dpif-netlink.c:930,24'
          Dst:             netdev_get_type
        - Src:             'lib/dpif-netlink.c:937,5'
          Dst:             fat_rwlock_wrlock
        - Src:             'lib/dpif-netlink.c:939,12'
          Dst:             netdev_vport_get_dpif_port
        - Src:             'lib/dpif-netlink.c:940,17'
          Dst:             netdev_get_tunnel_config
        - Src:             'lib/dpif-netlink.c:945,17'
          Dst:             dpif_netlink_rtnl_tunnel_create
        - Src:             'lib/dpif-netlink.c:948,17'
          Dst:             netdev_get_name
        - Src:             'lib/dpif-netlink.c:948,17'
          Dst:             ovs_strerror
        - Src:             'lib/dpif-netlink.c:948,17'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-netlink.c:956,20'
          Dst:             netdev_to_ovs_vport_type
        - Src:             'lib/dpif-netlink.c:958,13'
          Dst:             dpif_name
        - Src:             'lib/dpif-netlink.c:958,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-netlink.c:965,13'
          Dst:             netdev_linux_ethtool_set_flag
        - Src:             'lib/dpif-netlink.c:969,13'
          Dst:             dpif_netlink_port_add__
        - Src:             'lib/dpif-netlink.c:971,9'
          Dst:             dpif_netlink_rtnl_tunnel_destroy
        - Src:             'lib/dpif-netlink.c:975,5'
          Dst:             fat_rwlock_unlock
    - functionName:    dpif_netlink_port_del
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 981
      functionLinenumberEnd: 1014
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          87
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - dpif_netlink_cast
        - dpif_netlink_port_query__
        - dpif_netlink_rtnl_tunnel_destroy
        - dpif_netlink_vport_init
        - dpif_netlink_vport_transact
        - dpif_port_destroy
        - fat_rwlock_unlock
        - fat_rwlock_wrlock
        - vport_del_channels
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:982,33'
          Dst:             dpif_netlink_cast
        - Src:             'lib/dpif-netlink.c:987,5'
          Dst:             fat_rwlock_wrlock
        - Src:             'lib/dpif-netlink.c:988,13'
          Dst:             dpif_netlink_port_query__
        - Src:             'lib/dpif-netlink.c:993,5'
          Dst:             dpif_netlink_vport_init
        - Src:             'lib/dpif-netlink.c:998,13'
          Dst:             dpif_netlink_vport_transact
        - Src:             'lib/dpif-netlink.c:1000,5'
          Dst:             vport_del_channels
        - Src:             'lib/dpif-netlink.c:1003,17'
          Dst:             dpif_netlink_rtnl_tunnel_destroy
        - Src:             'lib/dpif-netlink.c:1010,5'
          Dst:             dpif_port_destroy
        - Src:             'lib/dpif-netlink.c:1013,5'
          Dst:             fat_rwlock_unlock
    - functionName:    dpif_netlink_port_query_by_number
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1051
      functionLinenumberEnd: 1054
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dpif_netlink_cast
        - dpif_netlink_port_query__
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:1052,33'
          Dst:             dpif_netlink_cast
        - Src:             'lib/dpif-netlink.c:1054,12'
          Dst:             dpif_netlink_port_query__
    - functionName:    dpif_netlink_port_query_by_name
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1060
      functionLinenumberEnd: 1063
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dpif_netlink_cast
        - dpif_netlink_port_query__
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:1061,33'
          Dst:             dpif_netlink_cast
        - Src:             'lib/dpif-netlink.c:1063,12'
          Dst:             dpif_netlink_port_query__
    - functionName:    dpif_netlink_port_get_pid
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1093
      functionLinenumberEnd: 1112
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dpif_netlink_cast
        - dpif_netlink_port_get_pid__
        - dpif_netlink_upcall_per_cpu
        - fat_rwlock_rdlock
        - fat_rwlock_unlock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:1094,39'
          Dst:             dpif_netlink_cast
        - Src:             'lib/dpif-netlink.c:1098,9'
          Dst:             dpif_netlink_upcall_per_cpu
        - Src:             'lib/dpif-netlink.c:1107,5'
          Dst:             fat_rwlock_rdlock
        - Src:             'lib/dpif-netlink.c:1108,11'
          Dst:             dpif_netlink_port_get_pid__
        - Src:             'lib/dpif-netlink.c:1109,5'
          Dst:             fat_rwlock_unlock
    - functionName:    dpif_netlink_port_dump_start
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1151
      functionLinenumberEnd: 1159
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dpif_netlink_cast
        - dpif_netlink_port_dump_start__
        - ofpbuf_init
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:1152,33'
          Dst:             dpif_netlink_cast
        - Src:             'lib/dpif-netlink.c:1155,23'
          Dst:             xmalloc
        - Src:             'lib/dpif-netlink.c:1156,5'
          Dst:             dpif_netlink_port_dump_start__
        - Src:             'lib/dpif-netlink.c:1158,5'
          Dst:             ofpbuf_init
    - functionName:    dpif_netlink_port_dump_next
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1186
      functionLinenumberEnd: 1201
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          64
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dpif_netlink_cast
        - dpif_netlink_port_dump_next__
        - get_vport_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:1187,33'
          Dst:             dpif_netlink_cast
        - Src:             'lib/dpif-netlink.c:1192,13'
          Dst:             dpif_netlink_port_dump_next__
        - Src:             'lib/dpif-netlink.c:1198,23'
          Dst:             get_vport_type
    - functionName:    dpif_netlink_port_dump_done
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1205
      functionLinenumberEnd: 1211
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_dump_done
        - ofpbuf_uninit
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:1207,17'
          Dst:             nl_dump_done
        - Src:             'lib/dpif-netlink.c:1209,5'
          Dst:             ofpbuf_uninit
    - functionName:    dpif_netlink_port_poll
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1216
      functionLinenumberEnd: 1280
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         47
      ICount:          254
      EdgeCount:       62
      CyclomaticComplexity: 17
      functionsReached:
        - dpif_netlink_cast
        - dpif_netlink_vport_from_ofpbuf
        - nl_sock_create
        - nl_sock_destroy
        - nl_sock_drain
        - nl_sock_join_mcgroup
        - nl_sock_recv
        - ofpbuf_uninit
        - ofpbuf_use_stub
        - ovs_strerror
        - vlog
        - vlog_rate_limit
        - xstrdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:1217,33'
          Dst:             dpif_netlink_cast
        - Src:             'lib/dpif-netlink.c:1224,17'
          Dst:             nl_sock_create
        - Src:             'lib/dpif-netlink.c:1229,17'
          Dst:             nl_sock_join_mcgroup
        - Src:             'lib/dpif-netlink.c:1231,13'
          Dst:             nl_sock_destroy
        - Src:             'lib/dpif-netlink.c:1247,9'
          Dst:             ofpbuf_use_stub
        - Src:             'lib/dpif-netlink.c:1248,17'
          Dst:             nl_sock_recv
        - Src:             'lib/dpif-netlink.c:1252,21'
          Dst:             dpif_netlink_vport_from_ofpbuf
        - Src:             'lib/dpif-netlink.c:1258,21'
          Dst:             vlog
        - Src:             'lib/dpif-netlink.c:1263,33'
          Dst:             xstrdup
        - Src:             'lib/dpif-netlink.c:1264,21'
          Dst:             ofpbuf_uninit
        - Src:             'lib/dpif-netlink.c:1269,13'
          Dst:             ovs_strerror
        - Src:             'lib/dpif-netlink.c:1269,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-netlink.c:1271,13'
          Dst:             nl_sock_drain
        - Src:             'lib/dpif-netlink.c:1275,9'
          Dst:             ofpbuf_uninit
    - functionName:    dpif_netlink_port_poll_wait
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1284
      functionLinenumberEnd: 1292
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dpif_netlink_cast
        - nl_sock_wait
        - poll_immediate_wake_at
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:1285,39'
          Dst:             dpif_netlink_cast
        - Src:             'lib/dpif-netlink.c:1288,9'
          Dst:             nl_sock_wait
        - Src:             'lib/dpif-netlink.c:1290,9'
          Dst:             poll_immediate_wake_at
    - functionName:    dpif_netlink_flow_flush
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1116
      functionLinenumberEnd: 1124
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dpif_netlink_cast
        - dpif_netlink_flow_init
        - dpif_netlink_flow_transact
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:1117,39'
          Dst:             dpif_netlink_cast
        - Src:             'lib/dpif-netlink.c:1120,5'
          Dst:             dpif_netlink_flow_init
        - Src:             'lib/dpif-netlink.c:1124,12'
          Dst:             dpif_netlink_flow_transact
    - functionName:    dpif_netlink_flow_dump_create
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1421
      functionLinenumberEnd: 1442
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          64
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dpif_flow_dump_init
        - dpif_netlink_cast
        - dpif_netlink_flow_init
        - dpif_netlink_flow_to_ofpbuf
        - nl_dump_start
        - ofpbuf_delete
        - ofpbuf_new
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:1422,39'
          Dst:             dpif_netlink_cast
        - Src:             'lib/dpif-netlink.c:1427,12'
          Dst:             xmalloc
        - Src:             'lib/dpif-netlink.c:1428,5'
          Dst:             dpif_flow_dump_init
        - Src:             'lib/dpif-netlink.c:1430,5'
          Dst:             dpif_netlink_flow_init
        - Src:             'lib/dpif-netlink.c:1436,11'
          Dst:             ofpbuf_new
        - Src:             'lib/dpif-netlink.c:1437,5'
          Dst:             dpif_netlink_flow_to_ofpbuf
        - Src:             'lib/dpif-netlink.c:1438,5'
          Dst:             nl_dump_start
        - Src:             'lib/dpif-netlink.c:1439,5'
          Dst:             ofpbuf_delete
    - functionName:    dpif_netlink_flow_dump_destroy
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1447
      functionLinenumberEnd: 1455
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dpif_netlink_flow_dump_cast
        - nl_dump_done
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:1448,43'
          Dst:             dpif_netlink_flow_dump_cast
        - Src:             'lib/dpif-netlink.c:1449,30'
          Dst:             nl_dump_done
    - functionName:    dpif_netlink_flow_dump_thread_create
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1475
      functionLinenumberEnd: 1485
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dpif_flow_dump_thread_init
        - dpif_netlink_flow_dump_cast
        - ofpbuf_init
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:1476,43'
          Dst:             dpif_netlink_flow_dump_cast
        - Src:             'lib/dpif-netlink.c:1479,14'
          Dst:             xmalloc
        - Src:             'lib/dpif-netlink.c:1480,5'
          Dst:             dpif_flow_dump_thread_init
        - Src:             'lib/dpif-netlink.c:1482,5'
          Dst:             ofpbuf_init
    - functionName:    dpif_netlink_flow_dump_thread_destroy
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1490
      functionLinenumberEnd: 1497
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dpif_netlink_flow_dump_thread_cast
        - ofpbuf_delete
        - ofpbuf_uninit
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:1492,11'
          Dst:             dpif_netlink_flow_dump_thread_cast
        - Src:             'lib/dpif-netlink.c:1494,5'
          Dst:             ofpbuf_uninit
        - Src:             'lib/dpif-netlink.c:1495,5'
          Dst:             ofpbuf_delete
    - functionName:    dpif_netlink_flow_dump_next
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1527
      functionLinenumberEnd: 1580
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         38
      ICount:          221
      EdgeCount:       49
      CyclomaticComplexity: 13
      functionsReached:
        - dpif_netlink_cast
        - dpif_netlink_flow_dump_thread_cast
        - dpif_netlink_flow_from_ofpbuf
        - dpif_netlink_flow_get
        - dpif_netlink_flow_to_dpif_flow
        - nl_dump_next
        - ofpbuf_delete
        - ovs_strerror
        - vlog
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:1529,11'
          Dst:             dpif_netlink_flow_dump_thread_cast
        - Src:             'lib/dpif-netlink.c:1531,33'
          Dst:             dpif_netlink_cast
        - Src:             'lib/dpif-netlink.c:1534,5'
          Dst:             ofpbuf_delete
        - Src:             'lib/dpif-netlink.c:1544,14'
          Dst:             nl_dump_next
        - Src:             'lib/dpif-netlink.c:1549,17'
          Dst:             dpif_netlink_flow_from_ofpbuf
        - Src:             'lib/dpif-netlink.c:1558,13'
          Dst:             dpif_netlink_flow_to_dpif_flow
        - Src:             'lib/dpif-netlink.c:1562,21'
          Dst:             dpif_netlink_flow_get
        - Src:             'lib/dpif-netlink.c:1565,17'
          Dst:             vlog
        - Src:             'lib/dpif-netlink.c:1568,17'
          Dst:             ovs_strerror
        - Src:             'lib/dpif-netlink.c:1568,17'
          Dst:             vlog
        - Src:             'lib/dpif-netlink.c:1576,13'
          Dst:             dpif_netlink_flow_to_dpif_flow
    - functionName:    dpif_netlink_operate
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1806
      functionLinenumberEnd: 1815
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dpif_netlink_cast
        - dpif_netlink_operate__
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:1807,33'
          Dst:             dpif_netlink_cast
        - Src:             'lib/dpif-netlink.c:1810,24'
          Dst:             dpif_netlink_operate__
    - functionName:    dpif_netlink_recv_set
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2098
      functionLinenumberEnd: 2110
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dpif_netlink_cast
        - dpif_netlink_recv_set_cpu_dispatch
        - dpif_netlink_recv_set_vport_dispatch
        - dpif_netlink_upcall_per_cpu
        - fat_rwlock_unlock
        - fat_rwlock_wrlock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:2099,33'
          Dst:             dpif_netlink_cast
        - Src:             'lib/dpif-netlink.c:2102,5'
          Dst:             fat_rwlock_wrlock
        - Src:             'lib/dpif-netlink.c:2103,9'
          Dst:             dpif_netlink_upcall_per_cpu
        - Src:             'lib/dpif-netlink.c:2104,17'
          Dst:             dpif_netlink_recv_set_cpu_dispatch
        - Src:             'lib/dpif-netlink.c:2106,17'
          Dst:             dpif_netlink_recv_set_vport_dispatch
        - Src:             'lib/dpif-netlink.c:2108,5'
          Dst:             fat_rwlock_unlock
    - functionName:    dpif_netlink_handlers_set
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2115
      functionLinenumberEnd: 2130
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          56
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - dpif_netlink_cast
        - dpif_netlink_refresh_handlers_cpu_dispatch
        - dpif_netlink_refresh_handlers_vport_dispatch
        - dpif_netlink_upcall_per_cpu
        - fat_rwlock_unlock
        - fat_rwlock_wrlock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:2116,33'
          Dst:             dpif_netlink_cast
        - Src:             'lib/dpif-netlink.c:2119,5'
          Dst:             fat_rwlock_wrlock
        - Src:             'lib/dpif-netlink.c:2121,13'
          Dst:             dpif_netlink_upcall_per_cpu
        - Src:             'lib/dpif-netlink.c:2122,21'
          Dst:             dpif_netlink_refresh_handlers_cpu_dispatch
        - Src:             'lib/dpif-netlink.c:2124,21'
          Dst:             dpif_netlink_refresh_handlers_vport_dispatch
        - Src:             'lib/dpif-netlink.c:2128,5'
          Dst:             fat_rwlock_unlock
    - functionName:    dpif_netlink_number_handlers_required
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2135
      functionLinenumberEnd: 2144
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dpif_netlink_calculate_n_handlers
        - dpif_netlink_cast
        - dpif_netlink_upcall_per_cpu
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:2136,33'
          Dst:             dpif_netlink_cast
        - Src:             'lib/dpif-netlink.c:2138,9'
          Dst:             dpif_netlink_upcall_per_cpu
        - Src:             'lib/dpif-netlink.c:2139,23'
          Dst:             dpif_netlink_calculate_n_handlers
    - functionName:    dpif_netlink_queue_to_priority
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2149
      functionLinenumberEnd: 2156
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          32
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_netlink_recv
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2371
      functionLinenumberEnd: 2384
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dpif_netlink_cast
        - dpif_netlink_recv_cpu_dispatch
        - dpif_netlink_recv_vport_dispatch
        - dpif_netlink_upcall_per_cpu
        - fat_rwlock_rdlock
        - fat_rwlock_unlock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:2372,33'
          Dst:             dpif_netlink_cast
        - Src:             'lib/dpif-netlink.c:2375,5'
          Dst:             fat_rwlock_rdlock
        - Src:             'lib/dpif-netlink.c:2376,9'
          Dst:             dpif_netlink_upcall_per_cpu
        - Src:             'lib/dpif-netlink.c:2377,17'
          Dst:             dpif_netlink_recv_cpu_dispatch
        - Src:             'lib/dpif-netlink.c:2379,17'
          Dst:             dpif_netlink_recv_vport_dispatch
        - Src:             'lib/dpif-netlink.c:2382,5'
          Dst:             fat_rwlock_unlock
    - functionName:    dpif_netlink_recv_wait
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2413
      functionLinenumberEnd: 2423
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dpif_netlink_cast
        - dpif_netlink_recv_wait_cpu_dispatch
        - dpif_netlink_recv_wait_vport_dispatch
        - dpif_netlink_upcall_per_cpu
        - fat_rwlock_rdlock
        - fat_rwlock_unlock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:2414,33'
          Dst:             dpif_netlink_cast
        - Src:             'lib/dpif-netlink.c:2416,5'
          Dst:             fat_rwlock_rdlock
        - Src:             'lib/dpif-netlink.c:2417,9'
          Dst:             dpif_netlink_upcall_per_cpu
        - Src:             'lib/dpif-netlink.c:2418,9'
          Dst:             dpif_netlink_recv_wait_cpu_dispatch
        - Src:             'lib/dpif-netlink.c:2420,9'
          Dst:             dpif_netlink_recv_wait_vport_dispatch
        - Src:             'lib/dpif-netlink.c:2422,5'
          Dst:             fat_rwlock_unlock
    - functionName:    dpif_netlink_recv_purge
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2458
      functionLinenumberEnd: 2468
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dpif_netlink_cast
        - dpif_netlink_recv_purge_cpu_dispatch
        - dpif_netlink_recv_purge_vport_dispatch
        - dpif_netlink_upcall_per_cpu
        - fat_rwlock_unlock
        - fat_rwlock_wrlock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:2459,33'
          Dst:             dpif_netlink_cast
        - Src:             'lib/dpif-netlink.c:2461,5'
          Dst:             fat_rwlock_wrlock
        - Src:             'lib/dpif-netlink.c:2462,9'
          Dst:             dpif_netlink_upcall_per_cpu
        - Src:             'lib/dpif-netlink.c:2463,9'
          Dst:             dpif_netlink_recv_purge_cpu_dispatch
        - Src:             'lib/dpif-netlink.c:2465,9'
          Dst:             dpif_netlink_recv_purge_vport_dispatch
        - Src:             'lib/dpif-netlink.c:2467,5'
          Dst:             fat_rwlock_unlock
    - functionName:    dpif_netlink_get_datapath_version
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2472
      functionLinenumberEnd: 2497
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         12
      ICount:          58
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - fclose
        - fgets
        - fopen
        - strchr
        - xstrdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:2481,9'
          Dst:             fopen
        - Src:             'lib/dpif-netlink.c:2486,13'
          Dst:             fgets
        - Src:             'lib/dpif-netlink.c:2487,23'
          Dst:             strchr
        - Src:             'lib/dpif-netlink.c:2491,27'
          Dst:             xstrdup
        - Src:             'lib/dpif-netlink.c:2493,9'
          Dst:             fclose
    - functionName:    dpif_netlink_ct_dump_start
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2509
      functionLinenumberEnd: 2523
      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:
        - nl_ct_dump_start
        - xzalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:2513,12'
          Dst:             xzalloc
        - Src:             'lib/dpif-netlink.c:2514,11'
          Dst:             nl_ct_dump_start
    - functionName:    dpif_netlink_ct_dump_next
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2529
      functionLinenumberEnd: 2534
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_ct_dump_next
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:2534,12'
          Dst:             nl_ct_dump_next
    - functionName:    dpif_netlink_ct_dump_done
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2540
      functionLinenumberEnd: 2547
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_ct_dump_done
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:2545,15'
          Dst:             nl_ct_dump_done
    - functionName:    dpif_netlink_ct_flush
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2553
      functionLinenumberEnd: 2561
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          59
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - nl_ct_flush
        - nl_ct_flush_tuple
        - nl_ct_flush_zone
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:2555,16'
          Dst:             nl_ct_flush_tuple
        - Src:             'lib/dpif-netlink.c:2557,16'
          Dst:             nl_ct_flush_zone
        - Src:             'lib/dpif-netlink.c:2559,16'
          Dst:             nl_ct_flush
    - functionName:    dpif_netlink_ct_set_limits
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2566
      functionLinenumberEnd: 2599
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          117
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - nl_msg_end_nested
        - nl_msg_put
        - nl_msg_put_genlmsghdr
        - nl_msg_start_nested
        - nl_transact
        - ofpbuf_delete
        - ofpbuf_new
        - ofpbuf_put_uninit
        - ovs_list_is_empty
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:2571,30'
          Dst:             ofpbuf_new
        - Src:             'lib/dpif-netlink.c:2572,5'
          Dst:             nl_msg_put_genlmsghdr
        - Src:             'lib/dpif-netlink.c:2577,18'
          Dst:             ofpbuf_put_uninit
        - Src:             'lib/dpif-netlink.c:2581,18'
          Dst:             nl_msg_start_nested
        - Src:             'lib/dpif-netlink.c:2583,10'
          Dst:             ovs_list_is_empty
        - Src:             'lib/dpif-netlink.c:2591,13'
          Dst:             nl_msg_put
        - Src:             'lib/dpif-netlink.c:2594,5'
          Dst:             nl_msg_end_nested
        - Src:             'lib/dpif-netlink.c:2596,15'
          Dst:             nl_transact
        - Src:             'lib/dpif-netlink.c:2597,5'
          Dst:             ofpbuf_delete
    - functionName:    dpif_netlink_ct_get_limits
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2651
      functionLinenumberEnd: 2692
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          135
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - dpif_netlink_zone_limits_from_ofpbuf
        - nl_msg_end_nested
        - nl_msg_put
        - nl_msg_put_genlmsghdr
        - nl_msg_start_nested
        - nl_transact
        - ofpbuf_delete
        - ofpbuf_new
        - ofpbuf_put_uninit
        - ovs_list_is_empty
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:2656,30'
          Dst:             ofpbuf_new
        - Src:             'lib/dpif-netlink.c:2657,5'
          Dst:             nl_msg_put_genlmsghdr
        - Src:             'lib/dpif-netlink.c:2662,18'
          Dst:             ofpbuf_put_uninit
        - Src:             'lib/dpif-netlink.c:2665,10'
          Dst:             ovs_list_is_empty
        - Src:             'lib/dpif-netlink.c:2666,29'
          Dst:             nl_msg_start_nested
        - Src:             'lib/dpif-netlink.c:2674,13'
          Dst:             nl_msg_put
        - Src:             'lib/dpif-netlink.c:2677,9'
          Dst:             nl_msg_end_nested
        - Src:             'lib/dpif-netlink.c:2681,15'
          Dst:             nl_transact
        - Src:             'lib/dpif-netlink.c:2686,11'
          Dst:             dpif_netlink_zone_limits_from_ofpbuf
        - Src:             'lib/dpif-netlink.c:2689,5'
          Dst:             ofpbuf_delete
        - Src:             'lib/dpif-netlink.c:2690,5'
          Dst:             ofpbuf_delete
    - functionName:    dpif_netlink_ct_del_limits
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2697
      functionLinenumberEnd: 2729
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          114
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - nl_msg_end_nested
        - nl_msg_put
        - nl_msg_put_genlmsghdr
        - nl_msg_start_nested
        - nl_transact
        - ofpbuf_delete
        - ofpbuf_new
        - ofpbuf_put_uninit
        - ovs_list_is_empty
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:2702,30'
          Dst:             ofpbuf_new
        - Src:             'lib/dpif-netlink.c:2703,5'
          Dst:             nl_msg_put_genlmsghdr
        - Src:             'lib/dpif-netlink.c:2708,18'
          Dst:             ofpbuf_put_uninit
        - Src:             'lib/dpif-netlink.c:2711,10'
          Dst:             ovs_list_is_empty
        - Src:             'lib/dpif-netlink.c:2713,13'
          Dst:             nl_msg_start_nested
        - Src:             'lib/dpif-netlink.c:2720,13'
          Dst:             nl_msg_put
        - Src:             'lib/dpif-netlink.c:2722,9'
          Dst:             nl_msg_end_nested
        - Src:             'lib/dpif-netlink.c:2725,15'
          Dst:             nl_transact
        - Src:             'lib/dpif-netlink.c:2727,5'
          Dst:             ofpbuf_delete
    - functionName:    dpif_netlink_ct_set_timeout_policy
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2950
      functionLinenumberEnd: 2974
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          114
      EdgeCount:       18
      CyclomaticComplexity: 5
      functionsReached:
        - dpif_netlink_format_tp_name
        - dpif_netlink_get_nl_tp_attrs
        - nl_ct_set_timeout_policy
        - ovs_strerror
        - ovs_strlcpy
        - vlog_rate_limit
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:2957,9'
          Dst:             dpif_netlink_format_tp_name
        - Src:             'lib/dpif-netlink.c:2959,9'
          Dst:             ovs_strlcpy
        - Src:             'lib/dpif-netlink.c:2964,9'
          Dst:             dpif_netlink_get_nl_tp_attrs
        - Src:             'lib/dpif-netlink.c:2965,15'
          Dst:             nl_ct_set_timeout_policy
        - Src:             'lib/dpif-netlink.c:2967,13'
          Dst:             ovs_strerror
        - Src:             'lib/dpif-netlink.c:2967,13'
          Dst:             vlog_rate_limit
    - functionName:    dpif_netlink_ct_get_timeout_policy
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2981
      functionLinenumberEnd: 3005
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          100
      EdgeCount:       18
      CyclomaticComplexity: 5
      functionsReached:
        - dpif_netlink_format_tp_name
        - dpif_netlink_set_ct_dpif_tp_attrs
        - nl_ct_get_timeout_policy
        - ovs_strerror
        - vlog_rate_limit
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:2990,9'
          Dst:             dpif_netlink_format_tp_name
        - Src:             'lib/dpif-netlink.c:2992,15'
          Dst:             nl_ct_get_timeout_policy
        - Src:             'lib/dpif-netlink.c:2995,13'
          Dst:             ovs_strerror
        - Src:             'lib/dpif-netlink.c:2995,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-netlink.c:3001,9'
          Dst:             dpif_netlink_set_ct_dpif_tp_attrs
    - functionName:    dpif_netlink_ct_del_timeout_policy
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3013
      functionLinenumberEnd: 3033
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          104
      EdgeCount:       22
      CyclomaticComplexity: 6
      functionsReached:
        - dpif_netlink_format_tp_name
        - nl_ct_del_timeout_policy
        - ovs_strerror
        - vlog_rate_limit
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:3018,9'
          Dst:             dpif_netlink_format_tp_name
        - Src:             'lib/dpif-netlink.c:3020,19'
          Dst:             nl_ct_del_timeout_policy
        - Src:             'lib/dpif-netlink.c:3026,13'
          Dst:             ovs_strerror
        - Src:             'lib/dpif-netlink.c:3026,13'
          Dst:             vlog_rate_limit
    - functionName:    dpif_netlink_ct_timeout_policy_dump_start
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3080
      functionLinenumberEnd: 3091
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_init
        - nl_ct_timeout_policy_dump_start
        - xzalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:3083,28'
          Dst:             xzalloc
        - Src:             'lib/dpif-netlink.c:3084,15'
          Dst:             nl_ct_timeout_policy_dump_start
        - Src:             'lib/dpif-netlink.c:3089,5'
          Dst:             hmap_init
    - functionName:    dpif_netlink_ct_timeout_policy_dump_next
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3108
      functionLinenumberEnd: 3164
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          152
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - get_and_cleanup_tp_dump_node
        - get_dpif_netlink_tp_dump_node_by_tp_id
        - hash_int
        - hmap_first
        - hmap_insert_at
        - hmap_is_empty
        - nl_ct_timeout_policy_dump_next
        - ovs_scan
        - update_dpif_netlink_tp_dump_node
        - xzalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:3118,16'
          Dst:             nl_ct_timeout_policy_dump_next
        - Src:             'lib/dpif-netlink.c:3125,14'
          Dst:             ovs_scan
        - Src:             'lib/dpif-netlink.c:3129,24'
          Dst:             get_dpif_netlink_tp_dump_node_by_tp_id
        - Src:             'lib/dpif-netlink.c:3132,28'
          Dst:             xzalloc
        - Src:             'lib/dpif-netlink.c:3133,32'
          Dst:             xzalloc
        - Src:             'lib/dpif-netlink.c:3135,13'
          Dst:             hash_int
        - Src:             'lib/dpif-netlink.c:3135,13'
          Dst:             hmap_insert_at
        - Src:             'lib/dpif-netlink.c:3139,9'
          Dst:             update_dpif_netlink_tp_dump_node
        - Src:             'lib/dpif-netlink.c:3144,13'
          Dst:             get_and_cleanup_tp_dump_node
        - Src:             'lib/dpif-netlink.c:3152,14'
          Dst:             hmap_is_empty
        - Src:             'lib/dpif-netlink.c:3153,43'
          Dst:             hmap_first
        - Src:             'lib/dpif-netlink.c:3157,13'
          Dst:             get_and_cleanup_tp_dump_node
    - functionName:    dpif_netlink_ct_timeout_policy_dump_done
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3169
      functionLinenumberEnd: 3180
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          70
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - hmap_destroy
        - hmap_pop_helper__
        - nl_ct_timeout_policy_dump_done
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:3173,15'
          Dst:             nl_ct_timeout_policy_dump_done
        - Src:             'lib/dpif-netlink.c:3174,5'
          Dst:             hmap_pop_helper__
        - Src:             'lib/dpif-netlink.c:3178,5'
          Dst:             hmap_destroy
    - functionName:    dpif_netlink_ct_get_timeout_policy_name
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2785
      functionLinenumberEnd: 2790
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - short
        - char
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dpif_netlink_format_tp_name
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:2786,5'
          Dst:             dpif_netlink_format_tp_name
    - functionName:    dpif_netlink_ct_get_features
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2796
      functionLinenumberEnd: 2800
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          21
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_netlink_meter_get_features
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3247
      functionLinenumberEnd: 3302
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         33
      ICount:          186
      EdgeCount:       40
      CyclomaticComplexity: 9
      functionsReached:
        - dpif_netlink_cast
        - dpif_netlink_meter_init
        - dpif_netlink_meter_transact
        - nl_attr_get
        - nl_attr_get_size
        - nl_attr_get_u32
        - nl_attr_is_valid
        - nl_attr_len_pad
        - nl_attr_next
        - nl_attr_type
        - ofpbuf_delete
        - probe_broken_meters
        - vlog_rate_limit
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib/dpif-netlink.c:3289,25'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/dpif-netlink.c:3248,9'
          Dst:             probe_broken_meters
        - Src:             'lib/dpif-netlink.c:3262,33'
          Dst:             dpif_netlink_cast
        - Src:             'lib/dpif-netlink.c:3263,5'
          Dst:             dpif_netlink_meter_init
        - Src:             'lib/dpif-netlink.c:3265,9'
          Dst:             dpif_netlink_meter_transact
        - Src:             'lib/dpif-netlink.c:3268,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-netlink.c:3273,28'
          Dst:             nl_attr_get_u32
        - Src:             'lib/dpif-netlink.c:3274,27'
          Dst:             nl_attr_get_u32
        - Src:             'lib/dpif-netlink.c:3282,9'
          Dst:             nl_attr_get
        - Src:             'lib/dpif-netlink.c:3282,9'
          Dst:             nl_attr_get_size
        - Src:             'lib/dpif-netlink.c:3282,9'
          Dst:             nl_attr_is_valid
        - Src:             'lib/dpif-netlink.c:3286,13'
          Dst:             nl_attr_get
        - Src:             'lib/dpif-netlink.c:3286,13'
          Dst:             nl_attr_get_size
        - Src:             'lib/dpif-netlink.c:3286,13'
          Dst:             nl_attr_is_valid
        - Src:             'lib/dpif-netlink.c:3287,21'
          Dst:             nl_attr_type
        - Src:             'lib/dpif-netlink.c:3288,25'
          Dst:             nl_attr_get_size
        - Src:             'lib/dpif-netlink.c:3289,33'
          Dst:             nl_attr_get_u32
        - Src:             'lib/dpif-netlink.c:3286,13'
          Dst:             nl_attr_len_pad
        - Src:             'lib/dpif-netlink.c:3286,13'
          Dst:             nl_attr_next
        - Src:             'lib/dpif-netlink.c:3282,9'
          Dst:             nl_attr_len_pad
        - Src:             'lib/dpif-netlink.c:3282,9'
          Dst:             nl_attr_next
        - Src:             'lib/dpif-netlink.c:3301,5'
          Dst:             ofpbuf_delete
    - functionName:    dpif_netlink_meter_set
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3384
      functionLinenumberEnd: 3390
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dpif_netlink_meter_set__
        - probe_broken_meters
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:3385,9'
          Dst:             probe_broken_meters
        - Src:             'lib/dpif-netlink.c:3389,12'
          Dst:             dpif_netlink_meter_set__
    - functionName:    dpif_netlink_meter_get
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3487
      functionLinenumberEnd: 3488
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dpif_netlink_meter_get_stats
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:3488,12'
          Dst:             dpif_netlink_meter_get_stats
    - functionName:    dpif_netlink_meter_del
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3495
      functionLinenumberEnd: 3497
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dpif_netlink_meter_get_stats
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:3496,12'
          Dst:             dpif_netlink_meter_get_stats
    - functionName:    dpif_netlink_cache_get_supported_levels
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3569
      functionLinenumberEnd: 3589
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          50
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - dpif_netlink_dp_get
        - ofpbuf_delete
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:3580,13'
          Dst:             dpif_netlink_dp_get
        - Src:             'lib/dpif-netlink.c:3586,9'
          Dst:             ofpbuf_delete
    - functionName:    dpif_netlink_cache_get_name
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3595
      functionLinenumberEnd: 3602
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_netlink_cache_get_size
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3606
      functionLinenumberEnd: 3626
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          65
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - dpif_netlink_dp_get
        - ofpbuf_delete
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:3615,13'
          Dst:             dpif_netlink_dp_get
        - Src:             'lib/dpif-netlink.c:3618,9'
          Dst:             ofpbuf_delete
    - functionName:    dpif_netlink_cache_set_size
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3630
      functionLinenumberEnd: 3661
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          215
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - dpif_netlink_cast
        - dpif_netlink_dp_init
        - dpif_netlink_dp_transact
        - ofpbuf_delete
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:3631,33'
          Dst:             dpif_netlink_cast
        - Src:             'lib/dpif-netlink.c:3642,5'
          Dst:             dpif_netlink_dp_init
        - Src:             'lib/dpif-netlink.c:3652,13'
          Dst:             dpif_netlink_dp_transact
        - Src:             'lib/dpif-netlink.c:3654,9'
          Dst:             ofpbuf_delete
    - functionName:    dpif_netlink_dp_transact
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4133
      functionLinenumberEnd: 4154
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          84
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - dpif_netlink_dp_from_ofpbuf
        - dpif_netlink_dp_init
        - dpif_netlink_dp_to_ofpbuf
        - nl_transact
        - ofpbuf_delete
        - ofpbuf_new
        - ovs_ignore
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:4137,5'
          Dst:             ovs_ignore
        - Src:             'lib/dpif-netlink.c:4139,19'
          Dst:             ofpbuf_new
        - Src:             'lib/dpif-netlink.c:4140,5'
          Dst:             dpif_netlink_dp_to_ofpbuf
        - Src:             'lib/dpif-netlink.c:4141,13'
          Dst:             nl_transact
        - Src:             'lib/dpif-netlink.c:4142,5'
          Dst:             ofpbuf_delete
        - Src:             'lib/dpif-netlink.c:4145,9'
          Dst:             dpif_netlink_dp_init
        - Src:             'lib/dpif-netlink.c:4147,21'
          Dst:             dpif_netlink_dp_from_ofpbuf
        - Src:             'lib/dpif-netlink.c:4150,13'
          Dst:             ofpbuf_delete
    - functionName:    dpif_netlink_dp_get
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4163
      functionLinenumberEnd: 4171
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dpif_netlink_cast
        - dpif_netlink_dp_init
        - dpif_netlink_dp_transact
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:4164,33'
          Dst:             dpif_netlink_cast
        - Src:             'lib/dpif-netlink.c:4167,5'
          Dst:             dpif_netlink_dp_init
        - Src:             'lib/dpif-netlink.c:4171,12'
          Dst:             dpif_netlink_dp_transact
    - functionName:    probe_broken_meters
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3553
      functionLinenumberEnd: 3563
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsthread_once_done
        - ovsthread_once_start
        - probe_broken_meters__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:3559,9'
          Dst:             ovsthread_once_start
        - Src:             'lib/dpif-netlink.c:3560,25'
          Dst:             probe_broken_meters__
        - Src:             'lib/dpif-netlink.c:3561,9'
          Dst:             ovsthread_once_done
    - functionName:    dpif_netlink_meter_set__
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3307
      functionLinenumberEnd: 3379
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         41
      ICount:          256
      EdgeCount:       48
      CyclomaticComplexity: 9
      functionsReached:
        - dpif_netlink_cast
        - dpif_netlink_meter_init
        - dpif_netlink_meter_transact
        - nl_attr_get_u32
        - nl_msg_end_nested
        - nl_msg_put_flag
        - nl_msg_put_u32
        - nl_msg_start_nested
        - ofpbuf_delete
        - vlog_rate_limit
      functionUses:    3
      BranchProfiles:
        - Branch String:   'lib/dpif-netlink.c:3322,9'
          Branch Sides:    []
        - Branch String:   'lib/dpif-netlink.c:3346,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/dpif-netlink.c:3308,33'
          Dst:             dpif_netlink_cast
        - Src:             'lib/dpif-netlink.c:3330,5'
          Dst:             dpif_netlink_meter_init
        - Src:             'lib/dpif-netlink.c:3332,5'
          Dst:             nl_msg_put_u32
        - Src:             'lib/dpif-netlink.c:3335,9'
          Dst:             nl_msg_put_flag
        - Src:             'lib/dpif-netlink.c:3338,27'
          Dst:             nl_msg_start_nested
        - Src:             'lib/dpif-netlink.c:3344,30'
          Dst:             nl_msg_start_nested
        - Src:             'lib/dpif-netlink.c:3353,9'
          Dst:             nl_msg_put_u32
        - Src:             'lib/dpif-netlink.c:3354,9'
          Dst:             nl_msg_put_u32
        - Src:             'lib/dpif-netlink.c:3355,9'
          Dst:             nl_msg_put_u32
        - Src:             'lib/dpif-netlink.c:3358,9'
          Dst:             nl_msg_end_nested
        - Src:             'lib/dpif-netlink.c:3360,5'
          Dst:             nl_msg_end_nested
        - Src:             'lib/dpif-netlink.c:3362,17'
          Dst:             dpif_netlink_meter_transact
        - Src:             'lib/dpif-netlink.c:3367,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-netlink.c:3372,9'
          Dst:             nl_attr_get_u32
        - Src:             'lib/dpif-netlink.c:3374,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-netlink.c:3377,5'
          Dst:             ofpbuf_delete
    - functionName:    probe_broken_meters__
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3502
      functionLinenumberEnd: 3549
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         19
      ICount:          130
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - dpif_netlink_meter_del
        - dpif_netlink_meter_get
        - dpif_netlink_meter_set__
        - vlog
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:3528,10'
          Dst:             dpif_netlink_meter_get
        - Src:             'lib/dpif-netlink.c:3529,13'
          Dst:             dpif_netlink_meter_get
        - Src:             'lib/dpif-netlink.c:3536,5'
          Dst:             dpif_netlink_meter_set__
        - Src:             'lib/dpif-netlink.c:3537,5'
          Dst:             dpif_netlink_meter_set__
        - Src:             'lib/dpif-netlink.c:3539,9'
          Dst:             dpif_netlink_meter_get
        - Src:             'lib/dpif-netlink.c:3540,12'
          Dst:             dpif_netlink_meter_get
        - Src:             'lib/dpif-netlink.c:3541,9'
          Dst:             vlog
        - Src:             'lib/dpif-netlink.c:3545,5'
          Dst:             dpif_netlink_meter_del
        - Src:             'lib/dpif-netlink.c:3546,5'
          Dst:             dpif_netlink_meter_del
    - functionName:    dpif_netlink_format_tp_name
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2764
      functionLinenumberEnd: 2778
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - int
        - short
        - char
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          68
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - ct_dpif_format_ipproto
        - ds_put_cstr
        - ds_put_format
        - ds_steal_cstr
        - ovs_ignore
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:2766,5'
          Dst:             ds_put_format
        - Src:             'lib/dpif-netlink.c:2767,5'
          Dst:             ct_dpif_format_ipproto
        - Src:             'lib/dpif-netlink.c:2770,9'
          Dst:             ds_put_cstr
        - Src:             'lib/dpif-netlink.c:2772,9'
          Dst:             ds_put_cstr
        - Src:             'lib/dpif-netlink.c:2775,5'
          Dst:             ovs_ignore
        - Src:             'lib/dpif-netlink.c:2777,16'
          Dst:             ds_steal_cstr
    - functionName:    hmap_pop_helper__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 226
      functionLinenumberEnd: 238
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          66
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - hmap_remove
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:232,13'
          Dst:             hmap_remove
    - functionName:    hmap_remove
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 317
      functionLinenumberEnd: 324
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          48
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_dpif_netlink_tp_dump_node_by_tp_id
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3050
      functionLinenumberEnd: 3060
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          73
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hash_int
        - hmap_first_with_hash
        - hmap_next_with_hash
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:3053,5'
          Dst:             hash_int
        - Src:             'lib/dpif-netlink.c:3053,5'
          Dst:             hmap_first_with_hash
        - Src:             'lib/dpif-netlink.c:3053,5'
          Dst:             hmap_next_with_hash
    - functionName:    hash_int
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 408
      functionLinenumberEnd: 409
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_2words
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:409,12'
          Dst:             hash_2words
    - functionName:    hmap_insert_at
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 306
      functionLinenumberEnd: 311
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_expand_at
        - hmap_insert_fast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:307,5'
          Dst:             hmap_insert_fast
        - Src:             './include/openvswitch/hmap.h:309,9'
          Dst:             hmap_expand_at
    - functionName:    update_dpif_netlink_tp_dump_node
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3066
      functionLinenumberEnd: 3075
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          84
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - dpif_netlink_set_ct_dpif_tp_attrs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:3067,5'
          Dst:             dpif_netlink_set_ct_dpif_tp_attrs
    - functionName:    get_and_cleanup_tp_dump_node
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3097
      functionLinenumberEnd: 3102
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          32
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_remove
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:3098,5'
          Dst:             hmap_remove
    - functionName:    hmap_is_empty
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 281
      functionLinenumberEnd: 282
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_first
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 416
      functionLinenumberEnd: 417
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:417,12'
          Dst:             hmap_next__
    - functionName:    hmap_next__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 401
      functionLinenumberEnd: 410
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          51
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_netlink_set_ct_dpif_tp_attrs
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2935
      functionLinenumberEnd: 2945
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          78
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - dpif_netlink_set_ct_dpif_tp_icmp_attrs
        - dpif_netlink_set_ct_dpif_tp_icmpv6_attrs
        - dpif_netlink_set_ct_dpif_tp_tcp_attrs
        - dpif_netlink_set_ct_dpif_tp_udp_attrs
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:2937,9'
          Dst:             dpif_netlink_set_ct_dpif_tp_tcp_attrs
        - Src:             'lib/dpif-netlink.c:2939,9'
          Dst:             dpif_netlink_set_ct_dpif_tp_udp_attrs
        - Src:             'lib/dpif-netlink.c:2941,9'
          Dst:             dpif_netlink_set_ct_dpif_tp_icmp_attrs
        - Src:             'lib/dpif-netlink.c:2943,9'
          Dst:             dpif_netlink_set_ct_dpif_tp_icmpv6_attrs
    - functionName:    dpif_netlink_set_ct_dpif_tp_tcp_attrs
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2903
      functionLinenumberEnd: 2905
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         157
      ICount:          961
      EdgeCount:       201
      CyclomaticComplexity: 46
      functionsReached:
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:2904,5'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-netlink.c:2904,5'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-netlink.c:2904,5'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-netlink.c:2904,5'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-netlink.c:2904,5'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-netlink.c:2904,5'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-netlink.c:2904,5'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-netlink.c:2904,5'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-netlink.c:2904,5'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-netlink.c:2904,5'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-netlink.c:2904,5'
          Dst:             vlog_rate_limit
    - functionName:    dpif_netlink_set_ct_dpif_tp_udp_attrs
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2910
      functionLinenumberEnd: 2912
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         31
      ICount:          187
      EdgeCount:       39
      CyclomaticComplexity: 10
      functionsReached:
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:2911,5'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-netlink.c:2911,5'
          Dst:             vlog_rate_limit
    - functionName:    dpif_netlink_set_ct_dpif_tp_icmp_attrs
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2918
      functionLinenumberEnd: 2920
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          101
      EdgeCount:       21
      CyclomaticComplexity: 6
      functionsReached:
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:2919,5'
          Dst:             vlog_rate_limit
    - functionName:    dpif_netlink_set_ct_dpif_tp_icmpv6_attrs
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2926
      functionLinenumberEnd: 2928
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          101
      EdgeCount:       21
      CyclomaticComplexity: 6
      functionsReached:
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:2927,5'
          Dst:             vlog_rate_limit
    - functionName:    hmap_insert_fast
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 289
      functionLinenumberEnd: 295
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          38
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_2words
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 153
      functionLinenumberEnd: 154
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_add
        - hash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:154,33'
          Dst:             hash_add
        - Src:             'lib/hash.h:154,24'
          Dst:             hash_add
        - Src:             'lib/hash.h:154,12'
          Dst:             hash_finish
    - functionName:    hash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 108
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_add
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:109,12'
          Dst:             mhash_add
    - functionName:    hash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:119,12'
          Dst:             mhash_finish
    - functionName:    mhash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_rot
        - mhash_add__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:78,12'
          Dst:             mhash_add__
        - Src:             'lib/hash.h:79,12'
          Dst:             hash_rot
    - functionName:    mhash_add__
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hash_rot
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:71,12'
          Dst:             hash_rot
    - functionName:    hash_rot
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 32
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_first_with_hash
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 360
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next_with_hash__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:360,12'
          Dst:             hmap_next_with_hash__
    - functionName:    hmap_next_with_hash
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 395
      functionLinenumberEnd: 396
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next_with_hash__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:396,12'
          Dst:             hmap_next_with_hash__
    - functionName:    hmap_next_with_hash__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 348
      functionLinenumberEnd: 352
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          40
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_netlink_get_nl_tp_attrs
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2867
      functionLinenumberEnd: 2879
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - char
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          75
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - dpif_netlink_get_nl_tp_icmp_attrs
        - dpif_netlink_get_nl_tp_icmpv6_attrs
        - dpif_netlink_get_nl_tp_tcp_attrs
        - dpif_netlink_get_nl_tp_udp_attrs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:2871,9'
          Dst:             dpif_netlink_get_nl_tp_tcp_attrs
        - Src:             'lib/dpif-netlink.c:2873,9'
          Dst:             dpif_netlink_get_nl_tp_udp_attrs
        - Src:             'lib/dpif-netlink.c:2875,9'
          Dst:             dpif_netlink_get_nl_tp_icmp_attrs
        - Src:             'lib/dpif-netlink.c:2877,9'
          Dst:             dpif_netlink_get_nl_tp_icmpv6_attrs
    - functionName:    dpif_netlink_get_nl_tp_tcp_attrs
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2837
      functionLinenumberEnd: 2839
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         34
      ICount:          316
      EdgeCount:       44
      CyclomaticComplexity: 12
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_netlink_get_nl_tp_udp_attrs
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2844
      functionLinenumberEnd: 2846
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          64
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_netlink_get_nl_tp_icmp_attrs
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2851
      functionLinenumberEnd: 2853
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          36
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_netlink_get_nl_tp_icmpv6_attrs
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2858
      functionLinenumberEnd: 2860
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          36
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_list_is_empty
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 320
      functionLinenumberEnd: 321
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_netlink_zone_limits_from_ofpbuf
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2604
      functionLinenumberEnd: 2645
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         25
      ICount:          155
      EdgeCount:       34
      CyclomaticComplexity: 11
      functionsReached:
        - ct_dpif_push_zone_limit
        - nl_attr_get
        - nl_attr_get_size
        - nl_policy_parse
        - ofpbuf_const_initializer
        - ofpbuf_try_pull
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:2610,23'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/dpif-netlink.c:2611,30'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/dpif-netlink.c:2612,31'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/dpif-netlink.c:2613,37'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/dpif-netlink.c:2619,13'
          Dst:             nl_policy_parse
        - Src:             'lib/dpif-netlink.c:2629,15'
          Dst:             nl_attr_get_size
        - Src:             'lib/dpif-netlink.c:2632,17'
          Dst:             nl_attr_get
        - Src:             'lib/dpif-netlink.c:2637,13'
          Dst:             ct_dpif_push_zone_limit
    - functionName:    dpif_netlink_upcall_per_cpu
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 270
      functionLinenumberEnd: 271
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    14
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_netlink_recv_purge_cpu_dispatch
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2445
      functionLinenumberEnd: 2454
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          56
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - nl_sock_drain
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:2451,13'
          Dst:             nl_sock_drain
    - functionName:    dpif_netlink_recv_purge_vport_dispatch
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2428
      functionLinenumberEnd: 2440
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          65
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - nl_sock_drain
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:2437,13'
          Dst:             nl_sock_drain
    - functionName:    dpif_netlink_recv_wait_cpu_dispatch
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2403
      functionLinenumberEnd: 2409
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          52
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - nl_sock_fd
        - poll_fd_wait_at
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:2407,9'
          Dst:             nl_sock_fd
        - Src:             'lib/dpif-netlink.c:2407,9'
          Dst:             poll_fd_wait_at
    - functionName:    dpif_netlink_recv_wait_vport_dispatch
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2391
      functionLinenumberEnd: 2397
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          51
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - poll_fd_wait_at
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:2395,9'
          Dst:             poll_fd_wait_at
    - functionName:    dpif_netlink_recv_cpu_dispatch
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2244
      functionLinenumberEnd: 2288
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          153
      EdgeCount:       36
      CyclomaticComplexity: 11
      functionsReached:
        - nl_sock_pid
        - nl_sock_recv
        - parse_odp_packet
        - report_loss
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:2261,17'
          Dst:             nl_sock_recv
        - Src:             'lib/dpif-netlink.c:2267,13'
          Dst:             report_loss
        - Src:             'lib/dpif-netlink.c:2278,17'
          Dst:             parse_odp_packet
        - Src:             'lib/dpif-netlink.c:2280,27'
          Dst:             nl_sock_pid
    - functionName:    dpif_netlink_recv_vport_dispatch
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2296
      functionLinenumberEnd: 2366
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         51
      ICount:          301
      EdgeCount:       67
      CyclomaticComplexity: 18
      functionsReached:
        - __errno_location
        - epoll_wait
        - nl_sock_pid
        - nl_sock_recv
        - ovs_strerror
        - parse_odp_packet
        - report_loss
        - time_msec
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:2311,22'
          Dst:             epoll_wait
        - Src:             'lib/dpif-netlink.c:2313,32'
          Dst:             __errno_location
        - Src:             'lib/dpif-netlink.c:2317,13'
          Dst:             __errno_location
        - Src:             'lib/dpif-netlink.c:2317,13'
          Dst:             ovs_strerror
        - Src:             'lib/dpif-netlink.c:2317,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-netlink.c:2337,21'
          Dst:             nl_sock_recv
        - Src:             'lib/dpif-netlink.c:2343,17'
          Dst:             report_loss
        - Src:             'lib/dpif-netlink.c:2347,29'
          Dst:             time_msec
        - Src:             'lib/dpif-netlink.c:2355,21'
          Dst:             parse_odp_packet
        - Src:             'lib/dpif-netlink.c:2357,31'
          Dst:             nl_sock_pid
    - functionName:    epoll_wait
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    report_loss
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4410
      functionLinenumberEnd: 4432
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          107
      EdgeCount:       26
      CyclomaticComplexity: 7
      functionsReached:
        - dpif_name
        - dpif_netlink_upcall_per_cpu
        - ds_cstr
        - ds_destroy
        - ds_init
        - ds_put_format
        - time_msec
        - vlog
        - vlog_should_drop
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:4414,9'
          Dst:             vlog_should_drop
        - Src:             'lib/dpif-netlink.c:4418,9'
          Dst:             dpif_netlink_upcall_per_cpu
        - Src:             'lib/dpif-netlink.c:4419,9'
          Dst:             dpif_name
        - Src:             'lib/dpif-netlink.c:4419,9'
          Dst:             vlog
        - Src:             'lib/dpif-netlink.c:4422,9'
          Dst:             ds_init
        - Src:             'lib/dpif-netlink.c:4425,25'
          Dst:             time_msec
        - Src:             'lib/dpif-netlink.c:4424,13'
          Dst:             ds_put_format
        - Src:             'lib/dpif-netlink.c:4428,9'
          Dst:             dpif_name
        - Src:             'lib/dpif-netlink.c:4428,9'
          Dst:             ds_cstr
        - Src:             'lib/dpif-netlink.c:4428,9'
          Dst:             vlog
        - Src:             'lib/dpif-netlink.c:4430,9'
          Dst:             ds_destroy
    - functionName:    parse_odp_packet
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2161
      functionLinenumberEnd: 2238
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          255
      EdgeCount:       35
      CyclomaticComplexity: 11
      functionsReached:
        - dp_packet_data
        - dp_packet_set_data
        - dp_packet_set_l3
        - dp_packet_set_size
        - dp_packet_use_stub
        - htonl
        - nl_attr_find__
        - nl_attr_get
        - nl_attr_get_be16
        - nl_attr_get_size
        - nl_policy_parse
        - ntohs
        - odp_flow_key_hash
        - ofpbuf_const_initializer
        - ofpbuf_try_pull
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:2176,23'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/dpif-netlink.c:2177,30'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/dpif-netlink.c:2178,31'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/dpif-netlink.c:2179,37'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/dpif-netlink.c:2184,13'
          Dst:             nl_policy_parse
        - Src:             'lib/dpif-netlink.c:2198,19'
          Dst:             nl_attr_get
        - Src:             'lib/dpif-netlink.c:2200,23'
          Dst:             nl_attr_get_size
        - Src:             'lib/dpif-netlink.c:2201,5'
          Dst:             odp_flow_key_hash
        - Src:             'lib/dpif-netlink.c:2210,21'
          Dst:             nl_attr_get
        - Src:             'lib/dpif-netlink.c:2212,21'
          Dst:             nl_attr_get_size
        - Src:             'lib/dpif-netlink.c:2209,5'
          Dst:             dp_packet_use_stub
        - Src:             'lib/dpif-netlink.c:2215,29'
          Dst:             dp_packet_data
        - Src:             'lib/dpif-netlink.c:2214,5'
          Dst:             dp_packet_set_data
        - Src:             'lib/dpif-netlink.c:2216,41'
          Dst:             nl_attr_get_size
        - Src:             'lib/dpif-netlink.c:2216,5'
          Dst:             dp_packet_set_size
        - Src:             'lib/dpif-netlink.c:2218,9'
          Dst:             nl_attr_find__
        - Src:             'lib/dpif-netlink.c:2220,38'
          Dst:             htonl
        - Src:             'lib/dpif-netlink.c:2224,39'
          Dst:             nl_attr_find__
        - Src:             'lib/dpif-netlink.c:2228,25'
          Dst:             nl_attr_get_be16
        - Src:             'lib/dpif-netlink.c:2230,38'
          Dst:             ntohs
        - Src:             'lib/dpif-netlink.c:2230,38'
          Dst:             htonl
        - Src:             'lib/dpif-netlink.c:2232,43'
          Dst:             dp_packet_data
        - Src:             'lib/dpif-netlink.c:2232,9'
          Dst:             dp_packet_set_l3
    - functionName:    dp_packet_data
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 845
      functionLinenumberEnd: 847
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __packet_data
        - dp_packet_base
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:846,12'
          Dst:             __packet_data
        - Src:             'lib/dp-packet.h:847,23'
          Dst:             dp_packet_base
        - Src:             'lib/dp-packet.h:847,43'
          Dst:             __packet_data
    - functionName:    dp_packet_set_data
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 852
      functionLinenumberEnd: 858
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __packet_set_data
        - dp_packet_base
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:854,55'
          Dst:             dp_packet_base
        - Src:             'lib/dp-packet.h:854,9'
          Dst:             __packet_set_data
        - Src:             'lib/dp-packet.h:856,9'
          Dst:             __packet_set_data
    - functionName:    dp_packet_set_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 768
      functionLinenumberEnd: 770
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_set_l3
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 469
      functionLinenumberEnd: 471
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:470,45'
          Dst:             dp_packet_data
    - functionName:    dp_packet_base
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 750
      functionLinenumberEnd: 751
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __packet_set_data
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 780
      functionLinenumberEnd: 782
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __packet_data
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 774
      functionLinenumberEnd: 775
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_netlink_calculate_n_handlers
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1885
      functionLinenumberEnd: 1898
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         14
      ICount:          71
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - count_cpu_cores
        - count_total_cores
        - next_prime
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:1886,28'
          Dst:             count_total_cores
        - Src:             'lib/dpif-netlink.c:1887,27'
          Dst:             count_cpu_cores
        - Src:             'lib/dpif-netlink.c:1894,26'
          Dst:             next_prime
    - functionName:    next_prime
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1864
      functionLinenumberEnd: 1876
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          54
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - is_prime
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:1870,13'
          Dst:             is_prime
    - functionName:    is_prime
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1835
      functionLinenumberEnd: 1855
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          72
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_netlink_refresh_handlers_cpu_dispatch
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1904
      functionLinenumberEnd: 1936
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         27
      ICount:          172
      EdgeCount:       33
      CyclomaticComplexity: 8
      functionsReached:
        - create_nl_sock
        - destroy_all_handlers
        - dpif_netlink_calculate_n_handlers
        - dpif_netlink_set_handler_pids
        - nl_sock_pid
        - vlog
        - xzalloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:1910,18'
          Dst:             dpif_netlink_calculate_n_handlers
        - Src:             'lib/dpif-netlink.c:1912,9'
          Dst:             vlog
        - Src:             'lib/dpif-netlink.c:1914,9'
          Dst:             destroy_all_handlers
        - Src:             'lib/dpif-netlink.c:1915,23'
          Dst:             xzalloc
        - Src:             'lib/dpif-netlink.c:1916,26'
          Dst:             xzalloc
        - Src:             'lib/dpif-netlink.c:1919,21'
          Dst:             create_nl_sock
        - Src:             'lib/dpif-netlink.c:1921,17'
          Dst:             vlog
        - Src:             'lib/dpif-netlink.c:1925,39'
          Dst:             nl_sock_pid
        - Src:             'lib/dpif-netlink.c:1926,13'
          Dst:             vlog
        - Src:             'lib/dpif-netlink.c:1932,17'
          Dst:             dpif_netlink_set_handler_pids
    - functionName:    dpif_netlink_refresh_handlers_vport_dispatch
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1947
      functionLinenumberEnd: 2066
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         71
      ICount:          439
      EdgeCount:       92
      CyclomaticComplexity: 23
      functionsReached:
        - bitmap_allocate
        - bitmap_is_set
        - bitmap_set1
        - create_nl_sock
        - destroy_all_channels
        - dpif_name
        - dpif_netlink_handler_init
        - dpif_netlink_handler_uninit
        - dpif_netlink_port_dump_next__
        - dpif_netlink_port_dump_start__
        - dpif_netlink_vport_init
        - dpif_netlink_vport_transact
        - nl_dump_done
        - nl_sock_destroy
        - nl_sock_pid
        - odp_to_u32
        - ofpbuf_uninit
        - ofpbuf_use_stub
        - ovs_strerror
        - u32_to_odp
        - vlog
        - vlog_rate_limit
        - vport_add_channel
        - vport_del_channels
        - vport_get_pid
        - xzalloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:1958,9'
          Dst:             destroy_all_channels
        - Src:             'lib/dpif-netlink.c:1959,26'
          Dst:             xzalloc
        - Src:             'lib/dpif-netlink.c:1964,21'
          Dst:             dpif_netlink_handler_init
        - Src:             'lib/dpif-netlink.c:1970,21'
          Dst:             dpif_netlink_handler_uninit
        - Src:             'lib/dpif-netlink.c:1988,21'
          Dst:             bitmap_allocate
        - Src:             'lib/dpif-netlink.c:1990,5'
          Dst:             ofpbuf_use_stub
        - Src:             'lib/dpif-netlink.c:1991,5'
          Dst:             dpif_netlink_port_dump_start__
        - Src:             'lib/dpif-netlink.c:1992,13'
          Dst:             dpif_netlink_port_dump_next__
        - Src:             'lib/dpif-netlink.c:1993,28'
          Dst:             odp_to_u32
        - Src:             'lib/dpif-netlink.c:1998,17'
          Dst:             vport_get_pid
        - Src:             'lib/dpif-netlink.c:2000,21'
          Dst:             create_nl_sock
        - Src:             'lib/dpif-netlink.c:2006,21'
          Dst:             vport_add_channel
        - Src:             'lib/dpif-netlink.c:2008,17'
          Dst:             dpif_name
        - Src:             'lib/dpif-netlink.c:2008,17'
          Dst:             vlog
        - Src:             'lib/dpif-netlink.c:2010,17'
          Dst:             nl_sock_destroy
        - Src:             'lib/dpif-netlink.c:2014,26'
          Dst:             nl_sock_pid
        - Src:             'lib/dpif-netlink.c:2023,13'
          Dst:             dpif_netlink_vport_init
        - Src:             'lib/dpif-netlink.c:2029,21'
          Dst:             dpif_netlink_vport_transact
        - Src:             'lib/dpif-netlink.c:2031,17'
          Dst:             dpif_name
        - Src:             'lib/dpif-netlink.c:2031,17'
          Dst:             ovs_strerror
        - Src:             'lib/dpif-netlink.c:2031,17'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-netlink.c:2047,13'
          Dst:             bitmap_set1
        - Src:             'lib/dpif-netlink.c:2052,9'
          Dst:             vport_del_channels
        - Src:             'lib/dpif-netlink.c:2054,5'
          Dst:             nl_dump_done
        - Src:             'lib/dpif-netlink.c:2055,5'
          Dst:             ofpbuf_uninit
        - Src:             'lib/dpif-netlink.c:2059,14'
          Dst:             bitmap_is_set
        - Src:             'lib/dpif-netlink.c:2060,38'
          Dst:             u32_to_odp
        - Src:             'lib/dpif-netlink.c:2060,13'
          Dst:             vport_del_channels
    - functionName:    destroy_all_channels
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 537
      functionLinenumberEnd: 576
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         16
      ICount:          133
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - dpif_netlink_handler_uninit
        - dpif_netlink_vport_init
        - dpif_netlink_vport_transact
        - u32_to_odp
        - vport_del_channels
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:553,9'
          Dst:             dpif_netlink_vport_init
        - Src:             'lib/dpif-netlink.c:556,33'
          Dst:             u32_to_odp
        - Src:             'lib/dpif-netlink.c:559,9'
          Dst:             dpif_netlink_vport_transact
        - Src:             'lib/dpif-netlink.c:561,34'
          Dst:             u32_to_odp
        - Src:             'lib/dpif-netlink.c:561,9'
          Dst:             vport_del_channels
        - Src:             'lib/dpif-netlink.c:567,9'
          Dst:             dpif_netlink_handler_uninit
    - functionName:    dpif_netlink_handler_init
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1819
      functionLinenumberEnd: 1821
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __errno_location
        - epoll_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:1820,25'
          Dst:             epoll_create
        - Src:             'lib/dpif-netlink.c:1821,36'
          Dst:             __errno_location
    - functionName:    dpif_netlink_handler_uninit
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1826
      functionLinenumberEnd: 1828
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - close
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:1827,5'
          Dst:             close
    - functionName:    bitmap_allocate
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 51
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - bitmap_n_bytes
        - xzalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/bitmap.h:51,20'
          Dst:             bitmap_n_bytes
        - Src:             'lib/bitmap.h:51,12'
          Dst:             xzalloc
    - functionName:    dpif_netlink_port_dump_start__
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1135
      functionLinenumberEnd: 1147
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dpif_netlink_vport_init
        - dpif_netlink_vport_to_ofpbuf
        - nl_dump_start
        - ofpbuf_delete
        - ofpbuf_new
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:1139,5'
          Dst:             dpif_netlink_vport_init
        - Src:             'lib/dpif-netlink.c:1143,11'
          Dst:             ofpbuf_new
        - Src:             'lib/dpif-netlink.c:1144,5'
          Dst:             dpif_netlink_vport_to_ofpbuf
        - Src:             'lib/dpif-netlink.c:1145,5'
          Dst:             nl_dump_start
        - Src:             'lib/dpif-netlink.c:1146,5'
          Dst:             ofpbuf_delete
    - functionName:    dpif_netlink_port_dump_next__
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1167
      functionLinenumberEnd: 1181
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          74
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - dpif_name
        - dpif_netlink_vport_from_ofpbuf
        - nl_dump_next
        - ovs_strerror
        - vlog_rate_limit
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:1171,10'
          Dst:             nl_dump_next
        - Src:             'lib/dpif-netlink.c:1175,13'
          Dst:             dpif_netlink_vport_from_ofpbuf
        - Src:             'lib/dpif-netlink.c:1177,9'
          Dst:             dpif_name
        - Src:             'lib/dpif-netlink.c:1177,9'
          Dst:             ovs_strerror
        - Src:             'lib/dpif-netlink.c:1177,9'
          Dst:             vlog_rate_limit
    - functionName:    odp_to_u32
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 202
      functionLinenumberEnd: 203
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    vport_get_pid
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 427
      functionLinenumberEnd: 438
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - nl_sock_pid
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:435,19'
          Dst:             nl_sock_pid
    - functionName:    create_nl_sock
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 252
      functionLinenumberEnd: 253
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_sock_create
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:253,12'
          Dst:             nl_sock_create
    - functionName:    vport_add_channel
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 443
      functionLinenumberEnd: 511
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         34
      ICount:          268
      EdgeCount:       43
      CyclomaticComplexity: 11
      functionsReached:
        - __errno_location
        - close_nl_sock
        - dpif_name
        - epoll_ctl
        - nl_sock_fd
        - odp_to_u32
        - vlog_rate_limit
        - vport_del_channels
        - xrealloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:445,25'
          Dst:             odp_to_u32
        - Src:             'lib/dpif-netlink.c:450,9'
          Dst:             close_nl_sock
        - Src:             'lib/dpif-netlink.c:461,13'
          Dst:             dpif_name
        - Src:             'lib/dpif-netlink.c:461,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-netlink.c:466,26'
          Dst:             xrealloc
        - Src:             'lib/dpif-netlink.c:476,37'
          Dst:             xrealloc
        - Src:             'lib/dpif-netlink.c:483,5'
          Dst:             vport_del_channels
        - Src:             'lib/dpif-netlink.c:492,57'
          Dst:             nl_sock_fd
        - Src:             'lib/dpif-netlink.c:492,13'
          Dst:             epoll_ctl
        - Src:             'lib/dpif-netlink.c:494,21'
          Dst:             __errno_location
        - Src:             'lib/dpif-netlink.c:506,19'
          Dst:             nl_sock_fd
        - Src:             'lib/dpif-netlink.c:505,9'
          Dst:             epoll_ctl
    - functionName:    dpif_netlink_vport_init
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3937
      functionLinenumberEnd: 3940
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    11
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_netlink_vport_transact
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3952
      functionLinenumberEnd: 3983
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          112
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - dpif_netlink_init
        - dpif_netlink_vport_from_ofpbuf
        - dpif_netlink_vport_init
        - dpif_netlink_vport_to_ofpbuf
        - nl_transact
        - ofpbuf_delete
        - ofpbuf_new
        - ovs_ignore
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:3956,5'
          Dst:             ovs_ignore
        - Src:             'lib/dpif-netlink.c:3958,13'
          Dst:             dpif_netlink_init
        - Src:             'lib/dpif-netlink.c:3962,13'
          Dst:             dpif_netlink_vport_init
        - Src:             'lib/dpif-netlink.c:3967,19'
          Dst:             ofpbuf_new
        - Src:             'lib/dpif-netlink.c:3968,5'
          Dst:             dpif_netlink_vport_to_ofpbuf
        - Src:             'lib/dpif-netlink.c:3969,13'
          Dst:             nl_transact
        - Src:             'lib/dpif-netlink.c:3970,5'
          Dst:             ofpbuf_delete
        - Src:             'lib/dpif-netlink.c:3974,21'
          Dst:             dpif_netlink_vport_from_ofpbuf
        - Src:             'lib/dpif-netlink.c:3977,13'
          Dst:             dpif_netlink_vport_init
        - Src:             'lib/dpif-netlink.c:3978,13'
          Dst:             ofpbuf_delete
    - functionName:    bitmap_set1
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 96
      functionLinenumberEnd: 98
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - bitmap_bit__
        - bitmap_unit__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/bitmap.h:97,39'
          Dst:             bitmap_bit__
        - Src:             'lib/bitmap.h:97,6'
          Dst:             bitmap_unit__
    - functionName:    vport_del_channels
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 515
      functionLinenumberEnd: 532
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          120
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - epoll_ctl
        - nl_sock_destroy
        - nl_sock_fd
        - odp_to_u32
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:516,25'
          Dst:             odp_to_u32
        - Src:             'lib/dpif-netlink.c:527,19'
          Dst:             nl_sock_fd
        - Src:             'lib/dpif-netlink.c:526,9'
          Dst:             epoll_ctl
        - Src:             'lib/dpif-netlink.c:530,5'
          Dst:             nl_sock_destroy
    - functionName:    bitmap_is_set
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 90
      functionLinenumberEnd: 91
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - bitmap_bit__
        - bitmap_unit__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/bitmap.h:91,14'
          Dst:             bitmap_unit__
        - Src:             'lib/bitmap.h:91,46'
          Dst:             bitmap_bit__
    - functionName:    u32_to_odp
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 220
      functionLinenumberEnd: 221
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    bitmap_unit__
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 26
      functionLinenumberEnd: 27
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    bitmap_bit__
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 32
      functionLinenumberEnd: 33
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    epoll_ctl
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - int
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_netlink_vport_to_ofpbuf
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3901
      functionLinenumberEnd: 3932
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          128
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - nl_msg_put_genlmsghdr
        - nl_msg_put_odp_port
        - nl_msg_put_string
        - nl_msg_put_u32
        - nl_msg_put_unspec
        - ofpbuf_put_uninit
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:3904,5'
          Dst:             nl_msg_put_genlmsghdr
        - Src:             'lib/dpif-netlink.c:3907,18'
          Dst:             ofpbuf_put_uninit
        - Src:             'lib/dpif-netlink.c:3911,9'
          Dst:             nl_msg_put_odp_port
        - Src:             'lib/dpif-netlink.c:3915,9'
          Dst:             nl_msg_put_u32
        - Src:             'lib/dpif-netlink.c:3919,9'
          Dst:             nl_msg_put_string
        - Src:             'lib/dpif-netlink.c:3923,9'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/dpif-netlink.c:3929,9'
          Dst:             nl_msg_put_unspec
    - functionName:    dpif_netlink_vport_from_ofpbuf
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3830
      functionLinenumberEnd: 3894
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         37
      ICount:          256
      EdgeCount:       49
      CyclomaticComplexity: 14
      functionsReached:
        - dpif_netlink_vport_init
        - netnsid_set
        - netnsid_set_local
        - nl_attr_get
        - nl_attr_get_odp_port
        - nl_attr_get_size
        - nl_attr_get_string
        - nl_attr_get_u32
        - nl_attr_get_u64
        - nl_attr_is_valid
        - nl_attr_len_pad
        - nl_attr_next
        - nl_attr_type
        - nl_policy_parse
        - ofpbuf_const_initializer
        - ofpbuf_try_pull
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:3843,5'
          Dst:             dpif_netlink_vport_init
        - Src:             'lib/dpif-netlink.c:3845,23'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/dpif-netlink.c:3846,30'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/dpif-netlink.c:3847,31'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/dpif-netlink.c:3848,37'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/dpif-netlink.c:3853,13'
          Dst:             nl_policy_parse
        - Src:             'lib/dpif-netlink.c:3860,22'
          Dst:             nl_attr_get_odp_port
        - Src:             'lib/dpif-netlink.c:3861,19'
          Dst:             nl_attr_get_u32
        - Src:             'lib/dpif-netlink.c:3862,19'
          Dst:             nl_attr_get_string
        - Src:             'lib/dpif-netlink.c:3864,32'
          Dst:             nl_attr_get_size
        - Src:             'lib/dpif-netlink.c:3866,30'
          Dst:             nl_attr_get
        - Src:             'lib/dpif-netlink.c:3870,24'
          Dst:             nl_attr_get
        - Src:             'lib/dpif-netlink.c:3876,9'
          Dst:             nl_attr_get
        - Src:             'lib/dpif-netlink.c:3876,9'
          Dst:             nl_attr_get_size
        - Src:             'lib/dpif-netlink.c:3876,9'
          Dst:             nl_attr_is_valid
        - Src:             'lib/dpif-netlink.c:3877,17'
          Dst:             nl_attr_type
        - Src:             'lib/dpif-netlink.c:3878,41'
          Dst:             nl_attr_get_u64
        - Src:             'lib/dpif-netlink.c:3879,24'
          Dst:             nl_attr_type
        - Src:             'lib/dpif-netlink.c:3880,38'
          Dst:             nl_attr_get_u64
        - Src:             'lib/dpif-netlink.c:3876,9'
          Dst:             nl_attr_len_pad
        - Src:             'lib/dpif-netlink.c:3876,9'
          Dst:             nl_attr_next
        - Src:             'lib/dpif-netlink.c:3889,21'
          Dst:             nl_attr_get_u32
        - Src:             'lib/dpif-netlink.c:3888,9'
          Dst:             netnsid_set
        - Src:             'lib/dpif-netlink.c:3891,9'
          Dst:             netnsid_set_local
    - functionName:    close_nl_sock
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 258
      functionLinenumberEnd: 260
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_sock_destroy
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:259,5'
          Dst:             nl_sock_destroy
    - functionName:    bitmap_n_bytes
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - bitmap_n_longs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/bitmap.h:45,12'
          Dst:             bitmap_n_longs
    - functionName:    bitmap_n_longs
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    epoll_create
      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:    destroy_all_handlers
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 581
      functionLinenumberEnd: 594
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          67
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - close_nl_sock
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:589,9'
          Dst:             close_nl_sock
    - functionName:    dpif_netlink_set_handler_pids
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 687
      functionLinenumberEnd: 736
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          172
      EdgeCount:       30
      CyclomaticComplexity: 8
      functionsReached:
        - count_total_cores
        - dpif_netlink_cast
        - dpif_netlink_dp_init
        - dpif_netlink_dp_transact
        - dpif_netlink_upcall_per_cpu
        - ofpbuf_delete
        - ovs_numa_get_largest_core_id
        - vlog
        - xcalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:688,33'
          Dst:             dpif_netlink_cast
        - Src:             'lib/dpif-netlink.c:689,26'
          Dst:             ovs_numa_get_largest_core_id
        - Src:             'lib/dpif-netlink.c:708,15'
          Dst:             count_total_cores
        - Src:             'lib/dpif-netlink.c:708,15'
          Dst:             count_total_cores
        - Src:             'lib/dpif-netlink.c:709,5'
          Dst:             vlog
        - Src:             'lib/dpif-netlink.c:712,5'
          Dst:             dpif_netlink_dp_init
        - Src:             'lib/dpif-netlink.c:719,17'
          Dst:             xcalloc
        - Src:             'lib/dpif-netlink.c:727,13'
          Dst:             dpif_netlink_dp_transact
        - Src:             'lib/dpif-netlink.c:730,9'
          Dst:             ofpbuf_delete
        - Src:             'lib/dpif-netlink.c:731,14'
          Dst:             dpif_netlink_upcall_per_cpu
    - functionName:    dpif_netlink_recv_set_cpu_dispatch
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2085
      functionLinenumberEnd: 2094
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          51
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - destroy_all_handlers
        - dpif_netlink_refresh_handlers_cpu_dispatch
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:2089,9'
          Dst:             destroy_all_handlers
        - Src:             'lib/dpif-netlink.c:2092,16'
          Dst:             dpif_netlink_refresh_handlers_cpu_dispatch
    - functionName:    dpif_netlink_recv_set_vport_dispatch
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2071
      functionLinenumberEnd: 2080
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          51
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - destroy_all_channels
        - dpif_netlink_refresh_handlers_vport_dispatch
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:2075,9'
          Dst:             destroy_all_channels
        - Src:             'lib/dpif-netlink.c:2078,16'
          Dst:             dpif_netlink_refresh_handlers_vport_dispatch
    - functionName:    dpif_netlink_operate__
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1633
      functionLinenumberEnd: 1802
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         71
      ICount:          487
      EdgeCount:       84
      CyclomaticComplexity: 15
      functionsReached:
        - abort
        - dp_packet_size
        - dpif_netlink_encode_execute
        - dpif_netlink_flow_from_ofpbuf
        - dpif_netlink_flow_get_stats
        - dpif_netlink_flow_to_dpif_flow
        - dpif_netlink_flow_to_ofpbuf
        - dpif_netlink_init_flow_del
        - dpif_netlink_init_flow_get
        - dpif_netlink_init_flow_put
        - nl_attr_oversized
        - nl_transact_multiple
        - ofpbuf_uninit
        - ofpbuf_use_stub
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/dpif-netlink.c:1663,9'
          Branch Sides:    []
        - Branch String:   'lib/dpif-netlink.c:1747,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/dpif-netlink.c:1656,9'
          Dst:             ofpbuf_use_stub
        - Src:             'lib/dpif-netlink.c:1660,9'
          Dst:             ofpbuf_use_stub
        - Src:             'lib/dpif-netlink.c:1666,13'
          Dst:             dpif_netlink_init_flow_put
        - Src:             'lib/dpif-netlink.c:1671,13'
          Dst:             dpif_netlink_flow_to_ofpbuf
        - Src:             'lib/dpif-netlink.c:1679,13'
          Dst:             dpif_netlink_init_flow_del
        - Src:             'lib/dpif-netlink.c:1684,13'
          Dst:             dpif_netlink_flow_to_ofpbuf
        - Src:             'lib/dpif-netlink.c:1692,17'
          Dst:             dp_packet_size
        - Src:             'lib/dpif-netlink.c:1692,17'
          Dst:             nl_attr_oversized
        - Src:             'lib/dpif-netlink.c:1698,21'
          Dst:             dp_packet_size
        - Src:             'lib/dpif-netlink.c:1698,21'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-netlink.c:1706,17'
          Dst:             dpif_netlink_encode_execute
        - Src:             'lib/dpif-netlink.c:1719,13'
          Dst:             dpif_netlink_init_flow_get
        - Src:             'lib/dpif-netlink.c:1721,13'
          Dst:             dpif_netlink_flow_to_ofpbuf
        - Src:             'lib/dpif-netlink.c:1728,13'
          Dst:             abort
        - Src:             'lib/dpif-netlink.c:1735,5'
          Dst:             nl_transact_multiple
        - Src:             'lib/dpif-netlink.c:1754,33'
          Dst:             dpif_netlink_flow_from_ofpbuf
        - Src:             'lib/dpif-netlink.c:1757,25'
          Dst:             dpif_netlink_flow_get_stats
        - Src:             'lib/dpif-netlink.c:1769,33'
          Dst:             dpif_netlink_flow_from_ofpbuf
        - Src:             'lib/dpif-netlink.c:1772,25'
          Dst:             dpif_netlink_flow_get_stats
        - Src:             'lib/dpif-netlink.c:1786,29'
          Dst:             dpif_netlink_flow_from_ofpbuf
        - Src:             'lib/dpif-netlink.c:1788,21'
          Dst:             dpif_netlink_flow_to_dpif_flow
        - Src:             'lib/dpif-netlink.c:1794,13'
          Dst:             abort
        - Src:             'lib/dpif-netlink.c:1797,9'
          Dst:             ofpbuf_uninit
        - Src:             'lib/dpif-netlink.c:1798,9'
          Dst:             ofpbuf_uninit
    - functionName:    dpif_netlink_init_flow_put
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1356
      functionLinenumberEnd: 1381
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          139
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - dpif_netlink_flow_init
        - dpif_netlink_flow_init_ufid
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:1359,5'
          Dst:             dpif_netlink_flow_init
        - Src:             'lib/dpif-netlink.c:1367,5'
          Dst:             dpif_netlink_flow_init_ufid
    - functionName:    dpif_netlink_flow_to_ofpbuf
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4299
      functionLinenumberEnd: 4343
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         30
      ICount:          209
      EdgeCount:       39
      CyclomaticComplexity: 11
      functionsReached:
        - nl_msg_put_flag
        - nl_msg_put_genlmsghdr
        - nl_msg_put_u128
        - nl_msg_put_u32
        - nl_msg_put_unspec
        - ofpbuf_put_uninit
        - ovs_ignore
        - put_exclude_packet_type
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:4302,5'
          Dst:             nl_msg_put_genlmsghdr
        - Src:             'lib/dpif-netlink.c:4306,18'
          Dst:             ofpbuf_put_uninit
        - Src:             'lib/dpif-netlink.c:4310,9'
          Dst:             nl_msg_put_u128
        - Src:             'lib/dpif-netlink.c:4313,9'
          Dst:             nl_msg_put_u32
        - Src:             'lib/dpif-netlink.c:4319,13'
          Dst:             put_exclude_packet_type
        - Src:             'lib/dpif-netlink.c:4323,13'
          Dst:             put_exclude_packet_type
        - Src:             'lib/dpif-netlink.c:4327,13'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/dpif-netlink.c:4333,5'
          Dst:             ovs_ignore
        - Src:             'lib/dpif-netlink.c:4334,5'
          Dst:             ovs_ignore
        - Src:             'lib/dpif-netlink.c:4335,5'
          Dst:             ovs_ignore
        - Src:             'lib/dpif-netlink.c:4338,9'
          Dst:             nl_msg_put_flag
        - Src:             'lib/dpif-netlink.c:4341,9'
          Dst:             nl_msg_put_flag
    - functionName:    dpif_netlink_init_flow_del
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1401
      functionLinenumberEnd: 1404
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dpif_netlink_init_flow_del__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:1402,5'
          Dst:             dpif_netlink_init_flow_del__
    - functionName:    dp_packet_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 762
      functionLinenumberEnd: 763
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_netlink_encode_execute
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1586
      functionLinenumberEnd: 1625
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          146
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - dp_packet_data
        - dp_packet_size
        - nl_msg_end_nested
        - nl_msg_put_flag
        - nl_msg_put_genlmsghdr
        - nl_msg_put_u16
        - nl_msg_put_u32
        - nl_msg_put_u64
        - nl_msg_put_unspec
        - nl_msg_start_nested
        - odp_key_from_dp_packet
        - ofpbuf_prealloc_tailroom
        - ofpbuf_put_uninit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:1591,38'
          Dst:             dp_packet_size
        - Src:             'lib/dpif-netlink.c:1590,5'
          Dst:             ofpbuf_prealloc_tailroom
        - Src:             'lib/dpif-netlink.c:1595,5'
          Dst:             nl_msg_put_genlmsghdr
        - Src:             'lib/dpif-netlink.c:1598,14'
          Dst:             ofpbuf_put_uninit
        - Src:             'lib/dpif-netlink.c:1602,23'
          Dst:             dp_packet_data
        - Src:             'lib/dpif-netlink.c:1603,23'
          Dst:             dp_packet_size
        - Src:             'lib/dpif-netlink.c:1601,5'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/dpif-netlink.c:1605,15'
          Dst:             nl_msg_start_nested
        - Src:             'lib/dpif-netlink.c:1606,5'
          Dst:             odp_key_from_dp_packet
        - Src:             'lib/dpif-netlink.c:1607,5'
          Dst:             nl_msg_end_nested
        - Src:             'lib/dpif-netlink.c:1609,5'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/dpif-netlink.c:1612,9'
          Dst:             nl_msg_put_flag
        - Src:             'lib/dpif-netlink.c:1615,9'
          Dst:             nl_msg_put_u16
        - Src:             'lib/dpif-netlink.c:1619,9'
          Dst:             nl_msg_put_u64
        - Src:             'lib/dpif-netlink.c:1623,9'
          Dst:             nl_msg_put_u32
    - functionName:    dpif_netlink_init_flow_get
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1325
      functionLinenumberEnd: 1328
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dpif_netlink_init_flow_get__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:1326,5'
          Dst:             dpif_netlink_init_flow_get__
    - functionName:    dpif_netlink_flow_from_ofpbuf
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4183
      functionLinenumberEnd: 4245
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         41
      ICount:          270
      EdgeCount:       55
      CyclomaticComplexity: 16
      functionsReached:
        - dpif_netlink_flow_init
        - nl_attr_get
        - nl_attr_get_size
        - nl_attr_get_u128
        - nl_policy_parse
        - ofpbuf_const_initializer
        - ofpbuf_try_pull
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:4198,5'
          Dst:             dpif_netlink_flow_init
        - Src:             'lib/dpif-netlink.c:4200,23'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/dpif-netlink.c:4201,30'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/dpif-netlink.c:4202,31'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/dpif-netlink.c:4203,37'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/dpif-netlink.c:4208,13'
          Dst:             nl_policy_parse
        - Src:             'lib/dpif-netlink.c:4219,21'
          Dst:             nl_attr_get
        - Src:             'lib/dpif-netlink.c:4220,25'
          Dst:             nl_attr_get_size
        - Src:             'lib/dpif-netlink.c:4224,22'
          Dst:             nl_attr_get_u128
        - Src:             'lib/dpif-netlink.c:4228,22'
          Dst:             nl_attr_get
        - Src:             'lib/dpif-netlink.c:4229,26'
          Dst:             nl_attr_get_size
        - Src:             'lib/dpif-netlink.c:4232,25'
          Dst:             nl_attr_get
        - Src:             'lib/dpif-netlink.c:4233,29'
          Dst:             nl_attr_get_size
        - Src:             'lib/dpif-netlink.c:4236,23'
          Dst:             nl_attr_get
        - Src:             'lib/dpif-netlink.c:4239,27'
          Dst:             nl_attr_get
        - Src:             'lib/dpif-netlink.c:4242,22'
          Dst:             nl_attr_get
    - functionName:    dpif_netlink_flow_get_stats
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4393
      functionLinenumberEnd: 4403
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          94
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - get_32aligned_u64
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:4395,28'
          Dst:             get_32aligned_u64
        - Src:             'lib/dpif-netlink.c:4396,26'
          Dst:             get_32aligned_u64
        - Src:             'lib/dpif-netlink.c:4401,32'
          Dst:             get_32aligned_u64
    - functionName:    dpif_netlink_flow_to_dpif_flow
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1502
      functionLinenumberEnd: 1522
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          122
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - dpif_netlink_flow_get_stats
        - odp_flow_key_hash
        - ovs_ignore
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:1514,9'
          Dst:             ovs_ignore
        - Src:             'lib/dpif-netlink.c:1515,9'
          Dst:             odp_flow_key_hash
        - Src:             'lib/dpif-netlink.c:1518,5'
          Dst:             dpif_netlink_flow_get_stats
    - functionName:    dpif_netlink_flow_init
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4348
      functionLinenumberEnd: 4350
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_netlink_init_flow_get__
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1312
      functionLinenumberEnd: 1319
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          48
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dpif_netlink_flow_init
        - dpif_netlink_flow_init_ufid
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:1313,5'
          Dst:             dpif_netlink_flow_init
        - Src:             'lib/dpif-netlink.c:1318,5'
          Dst:             dpif_netlink_flow_init_ufid
    - functionName:    dpif_netlink_flow_init_ufid
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1297
      functionLinenumberEnd: 1305
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          38
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_netlink_init_flow_del__
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1388
      functionLinenumberEnd: 1395
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          48
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dpif_netlink_flow_init
        - dpif_netlink_flow_init_ufid
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:1389,5'
          Dst:             dpif_netlink_flow_init
        - Src:             'lib/dpif-netlink.c:1394,5'
          Dst:             dpif_netlink_flow_init_ufid
    - functionName:    put_exclude_packet_type
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4256
      functionLinenumberEnd: 4292
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - short
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          130
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - nl_attr_find
        - nl_attr_find__
        - nl_attr_get
        - nl_attr_get_be32
        - nl_attr_next
        - nl_msg_end_nested
        - nl_msg_put
        - nl_msg_put_be16
        - nl_msg_put_unspec
        - nl_msg_start_nested
        - ovs_ignore
        - pt_ns_type_be
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:4259,19'
          Dst:             nl_attr_find__
        - Src:             'lib/dpif-netlink.c:4263,9'
          Dst:             ovs_ignore
        - Src:             'lib/dpif-netlink.c:4268,36'
          Dst:             nl_attr_next
        - Src:             'lib/dpif-netlink.c:4271,15'
          Dst:             nl_msg_start_nested
        - Src:             'lib/dpif-netlink.c:4272,9'
          Dst:             nl_msg_put
        - Src:             'lib/dpif-netlink.c:4273,9'
          Dst:             nl_msg_put
        - Src:             'lib/dpif-netlink.c:4274,14'
          Dst:             nl_attr_find__
        - Src:             'lib/dpif-netlink.c:4275,41'
          Dst:             nl_attr_get_be32
        - Src:             'lib/dpif-netlink.c:4275,27'
          Dst:             pt_ns_type_be
        - Src:             'lib/dpif-netlink.c:4278,19'
          Dst:             nl_attr_find
        - Src:             'lib/dpif-netlink.c:4282,29'
          Dst:             nl_attr_get
        - Src:             'lib/dpif-netlink.c:4285,17'
          Dst:             nl_msg_put_be16
        - Src:             'lib/dpif-netlink.c:4288,9'
          Dst:             nl_msg_end_nested
        - Src:             'lib/dpif-netlink.c:4290,9'
          Dst:             nl_msg_put_unspec
    - functionName:    pt_ns_type_be
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1577
      functionLinenumberEnd: 1578
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - be32_to_be16
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:1578,12'
          Dst:             be32_to_be16
    - functionName:    be32_to_be16
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 135
      functionLinenumberEnd: 135
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_netlink_flow_dump_thread_cast
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1469
      functionLinenumberEnd: 1470
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_netlink_flow_get
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1346
      functionLinenumberEnd: 1349
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dpif_netlink_flow_get__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:1347,12'
          Dst:             dpif_netlink_flow_get__
    - functionName:    dpif_netlink_flow_get__
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1335
      functionLinenumberEnd: 1339
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - bool
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dpif_netlink_flow_transact
        - dpif_netlink_init_flow_get__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:1338,5'
          Dst:             dpif_netlink_init_flow_get__
        - Src:             'lib/dpif-netlink.c:1339,12'
          Dst:             dpif_netlink_flow_transact
    - functionName:    dpif_netlink_flow_transact
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4362
      functionLinenumberEnd: 4387
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          100
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - dpif_netlink_flow_from_ofpbuf
        - dpif_netlink_flow_init
        - dpif_netlink_flow_to_ofpbuf
        - nl_transact
        - ofpbuf_delete
        - ofpbuf_new
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:4366,5'
          Dst:             ovs_ignore
        - Src:             'lib/dpif-netlink.c:4372,19'
          Dst:             ofpbuf_new
        - Src:             'lib/dpif-netlink.c:4373,5'
          Dst:             dpif_netlink_flow_to_ofpbuf
        - Src:             'lib/dpif-netlink.c:4374,13'
          Dst:             nl_transact
        - Src:             'lib/dpif-netlink.c:4375,5'
          Dst:             ofpbuf_delete
        - Src:             'lib/dpif-netlink.c:4379,21'
          Dst:             dpif_netlink_flow_from_ofpbuf
        - Src:             'lib/dpif-netlink.c:4382,13'
          Dst:             dpif_netlink_flow_init
        - Src:             'lib/dpif-netlink.c:4383,13'
          Dst:             ofpbuf_delete
    - functionName:    dpif_netlink_flow_dump_cast
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1414
      functionLinenumberEnd: 1415
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_flow_dump_thread_init
      functionSourceFile: '/src/openvswitch/lib/dpif-provider.h'
      linkageType:     InternalLinkage
      functionLinenumber: 108
      functionLinenumberEnd: 115
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dpif_offload_flow_dump_thread_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-provider.h:114,5'
          Dst:             dpif_offload_flow_dump_thread_create
    - functionName:    dpif_flow_dump_init
      functionSourceFile: '/src/openvswitch/lib/dpif-provider.h'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 94
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          68
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - dpif_offload_flow_dump_create
        - ovs_mutex_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-provider.h:90,5'
          Dst:             ovs_mutex_init
        - Src:             'lib/dpif-provider.h:92,9'
          Dst:             dpif_offload_flow_dump_create
    - functionName:    get_vport_type
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 775
      functionLinenumberEnd: 823
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         28
      ICount:          138
      EdgeCount:       29
      CyclomaticComplexity: 3
      functionsReached:
        - netdev_get_type_from_name
        - vlog_rate_limit
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/dpif-netlink.c:778,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/dpif-netlink.c:780,28'
          Dst:             netdev_get_type_from_name
        - Src:             'lib/dpif-netlink.c:820,5'
          Dst:             vlog_rate_limit
    - functionName:    dpif_netlink_port_get_pid__
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1070
      functionLinenumberEnd: 1088
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          89
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - nl_sock_pid
        - odp_to_u32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:1071,25'
          Dst:             odp_to_u32
        - Src:             'lib/dpif-netlink.c:1084,19'
          Dst:             nl_sock_pid
    - functionName:    dpif_netlink_port_query__
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1020
      functionLinenumberEnd: 1045
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          91
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - dpif_netlink_vport_init
        - dpif_netlink_vport_transact
        - get_vport_type
        - ofpbuf_delete
        - xstrdup
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:1026,5'
          Dst:             dpif_netlink_vport_init
        - Src:             'lib/dpif-netlink.c:1032,13'
          Dst:             dpif_netlink_vport_transact
        - Src:             'lib/dpif-netlink.c:1039,31'
          Dst:             xstrdup
        - Src:             'lib/dpif-netlink.c:1040,39'
          Dst:             get_vport_type
        - Src:             'lib/dpif-netlink.c:1040,31'
          Dst:             xstrdup
        - Src:             'lib/dpif-netlink.c:1043,9'
          Dst:             ofpbuf_delete
    - functionName:    netdev_to_ovs_vport_type
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 827
      functionLinenumberEnd: 853
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         29
      ICount:          140
      EdgeCount:       41
      CyclomaticComplexity: 14
      functionsReached:
        - strcmp
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:828,10'
          Dst:             strcmp
        - Src:             'lib/dpif-netlink.c:828,34'
          Dst:             strcmp
        - Src:             'lib/dpif-netlink.c:830,17'
          Dst:             strcmp
        - Src:             'lib/dpif-netlink.c:832,17'
          Dst:             strcmp
        - Src:             'lib/dpif-netlink.c:834,17'
          Dst:             strcmp
        - Src:             'lib/dpif-netlink.c:836,17'
          Dst:             strcmp
        - Src:             'lib/dpif-netlink.c:838,17'
          Dst:             strcmp
        - Src:             'lib/dpif-netlink.c:840,17'
          Dst:             strcmp
        - Src:             'lib/dpif-netlink.c:842,17'
          Dst:             strcmp
        - Src:             'lib/dpif-netlink.c:844,17'
          Dst:             strcmp
        - Src:             'lib/dpif-netlink.c:846,17'
          Dst:             strcmp
        - Src:             'lib/dpif-netlink.c:848,17'
          Dst:             strcmp
    - functionName:    dpif_netlink_port_add__
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 859
      functionLinenumberEnd: 923
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         39
      ICount:          228
      EdgeCount:       50
      CyclomaticComplexity: 13
      functionsReached:
        - close_nl_sock
        - create_nl_sock
        - dpif_name
        - dpif_netlink_upcall_per_cpu
        - dpif_netlink_vport_init
        - dpif_netlink_vport_transact
        - nl_sock_pid
        - ofpbuf_delete
        - vlog
        - vport_add_channel
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:867,10'
          Dst:             dpif_netlink_upcall_per_cpu
        - Src:             'lib/dpif-netlink.c:869,21'
          Dst:             create_nl_sock
        - Src:             'lib/dpif-netlink.c:875,27'
          Dst:             nl_sock_pid
        - Src:             'lib/dpif-netlink.c:879,5'
          Dst:             dpif_netlink_vport_init
        - Src:             'lib/dpif-netlink.c:889,13'
          Dst:             dpif_netlink_vport_transact
        - Src:             'lib/dpif-netlink.c:894,13'
          Dst:             dpif_name
        - Src:             'lib/dpif-netlink.c:894,13'
          Dst:             vlog
        - Src:             'lib/dpif-netlink.c:898,9'
          Dst:             close_nl_sock
        - Src:             'lib/dpif-netlink.c:902,10'
          Dst:             dpif_netlink_upcall_per_cpu
        - Src:             'lib/dpif-netlink.c:903,17'
          Dst:             vport_add_channel
        - Src:             'lib/dpif-netlink.c:905,13'
          Dst:             dpif_name
        - Src:             'lib/dpif-netlink.c:905,13'
          Dst:             vlog
        - Src:             'lib/dpif-netlink.c:909,13'
          Dst:             dpif_netlink_vport_init
        - Src:             'lib/dpif-netlink.c:913,13'
          Dst:             dpif_netlink_vport_transact
        - Src:             'lib/dpif-netlink.c:914,13'
          Dst:             close_nl_sock
        - Src:             'lib/dpif-netlink.c:920,5'
          Dst:             ofpbuf_delete
    - functionName:    open_dpif
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 405
      functionLinenumberEnd: 419
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          54
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dpif_init
        - fat_rwlock_init
        - xzalloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:408,12'
          Dst:             xzalloc
        - Src:             'lib/dpif-netlink.c:410,5'
          Dst:             fat_rwlock_init
        - Src:             'lib/dpif-netlink.c:412,5'
          Dst:             dpif_init
    - functionName:    dpif_netlink_vport_get
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3991
      functionLinenumberEnd: 3998
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dpif_netlink_vport_init
        - dpif_netlink_vport_transact
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:3994,5'
          Dst:             dpif_netlink_vport_init
        - Src:             'lib/dpif-netlink.c:3998,12'
          Dst:             dpif_netlink_vport_transact
    - functionName:    dpif_netlink_is_internal_device
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3805
      functionLinenumberEnd: 3818
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         16
      ICount:          76
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - dpif_netlink_vport_get
        - ofpbuf_delete
        - ovs_strerror
        - vlog_rate_limit
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink.c:3810,13'
          Dst:             dpif_netlink_vport_get
        - Src:             'lib/dpif-netlink.c:3812,9'
          Dst:             ofpbuf_delete
        - Src:             'lib/dpif-netlink.c:3814,9'
          Dst:             ovs_strerror
        - Src:             'lib/dpif-netlink.c:3814,9'
          Dst:             vlog_rate_limit
    - functionName:    init_this_module_dpif_netlink_rtnl
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink-rtnl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 30
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink-rtnl.c:30,1'
          Dst:             vlog_insert_module
    - functionName:    rtnl_policy_parse
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink-rtnl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 180
      functionLinenumberEnd: 195
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          72
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - nl_attr_get_string
        - nl_parse_nested
        - nl_policy_parse
        - strcmp
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink-rtnl.c:185,10'
          Dst:             nl_policy_parse
        - Src:             'lib/dpif-netlink-rtnl.c:187,13'
          Dst:             nl_parse_nested
        - Src:             'lib/dpif-netlink-rtnl.c:189,19'
          Dst:             nl_attr_get_string
        - Src:             'lib/dpif-netlink-rtnl.c:189,12'
          Dst:             strcmp
        - Src:             'lib/dpif-netlink-rtnl.c:190,13'
          Dst:             nl_parse_nested
    - functionName:    rtnl_transact
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink-rtnl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 148
      functionLinenumberEnd: 160
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - int
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_msg_put_nlmsghdr
        - nl_msg_put_string
        - nl_transact
        - ofpbuf_init
        - ofpbuf_put_zeros
        - ofpbuf_uninit
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink-rtnl.c:152,5'
          Dst:             ofpbuf_init
        - Src:             'lib/dpif-netlink-rtnl.c:153,5'
          Dst:             nl_msg_put_nlmsghdr
        - Src:             'lib/dpif-netlink-rtnl.c:154,5'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/dpif-netlink-rtnl.c:155,5'
          Dst:             nl_msg_put_string
        - Src:             'lib/dpif-netlink-rtnl.c:157,11'
          Dst:             nl_transact
        - Src:             'lib/dpif-netlink-rtnl.c:158,5'
          Dst:             ofpbuf_uninit
    - functionName:    ofpbuf_delete
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 172
      functionLinenumberEnd: 177
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          28
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofpbuf_uninit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:174,9'
          Dst:             ofpbuf_uninit
    - functionName:    dpif_netlink_rtnl_bareudp_verify
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink-rtnl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 265
      functionLinenumberEnd: 278
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          70
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - nl_attr_get_be16
        - rtnl_policy_parse
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink-rtnl.c:269,11'
          Dst:             rtnl_policy_parse
        - Src:             'lib/dpif-netlink-rtnl.c:272,35'
          Dst:             nl_attr_get_be16
        - Src:             'lib/dpif-netlink-rtnl.c:274,20'
          Dst:             nl_attr_get_be16
    - functionName:    dpif_netlink_rtnl_geneve_verify
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink-rtnl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 245
      functionLinenumberEnd: 260
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          74
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - nl_attr_get_be16
        - nl_attr_get_flag
        - nl_attr_get_u8
        - rtnl_policy_parse
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink-rtnl.c:249,11'
          Dst:             rtnl_policy_parse
        - Src:             'lib/dpif-netlink-rtnl.c:252,14'
          Dst:             nl_attr_get_flag
        - Src:             'lib/dpif-netlink-rtnl.c:253,21'
          Dst:             nl_attr_get_u8
        - Src:             'lib/dpif-netlink-rtnl.c:255,20'
          Dst:             nl_attr_get_be16
    - functionName:    dpif_netlink_rtnl_gre_verify
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink-rtnl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 227
      functionLinenumberEnd: 239
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          47
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - nl_attr_get_flag
        - rtnl_policy_parse
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink-rtnl.c:231,11'
          Dst:             rtnl_policy_parse
        - Src:             'lib/dpif-netlink-rtnl.c:234,14'
          Dst:             nl_attr_get_flag
    - functionName:    dpif_netlink_rtnl_vxlan_verify
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink-rtnl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 201
      functionLinenumberEnd: 221
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          130
      EdgeCount:       34
      CyclomaticComplexity: 11
      functionsReached:
        - nl_attr_get_be16
        - nl_attr_get_flag
        - nl_attr_get_u8
        - rtnl_policy_parse
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink-rtnl.c:205,11'
          Dst:             rtnl_policy_parse
        - Src:             'lib/dpif-netlink-rtnl.c:208,18'
          Dst:             nl_attr_get_u8
        - Src:             'lib/dpif-netlink-rtnl.c:209,21'
          Dst:             nl_attr_get_u8
        - Src:             'lib/dpif-netlink-rtnl.c:210,21'
          Dst:             nl_attr_get_u8
        - Src:             'lib/dpif-netlink-rtnl.c:212,20'
          Dst:             nl_attr_get_be16
        - Src:             'lib/dpif-netlink-rtnl.c:214,21'
          Dst:             nl_attr_get_flag
        - Src:             'lib/dpif-netlink-rtnl.c:216,21'
          Dst:             nl_attr_get_flag
    - functionName:    dpif_netlink_rtnl_getlink
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink-rtnl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 171
      functionLinenumberEnd: 172
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - rtnl_transact
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink-rtnl.c:172,12'
          Dst:             rtnl_transact
    - functionName:    ofpbuf_clear
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 250
      functionLinenumberEnd: 253
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rtnl_set_mtu
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink-rtnl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 331
      functionLinenumberEnd: 339
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_msg_put_nlmsghdr
        - nl_msg_put_string
        - nl_msg_put_u32
        - nl_transact
        - ofpbuf_clear
        - ofpbuf_put_zeros
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink-rtnl.c:332,5'
          Dst:             ofpbuf_clear
        - Src:             'lib/dpif-netlink-rtnl.c:333,5'
          Dst:             nl_msg_put_nlmsghdr
        - Src:             'lib/dpif-netlink-rtnl.c:335,5'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/dpif-netlink-rtnl.c:336,5'
          Dst:             nl_msg_put_string
        - Src:             'lib/dpif-netlink-rtnl.c:337,5'
          Dst:             nl_msg_put_u32
        - Src:             'lib/dpif-netlink-rtnl.c:339,12'
          Dst:             nl_transact
    - functionName:    dpif_netlink_rtnl_tunnel_destroy
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink-rtnl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 510
      functionLinenumberEnd: 530
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          85
      EdgeCount:       41
      CyclomaticComplexity: 22
      functionsReached:
        - dpif_netlink_rtnl_destroy
        - netdev_to_ovs_vport_type
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/dpif-netlink-rtnl.c:511,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/dpif-netlink-rtnl.c:511,13'
          Dst:             netdev_to_ovs_vport_type
        - Src:             'lib/dpif-netlink-rtnl.c:519,16'
          Dst:             dpif_netlink_rtnl_destroy
    - functionName:    dpif_netlink_rtnl_destroy
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink-rtnl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 165
      functionLinenumberEnd: 166
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - rtnl_transact
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink-rtnl.c:166,12'
          Dst:             rtnl_transact
    - functionName:    dpif_netlink_rtnl_verify
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink-rtnl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 284
      functionLinenumberEnd: 327
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          136
      EdgeCount:       26
      CyclomaticComplexity: 2
      functionsReached:
        - abort
        - dpif_netlink_rtnl_bareudp_verify
        - dpif_netlink_rtnl_geneve_verify
        - dpif_netlink_rtnl_getlink
        - dpif_netlink_rtnl_gre_verify
        - dpif_netlink_rtnl_vxlan_verify
        - ofpbuf_delete
        - vport_type_to_kind
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/dpif-netlink-rtnl.c:299,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/dpif-netlink-rtnl.c:289,12'
          Dst:             vport_type_to_kind
        - Src:             'lib/dpif-netlink-rtnl.c:294,11'
          Dst:             dpif_netlink_rtnl_getlink
        - Src:             'lib/dpif-netlink-rtnl.c:301,15'
          Dst:             dpif_netlink_rtnl_vxlan_verify
        - Src:             'lib/dpif-netlink-rtnl.c:307,15'
          Dst:             dpif_netlink_rtnl_gre_verify
        - Src:             'lib/dpif-netlink-rtnl.c:310,15'
          Dst:             dpif_netlink_rtnl_geneve_verify
        - Src:             'lib/dpif-netlink-rtnl.c:313,15'
          Dst:             dpif_netlink_rtnl_bareudp_verify
        - Src:             'lib/dpif-netlink-rtnl.c:322,9'
          Dst:             abort
        - Src:             'lib/dpif-netlink-rtnl.c:325,5'
          Dst:             ofpbuf_delete
    - functionName:    vport_type_to_kind
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink-rtnl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 104
      functionLinenumberEnd: 143
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         27
      ICount:          128
      EdgeCount:       29
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/dpif-netlink-rtnl.c:105,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    dpif_netlink_rtnl_create
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink-rtnl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 346
      functionLinenumberEnd: 443
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         50
      ICount:          266
      EdgeCount:       58
      CyclomaticComplexity: 10
      functionsReached:
        - nl_msg_end_nested
        - nl_msg_put_be16
        - nl_msg_put_flag
        - nl_msg_put_nlmsghdr
        - nl_msg_put_string
        - nl_msg_put_u16
        - nl_msg_put_u32
        - nl_msg_put_u8
        - nl_msg_start_nested
        - nl_transact
        - ofpbuf_init
        - ofpbuf_put_zeros
        - ofpbuf_uninit
        - ovs_strerror
        - rtnl_set_mtu
        - vlog_rate_limit
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/dpif-netlink-rtnl.c:372,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/dpif-netlink-rtnl.c:361,5'
          Dst:             ofpbuf_init
        - Src:             'lib/dpif-netlink-rtnl.c:362,5'
          Dst:             nl_msg_put_nlmsghdr
        - Src:             'lib/dpif-netlink-rtnl.c:363,14'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/dpif-netlink-rtnl.c:365,5'
          Dst:             nl_msg_put_string
        - Src:             'lib/dpif-netlink-rtnl.c:366,5'
          Dst:             nl_msg_put_u32
        - Src:             'lib/dpif-netlink-rtnl.c:367,20'
          Dst:             nl_msg_start_nested
        - Src:             'lib/dpif-netlink-rtnl.c:368,5'
          Dst:             nl_msg_put_string
        - Src:             'lib/dpif-netlink-rtnl.c:369,20'
          Dst:             nl_msg_start_nested
        - Src:             'lib/dpif-netlink-rtnl.c:374,9'
          Dst:             nl_msg_put_u8
        - Src:             'lib/dpif-netlink-rtnl.c:375,9'
          Dst:             nl_msg_put_u8
        - Src:             'lib/dpif-netlink-rtnl.c:376,9'
          Dst:             nl_msg_put_u8
        - Src:             'lib/dpif-netlink-rtnl.c:378,13'
          Dst:             nl_msg_put_flag
        - Src:             'lib/dpif-netlink-rtnl.c:381,13'
          Dst:             nl_msg_put_flag
        - Src:             'lib/dpif-netlink-rtnl.c:383,9'
          Dst:             nl_msg_put_be16
        - Src:             'lib/dpif-netlink-rtnl.c:389,9'
          Dst:             nl_msg_put_flag
        - Src:             'lib/dpif-netlink-rtnl.c:392,9'
          Dst:             nl_msg_put_flag
        - Src:             'lib/dpif-netlink-rtnl.c:393,9'
          Dst:             nl_msg_put_u8
        - Src:             'lib/dpif-netlink-rtnl.c:394,9'
          Dst:             nl_msg_put_be16
        - Src:             'lib/dpif-netlink-rtnl.c:397,9'
          Dst:             nl_msg_put_be16
        - Src:             'lib/dpif-netlink-rtnl.c:399,9'
          Dst:             nl_msg_put_u16
        - Src:             'lib/dpif-netlink-rtnl.c:401,9'
          Dst:             nl_msg_put_be16
        - Src:             'lib/dpif-netlink-rtnl.c:403,13'
          Dst:             nl_msg_put_flag
        - Src:             'lib/dpif-netlink-rtnl.c:417,5'
          Dst:             nl_msg_end_nested
        - Src:             'lib/dpif-netlink-rtnl.c:418,5'
          Dst:             nl_msg_end_nested
        - Src:             'lib/dpif-netlink-rtnl.c:420,11'
          Dst:             nl_transact
        - Src:             'lib/dpif-netlink-rtnl.c:428,20'
          Dst:             rtnl_set_mtu
        - Src:             'lib/dpif-netlink-rtnl.c:430,20'
          Dst:             rtnl_set_mtu
        - Src:             'lib/dpif-netlink-rtnl.c:435,13'
          Dst:             ovs_strerror
        - Src:             'lib/dpif-netlink-rtnl.c:435,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-netlink-rtnl.c:441,5'
          Dst:             ofpbuf_uninit
    - functionName:    dpif_netlink_rtnl_tunnel_create
      functionSourceFile: '/src/openvswitch/lib/dpif-netlink-rtnl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 448
      functionLinenumberEnd: 506
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         33
      ICount:          194
      EdgeCount:       43
      CyclomaticComplexity: 12
      functionsReached:
        - dpif_netlink_rtnl_create
        - dpif_netlink_rtnl_destroy
        - dpif_netlink_rtnl_verify
        - netdev_get_tunnel_config
        - netdev_get_type
        - netdev_to_ovs_vport_type
        - netdev_vport_get_dpif_port
        - ovs_strerror
        - vlog_rate_limit
        - vport_type_to_kind
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netlink-rtnl.c:457,37'
          Dst:             netdev_get_type
        - Src:             'lib/dpif-netlink-rtnl.c:457,12'
          Dst:             netdev_to_ovs_vport_type
        - Src:             'lib/dpif-netlink-rtnl.c:458,15'
          Dst:             netdev_get_tunnel_config
        - Src:             'lib/dpif-netlink-rtnl.c:463,12'
          Dst:             vport_type_to_kind
        - Src:             'lib/dpif-netlink-rtnl.c:468,12'
          Dst:             netdev_vport_get_dpif_port
        - Src:             'lib/dpif-netlink-rtnl.c:471,11'
          Dst:             dpif_netlink_rtnl_create
        - Src:             'lib/dpif-netlink-rtnl.c:475,15'
          Dst:             dpif_netlink_rtnl_verify
        - Src:             'lib/dpif-netlink-rtnl.c:479,15'
          Dst:             dpif_netlink_rtnl_destroy
        - Src:             'lib/dpif-netlink-rtnl.c:483,13'
          Dst:             ovs_strerror
        - Src:             'lib/dpif-netlink-rtnl.c:483,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-netlink-rtnl.c:487,15'
          Dst:             dpif_netlink_rtnl_create
        - Src:             'lib/dpif-netlink-rtnl.c:493,11'
          Dst:             dpif_netlink_rtnl_verify
        - Src:             'lib/dpif-netlink-rtnl.c:495,20'
          Dst:             dpif_netlink_rtnl_destroy
        - Src:             'lib/dpif-netlink-rtnl.c:500,13'
          Dst:             ovs_strerror
        - Src:             'lib/dpif-netlink-rtnl.c:500,13'
          Dst:             vlog_rate_limit
    - functionName:    init_this_module_dpif_offload_tc
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33
      functionLinenumberEnd: 33
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc.c:33,1'
          Dst:             vlog_insert_module
    - functionName:    ofpbuf_at
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 183
      functionLinenumberEnd: 189
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:185,9'
          Dst:             ovs_ignore
    - functionName:    nl_attr_next
      functionSourceFile: '/src/openvswitch/lib/netlink.h'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 165
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nl_attr_len_pad
      functionSourceFile: '/src/openvswitch/lib/netlink.h'
      linkageType:     InternalLinkage
      functionLinenumber: 179
      functionLinenumberEnd: 182
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          37
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nl_attr_is_valid
      functionSourceFile: '/src/openvswitch/lib/netlink.h'
      linkageType:     InternalLinkage
      functionLinenumber: 171
      functionLinenumberEnd: 174
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    tc_parse_flow_get
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 616
      functionLinenumberEnd: 657
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         20
      ICount:          154
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - cmap_cursor_advance
        - cmap_cursor_start
        - nl_attr_get
        - nl_attr_get_size
        - ofpbuf_at
        - ofpbuf_put
        - ofpbuf_use_stack
        - tc_match_to_dpif_flow
        - tc_netdev_flow_get
        - vlog
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc.c:631,5'
          Dst:             ofpbuf_use_stack
        - Src:             'lib/dpif-offload-tc.c:633,5'
          Dst:             cmap_cursor_start
        - Src:             'lib/dpif-offload-tc.c:633,5'
          Dst:             cmap_cursor_advance
        - Src:             'lib/dpif-offload-tc.c:634,14'
          Dst:             tc_netdev_flow_get
        - Src:             'lib/dpif-offload-tc.c:645,5'
          Dst:             vlog
        - Src:             'lib/dpif-offload-tc.c:647,5'
          Dst:             ofpbuf_use_stack
        - Src:             'lib/dpif-offload-tc.c:648,5'
          Dst:             ofpbuf_use_stack
        - Src:             'lib/dpif-offload-tc.c:649,5'
          Dst:             ofpbuf_use_stack
        - Src:             'lib/dpif-offload-tc.c:650,5'
          Dst:             tc_match_to_dpif_flow
        - Src:             'lib/dpif-offload-tc.c:652,29'
          Dst:             nl_attr_get
        - Src:             'lib/dpif-offload-tc.c:652,51'
          Dst:             nl_attr_get_size
        - Src:             'lib/dpif-offload-tc.c:652,5'
          Dst:             ofpbuf_put
        - Src:             'lib/dpif-offload-tc.c:653,26'
          Dst:             ofpbuf_at
        - Src:             'lib/dpif-offload-tc.c:654,30'
          Dst:             nl_attr_get_size
    - functionName:    tc_match_to_dpif_flow
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 325
      functionLinenumberEnd: 372
      functionDepth:   0
      returnType:      int
      argCount:        9
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          158
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - nl_attr_get
        - nl_attr_get_size
        - odp_flow_key_from_flow
        - odp_flow_key_from_mask
        - ofpbuf_tail
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc.c:345,21'
          Dst:             ofpbuf_tail
        - Src:             'lib/dpif-offload-tc.c:346,9'
          Dst:             odp_flow_key_from_flow
        - Src:             'lib/dpif-offload-tc.c:351,22'
          Dst:             ofpbuf_tail
        - Src:             'lib/dpif-offload-tc.c:353,9'
          Dst:             odp_flow_key_from_mask
        - Src:             'lib/dpif-offload-tc.c:357,25'
          Dst:             nl_attr_get
        - Src:             'lib/dpif-offload-tc.c:358,29'
          Dst:             nl_attr_get_size
    - functionName:    ofpbuf_tail
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 203
      functionLinenumberEnd: 205
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          56
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:204,5'
          Dst:             ovs_ignore
    - functionName:    tc_parse_flow_put
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 491
      functionLinenumberEnd: 612
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         76
      ICount:          468
      EdgeCount:       100
      CyclomaticComplexity: 26
      functionsReached:
        - dpif_offload_port_mgr_find_by_odp_port
        - dpif_offload_rebalance_policy_enabled
        - dpif_operate
        - flow_get_tunnel_netdev
        - netdev_get_name
        - netdev_set_hw_info
        - nl_attr_get_odp_port
        - nl_attr_is_valid
        - nl_attr_len_pad
        - nl_attr_next
        - nl_attr_type
        - ovs_strerror
        - parse_key_and_mask_to_match
        - tc_netdev_flow_del
        - tc_netdev_flow_put
        - vlog
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc.c:508,11'
          Dst:             parse_key_and_mask_to_match
        - Src:             'lib/dpif-offload-tc.c:515,12'
          Dst:             dpif_offload_port_mgr_find_by_odp_port
        - Src:             'lib/dpif-offload-tc.c:522,5'
          Dst:             nl_attr_is_valid
        - Src:             'lib/dpif-offload-tc.c:523,13'
          Dst:             nl_attr_type
        - Src:             'lib/dpif-offload-tc.c:527,24'
          Dst:             nl_attr_get_odp_port
        - Src:             'lib/dpif-offload-tc.c:528,24'
          Dst:             dpif_offload_port_mgr_find_by_odp_port
        - Src:             'lib/dpif-offload-tc.c:522,5'
          Dst:             nl_attr_len_pad
        - Src:             'lib/dpif-offload-tc.c:522,5'
          Dst:             nl_attr_next
        - Src:             'lib/dpif-offload-tc.c:540,11'
          Dst:             tc_netdev_flow_put
        - Src:             'lib/dpif-offload-tc.c:560,13'
          Dst:             dpif_operate
        - Src:             'lib/dpif-offload-tc.c:563,9'
          Dst:             vlog
        - Src:             'lib/dpif-offload-tc.c:568,30'
          Dst:             dpif_offload_rebalance_policy_enabled
        - Src:             'lib/dpif-offload-tc.c:575,26'
          Dst:             flow_get_tunnel_netdev
        - Src:             'lib/dpif-offload-tc.c:580,13'
          Dst:             netdev_set_hw_info
        - Src:             'lib/dpif-offload-tc.c:583,9'
          Dst:             ovs_strerror
        - Src:             'lib/dpif-offload-tc.c:583,9'
          Dst:             netdev_get_name
        - Src:             'lib/dpif-offload-tc.c:583,9'
          Dst:             netdev_get_name
        - Src:             'lib/dpif-offload-tc.c:583,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-offload-tc.c:595,23'
          Dst:             tc_netdev_flow_del
        - Src:             'lib/dpif-offload-tc.c:604,13'
          Dst:             ovs_strerror
        - Src:             'lib/dpif-offload-tc.c:604,13'
          Dst:             vlog_rate_limit
    - functionName:    dpif_offload_flow_dump_thread_init
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-provider.h'
      linkageType:     InternalLinkage
      functionLinenumber: 85
      functionLinenumberEnd: 87
      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:    tc_flow_dump_cast
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 276
      functionLinenumberEnd: 277
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    tc_advance_provider_dump
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 377
      functionLinenumberEnd: 402
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          89
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc.c:380,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-offload-tc.c:401,5'
          Dst:             ovs_mutex_unlock
    - functionName:    tc_flow_dump_thread_cast
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 283
      functionLinenumberEnd: 284
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_offload_flow_dump_init
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-provider.h'
      linkageType:     InternalLinkage
      functionLinenumber: 72
      functionLinenumberEnd: 75
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          21
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    tc_free_port
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - netdev_close
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc.c:119,5'
          Dst:             netdev_close
    - functionName:    tc_offload_cleanup
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 96
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dpif_offload_set_netdev_offload
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc.c:95,5'
          Dst:             dpif_offload_set_netdev_offload
    - functionName:    json_destroy
      functionSourceFile: '/src/openvswitch/./include/openvswitch/json.h'
      linkageType:     InternalLinkage
      functionLinenumber: 200
      functionLinenumberEnd: 204
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          38
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - json_destroy__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/json.h:202,9'
          Dst:             json_destroy__
    - functionName:    odp_to_u32
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 202
      functionLinenumberEnd: 203
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    tc_offload_enable
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 78
      functionLinenumberEnd: 89
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          90
      EdgeCount:       19
      CyclomaticComplexity: 5
      functionsReached:
        - dpif_offload_set_netdev_offload
        - netdev_get_name
        - tc_netdev_init
        - vlog
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc.c:79,15'
          Dst:             tc_netdev_init
        - Src:             'lib/dpif-offload-tc.c:82,9'
          Dst:             netdev_get_name
        - Src:             'lib/dpif-offload-tc.c:82,9'
          Dst:             vlog
        - Src:             'lib/dpif-offload-tc.c:86,5'
          Dst:             dpif_offload_set_netdev_offload
        - Src:             'lib/dpif-offload-tc.c:87,5'
          Dst:             netdev_get_name
        - Src:             'lib/dpif-offload-tc.c:87,5'
          Dst:             vlog
    - functionName:    ovsthread_once_start
      functionSourceFile: '/src/openvswitch/./include/openvswitch/thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsthread_once_start__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/thread.h:161,12'
          Dst:             ovsthread_once_start__
    - functionName:    dpif_offload_assert_class
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-provider.h'
      linkageType:     InternalLinkage
      functionLinenumber: 390
      functionLinenumberEnd: 392
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-provider.h:391,5'
          Dst:             ovs_ignore
    - functionName:    ovsthread_once_destroy
      functionSourceFile: '/src/openvswitch/./include/openvswitch/thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 166
      functionLinenumberEnd: 168
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_mutex_destroy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/thread.h:167,5'
          Dst:             ovs_mutex_destroy
    - functionName:    tc_offload_cast
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 70
      functionLinenumberEnd: 72
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dpif_offload_assert_class
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc.c:71,5'
          Dst:             dpif_offload_assert_class
    - functionName:    tc_offload_open
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 155
      functionLinenumberEnd: 169
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          90
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - dpif_get_features
        - dpif_offload_init
        - tc_meter_init
        - vlog
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc.c:156,34'
          Dst:             xmalloc
        - Src:             'lib/dpif-offload-tc.c:158,5'
          Dst:             dpif_offload_init
        - Src:             'lib/dpif-offload-tc.c:160,36'
          Dst:             dpif_get_features
        - Src:             'lib/dpif-offload-tc.c:163,5'
          Dst:             vlog
        - Src:             'lib/dpif-offload-tc.c:166,5'
          Dst:             tc_meter_init
    - functionName:    tc_offload_close
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 174
      functionLinenumberEnd: 185
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          66
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - cmap_cursor_advance
        - cmap_cursor_start
        - dpif_offload_destroy
        - ovsthread_once_destroy
        - tc_offload_cast
        - tc_port_del
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc.c:175,34'
          Dst:             tc_offload_cast
        - Src:             'lib/dpif-offload-tc.c:178,5'
          Dst:             cmap_cursor_start
        - Src:             'lib/dpif-offload-tc.c:178,5'
          Dst:             cmap_cursor_advance
        - Src:             'lib/dpif-offload-tc.c:179,9'
          Dst:             tc_port_del
        - Src:             'lib/dpif-offload-tc.c:182,5'
          Dst:             ovsthread_once_destroy
        - Src:             'lib/dpif-offload-tc.c:183,5'
          Dst:             dpif_offload_destroy
    - functionName:    tc_offload_set_config
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 190
      functionLinenumberEnd: 207
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          82
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - cmap_cursor_advance
        - cmap_cursor_start
        - ovsthread_once_done
        - ovsthread_once_start
        - smap_get_bool
        - smap_get_def
        - tc_offload_cast
        - tc_offload_enable
        - tc_set_policy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc.c:191,34'
          Dst:             tc_offload_cast
        - Src:             'lib/dpif-offload-tc.c:193,9'
          Dst:             smap_get_bool
        - Src:             'lib/dpif-offload-tc.c:194,13'
          Dst:             ovsthread_once_start
        - Src:             'lib/dpif-offload-tc.c:197,27'
          Dst:             smap_get_def
        - Src:             'lib/dpif-offload-tc.c:197,13'
          Dst:             tc_set_policy
        - Src:             'lib/dpif-offload-tc.c:200,13'
          Dst:             cmap_cursor_start
        - Src:             'lib/dpif-offload-tc.c:200,13'
          Dst:             cmap_cursor_advance
        - Src:             'lib/dpif-offload-tc.c:201,17'
          Dst:             tc_offload_enable
        - Src:             'lib/dpif-offload-tc.c:204,13'
          Dst:             ovsthread_once_done
    - functionName:    tc_offload_get_debug
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 212
      functionLinenumberEnd: 243
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          157
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - cmap_cursor_advance
        - cmap_cursor_start
        - ds_put_format
        - json_destroy
        - json_integer_create
        - json_object_create
        - json_object_is_empty
        - json_object_put
        - netdev_get_name
        - odp_to_u32
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc.c:214,35'
          Dst:             json_object_create
        - Src:             'lib/dpif-offload-tc.c:217,9'
          Dst:             cmap_cursor_start
        - Src:             'lib/dpif-offload-tc.c:217,9'
          Dst:             cmap_cursor_advance
        - Src:             'lib/dpif-offload-tc.c:218,38'
          Dst:             json_object_create
        - Src:             'lib/dpif-offload-tc.c:221,49'
          Dst:             odp_to_u32
        - Src:             'lib/dpif-offload-tc.c:221,29'
          Dst:             json_integer_create
        - Src:             'lib/dpif-offload-tc.c:220,13'
          Dst:             json_object_put
        - Src:             'lib/dpif-offload-tc.c:223,29'
          Dst:             json_integer_create
        - Src:             'lib/dpif-offload-tc.c:222,13'
          Dst:             json_object_put
        - Src:             'lib/dpif-offload-tc.c:225,41'
          Dst:             netdev_get_name
        - Src:             'lib/dpif-offload-tc.c:225,13'
          Dst:             json_object_put
        - Src:             'lib/dpif-offload-tc.c:229,14'
          Dst:             json_object_is_empty
        - Src:             'lib/dpif-offload-tc.c:230,13'
          Dst:             json_object_put
        - Src:             'lib/dpif-offload-tc.c:232,13'
          Dst:             json_destroy
        - Src:             'lib/dpif-offload-tc.c:237,9'
          Dst:             cmap_cursor_start
        - Src:             'lib/dpif-offload-tc.c:237,9'
          Dst:             cmap_cursor_advance
        - Src:             'lib/dpif-offload-tc.c:239,27'
          Dst:             netdev_get_name
        - Src:             'lib/dpif-offload-tc.c:238,13'
          Dst:             ds_put_format
    - functionName:    tc_can_offload
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 248
      functionLinenumberEnd: 256
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          64
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - netdev_get_dpif_type
        - netdev_get_name
        - netdev_vport_is_vport_class
        - strcmp
        - vlog
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc.c:249,9'
          Dst:             netdev_vport_is_vport_class
        - Src:             'lib/dpif-offload-tc.c:250,16'
          Dst:             netdev_get_dpif_type
        - Src:             'lib/dpif-offload-tc.c:250,9'
          Dst:             strcmp
        - Src:             'lib/dpif-offload-tc.c:251,9'
          Dst:             netdev_get_name
        - Src:             'lib/dpif-offload-tc.c:251,9'
          Dst:             vlog
    - functionName:    tc_port_add
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 102
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          50
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - dpif_offload_enabled
        - dpif_offload_port_mgr_add
        - tc_offload_enable
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc.c:103,38'
          Dst:             xmalloc
        - Src:             'lib/dpif-offload-tc.c:105,9'
          Dst:             dpif_offload_port_mgr_add
        - Src:             'lib/dpif-offload-tc.c:106,13'
          Dst:             dpif_offload_enabled
        - Src:             'lib/dpif-offload-tc.c:107,20'
          Dst:             tc_offload_enable
    - functionName:    tc_port_del
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 125
      functionLinenumberEnd: 136
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          47
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - dpif_offload_enabled
        - dpif_offload_port_mgr_remove
        - ovsrcu_postpone__
        - tc_free_port
        - tc_offload_cleanup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc.c:129,12'
          Dst:             dpif_offload_port_mgr_remove
        - Src:             'lib/dpif-offload-tc.c:131,13'
          Dst:             dpif_offload_enabled
        - Src:             'lib/dpif-offload-tc.c:132,19'
          Dst:             tc_offload_cleanup
        - Src:             'lib/dpif-offload-tc.c:134,9'
          Dst:             ovsrcu_postpone__
        - Src:             'lib/dpif-offload-tc.c:134,9'
          Dst:             tc_free_port
    - functionName:    tc_flow_flush
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 260
      functionLinenumberEnd: 271
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          79
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - cmap_cursor_advance
        - cmap_cursor_start
        - tc_netdev_flow_flush
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc.c:264,5'
          Dst:             cmap_cursor_start
        - Src:             'lib/dpif-offload-tc.c:264,5'
          Dst:             cmap_cursor_advance
        - Src:             'lib/dpif-offload-tc.c:265,18'
          Dst:             tc_netdev_flow_flush
    - functionName:    tc_flow_dump_create
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 289
      functionLinenumberEnd: 316
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          123
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - cmap_cursor_advance
        - cmap_cursor_start
        - dpif_offload_flow_dump_init
        - dpif_offload_port_mgr_port_count
        - ovs_mutex_init
        - tc_netdev_flow_dump_create
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc.c:295,18'
          Dst:             dpif_offload_port_mgr_port_count
        - Src:             'lib/dpif-offload-tc.c:297,12'
          Dst:             xmalloc
        - Src:             'lib/dpif-offload-tc.c:300,5'
          Dst:             dpif_offload_flow_dump_init
        - Src:             'lib/dpif-offload-tc.c:302,5'
          Dst:             cmap_cursor_start
        - Src:             'lib/dpif-offload-tc.c:302,5'
          Dst:             cmap_cursor_advance
        - Src:             'lib/dpif-offload-tc.c:306,13'
          Dst:             tc_netdev_flow_dump_create
        - Src:             'lib/dpif-offload-tc.c:315,5'
          Dst:             ovs_mutex_init
    - functionName:    tc_flow_dump_next
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 407
      functionLinenumberEnd: 443
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          153
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - ofpbuf_use_stack
        - tc_advance_provider_dump
        - tc_flow_dump_thread_cast
        - tc_match_to_dpif_flow
        - tc_netdev_flow_dump_next
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc.c:408,42'
          Dst:             tc_flow_dump_thread_cast
        - Src:             'lib/dpif-offload-tc.c:429,9'
          Dst:             ofpbuf_use_stack
        - Src:             'lib/dpif-offload-tc.c:430,9'
          Dst:             ofpbuf_use_stack
        - Src:             'lib/dpif-offload-tc.c:431,9'
          Dst:             ofpbuf_use_stack
        - Src:             'lib/dpif-offload-tc.c:432,20'
          Dst:             tc_netdev_flow_dump_next
        - Src:             'lib/dpif-offload-tc.c:436,13'
          Dst:             tc_match_to_dpif_flow
        - Src:             'lib/dpif-offload-tc.c:440,13'
          Dst:             tc_advance_provider_dump
    - functionName:    tc_flow_dump_destroy
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 448
      functionLinenumberEnd: 462
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          81
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - ovs_mutex_destroy
        - tc_flow_dump_cast
        - tc_netdev_flow_dump_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc.c:449,33'
          Dst:             tc_flow_dump_cast
        - Src:             'lib/dpif-offload-tc.c:454,18'
          Dst:             tc_netdev_flow_dump_destroy
        - Src:             'lib/dpif-offload-tc.c:460,5'
          Dst:             ovs_mutex_destroy
    - functionName:    tc_flow_dump_thread_create
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 467
      functionLinenumberEnd: 476
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          45
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dpif_offload_flow_dump_thread_init
        - ofpbuf_init
        - tc_flow_dump_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc.c:470,14'
          Dst:             xmalloc
        - Src:             'lib/dpif-offload-tc.c:471,5'
          Dst:             dpif_offload_flow_dump_thread_init
        - Src:             'lib/dpif-offload-tc.c:472,20'
          Dst:             tc_flow_dump_cast
        - Src:             'lib/dpif-offload-tc.c:475,5'
          Dst:             ofpbuf_init
    - functionName:    tc_flow_dump_thread_destroy
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 481
      functionLinenumberEnd: 486
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpbuf_uninit
        - tc_flow_dump_thread_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc.c:482,42'
          Dst:             tc_flow_dump_thread_cast
        - Src:             'lib/dpif-offload-tc.c:484,5'
          Dst:             ofpbuf_uninit
    - functionName:    tc_operate
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 662
      functionLinenumberEnd: 715
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          163
      EdgeCount:       32
      CyclomaticComplexity: 8
      functionsReached:
        - tc_netdev_flow_del
        - tc_offload_cast
        - tc_parse_flow_get
        - tc_parse_flow_put
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib/dpif-offload-tc.c:673,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/dpif-offload-tc.c:663,34'
          Dst:             tc_offload_cast
        - Src:             'lib/dpif-offload-tc.c:681,21'
          Dst:             tc_parse_flow_put
        - Src:             'lib/dpif-offload-tc.c:691,21'
          Dst:             tc_netdev_flow_del
        - Src:             'lib/dpif-offload-tc.c:701,21'
          Dst:             tc_parse_flow_get
    - functionName:    tc_get_netdev
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 141
      functionLinenumberEnd: 150
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dpif_offload_port_mgr_find_by_odp_port
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc.c:144,12'
          Dst:             dpif_offload_port_mgr_find_by_odp_port
    - functionName:    tc_get_port_id_by_ifindex
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 719
      functionLinenumberEnd: 727
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dpif_offload_port_mgr_find_by_ifindex
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc.c:722,12'
          Dst:             dpif_offload_port_mgr_find_by_ifindex
    - functionName:    init_this_module_dpif_offload_tc_netdev
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 47
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc-netdev.c:47,1'
          Dst:             vlog_insert_module
    - functionName:    meter_id_find_locked
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3257
      functionLinenumberEnd: 3269
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          71
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hash_int
        - hmap_first_with_hash
        - hmap_next_with_hash
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc-netdev.c:3259,19'
          Dst:             hash_int
        - Src:             'lib/dpif-offload-tc-netdev.c:3261,5'
          Dst:             hmap_first_with_hash
        - Src:             'lib/dpif-offload-tc-netdev.c:3261,5'
          Dst:             hmap_next_with_hash
    - functionName:    hash_int
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 408
      functionLinenumberEnd: 409
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_2words
      functionUses:    13
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:409,12'
          Dst:             hash_2words
    - functionName:    hmap_first_with_hash
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 360
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next_with_hash__
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:360,12'
          Dst:             hmap_next_with_hash__
    - functionName:    hmap_next_with_hash
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 395
      functionLinenumberEnd: 396
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next_with_hash__
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:396,12'
          Dst:             hmap_next_with_hash__
    - functionName:    hmap_next_with_hash__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 348
      functionLinenumberEnd: 352
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          40
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_2words
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 153
      functionLinenumberEnd: 154
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_add
        - hash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:154,33'
          Dst:             hash_add
        - Src:             'lib/hash.h:154,24'
          Dst:             hash_add
        - Src:             'lib/hash.h:154,12'
          Dst:             hash_finish
    - functionName:    hash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 108
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_add
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:109,12'
          Dst:             mhash_add
    - functionName:    hash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:119,12'
          Dst:             mhash_finish
    - functionName:    mhash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_rot
        - mhash_add__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:78,12'
          Dst:             mhash_add__
        - Src:             'lib/hash.h:79,12'
          Dst:             hash_rot
    - functionName:    mhash_add__
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hash_rot
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:71,12'
          Dst:             hash_rot
    - functionName:    hash_rot
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 32
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    tc_get_policer_action_ids
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3084
      functionLinenumberEnd: 3120
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          115
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - hash_int
        - hmap_insert_at
        - nl_dump_done
        - nl_dump_next
        - ofpbuf_init
        - ofpbuf_uninit
        - parse_netlink_to_tc_policer
        - tc_dump_tc_action_start
        - xzalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc-netdev.c:3092,12'
          Dst:             xzalloc
        - Src:             'lib/dpif-offload-tc-netdev.c:3093,21'
          Dst:             xzalloc
        - Src:             'lib/dpif-offload-tc-netdev.c:3095,5'
          Dst:             ofpbuf_init
        - Src:             'lib/dpif-offload-tc-netdev.c:3096,5'
          Dst:             tc_dump_tc_action_start
        - Src:             'lib/dpif-offload-tc-netdev.c:3098,12'
          Dst:             nl_dump_next
        - Src:             'lib/dpif-offload-tc-netdev.c:3100,13'
          Dst:             parse_netlink_to_tc_policer
        - Src:             'lib/dpif-offload-tc-netdev.c:3108,28'
          Dst:             xzalloc
        - Src:             'lib/dpif-offload-tc-netdev.c:3110,20'
          Dst:             hash_int
        - Src:             'lib/dpif-offload-tc-netdev.c:3111,13'
          Dst:             hmap_insert_at
        - Src:             'lib/dpif-offload-tc-netdev.c:3115,11'
          Dst:             nl_dump_done
        - Src:             'lib/dpif-offload-tc-netdev.c:3116,5'
          Dst:             ofpbuf_uninit
    - functionName:    hmap_insert_at
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 306
      functionLinenumberEnd: 311
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_expand_at
        - hmap_insert_fast
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:307,5'
          Dst:             hmap_insert_fast
        - Src:             './include/openvswitch/hmap.h:309,9'
          Dst:             hmap_expand_at
    - functionName:    hmap_insert_fast
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 289
      functionLinenumberEnd: 295
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          38
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    probe_insert_ct_state_rule
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2874
      functionLinenumberEnd: 2886
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - short
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htons
        - tc_make_tcf_id
        - tc_replace_flower
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc-netdev.c:2882,27'
          Dst:             htons
        - Src:             'lib/dpif-offload-tc-netdev.c:2885,11'
          Dst:             tc_make_tcf_id
        - Src:             'lib/dpif-offload-tc-netdev.c:2886,12'
          Dst:             tc_replace_flower
    - functionName:    tc_make_tcf_id
      functionSourceFile: '/src/openvswitch/lib/tc.h'
      linkageType:     InternalLinkage
      functionLinenumber: 343
      functionLinenumberEnd: 351
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - short
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          30
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    10
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_pop_helper__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 226
      functionLinenumberEnd: 238
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          66
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - hmap_remove
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:232,13'
          Dst:             hmap_remove
    - functionName:    hmap_remove
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 317
      functionLinenumberEnd: 324
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          48
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_chains_from_netdev
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 502
      functionLinenumberEnd: 534
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          91
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - hash_int
        - hmap_insert_at
        - netdev_close
        - netdev_ref
        - nl_dump_done
        - nl_dump_next
        - ofpbuf_init
        - ofpbuf_uninit
        - parse_netlink_to_tc_chain
        - tc_dump_tc_chain_start
        - xzalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc-netdev.c:510,12'
          Dst:             xzalloc
        - Src:             'lib/dpif-offload-tc-netdev.c:511,21'
          Dst:             xzalloc
        - Src:             'lib/dpif-offload-tc-netdev.c:512,20'
          Dst:             netdev_ref
        - Src:             'lib/dpif-offload-tc-netdev.c:514,5'
          Dst:             ofpbuf_init
        - Src:             'lib/dpif-offload-tc-netdev.c:515,5'
          Dst:             tc_dump_tc_chain_start
        - Src:             'lib/dpif-offload-tc-netdev.c:517,12'
          Dst:             nl_dump_next
        - Src:             'lib/dpif-offload-tc-netdev.c:518,13'
          Dst:             parse_netlink_to_tc_chain
        - Src:             'lib/dpif-offload-tc-netdev.c:522,22'
          Dst:             xzalloc
        - Src:             'lib/dpif-offload-tc-netdev.c:524,16'
          Dst:             hash_int
        - Src:             'lib/dpif-offload-tc-netdev.c:525,9'
          Dst:             hmap_insert_at
        - Src:             'lib/dpif-offload-tc-netdev.c:528,11'
          Dst:             nl_dump_done
        - Src:             'lib/dpif-offload-tc-netdev.c:529,5'
          Dst:             ofpbuf_uninit
        - Src:             'lib/dpif-offload-tc-netdev.c:530,5'
          Dst:             netdev_close
    - functionName:    get_next_available_prio
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 417
      functionLinenumberEnd: 437
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         17
      ICount:          82
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - htons
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc-netdev.c:421,25'
          Dst:             htons
        - Src:             'lib/dpif-offload-tc-netdev.c:423,32'
          Dst:             htons
        - Src:             'lib/dpif-offload-tc-netdev.c:425,32'
          Dst:             htons
    - functionName:    del_ufid_tc_mapping
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 260
      functionLinenumberEnd: 264
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - del_ufid_tc_mapping_unlocked
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc-netdev.c:261,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-offload-tc-netdev.c:262,5'
          Dst:             del_ufid_tc_mapping_unlocked
        - Src:             'lib/dpif-offload-tc-netdev.c:263,5'
          Dst:             ovs_mutex_unlock
    - functionName:    del_ufid_tc_mapping_unlocked
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 230
      functionLinenumberEnd: 255
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         19
      ICount:          114
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - ccmap_dec
        - hash_bytes
        - hmap_first_with_hash
        - hmap_next_with_hash
        - hmap_remove
        - netdev_close
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovs_u128_equals
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc-netdev.c:231,24'
          Dst:             hash_bytes
        - Src:             'lib/dpif-offload-tc-netdev.c:234,5'
          Dst:             hmap_first_with_hash
        - Src:             'lib/dpif-offload-tc-netdev.c:235,13'
          Dst:             ovs_u128_equals
        - Src:             'lib/dpif-offload-tc-netdev.c:234,5'
          Dst:             hmap_next_with_hash
        - Src:             'lib/dpif-offload-tc-netdev.c:244,5'
          Dst:             hmap_remove
        - Src:             'lib/dpif-offload-tc-netdev.c:245,5'
          Dst:             hmap_remove
        - Src:             'lib/dpif-offload-tc-netdev.c:246,5'
          Dst:             netdev_close
        - Src:             'lib/dpif-offload-tc-netdev.c:249,9'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-offload-tc-netdev.c:250,9'
          Dst:             ccmap_dec
        - Src:             'lib/dpif-offload-tc-netdev.c:251,9'
          Dst:             ovs_mutex_unlock
    - functionName:    ovs_u128_equals
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 481
      functionLinenumberEnd: 482
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          37
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    parse_put_flow_nat_action
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1436
      functionLinenumberEnd: 1489
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          204
      EdgeCount:       23
      CyclomaticComplexity: 4
      functionsReached:
        - htons
        - nl_attr_get_be32
        - nl_attr_get_in6_addr
        - nl_attr_get_size
        - nl_attr_get_u16
        - nl_attr_len_pad
        - nl_attr_next
        - nl_attr_type
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/dpif-offload-tc-netdev.c:1442,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/dpif-offload-tc-netdev.c:1442,17'
          Dst:             nl_attr_type
        - Src:             'lib/dpif-offload-tc-netdev.c:1452,21'
          Dst:             nl_attr_get_size
        - Src:             'lib/dpif-offload-tc-netdev.c:1453,37'
          Dst:             nl_attr_get_be32
        - Src:             'lib/dpif-offload-tc-netdev.c:1458,44'
          Dst:             nl_attr_get_in6_addr
        - Src:             'lib/dpif-offload-tc-netdev.c:1466,21'
          Dst:             nl_attr_get_size
        - Src:             'lib/dpif-offload-tc-netdev.c:1467,37'
          Dst:             nl_attr_get_be32
        - Src:             'lib/dpif-offload-tc-netdev.c:1472,44'
          Dst:             nl_attr_get_in6_addr
        - Src:             'lib/dpif-offload-tc-netdev.c:1480,51'
          Dst:             nl_attr_get_u16
        - Src:             'lib/dpif-offload-tc-netdev.c:1480,45'
          Dst:             htons
        - Src:             'lib/dpif-offload-tc-netdev.c:1484,51'
          Dst:             nl_attr_get_u16
        - Src:             'lib/dpif-offload-tc-netdev.c:1484,45'
          Dst:             htons
        - Src:             'lib/dpif-offload-tc-netdev.c:1441,5'
          Dst:             nl_attr_len_pad
        - Src:             'lib/dpif-offload-tc-netdev.c:1441,5'
          Dst:             nl_attr_next
    - functionName:    nl_attr_len_pad
      functionSourceFile: '/src/openvswitch/lib/netlink.h'
      linkageType:     InternalLinkage
      functionLinenumber: 179
      functionLinenumberEnd: 182
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          37
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nl_attr_next
      functionSourceFile: '/src/openvswitch/lib/netlink.h'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 165
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    tc_will_add_l4_checksum
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1569
      functionLinenumberEnd: 1585
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          66
      EdgeCount:       27
      CyclomaticComplexity: 14
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/dpif-offload-tc-netdev.c:1570,5'
          Branch Sides:    []
        - Branch String:   'lib/dpif-offload-tc-netdev.c:1575,9'
          Branch Sides:    []
      Callsites:       []
    - functionName:    parse_mpls_set_action
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1419
      functionLinenumberEnd: 1429
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          61
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mpls_lse_to_bos
        - mpls_lse_to_label
        - mpls_lse_to_tc
        - mpls_lse_to_ttl
        - nl_attr_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc-netdev.c:1420,47'
          Dst:             nl_attr_get
        - Src:             'lib/dpif-offload-tc-netdev.c:1422,30'
          Dst:             mpls_lse_to_label
        - Src:             'lib/dpif-offload-tc-netdev.c:1423,27'
          Dst:             mpls_lse_to_tc
        - Src:             'lib/dpif-offload-tc-netdev.c:1424,28'
          Dst:             mpls_lse_to_ttl
        - Src:             'lib/dpif-offload-tc-netdev.c:1425,28'
          Dst:             mpls_lse_to_bos
    - functionName:    mpls_lse_to_label
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 568
      functionLinenumberEnd: 569
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohl
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:569,13'
          Dst:             ntohl
    - functionName:    mpls_lse_to_tc
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 576
      functionLinenumberEnd: 577
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohl
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:577,13'
          Dst:             ntohl
    - functionName:    mpls_lse_to_ttl
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 584
      functionLinenumberEnd: 585
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohl
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:585,13'
          Dst:             ntohl
    - functionName:    mpls_lse_to_bos
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 624
      functionLinenumberEnd: 625
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:625,24'
          Dst:             htonl
    - functionName:    parse_check_pkt_len_action
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2063
      functionLinenumberEnd: 2163
      functionDepth:   0
      returnType:      int
      argCount:        9
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         48
      ICount:          355
      EdgeCount:       63
      CyclomaticComplexity: 17
      functionsReached:
        - netdev_tc_parse_nl_actions
        - nl_attr_get
        - nl_attr_get_size
        - nl_attr_get_u16
        - nl_parse_nested
        - vlog
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc-netdev.c:2077,10'
          Dst:             nl_parse_nested
        - Src:             'lib/dpif-offload-tc-netdev.c:2078,9'
          Dst:             vlog
        - Src:             'lib/dpif-offload-tc-netdev.c:2084,9'
          Dst:             vlog
        - Src:             'lib/dpif-offload-tc-netdev.c:2088,15'
          Dst:             nl_attr_get_u16
        - Src:             'lib/dpif-offload-tc-netdev.c:2100,38'
          Dst:             nl_attr_get
        - Src:             'lib/dpif-offload-tc-netdev.c:2101,38'
          Dst:             nl_attr_get_size
        - Src:             'lib/dpif-offload-tc-netdev.c:2099,11'
          Dst:             netdev_tc_parse_nl_actions
        - Src:             'lib/dpif-offload-tc-netdev.c:2116,38'
          Dst:             nl_attr_get
        - Src:             'lib/dpif-offload-tc-netdev.c:2117,38'
          Dst:             nl_attr_get_size
        - Src:             'lib/dpif-offload-tc-netdev.c:2115,11'
          Dst:             netdev_tc_parse_nl_actions
    - functionName:    netdev_tc_parse_nl_actions
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2172
      functionLinenumberEnd: 2313
      functionDepth:   0
      returnType:      int
      argCount:        9
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         95
      ICount:          685
      EdgeCount:       125
      CyclomaticComplexity: 32
      functionsReached:
        - dpif_offload_get_netdev_by_port_id
        - dpif_offload_netdev_same_offload
        - is_internal_port
        - meter_id_lookup
        - mpls_lse_to_bos
        - mpls_lse_to_label
        - mpls_lse_to_tc
        - mpls_lse_to_ttl
        - netdev_get_ifindex
        - netdev_get_name
        - netdev_get_type
        - nl_attr_get
        - nl_attr_get_be16
        - nl_attr_get_odp_port
        - nl_attr_get_size
        - nl_attr_get_u32
        - nl_attr_is_valid
        - nl_attr_len_pad
        - nl_attr_next
        - nl_attr_type
        - parse_check_pkt_len_action
        - parse_put_flow_ct_action
        - parse_put_flow_set_action
        - parse_put_flow_set_masked_action
        - vlan_tci_to_pcp
        - vlan_tci_to_vid
        - vlog_rate_limit
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc-netdev.c:2177,5'
          Dst:             nl_attr_is_valid
        - Src:             'lib/dpif-offload-tc-netdev.c:2182,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-offload-tc-netdev.c:2188,13'
          Dst:             nl_attr_type
        - Src:             'lib/dpif-offload-tc-netdev.c:2189,31'
          Dst:             nl_attr_get_odp_port
        - Src:             'lib/dpif-offload-tc-netdev.c:2191,17'
          Dst:             dpif_offload_get_netdev_by_port_id
        - Src:             'lib/dpif-offload-tc-netdev.c:2194,17'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-offload-tc-netdev.c:2199,18'
          Dst:             dpif_offload_netdev_same_offload
        - Src:             'lib/dpif-offload-tc-netdev.c:2200,17'
          Dst:             netdev_get_name
        - Src:             'lib/dpif-offload-tc-netdev.c:2200,17'
          Dst:             netdev_get_name
        - Src:             'lib/dpif-offload-tc-netdev.c:2200,17'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-offload-tc-netdev.c:2207,39'
          Dst:             netdev_get_ifindex
        - Src:             'lib/dpif-offload-tc-netdev.c:2209,17'
          Dst:             netdev_get_name
        - Src:             'lib/dpif-offload-tc-netdev.c:2209,17'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-offload-tc-netdev.c:2215,52'
          Dst:             netdev_get_type
        - Src:             'lib/dpif-offload-tc-netdev.c:2215,35'
          Dst:             is_internal_port
        - Src:             'lib/dpif-offload-tc-netdev.c:2218,20'
          Dst:             nl_attr_type
        - Src:             'lib/dpif-offload-tc-netdev.c:2219,60'
          Dst:             nl_attr_get
        - Src:             'lib/dpif-offload-tc-netdev.c:2222,41'
          Dst:             vlan_tci_to_vid
        - Src:             'lib/dpif-offload-tc-netdev.c:2223,43'
          Dst:             vlan_tci_to_pcp
        - Src:             'lib/dpif-offload-tc-netdev.c:2226,20'
          Dst:             nl_attr_type
        - Src:             'lib/dpif-offload-tc-netdev.c:2229,20'
          Dst:             nl_attr_type
        - Src:             'lib/dpif-offload-tc-netdev.c:2230,60'
          Dst:             nl_attr_get
        - Src:             'lib/dpif-offload-tc-netdev.c:2233,34'
          Dst:             mpls_lse_to_label
        - Src:             'lib/dpif-offload-tc-netdev.c:2234,31'
          Dst:             mpls_lse_to_tc
        - Src:             'lib/dpif-offload-tc-netdev.c:2235,32'
          Dst:             mpls_lse_to_ttl
        - Src:             'lib/dpif-offload-tc-netdev.c:2236,32'
          Dst:             mpls_lse_to_bos
        - Src:             'lib/dpif-offload-tc-netdev.c:2239,20'
          Dst:             nl_attr_type
        - Src:             'lib/dpif-offload-tc-netdev.c:2240,34'
          Dst:             nl_attr_get_be16
        - Src:             'lib/dpif-offload-tc-netdev.c:2243,20'
          Dst:             nl_attr_type
        - Src:             'lib/dpif-offload-tc-netdev.c:2244,40'
          Dst:             nl_attr_get
        - Src:             'lib/dpif-offload-tc-netdev.c:2245,36'
          Dst:             nl_attr_get_size
        - Src:             'lib/dpif-offload-tc-netdev.c:2247,19'
          Dst:             parse_put_flow_set_action
        - Src:             'lib/dpif-offload-tc-netdev.c:2251,20'
          Dst:             nl_attr_type
        - Src:             'lib/dpif-offload-tc-netdev.c:2252,40'
          Dst:             nl_attr_get
        - Src:             'lib/dpif-offload-tc-netdev.c:2253,36'
          Dst:             nl_attr_get_size
        - Src:             'lib/dpif-offload-tc-netdev.c:2255,19'
          Dst:             parse_put_flow_set_masked_action
        - Src:             'lib/dpif-offload-tc-netdev.c:2260,20'
          Dst:             nl_attr_type
        - Src:             'lib/dpif-offload-tc-netdev.c:2261,39'
          Dst:             nl_attr_get
        - Src:             'lib/dpif-offload-tc-netdev.c:2262,35'
          Dst:             nl_attr_get_size
        - Src:             'lib/dpif-offload-tc-netdev.c:2268,19'
          Dst:             parse_put_flow_ct_action
        - Src:             'lib/dpif-offload-tc-netdev.c:2272,20'
          Dst:             nl_attr_type
        - Src:             'lib/dpif-offload-tc-netdev.c:2276,20'
          Dst:             nl_attr_type
        - Src:             'lib/dpif-offload-tc-netdev.c:2278,29'
          Dst:             nl_attr_get_u32
        - Src:             'lib/dpif-offload-tc-netdev.c:2281,20'
          Dst:             nl_attr_type
        - Src:             'lib/dpif-offload-tc-netdev.c:2285,20'
          Dst:             nl_attr_type
        - Src:             'lib/dpif-offload-tc-netdev.c:2288,24'
          Dst:             nl_attr_get_u32
        - Src:             'lib/dpif-offload-tc-netdev.c:2289,17'
          Dst:             meter_id_lookup
        - Src:             'lib/dpif-offload-tc-netdev.c:2295,20'
          Dst:             nl_attr_type
        - Src:             'lib/dpif-offload-tc-netdev.c:2298,46'
          Dst:             nl_attr_len_pad
        - Src:             'lib/dpif-offload-tc-netdev.c:2296,19'
          Dst:             parse_check_pkt_len_action
        - Src:             'lib/dpif-offload-tc-netdev.c:2307,13'
          Dst:             nl_attr_type
        - Src:             'lib/dpif-offload-tc-netdev.c:2307,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-offload-tc-netdev.c:2177,5'
          Dst:             nl_attr_len_pad
        - Src:             'lib/dpif-offload-tc-netdev.c:2177,5'
          Dst:             nl_attr_next
    - functionName:    nl_attr_is_valid
      functionSourceFile: '/src/openvswitch/lib/netlink.h'
      linkageType:     InternalLinkage
      functionLinenumber: 171
      functionLinenumberEnd: 174
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    is_internal_port
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 116
      functionLinenumberEnd: 117
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - strcmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc-netdev.c:117,13'
          Dst:             strcmp
    - functionName:    vlan_tci_to_vid
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 507
      functionLinenumberEnd: 508
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohs
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:508,13'
          Dst:             ntohs
    - functionName:    vlan_tci_to_pcp
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 515
      functionLinenumberEnd: 516
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohs
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:516,13'
          Dst:             ntohs
    - functionName:    parse_put_flow_set_action
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1665
      functionLinenumberEnd: 1773
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         49
      ICount:          369
      EdgeCount:       57
      CyclomaticComplexity: 10
      functionsReached:
        - nl_attr_get
        - nl_attr_get_be16
        - nl_attr_get_be32
        - nl_attr_get_be64
        - nl_attr_get_in6_addr
        - nl_attr_get_size
        - nl_attr_get_u8
        - nl_attr_len_pad
        - nl_attr_next
        - nl_attr_type
        - odp_vxlan_tun_opts_from_attr
        - parse_mpls_set_action
        - parse_put_flow_set_masked_action
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/dpif-offload-tc-netdev.c:1689,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/dpif-offload-tc-netdev.c:1671,9'
          Dst:             nl_attr_type
        - Src:             'lib/dpif-offload-tc-netdev.c:1672,16'
          Dst:             parse_mpls_set_action
        - Src:             'lib/dpif-offload-tc-netdev.c:1675,9'
          Dst:             nl_attr_type
        - Src:             'lib/dpif-offload-tc-netdev.c:1676,20'
          Dst:             parse_put_flow_set_masked_action
        - Src:             'lib/dpif-offload-tc-netdev.c:1680,14'
          Dst:             nl_attr_get
        - Src:             'lib/dpif-offload-tc-netdev.c:1681,18'
          Dst:             nl_attr_get_size
        - Src:             'lib/dpif-offload-tc-netdev.c:1689,17'
          Dst:             nl_attr_type
        - Src:             'lib/dpif-offload-tc-netdev.c:1691,32'
          Dst:             nl_attr_get_be64
        - Src:             'lib/dpif-offload-tc-netdev.c:1696,43'
          Dst:             nl_attr_get_be32
        - Src:             'lib/dpif-offload-tc-netdev.c:1700,43'
          Dst:             nl_attr_get_be32
        - Src:             'lib/dpif-offload-tc-netdev.c:1704,33'
          Dst:             nl_attr_get_u8
        - Src:             'lib/dpif-offload-tc-netdev.c:1708,33'
          Dst:             nl_attr_get_u8
        - Src:             'lib/dpif-offload-tc-netdev.c:1728,17'
          Dst:             nl_attr_get_in6_addr
        - Src:             'lib/dpif-offload-tc-netdev.c:1733,17'
          Dst:             nl_attr_get_in6_addr
        - Src:             'lib/dpif-offload-tc-netdev.c:1738,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-offload-tc-netdev.c:1743,36'
          Dst:             nl_attr_get_be16
        - Src:             'lib/dpif-offload-tc-netdev.c:1747,49'
          Dst:             nl_attr_get
        - Src:             'lib/dpif-offload-tc-netdev.c:1748,20'
          Dst:             nl_attr_get_size
        - Src:             'lib/dpif-offload-tc-netdev.c:1749,46'
          Dst:             nl_attr_get_size
        - Src:             'lib/dpif-offload-tc-netdev.c:1756,17'
          Dst:             odp_vxlan_tun_opts_from_attr
        - Src:             'lib/dpif-offload-tc-netdev.c:1760,17'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-offload-tc-netdev.c:1766,13'
          Dst:             nl_attr_type
        - Src:             'lib/dpif-offload-tc-netdev.c:1766,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-offload-tc-netdev.c:1688,5'
          Dst:             nl_attr_len_pad
        - Src:             'lib/dpif-offload-tc-netdev.c:1688,5'
          Dst:             nl_attr_next
    - functionName:    parse_put_flow_set_masked_action
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1593
      functionLinenumberEnd: 1660
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         51
      ICount:          362
      EdgeCount:       65
      CyclomaticComplexity: 16
      functionsReached:
        - is_all_zeros
        - nl_attr_get
        - nl_attr_get_size
        - nl_attr_type
        - ofpbuf_put
        - ofpbuf_uninit
        - tc_will_add_l4_checksum
        - vlog_rate_limit
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc-netdev.c:1605,12'
          Dst:             ofpbuf_put
        - Src:             'lib/dpif-offload-tc-netdev.c:1607,12'
          Dst:             nl_attr_type
        - Src:             'lib/dpif-offload-tc-netdev.c:1608,12'
          Dst:             nl_attr_get_size
        - Src:             'lib/dpif-offload-tc-netdev.c:1609,16'
          Dst:             nl_attr_get
        - Src:             'lib/dpif-offload-tc-netdev.c:1614,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-offload-tc-netdev.c:1615,9'
          Dst:             ofpbuf_uninit
        - Src:             'lib/dpif-offload-tc-netdev.c:1620,12'
          Dst:             tc_will_add_l4_checksum
        - Src:             'lib/dpif-offload-tc-netdev.c:1621,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-offload-tc-netdev.c:1623,9'
          Dst:             ofpbuf_uninit
        - Src:             'lib/dpif-offload-tc-netdev.c:1649,21'
          Dst:             is_all_zeros
        - Src:             'lib/dpif-offload-tc-netdev.c:1650,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-offload-tc-netdev.c:1652,9'
          Dst:             ofpbuf_uninit
        - Src:             'lib/dpif-offload-tc-netdev.c:1656,5'
          Dst:             ofpbuf_uninit
    - functionName:    parse_put_flow_ct_action
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1497
      functionLinenumberEnd: 1560
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          191
      EdgeCount:       20
      CyclomaticComplexity: 3
      functionsReached:
        - get_32aligned_u128
        - nl_attr_get
        - nl_attr_get_size
        - nl_attr_get_u16
        - nl_attr_get_unspec
        - nl_attr_len_pad
        - nl_attr_next
        - nl_attr_type
        - parse_put_flow_nat_action
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/dpif-offload-tc-netdev.c:1503,13'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/dpif-offload-tc-netdev.c:1503,21'
          Dst:             nl_attr_type
        - Src:             'lib/dpif-offload-tc-netdev.c:1514,39'
          Dst:             nl_attr_get_u16
        - Src:             'lib/dpif-offload-tc-netdev.c:1518,48'
          Dst:             nl_attr_get
        - Src:             'lib/dpif-offload-tc-netdev.c:1519,44'
          Dst:             nl_attr_get_size
        - Src:             'lib/dpif-offload-tc-netdev.c:1521,27'
          Dst:             parse_put_flow_nat_action
        - Src:             'lib/dpif-offload-tc-netdev.c:1533,31'
          Dst:             nl_attr_get_unspec
        - Src:             'lib/dpif-offload-tc-netdev.c:1544,32'
          Dst:             nl_attr_get_unspec
        - Src:             'lib/dpif-offload-tc-netdev.c:1545,40'
          Dst:             get_32aligned_u128
        - Src:             'lib/dpif-offload-tc-netdev.c:1547,25'
          Dst:             get_32aligned_u128
        - Src:             'lib/dpif-offload-tc-netdev.c:1502,9'
          Dst:             nl_attr_len_pad
        - Src:             'lib/dpif-offload-tc-netdev.c:1502,9'
          Dst:             nl_attr_next
    - functionName:    meter_id_lookup
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3273
      functionLinenumberEnd: 3283
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - meter_id_find_locked
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc-netdev.c:3276,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-offload-tc-netdev.c:3277,12'
          Dst:             meter_id_find_locked
        - Src:             'lib/dpif-offload-tc-netdev.c:3281,5'
          Dst:             ovs_mutex_unlock
    - functionName:    get_32aligned_u128
      functionSourceFile: '/src/openvswitch/lib/unaligned.h'
      linkageType:     InternalLinkage
      functionLinenumber: 223
      functionLinenumberEnd: 229
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          33
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    be32_to_be16
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 135
      functionLinenumberEnd: 135
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pt_ns_type_be
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1577
      functionLinenumberEnd: 1578
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - be32_to_be16
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:1578,12'
          Dst:             be32_to_be16
    - functionName:    pt_ns
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1570
      functionLinenumberEnd: 1571
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:1571,12'
          Dst:             ntohl
    - functionName:    get_dl_type
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1036
      functionLinenumberEnd: 1044
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          53
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - htonl
        - htons
        - pt_ns
        - pt_ns_type_be
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:1037,30'
          Dst:             htonl
        - Src:             'lib/flow.h:1039,16'
          Dst:             pt_ns
        - Src:             'lib/flow.h:1040,16'
          Dst:             pt_ns_type_be
        - Src:             'lib/flow.h:1042,16'
          Dst:             htons
    - functionName:    dl_type_is_ip_any
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1256
      functionLinenumberEnd: 1258
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htons
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:1257,23'
          Dst:             htons
        - Src:             'lib/packets.h:1258,23'
          Dst:             htons
    - functionName:    is_tcf_id_eq
      functionSourceFile: '/src/openvswitch/lib/tc.h'
      linkageType:     InternalLinkage
      functionLinenumber: 367
      functionLinenumberEnd: 373
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          88
      EdgeCount:       16
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_32aligned_u64
      functionSourceFile: '/src/openvswitch/lib/unaligned.h'
      linkageType:     InternalLinkage
      functionLinenumber: 208
      functionLinenumberEnd: 209
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    odp_encode_gbp_raw
      functionSourceFile: '/src/openvswitch/lib/odp-util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 392
      functionLinenumberEnd: 393
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - char
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/odp-util.h:393,28'
          Dst:             ntohs
    - functionName:    police_idx_lookup
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3288
      functionLinenumberEnd: 3304
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          79
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hash_int
        - hmap_first_with_hash
        - hmap_next_with_hash
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc-netdev.c:3290,19'
          Dst:             hash_int
        - Src:             'lib/dpif-offload-tc-netdev.c:3293,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-offload-tc-netdev.c:3294,5'
          Dst:             hmap_first_with_hash
        - Src:             'lib/dpif-offload-tc-netdev.c:3294,5'
          Dst:             hmap_next_with_hash
        - Src:             'lib/dpif-offload-tc-netdev.c:3302,5'
          Dst:             ovs_mutex_unlock
    - functionName:    ovs_u128_is_zero
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 488
      functionLinenumberEnd: 489
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    odp_to_u32
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 202
      functionLinenumberEnd: 203
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    parse_tc_flower_geneve_opts
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 674
      functionLinenumberEnd: 693
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          96
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - nl_msg_end_nested
        - nl_msg_put
        - nl_msg_start_nested
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc-netdev.c:683,18'
          Dst:             nl_msg_start_nested
        - Src:             'lib/dpif-offload-tc-netdev.c:688,9'
          Dst:             nl_msg_put
        - Src:             'lib/dpif-offload-tc-netdev.c:692,5'
          Dst:             nl_msg_end_nested
    - functionName:    parse_tc_flower_vxlan_tun_opts
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 697
      functionLinenumberEnd: 714
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          65
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - nl_msg_end_nested
        - nl_msg_put_u32
        - nl_msg_start_nested
        - odp_encode_gbp_raw
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc-netdev.c:708,15'
          Dst:             nl_msg_start_nested
        - Src:             'lib/dpif-offload-tc-netdev.c:709,15'
          Dst:             odp_encode_gbp_raw
        - Src:             'lib/dpif-offload-tc-netdev.c:711,5'
          Dst:             nl_msg_put_u32
        - Src:             'lib/dpif-offload-tc-netdev.c:712,5'
          Dst:             nl_msg_end_nested
    - functionName:    parse_flower_rewrite_to_netlink_action
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 632
      functionLinenumberEnd: 669
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         25
      ICount:          188
      EdgeCount:       32
      CyclomaticComplexity: 9
      functionsReached:
        - is_all_zeros
        - nl_msg_end_nested
        - nl_msg_put_unspec_zero
        - nl_msg_start_nested
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc-netdev.c:652,18'
          Dst:             is_all_zeros
        - Src:             'lib/dpif-offload-tc-netdev.c:654,30'
          Dst:             nl_msg_start_nested
        - Src:             'lib/dpif-offload-tc-netdev.c:656,27'
          Dst:             nl_msg_put_unspec_zero
        - Src:             'lib/dpif-offload-tc-netdev.c:666,13'
          Dst:             nl_msg_end_nested
    - functionName:    flow_set_mpls_lse_bos
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 607
      functionLinenumberEnd: 610
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:608,19'
          Dst:             htonl
        - Src:             'lib/packets.h:609,18'
          Dst:             htonl
    - functionName:    flow_set_mpls_lse_ttl
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 615
      functionLinenumberEnd: 618
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:616,19'
          Dst:             htonl
        - Src:             'lib/packets.h:617,18'
          Dst:             htonl
    - functionName:    flow_set_mpls_lse_tc
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 599
      functionLinenumberEnd: 602
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:600,19'
          Dst:             htonl
        - Src:             'lib/packets.h:601,18'
          Dst:             htonl
    - functionName:    flow_set_mpls_lse_label
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 591
      functionLinenumberEnd: 594
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:592,19'
          Dst:             htonl
        - Src:             'lib/packets.h:593,18'
          Dst:             htonl
    - functionName:    parse_tc_flower_to_actions__
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 848
      functionLinenumberEnd: 1121
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         121
      ICount:          958
      EdgeCount:       156
      CyclomaticComplexity: 37
      functionsReached:
        - flow_set_mpls_lse_bos
        - flow_set_mpls_lse_label
        - flow_set_mpls_lse_tc
        - flow_set_mpls_lse_ttl
        - htons
        - ipv6_addr_is_set
        - netdev_tc_get_port_id_by_ifindex
        - nl_msg_end_nested
        - nl_msg_put_be16
        - nl_msg_put_be32
        - nl_msg_put_be64
        - nl_msg_put_flag
        - nl_msg_put_in6_addr
        - nl_msg_put_u16
        - nl_msg_put_u32
        - nl_msg_put_u8
        - nl_msg_put_unspec
        - nl_msg_put_unspec_zero
        - nl_msg_start_nested
        - ntohs
        - odp_to_u32
        - ovs_u128_is_zero
        - parse_flower_rewrite_to_netlink_action
        - parse_tc_flower_geneve_opts
        - parse_tc_flower_to_actions__
        - parse_tc_flower_vxlan_tun_opts
        - police_idx_lookup
      functionUses:    3
      BranchProfiles:
        - Branch String:   'lib/dpif-offload-tc-netdev.c:859,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/dpif-offload-tc-netdev.c:861,13'
          Dst:             nl_msg_put_flag
        - Src:             'lib/dpif-offload-tc-netdev.c:867,20'
          Dst:             nl_msg_put_unspec_zero
        - Src:             'lib/dpif-offload-tc-netdev.c:870,30'
          Dst:             htons
        - Src:             'lib/dpif-offload-tc-netdev.c:876,13'
          Dst:             nl_msg_put_be16
        - Src:             'lib/dpif-offload-tc-netdev.c:884,13'
          Dst:             flow_set_mpls_lse_label
        - Src:             'lib/dpif-offload-tc-netdev.c:885,13'
          Dst:             flow_set_mpls_lse_tc
        - Src:             'lib/dpif-offload-tc-netdev.c:886,13'
          Dst:             flow_set_mpls_lse_ttl
        - Src:             'lib/dpif-offload-tc-netdev.c:887,13'
          Dst:             flow_set_mpls_lse_bos
        - Src:             'lib/dpif-offload-tc-netdev.c:889,20'
          Dst:             nl_msg_put_unspec_zero
        - Src:             'lib/dpif-offload-tc-netdev.c:896,33'
          Dst:             nl_msg_start_nested
        - Src:             'lib/dpif-offload-tc-netdev.c:901,13'
          Dst:             flow_set_mpls_lse_label
        - Src:             'lib/dpif-offload-tc-netdev.c:902,13'
          Dst:             flow_set_mpls_lse_tc
        - Src:             'lib/dpif-offload-tc-netdev.c:903,13'
          Dst:             flow_set_mpls_lse_ttl
        - Src:             'lib/dpif-offload-tc-netdev.c:904,13'
          Dst:             flow_set_mpls_lse_bos
        - Src:             'lib/dpif-offload-tc-netdev.c:906,24'
          Dst:             nl_msg_put_unspec_zero
        - Src:             'lib/dpif-offload-tc-netdev.c:909,13'
          Dst:             nl_msg_end_nested
        - Src:             'lib/dpif-offload-tc-netdev.c:913,13'
          Dst:             parse_flower_rewrite_to_netlink_action
        - Src:             'lib/dpif-offload-tc-netdev.c:917,33'
          Dst:             nl_msg_start_nested
        - Src:             'lib/dpif-offload-tc-netdev.c:919,17'
          Dst:             nl_msg_start_nested
        - Src:             'lib/dpif-offload-tc-netdev.c:923,17'
          Dst:             nl_msg_put_be64
        - Src:             'lib/dpif-offload-tc-netdev.c:926,17'
          Dst:             nl_msg_put_be32
        - Src:             'lib/dpif-offload-tc-netdev.c:930,17'
          Dst:             nl_msg_put_be32
        - Src:             'lib/dpif-offload-tc-netdev.c:933,17'
          Dst:             ipv6_addr_is_set
        - Src:             'lib/dpif-offload-tc-netdev.c:934,17'
          Dst:             nl_msg_put_in6_addr
        - Src:             'lib/dpif-offload-tc-netdev.c:937,17'
          Dst:             ipv6_addr_is_set
        - Src:             'lib/dpif-offload-tc-netdev.c:938,17'
          Dst:             nl_msg_put_in6_addr
        - Src:             'lib/dpif-offload-tc-netdev.c:942,17'
          Dst:             nl_msg_put_u8
        - Src:             'lib/dpif-offload-tc-netdev.c:946,17'
          Dst:             nl_msg_put_u8
        - Src:             'lib/dpif-offload-tc-netdev.c:950,17'
          Dst:             nl_msg_put_be16
        - Src:             'lib/dpif-offload-tc-netdev.c:954,17'
          Dst:             nl_msg_put_flag
        - Src:             'lib/dpif-offload-tc-netdev.c:957,17'
          Dst:             nl_msg_put_flag
        - Src:             'lib/dpif-offload-tc-netdev.c:959,19'
          Dst:             parse_tc_flower_vxlan_tun_opts
        - Src:             'lib/dpif-offload-tc-netdev.c:963,13'
          Dst:             parse_tc_flower_geneve_opts
        - Src:             'lib/dpif-offload-tc-netdev.c:964,13'
          Dst:             nl_msg_end_nested
        - Src:             'lib/dpif-offload-tc-netdev.c:965,13'
          Dst:             nl_msg_end_nested
        - Src:             'lib/dpif-offload-tc-netdev.c:972,27'
          Dst:             netdev_tc_get_port_id_by_ifindex
        - Src:             'lib/dpif-offload-tc-netdev.c:978,57'
          Dst:             odp_to_u32
        - Src:             'lib/dpif-offload-tc-netdev.c:978,13'
          Dst:             nl_msg_put_u32
        - Src:             'lib/dpif-offload-tc-netdev.c:985,17'
          Dst:             nl_msg_put_flag
        - Src:             'lib/dpif-offload-tc-netdev.c:989,25'
          Dst:             nl_msg_start_nested
        - Src:             'lib/dpif-offload-tc-netdev.c:993,21'
          Dst:             nl_msg_put_flag
        - Src:             'lib/dpif-offload-tc-netdev.c:995,21'
          Dst:             nl_msg_put_flag
        - Src:             'lib/dpif-offload-tc-netdev.c:1000,17'
          Dst:             nl_msg_put_u16
        - Src:             'lib/dpif-offload-tc-netdev.c:1006,17'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/dpif-offload-tc-netdev.c:1010,18'
          Dst:             ovs_u128_is_zero
        - Src:             'lib/dpif-offload-tc-netdev.c:1019,17'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/dpif-offload-tc-netdev.c:1024,37'
          Dst:             nl_msg_start_nested
        - Src:             'lib/dpif-offload-tc-netdev.c:1028,21'
          Dst:             nl_msg_put_flag
        - Src:             'lib/dpif-offload-tc-netdev.c:1030,21'
          Dst:             nl_msg_put_flag
        - Src:             'lib/dpif-offload-tc-netdev.c:1034,21'
          Dst:             nl_msg_put_be32
        - Src:             'lib/dpif-offload-tc-netdev.c:1036,21'
          Dst:             nl_msg_put_be32
        - Src:             'lib/dpif-offload-tc-netdev.c:1039,21'
          Dst:             nl_msg_put_in6_addr
        - Src:             'lib/dpif-offload-tc-netdev.c:1041,21'
          Dst:             nl_msg_put_in6_addr
        - Src:             'lib/dpif-offload-tc-netdev.c:1047,36'
          Dst:             ntohs
        - Src:             'lib/dpif-offload-tc-netdev.c:1046,21'
          Dst:             nl_msg_put_u16
        - Src:             'lib/dpif-offload-tc-netdev.c:1050,40'
          Dst:             ntohs
        - Src:             'lib/dpif-offload-tc-netdev.c:1049,25'
          Dst:             nl_msg_put_u16
        - Src:             'lib/dpif-offload-tc-netdev.c:1054,17'
          Dst:             nl_msg_end_nested
        - Src:             'lib/dpif-offload-tc-netdev.c:1057,13'
          Dst:             nl_msg_end_nested
        - Src:             'lib/dpif-offload-tc-netdev.c:1061,13'
          Dst:             nl_msg_put_u32
        - Src:             'lib/dpif-offload-tc-netdev.c:1067,17'
          Dst:             police_idx_lookup
        - Src:             'lib/dpif-offload-tc-netdev.c:1070,13'
          Dst:             nl_msg_put_u32
        - Src:             'lib/dpif-offload-tc-netdev.c:1077,22'
          Dst:             nl_msg_start_nested
        - Src:             'lib/dpif-offload-tc-netdev.c:1080,13'
          Dst:             nl_msg_put_u16
        - Src:             'lib/dpif-offload-tc-netdev.c:1083,26'
          Dst:             nl_msg_start_nested
        - Src:             'lib/dpif-offload-tc-netdev.c:1085,17'
          Dst:             parse_tc_flower_to_actions__
        - Src:             'lib/dpif-offload-tc-netdev.c:1090,13'
          Dst:             nl_msg_end_nested
        - Src:             'lib/dpif-offload-tc-netdev.c:1092,26'
          Dst:             nl_msg_start_nested
        - Src:             'lib/dpif-offload-tc-netdev.c:1100,21'
          Dst:             parse_tc_flower_to_actions__
        - Src:             'lib/dpif-offload-tc-netdev.c:1105,13'
          Dst:             nl_msg_end_nested
        - Src:             'lib/dpif-offload-tc-netdev.c:1108,13'
          Dst:             nl_msg_end_nested
    - functionName:    ipv6_addr_is_set
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1205
      functionLinenumberEnd: 1206
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ipv6_addr_equals
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:1206,13'
          Dst:             ipv6_addr_equals
    - functionName:    netdev_tc_get_port_id_by_ifindex
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 833
      functionLinenumberEnd: 842
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          62
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - dpif_offload_type
        - strcmp
        - tc_get_port_id_by_ifindex
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc-netdev.c:837,28'
          Dst:             dpif_offload_type
        - Src:             'lib/dpif-offload-tc-netdev.c:837,21'
          Dst:             strcmp
        - Src:             'lib/dpif-offload-tc-netdev.c:841,12'
          Dst:             tc_get_port_id_by_ifindex
    - functionName:    ipv6_addr_equals
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1184
      functionLinenumberEnd: 1186
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          80
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    parse_tc_flower_to_attrs
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 809
      functionLinenumberEnd: 815
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          38
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    parse_tc_flower_to_stats
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 793
      functionLinenumberEnd: 804
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          66
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - get_32aligned_u64
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc-netdev.c:799,24'
          Dst:             get_32aligned_u64
        - Src:             'lib/dpif-offload-tc-netdev.c:800,25'
          Dst:             get_32aligned_u64
        - Src:             'lib/dpif-offload-tc-netdev.c:801,22'
          Dst:             get_32aligned_u64
        - Src:             'lib/dpif-offload-tc-netdev.c:802,23'
          Dst:             get_32aligned_u64
    - functionName:    ofpbuf_at_assert
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 195
      functionLinenumberEnd: 198
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:196,5'
          Dst:             ovs_ignore
        - Src:             './include/openvswitch/ofpbuf.h:197,5'
          Dst:             ovs_ignore
    - functionName:    parse_tc_flower_to_actions
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1127
      functionLinenumberEnd: 1128
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - parse_tc_flower_to_actions__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc-netdev.c:1128,12'
          Dst:             parse_tc_flower_to_actions__
    - functionName:    flower_tun_opt_to_match
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 718
      functionLinenumberEnd: 758
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          174
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    flower_tun_enc_flags_to_match
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 762
      functionLinenumberEnd: 788
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          140
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    eth_type_mpls
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 423
      functionLinenumberEnd: 425
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htons
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:424,24'
          Dst:             htons
        - Src:             'lib/packets.h:425,21'
          Dst:             htons
    - functionName:    ofpbuf_clear
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 250
      functionLinenumberEnd: 253
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    parse_tc_flower_terse_to_match
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 822
      functionLinenumberEnd: 828
      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:
        - match_init_catchall
        - parse_tc_flower_to_attrs
        - parse_tc_flower_to_stats
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc-netdev.c:823,5'
          Dst:             match_init_catchall
        - Src:             'lib/dpif-offload-tc-netdev.c:825,5'
          Dst:             parse_tc_flower_to_stats
        - Src:             'lib/dpif-offload-tc-netdev.c:826,5'
          Dst:             parse_tc_flower_to_attrs
    - functionName:    hmap_next__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 401
      functionLinenumberEnd: 410
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          51
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    meter_id_remove
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3325
      functionLinenumberEnd: 3336
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_remove
        - meter_id_find_locked
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc-netdev.c:3328,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-offload-tc-netdev.c:3329,12'
          Dst:             meter_id_find_locked
        - Src:             'lib/dpif-offload-tc-netdev.c:3331,9'
          Dst:             hmap_remove
        - Src:             'lib/dpif-offload-tc-netdev.c:3332,9'
          Dst:             hmap_remove
        - Src:             'lib/dpif-offload-tc-netdev.c:3335,5'
          Dst:             ovs_mutex_unlock
    - functionName:    tc_meter_del
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3434
      functionLinenumberEnd: 3450
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          87
      EdgeCount:       21
      CyclomaticComplexity: 6
      functionsReached:
        - meter_free_police_index
        - meter_id_lookup
        - meter_id_remove
        - ovs_strerror
        - tc_del_policer_action
        - vlog_rate_limit
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc-netdev.c:3438,10'
          Dst:             meter_id_lookup
        - Src:             'lib/dpif-offload-tc-netdev.c:3439,15'
          Dst:             tc_del_policer_action
        - Src:             'lib/dpif-offload-tc-netdev.c:3441,13'
          Dst:             ovs_strerror
        - Src:             'lib/dpif-offload-tc-netdev.c:3441,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-offload-tc-netdev.c:3445,13'
          Dst:             meter_free_police_index
        - Src:             'lib/dpif-offload-tc-netdev.c:3447,9'
          Dst:             meter_id_remove
    - functionName:    meter_free_police_index
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3352
      functionLinenumberEnd: 3356
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - id_pool_free_id
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc-netdev.c:3353,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-offload-tc-netdev.c:3354,5'
          Dst:             id_pool_free_id
        - Src:             'lib/dpif-offload-tc-netdev.c:3355,5'
          Dst:             ovs_mutex_unlock
    - functionName:    tc_meter_get
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3415
      functionLinenumberEnd: 3428
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          73
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - meter_id_lookup
        - ovs_strerror
        - tc_get_policer_action
        - vlog_rate_limit
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc-netdev.c:3419,10'
          Dst:             meter_id_lookup
        - Src:             'lib/dpif-offload-tc-netdev.c:3420,15'
          Dst:             tc_get_policer_action
        - Src:             'lib/dpif-offload-tc-netdev.c:3422,13'
          Dst:             ovs_strerror
        - Src:             'lib/dpif-offload-tc-netdev.c:3422,13'
          Dst:             vlog_rate_limit
    - functionName:    meter_id_insert
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3309
      functionLinenumberEnd: 3321
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          40
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_int
        - hmap_insert_at
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - xzalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc-netdev.c:3312,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-offload-tc-netdev.c:3313,12'
          Dst:             xzalloc
        - Src:             'lib/dpif-offload-tc-netdev.c:3316,5'
          Dst:             hash_int
        - Src:             'lib/dpif-offload-tc-netdev.c:3316,5'
          Dst:             hmap_insert_at
        - Src:             'lib/dpif-offload-tc-netdev.c:3318,5'
          Dst:             hash_int
        - Src:             'lib/dpif-offload-tc-netdev.c:3318,5'
          Dst:             hmap_insert_at
        - Src:             'lib/dpif-offload-tc-netdev.c:3320,5'
          Dst:             ovs_mutex_unlock
    - functionName:    meter_alloc_police_index
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3340
      functionLinenumberEnd: 3347
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - id_pool_alloc_id
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc-netdev.c:3343,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-offload-tc-netdev.c:3344,11'
          Dst:             id_pool_alloc_id
        - Src:             'lib/dpif-offload-tc-netdev.c:3345,5'
          Dst:             ovs_mutex_unlock
    - functionName:    tc_meter_set
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3361
      functionLinenumberEnd: 3410
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         50
      ICount:          292
      EdgeCount:       65
      CyclomaticComplexity: 17
      functionsReached:
        - meter_alloc_police_index
        - meter_free_police_index
        - meter_id_insert
        - meter_id_lookup
        - ovs_strerror
        - tc_add_policer_action
        - vlog_rate_limit
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc-netdev.c:3379,20'
          Dst:             meter_id_lookup
        - Src:             'lib/dpif-offload-tc-netdev.c:3381,14'
          Dst:             meter_alloc_police_index
        - Src:             'lib/dpif-offload-tc-netdev.c:3382,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-offload-tc-netdev.c:3388,11'
          Dst:             tc_add_policer_action
        - Src:             'lib/dpif-offload-tc-netdev.c:3395,9'
          Dst:             ovs_strerror
        - Src:             'lib/dpif-offload-tc-netdev.c:3395,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-offload-tc-netdev.c:3403,13'
          Dst:             meter_id_insert
        - Src:             'lib/dpif-offload-tc-netdev.c:3405,13'
          Dst:             meter_free_police_index
    - functionName:    tc_cleanup_policer_actions
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3126
      functionLinenumberEnd: 3158
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         32
      ICount:          159
      EdgeCount:       41
      CyclomaticComplexity: 11
      functionsReached:
        - hmap_destroy
        - hmap_init
        - hmap_pop_helper__
        - id_pool_add
        - tc_del_policer_action
        - tc_get_policer_action_ids
        - vlog
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc-netdev.c:3133,5'
          Dst:             hmap_init
        - Src:             'lib/dpif-offload-tc-netdev.c:3134,5'
          Dst:             tc_get_policer_action_ids
        - Src:             'lib/dpif-offload-tc-netdev.c:3136,5'
          Dst:             hmap_pop_helper__
        - Src:             'lib/dpif-offload-tc-netdev.c:3139,19'
          Dst:             tc_del_policer_action
        - Src:             'lib/dpif-offload-tc-netdev.c:3142,17'
          Dst:             id_pool_add
        - Src:             'lib/dpif-offload-tc-netdev.c:3145,17'
          Dst:             vlog
        - Src:             'lib/dpif-offload-tc-netdev.c:3153,9'
          Dst:             vlog
        - Src:             'lib/dpif-offload-tc-netdev.c:3157,5'
          Dst:             hmap_destroy
    - functionName:    probe_enc_flags_support
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3041
      functionLinenumberEnd: 3080
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          133
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - htonl
        - htons
        - tc_add_del_qdisc
        - tc_del_flower_filter
        - tc_make_tcf_id
        - tc_replace_flower
        - vlog
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc-netdev.c:3048,13'
          Dst:             tc_add_del_qdisc
        - Src:             'lib/dpif-offload-tc-netdev.c:3055,27'
          Dst:             htons
        - Src:             'lib/dpif-offload-tc-netdev.c:3063,39'
          Dst:             htonl
        - Src:             'lib/dpif-offload-tc-netdev.c:3064,39'
          Dst:             htonl
        - Src:             'lib/dpif-offload-tc-netdev.c:3065,32'
          Dst:             htons
        - Src:             'lib/dpif-offload-tc-netdev.c:3068,10'
          Dst:             tc_make_tcf_id
        - Src:             'lib/dpif-offload-tc-netdev.c:3069,13'
          Dst:             tc_replace_flower
        - Src:             'lib/dpif-offload-tc-netdev.c:3074,5'
          Dst:             tc_del_flower_filter
        - Src:             'lib/dpif-offload-tc-netdev.c:3077,5'
          Dst:             vlog
        - Src:             'lib/dpif-offload-tc-netdev.c:3079,5'
          Dst:             tc_add_del_qdisc
    - functionName:    probe_vxlan_gbp_support
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2996
      functionLinenumberEnd: 3037
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          136
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - htonl
        - htons
        - tc_add_del_qdisc
        - tc_del_flower_filter
        - tc_make_tcf_id
        - tc_replace_flower
        - vlog
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc-netdev.c:3003,13'
          Dst:             tc_add_del_qdisc
        - Src:             'lib/dpif-offload-tc-netdev.c:3011,27'
          Dst:             htons
        - Src:             'lib/dpif-offload-tc-netdev.c:3019,39'
          Dst:             htonl
        - Src:             'lib/dpif-offload-tc-netdev.c:3020,39'
          Dst:             htonl
        - Src:             'lib/dpif-offload-tc-netdev.c:3021,32'
          Dst:             htons
        - Src:             'lib/dpif-offload-tc-netdev.c:3022,32'
          Dst:             htons
        - Src:             'lib/dpif-offload-tc-netdev.c:3024,10'
          Dst:             tc_make_tcf_id
        - Src:             'lib/dpif-offload-tc-netdev.c:3025,13'
          Dst:             tc_replace_flower
        - Src:             'lib/dpif-offload-tc-netdev.c:3030,5'
          Dst:             tc_del_flower_filter
        - Src:             'lib/dpif-offload-tc-netdev.c:3033,5'
          Dst:             vlog
        - Src:             'lib/dpif-offload-tc-netdev.c:3036,5'
          Dst:             tc_add_del_qdisc
    - functionName:    probe_ct_state_support
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2891
      functionLinenumberEnd: 2959
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         25
      ICount:          149
      EdgeCount:       33
      CyclomaticComplexity: 10
      functionsReached:
        - probe_insert_ct_state_rule
        - tc_add_del_qdisc
        - tc_del_flower_filter
        - tc_get_flower
        - vlog
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc-netdev.c:2897,13'
          Dst:             tc_add_del_qdisc
        - Src:             'lib/dpif-offload-tc-netdev.c:2904,13'
          Dst:             probe_insert_ct_state_rule
        - Src:             'lib/dpif-offload-tc-netdev.c:2909,13'
          Dst:             tc_get_flower
        - Src:             'lib/dpif-offload-tc-netdev.c:2914,5'
          Dst:             tc_del_flower_filter
        - Src:             'lib/dpif-offload-tc-netdev.c:2922,13'
          Dst:             probe_insert_ct_state_rule
        - Src:             'lib/dpif-offload-tc-netdev.c:2928,5'
          Dst:             tc_del_flower_filter
        - Src:             'lib/dpif-offload-tc-netdev.c:2934,13'
          Dst:             probe_insert_ct_state_rule
        - Src:             'lib/dpif-offload-tc-netdev.c:2939,5'
          Dst:             tc_del_flower_filter
        - Src:             'lib/dpif-offload-tc-netdev.c:2947,13'
          Dst:             probe_insert_ct_state_rule
        - Src:             'lib/dpif-offload-tc-netdev.c:2955,5'
          Dst:             tc_del_flower_filter
        - Src:             'lib/dpif-offload-tc-netdev.c:2957,5'
          Dst:             tc_add_del_qdisc
        - Src:             'lib/dpif-offload-tc-netdev.c:2958,5'
          Dst:             vlog
    - functionName:    probe_multi_mask_per_prio
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2825
      functionLinenumberEnd: 2869
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         16
      ICount:          119
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - htons
        - tc_add_del_qdisc
        - tc_del_flower_filter
        - tc_make_tcf_id
        - tc_replace_flower
        - vlog
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc-netdev.c:2832,13'
          Dst:             tc_add_del_qdisc
        - Src:             'lib/dpif-offload-tc-netdev.c:2840,27'
          Dst:             htons
        - Src:             'lib/dpif-offload-tc-netdev.c:2845,11'
          Dst:             tc_make_tcf_id
        - Src:             'lib/dpif-offload-tc-netdev.c:2846,13'
          Dst:             tc_replace_flower
        - Src:             'lib/dpif-offload-tc-netdev.c:2854,11'
          Dst:             tc_make_tcf_id
        - Src:             'lib/dpif-offload-tc-netdev.c:2855,13'
          Dst:             tc_replace_flower
        - Src:             'lib/dpif-offload-tc-netdev.c:2856,5'
          Dst:             tc_del_flower_filter
        - Src:             'lib/dpif-offload-tc-netdev.c:2862,5'
          Dst:             tc_del_flower_filter
        - Src:             'lib/dpif-offload-tc-netdev.c:2865,5'
          Dst:             vlog
        - Src:             'lib/dpif-offload-tc-netdev.c:2868,5'
          Dst:             tc_add_del_qdisc
    - functionName:    probe_tc_block_support
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2963
      functionLinenumberEnd: 2992
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          92
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - htons
        - tc_add_del_qdisc
        - tc_make_tcf_id
        - tc_replace_flower
        - vlog
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc-netdev.c:2970,13'
          Dst:             tc_add_del_qdisc
        - Src:             'lib/dpif-offload-tc-netdev.c:2978,27'
          Dst:             htons
        - Src:             'lib/dpif-offload-tc-netdev.c:2983,10'
          Dst:             tc_make_tcf_id
        - Src:             'lib/dpif-offload-tc-netdev.c:2984,13'
          Dst:             tc_replace_flower
        - Src:             'lib/dpif-offload-tc-netdev.c:2986,5'
          Dst:             tc_add_del_qdisc
        - Src:             'lib/dpif-offload-tc-netdev.c:2990,9'
          Dst:             vlog
    - functionName:    delete_chains_from_netdev
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 539
      functionLinenumberEnd: 563
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          75
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - get_chains_from_netdev
        - hmap_destroy
        - hmap_init
        - hmap_pop_helper__
        - tc_del_filter
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc-netdev.c:544,5'
          Dst:             hmap_init
        - Src:             'lib/dpif-offload-tc-netdev.c:545,13'
          Dst:             get_chains_from_netdev
        - Src:             'lib/dpif-offload-tc-netdev.c:551,9'
          Dst:             hmap_pop_helper__
        - Src:             'lib/dpif-offload-tc-netdev.c:557,13'
          Dst:             tc_del_filter
        - Src:             'lib/dpif-offload-tc-netdev.c:562,5'
          Dst:             hmap_destroy
    - functionName:    tc_netdev_init
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3178
      functionLinenumberEnd: 3252
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         48
      ICount:          259
      EdgeCount:       61
      CyclomaticComplexity: 15
      functionsReached:
        - ccmap_init
        - delete_chains_from_netdev
        - get_block_id_from_netdev
        - get_tc_qdisc_hook
        - netdev_get_dpif_type
        - netdev_get_ifindex
        - netdev_get_name
        - netdev_vport_is_vport_class
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovs_strerror
        - ovsthread_once_done
        - ovsthread_once_start
        - probe_ct_state_support
        - probe_enc_flags_support
        - probe_multi_mask_per_prio
        - probe_tc_block_support
        - probe_vxlan_gbp_support
        - strcmp
        - tc_add_del_qdisc
        - tc_cleanup_policer_actions
        - tc_del_flower_filter
        - tc_make_tcf_id
        - tc_meter_init
        - vlog
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc-netdev.c:3180,31'
          Dst:             get_tc_qdisc_hook
        - Src:             'lib/dpif-offload-tc-netdev.c:3187,9'
          Dst:             netdev_vport_is_vport_class
        - Src:             'lib/dpif-offload-tc-netdev.c:3188,19'
          Dst:             netdev_get_dpif_type
        - Src:             'lib/dpif-offload-tc-netdev.c:3188,12'
          Dst:             strcmp
        - Src:             'lib/dpif-offload-tc-netdev.c:3189,9'
          Dst:             netdev_get_name
        - Src:             'lib/dpif-offload-tc-netdev.c:3189,9'
          Dst:             vlog
        - Src:             'lib/dpif-offload-tc-netdev.c:3194,15'
          Dst:             netdev_get_ifindex
        - Src:             'lib/dpif-offload-tc-netdev.c:3196,9'
          Dst:             netdev_get_name
        - Src:             'lib/dpif-offload-tc-netdev.c:3196,9'
          Dst:             ovs_strerror
        - Src:             'lib/dpif-offload-tc-netdev.c:3196,9'
          Dst:             vlog
        - Src:             'lib/dpif-offload-tc-netdev.c:3201,16'
          Dst:             get_block_id_from_netdev
        - Src:             'lib/dpif-offload-tc-netdev.c:3202,10'
          Dst:             tc_make_tcf_id
        - Src:             'lib/dpif-offload-tc-netdev.c:3205,13'
          Dst:             delete_chains_from_netdev
        - Src:             'lib/dpif-offload-tc-netdev.c:3212,9'
          Dst:             tc_del_flower_filter
        - Src:             'lib/dpif-offload-tc-netdev.c:3216,5'
          Dst:             tc_add_del_qdisc
        - Src:             'lib/dpif-offload-tc-netdev.c:3218,9'
          Dst:             ovsthread_once_start
        - Src:             'lib/dpif-offload-tc-netdev.c:3219,9'
          Dst:             ccmap_init
        - Src:             'lib/dpif-offload-tc-netdev.c:3221,9'
          Dst:             probe_tc_block_support
        - Src:             'lib/dpif-offload-tc-netdev.c:3223,20'
          Dst:             get_block_id_from_netdev
        - Src:             'lib/dpif-offload-tc-netdev.c:3225,9'
          Dst:             probe_multi_mask_per_prio
        - Src:             'lib/dpif-offload-tc-netdev.c:3226,9'
          Dst:             probe_ct_state_support
        - Src:             'lib/dpif-offload-tc-netdev.c:3227,9'
          Dst:             probe_vxlan_gbp_support
        - Src:             'lib/dpif-offload-tc-netdev.c:3228,9'
          Dst:             probe_enc_flags_support
        - Src:             'lib/dpif-offload-tc-netdev.c:3230,9'
          Dst:             tc_meter_init
        - Src:             'lib/dpif-offload-tc-netdev.c:3232,9'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-offload-tc-netdev.c:3233,9'
          Dst:             tc_cleanup_policer_actions
        - Src:             'lib/dpif-offload-tc-netdev.c:3235,9'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/dpif-offload-tc-netdev.c:3237,9'
          Dst:             ovsthread_once_done
        - Src:             'lib/dpif-offload-tc-netdev.c:3240,13'
          Dst:             tc_add_del_qdisc
        - Src:             'lib/dpif-offload-tc-netdev.c:3243,9'
          Dst:             netdev_get_name
        - Src:             'lib/dpif-offload-tc-netdev.c:3243,9'
          Dst:             ovs_strerror
        - Src:             'lib/dpif-offload-tc-netdev.c:3243,9'
          Dst:             vlog
        - Src:             'lib/dpif-offload-tc-netdev.c:3249,5'
          Dst:             netdev_get_name
        - Src:             'lib/dpif-offload-tc-netdev.c:3249,5'
          Dst:             vlog
    - functionName:    get_tc_qdisc_hook
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 122
      functionLinenumberEnd: 123
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - is_internal_port
        - netdev_get_type
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc-netdev.c:123,29'
          Dst:             netdev_get_type
        - Src:             'lib/dpif-offload-tc-netdev.c:123,12'
          Dst:             is_internal_port
    - functionName:    get_block_id_from_netdev
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 491
      functionLinenumberEnd: 497
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - netdev_get_block_id
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc-netdev.c:493,16'
          Dst:             netdev_get_block_id
    - functionName:    ovsthread_once_start
      functionSourceFile: '/src/openvswitch/./include/openvswitch/thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsthread_once_start__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/thread.h:161,12'
          Dst:             ovsthread_once_start__
    - functionName:    tc_meter_init
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3162
      functionLinenumberEnd: 3174
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         6
      ICount:          26
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - id_pool_create
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovsthread_once_done
        - ovsthread_once_start
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc-netdev.c:3165,9'
          Dst:             ovsthread_once_start
        - Src:             'lib/dpif-offload-tc-netdev.c:3166,9'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-offload-tc-netdev.c:3167,28'
          Dst:             id_pool_create
        - Src:             'lib/dpif-offload-tc-netdev.c:3170,9'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/dpif-offload-tc-netdev.c:3172,9'
          Dst:             ovsthread_once_done
    - functionName:    hmap_count
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 263
      functionLinenumberEnd: 264
      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:    tc_flow_count
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2813
      functionLinenumberEnd: 2820
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_count
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc-netdev.c:2816,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-offload-tc-netdev.c:2817,13'
          Dst:             hmap_count
        - Src:             'lib/dpif-offload-tc-netdev.c:2818,5'
          Dst:             ovs_mutex_unlock
    - functionName:    tc_netdev_flow_del
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2799
      functionLinenumberEnd: 2809
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - del_filter_and_ufid_mapping
        - get_ufid_tc_mapping
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc-netdev.c:2803,13'
          Dst:             get_ufid_tc_mapping
        - Src:             'lib/dpif-offload-tc-netdev.c:2808,12'
          Dst:             del_filter_and_ufid_mapping
    - functionName:    get_ufid_tc_mapping
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 341
      functionLinenumberEnd: 356
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          87
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hash_bytes
        - hmap_first_with_hash
        - hmap_next_with_hash
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovs_u128_equals
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc-netdev.c:342,24'
          Dst:             hash_bytes
        - Src:             'lib/dpif-offload-tc-netdev.c:345,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-offload-tc-netdev.c:346,5'
          Dst:             hmap_first_with_hash
        - Src:             'lib/dpif-offload-tc-netdev.c:347,13'
          Dst:             ovs_u128_equals
        - Src:             'lib/dpif-offload-tc-netdev.c:349,13'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/dpif-offload-tc-netdev.c:346,5'
          Dst:             hmap_next_with_hash
        - Src:             'lib/dpif-offload-tc-netdev.c:353,5'
          Dst:             ovs_mutex_unlock
    - functionName:    del_filter_and_ufid_mapping
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 282
      functionLinenumberEnd: 304
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          88
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - del_ufid_tc_mapping
        - get_ufid_adjust_stats
        - netdev_tc_adjust_stats
        - parse_tc_flower_to_stats
        - tc_del_flower_filter
        - tc_get_flower
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc-netdev.c:288,14'
          Dst:             tc_get_flower
        - Src:             'lib/dpif-offload-tc-netdev.c:291,13'
          Dst:             parse_tc_flower_to_stats
        - Src:             'lib/dpif-offload-tc-netdev.c:292,18'
          Dst:             get_ufid_adjust_stats
        - Src:             'lib/dpif-offload-tc-netdev.c:293,17'
          Dst:             netdev_tc_adjust_stats
        - Src:             'lib/dpif-offload-tc-netdev.c:298,11'
          Dst:             tc_del_flower_filter
        - Src:             'lib/dpif-offload-tc-netdev.c:300,9'
          Dst:             del_ufid_tc_mapping
    - functionName:    get_ufid_adjust_stats
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 365
      functionLinenumberEnd: 380
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          87
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hash_bytes
        - hmap_first_with_hash
        - hmap_next_with_hash
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovs_u128_equals
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc-netdev.c:366,24'
          Dst:             hash_bytes
        - Src:             'lib/dpif-offload-tc-netdev.c:369,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-offload-tc-netdev.c:370,5'
          Dst:             hmap_first_with_hash
        - Src:             'lib/dpif-offload-tc-netdev.c:371,13'
          Dst:             ovs_u128_equals
        - Src:             'lib/dpif-offload-tc-netdev.c:373,13'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/dpif-offload-tc-netdev.c:370,5'
          Dst:             hmap_next_with_hash
        - Src:             'lib/dpif-offload-tc-netdev.c:377,5'
          Dst:             ovs_mutex_unlock
    - functionName:    netdev_tc_adjust_stats
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 269
      functionLinenumberEnd: 276
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          24
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    tc_netdev_flow_get
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2748
      functionLinenumberEnd: 2795
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         31
      ICount:          204
      EdgeCount:       39
      CyclomaticComplexity: 10
      functionsReached:
        - get_ufid_adjust_stats
        - get_ufid_tc_mapping
        - match_set_recirc_id
        - netdev_get_name
        - netdev_tc_adjust_stats
        - netdev_tc_get_port_id_by_ifindex
        - ovs_strerror
        - parse_tc_flower_to_match
        - tc_get_flower
        - u32_to_odp
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc-netdev.c:2755,11'
          Dst:             get_ufid_tc_mapping
        - Src:             'lib/dpif-offload-tc-netdev.c:2760,5'
          Dst:             netdev_get_name
        - Src:             'lib/dpif-offload-tc-netdev.c:2760,5'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-offload-tc-netdev.c:2763,11'
          Dst:             tc_get_flower
        - Src:             'lib/dpif-offload-tc-netdev.c:2765,9'
          Dst:             netdev_get_name
        - Src:             'lib/dpif-offload-tc-netdev.c:2765,9'
          Dst:             ovs_strerror
        - Src:             'lib/dpif-offload-tc-netdev.c:2765,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-offload-tc-netdev.c:2772,15'
          Dst:             netdev_tc_get_port_id_by_ifindex
        - Src:             'lib/dpif-offload-tc-netdev.c:2773,11'
          Dst:             parse_tc_flower_to_match
        - Src:             'lib/dpif-offload-tc-netdev.c:2776,9'
          Dst:             netdev_get_name
        - Src:             'lib/dpif-offload-tc-netdev.c:2776,9'
          Dst:             ovs_strerror
        - Src:             'lib/dpif-offload-tc-netdev.c:2776,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-offload-tc-netdev.c:2786,14'
          Dst:             get_ufid_adjust_stats
        - Src:             'lib/dpif-offload-tc-netdev.c:2787,13'
          Dst:             netdev_tc_adjust_stats
        - Src:             'lib/dpif-offload-tc-netdev.c:2790,40'
          Dst:             u32_to_odp
        - Src:             'lib/dpif-offload-tc-netdev.c:2792,5'
          Dst:             match_set_recirc_id
    - functionName:    parse_tc_flower_to_match
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1140
      functionLinenumberEnd: 1365
      functionDepth:   0
      returnType:      int
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         137
      ICount:          1316
      EdgeCount:       182
      CyclomaticComplexity: 47
      functionsReached:
        - eth_type_mpls
        - eth_type_vlan
        - flow_fix_vlan_tpid
        - flower_tun_enc_flags_to_match
        - flower_tun_opt_to_match
        - htons
        - ipv6_addr_is_set
        - is_ip_any
        - match_init_catchall
        - match_set_arp_opcode_masked
        - match_set_arp_sha_masked
        - match_set_arp_spa_masked
        - match_set_arp_tha_masked
        - match_set_arp_tpa_masked
        - match_set_ct_label_masked
        - match_set_ct_mark_masked
        - match_set_ct_state_masked
        - match_set_ct_zone_masked
        - match_set_dl_dst_masked
        - match_set_dl_src_masked
        - match_set_dl_type
        - match_set_dl_vlan
        - match_set_dl_vlan_pcp
        - match_set_ipv6_dst_masked
        - match_set_ipv6_src_masked
        - match_set_nw_dst_masked
        - match_set_nw_frag_masked
        - match_set_nw_proto
        - match_set_nw_src_masked
        - match_set_nw_tos_masked
        - match_set_nw_ttl_masked
        - match_set_tcp_flags_masked
        - match_set_tp_dst_masked
        - match_set_tp_src_masked
        - match_set_tun_dst_masked
        - match_set_tun_gbp_flags_masked
        - match_set_tun_gbp_id_masked
        - match_set_tun_id
        - match_set_tun_ipv6_dst_masked
        - match_set_tun_ipv6_src_masked
        - match_set_tun_src_masked
        - match_set_tun_tos_masked
        - match_set_tun_tp_dst_masked
        - match_set_tun_ttl_masked
        - netdev_get_type
        - nl_msg_end_nested
        - nl_msg_start_nested
        - ofpbuf_at_assert
        - ofpbuf_clear
        - parse_tc_flower_terse_to_match
        - parse_tc_flower_to_actions
        - parse_tc_flower_to_attrs
        - parse_tc_flower_to_stats
        - strcmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc-netdev.c:1147,16'
          Dst:             parse_tc_flower_terse_to_match
        - Src:             'lib/dpif-offload-tc-netdev.c:1150,5'
          Dst:             ofpbuf_clear
        - Src:             'lib/dpif-offload-tc-netdev.c:1152,5'
          Dst:             match_init_catchall
        - Src:             'lib/dpif-offload-tc-netdev.c:1153,5'
          Dst:             match_set_dl_src_masked
        - Src:             'lib/dpif-offload-tc-netdev.c:1154,5'
          Dst:             match_set_dl_dst_masked
        - Src:             'lib/dpif-offload-tc-netdev.c:1156,9'
          Dst:             eth_type_vlan
        - Src:             'lib/dpif-offload-tc-netdev.c:1159,34'
          Dst:             htons
        - Src:             'lib/dpif-offload-tc-netdev.c:1159,9'
          Dst:             match_set_dl_vlan
        - Src:             'lib/dpif-offload-tc-netdev.c:1160,9'
          Dst:             match_set_dl_vlan_pcp
        - Src:             'lib/dpif-offload-tc-netdev.c:1162,13'
          Dst:             eth_type_vlan
        - Src:             'lib/dpif-offload-tc-netdev.c:1163,38'
          Dst:             htons
        - Src:             'lib/dpif-offload-tc-netdev.c:1163,13'
          Dst:             match_set_dl_vlan
        - Src:             'lib/dpif-offload-tc-netdev.c:1164,13'
          Dst:             match_set_dl_vlan_pcp
        - Src:             'lib/dpif-offload-tc-netdev.c:1165,13'
          Dst:             match_set_dl_type
        - Src:             'lib/dpif-offload-tc-netdev.c:1169,13'
          Dst:             match_set_dl_type
        - Src:             'lib/dpif-offload-tc-netdev.c:1171,9'
          Dst:             flow_fix_vlan_tpid
        - Src:             'lib/dpif-offload-tc-netdev.c:1172,16'
          Dst:             eth_type_mpls
        - Src:             'lib/dpif-offload-tc-netdev.c:1175,9'
          Dst:             match_set_dl_type
        - Src:             'lib/dpif-offload-tc-netdev.c:1176,33'
          Dst:             htons
        - Src:             'lib/dpif-offload-tc-netdev.c:1177,9'
          Dst:             match_set_arp_sha_masked
        - Src:             'lib/dpif-offload-tc-netdev.c:1178,9'
          Dst:             match_set_arp_tha_masked
        - Src:             'lib/dpif-offload-tc-netdev.c:1179,9'
          Dst:             match_set_arp_spa_masked
        - Src:             'lib/dpif-offload-tc-netdev.c:1180,9'
          Dst:             match_set_arp_tpa_masked
        - Src:             'lib/dpif-offload-tc-netdev.c:1181,9'
          Dst:             match_set_arp_opcode_masked
        - Src:             'lib/dpif-offload-tc-netdev.c:1183,9'
          Dst:             match_set_dl_type
        - Src:             'lib/dpif-offload-tc-netdev.c:1185,9'
          Dst:             match_set_dl_type
        - Src:             'lib/dpif-offload-tc-netdev.c:1188,9'
          Dst:             is_ip_any
        - Src:             'lib/dpif-offload-tc-netdev.c:1190,13'
          Dst:             match_set_nw_proto
        - Src:             'lib/dpif-offload-tc-netdev.c:1193,9'
          Dst:             match_set_nw_tos_masked
        - Src:             'lib/dpif-offload-tc-netdev.c:1194,9'
          Dst:             match_set_nw_ttl_masked
        - Src:             'lib/dpif-offload-tc-netdev.c:1214,13'
          Dst:             match_set_nw_frag_masked
        - Src:             'lib/dpif-offload-tc-netdev.c:1217,9'
          Dst:             match_set_nw_src_masked
        - Src:             'lib/dpif-offload-tc-netdev.c:1218,9'
          Dst:             match_set_nw_dst_masked
        - Src:             'lib/dpif-offload-tc-netdev.c:1220,9'
          Dst:             match_set_ipv6_src_masked
        - Src:             'lib/dpif-offload-tc-netdev.c:1222,9'
          Dst:             match_set_ipv6_dst_masked
        - Src:             'lib/dpif-offload-tc-netdev.c:1226,13'
          Dst:             match_set_tp_dst_masked
        - Src:             'lib/dpif-offload-tc-netdev.c:1227,13'
          Dst:             match_set_tp_src_masked
        - Src:             'lib/dpif-offload-tc-netdev.c:1228,13'
          Dst:             match_set_tcp_flags_masked
        - Src:             'lib/dpif-offload-tc-netdev.c:1230,13'
          Dst:             match_set_tp_dst_masked
        - Src:             'lib/dpif-offload-tc-netdev.c:1231,13'
          Dst:             match_set_tp_src_masked
        - Src:             'lib/dpif-offload-tc-netdev.c:1233,13'
          Dst:             match_set_tp_dst_masked
        - Src:             'lib/dpif-offload-tc-netdev.c:1234,13'
          Dst:             match_set_tp_src_masked
        - Src:             'lib/dpif-offload-tc-netdev.c:1237,44'
          Dst:             htons
        - Src:             'lib/dpif-offload-tc-netdev.c:1238,37'
          Dst:             htons
        - Src:             'lib/dpif-offload-tc-netdev.c:1237,13'
          Dst:             match_set_tp_dst_masked
        - Src:             'lib/dpif-offload-tc-netdev.c:1239,44'
          Dst:             htons
        - Src:             'lib/dpif-offload-tc-netdev.c:1240,37'
          Dst:             htons
        - Src:             'lib/dpif-offload-tc-netdev.c:1239,13'
          Dst:             match_set_tp_src_masked
        - Src:             'lib/dpif-offload-tc-netdev.c:1288,13'
          Dst:             match_set_ct_state_masked
        - Src:             'lib/dpif-offload-tc-netdev.c:1291,9'
          Dst:             match_set_ct_zone_masked
        - Src:             'lib/dpif-offload-tc-netdev.c:1292,9'
          Dst:             match_set_ct_mark_masked
        - Src:             'lib/dpif-offload-tc-netdev.c:1293,9'
          Dst:             match_set_ct_label_masked
        - Src:             'lib/dpif-offload-tc-netdev.c:1298,13'
          Dst:             match_set_tun_id
        - Src:             'lib/dpif-offload-tc-netdev.c:1303,13'
          Dst:             match_set_tun_dst_masked
        - Src:             'lib/dpif-offload-tc-netdev.c:1306,13'
          Dst:             match_set_tun_src_masked
        - Src:             'lib/dpif-offload-tc-netdev.c:1309,20'
          Dst:             ipv6_addr_is_set
        - Src:             'lib/dpif-offload-tc-netdev.c:1310,20'
          Dst:             ipv6_addr_is_set
        - Src:             'lib/dpif-offload-tc-netdev.c:1311,13'
          Dst:             match_set_tun_ipv6_dst_masked
        - Src:             'lib/dpif-offload-tc-netdev.c:1314,13'
          Dst:             match_set_tun_ipv6_src_masked
        - Src:             'lib/dpif-offload-tc-netdev.c:1319,13'
          Dst:             match_set_tun_tos_masked
        - Src:             'lib/dpif-offload-tc-netdev.c:1323,13'
          Dst:             match_set_tun_ttl_masked
        - Src:             'lib/dpif-offload-tc-netdev.c:1327,13'
          Dst:             match_set_tun_tp_dst_masked
        - Src:             'lib/dpif-offload-tc-netdev.c:1331,13'
          Dst:             match_set_tun_tp_dst_masked
        - Src:             'lib/dpif-offload-tc-netdev.c:1335,13'
          Dst:             match_set_tun_gbp_id_masked
        - Src:             'lib/dpif-offload-tc-netdev.c:1339,13'
          Dst:             match_set_tun_gbp_flags_masked
        - Src:             'lib/dpif-offload-tc-netdev.c:1344,13'
          Dst:             flower_tun_enc_flags_to_match
        - Src:             'lib/dpif-offload-tc-netdev.c:1347,21'
          Dst:             netdev_get_type
        - Src:             'lib/dpif-offload-tc-netdev.c:1347,14'
          Dst:             strcmp
        - Src:             'lib/dpif-offload-tc-netdev.c:1348,13'
          Dst:             flower_tun_opt_to_match
        - Src:             'lib/dpif-offload-tc-netdev.c:1352,15'
          Dst:             nl_msg_start_nested
        - Src:             'lib/dpif-offload-tc-netdev.c:1353,11'
          Dst:             parse_tc_flower_to_actions
        - Src:             'lib/dpif-offload-tc-netdev.c:1357,5'
          Dst:             nl_msg_end_nested
        - Src:             'lib/dpif-offload-tc-netdev.c:1359,16'
          Dst:             ofpbuf_at_assert
        - Src:             'lib/dpif-offload-tc-netdev.c:1361,5'
          Dst:             parse_tc_flower_to_stats
        - Src:             'lib/dpif-offload-tc-netdev.c:1362,5'
          Dst:             parse_tc_flower_to_attrs
    - functionName:    u32_to_odp
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 220
      functionLinenumberEnd: 221
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    eth_type_vlan
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 429
      functionLinenumberEnd: 431
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htons
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:430,24'
          Dst:             htons
        - Src:             'lib/packets.h:431,21'
          Dst:             htons
    - functionName:    is_ip_any
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1059
      functionLinenumberEnd: 1060
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dl_type_is_ip_any
        - get_dl_type
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:1060,30'
          Dst:             get_dl_type
        - Src:             'lib/flow.h:1060,12'
          Dst:             dl_type_is_ip_any
    - functionName:    add_ufid_tc_mapping
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 311
      functionLinenumberEnd: 332
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          94
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hash_bytes
        - hash_int
        - hmap_insert_at
        - netdev_ref
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - xzalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc-netdev.c:312,37'
          Dst:             xzalloc
        - Src:             'lib/dpif-offload-tc-netdev.c:313,24'
          Dst:             hash_bytes
        - Src:             'lib/dpif-offload-tc-netdev.c:316,24'
          Dst:             hash_int
        - Src:             'lib/dpif-offload-tc-netdev.c:316,15'
          Dst:             hash_int
        - Src:             'lib/dpif-offload-tc-netdev.c:317,15'
          Dst:             hash_int
        - Src:             'lib/dpif-offload-tc-netdev.c:321,24'
          Dst:             netdev_ref
        - Src:             'lib/dpif-offload-tc-netdev.c:328,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-offload-tc-netdev.c:329,5'
          Dst:             hmap_insert_at
        - Src:             'lib/dpif-offload-tc-netdev.c:330,5'
          Dst:             hmap_insert_at
        - Src:             'lib/dpif-offload-tc-netdev.c:331,5'
          Dst:             ovs_mutex_unlock
    - functionName:    tc_make_tcf_id_chain
      functionSourceFile: '/src/openvswitch/lib/tc.h'
      linkageType:     InternalLinkage
      functionLinenumber: 357
      functionLinenumberEnd: 362
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - short
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - tc_make_tcf_id
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/tc.h:358,24'
          Dst:             tc_make_tcf_id
    - functionName:    get_prio_for_tc_flower
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 447
      functionLinenumberEnd: 487
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         24
      ICount:          178
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - get_next_available_prio
        - hash_bytes
        - hash_int
        - hmap_first_with_hash
        - hmap_insert_at
        - hmap_next_with_hash
        - memcmp
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - xzalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc-netdev.c:451,19'
          Dst:             hash_int
        - Src:             'lib/dpif-offload-tc-netdev.c:457,16'
          Dst:             hash_bytes
        - Src:             'lib/dpif-offload-tc-netdev.c:463,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-offload-tc-netdev.c:464,5'
          Dst:             hmap_first_with_hash
        - Src:             'lib/dpif-offload-tc-netdev.c:466,18'
          Dst:             memcmp
        - Src:             'lib/dpif-offload-tc-netdev.c:468,13'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/dpif-offload-tc-netdev.c:464,5'
          Dst:             hmap_next_with_hash
        - Src:             'lib/dpif-offload-tc-netdev.c:473,12'
          Dst:             get_next_available_prio
        - Src:             'lib/dpif-offload-tc-netdev.c:475,9'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/dpif-offload-tc-netdev.c:479,16'
          Dst:             xzalloc
        - Src:             'lib/dpif-offload-tc-netdev.c:483,5'
          Dst:             hmap_insert_at
        - Src:             'lib/dpif-offload-tc-netdev.c:484,5'
          Dst:             ovs_mutex_unlock
    - functionName:    test_key_and_mask
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1792
      functionLinenumberEnd: 1893
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         129
      ICount:          577
      EdgeCount:       165
      CyclomaticComplexity: 38
      functionsReached:
        - ds_cstr
        - ds_destroy
        - ds_put_cstr
        - ds_put_sparse_hex_dump
        - htons
        - is_all_zeros
        - is_ipv6_fragment_and_masked
        - vlog
        - vlog_rate_limit
        - vlog_should_drop
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc-netdev.c:1798,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-offload-tc-netdev.c:1803,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-offload-tc-netdev.c:1808,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-offload-tc-netdev.c:1813,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-offload-tc-netdev.c:1818,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-offload-tc-netdev.c:1824,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-offload-tc-netdev.c:1831,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-offload-tc-netdev.c:1838,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-offload-tc-netdev.c:1843,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-offload-tc-netdev.c:1849,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-offload-tc-netdev.c:1854,25'
          Dst:             htons
        - Src:             'lib/dpif-offload-tc-netdev.c:1857,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-offload-tc-netdev.c:1862,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-offload-tc-netdev.c:1866,32'
          Dst:             htons
        - Src:             'lib/dpif-offload-tc-netdev.c:1867,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-offload-tc-netdev.c:1872,9'
          Dst:             is_ipv6_fragment_and_masked
        - Src:             'lib/dpif-offload-tc-netdev.c:1873,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-offload-tc-netdev.c:1877,10'
          Dst:             is_all_zeros
        - Src:             'lib/dpif-offload-tc-netdev.c:1878,14'
          Dst:             vlog_should_drop
        - Src:             'lib/dpif-offload-tc-netdev.c:1881,13'
          Dst:             ds_put_cstr
        - Src:             'lib/dpif-offload-tc-netdev.c:1884,13'
          Dst:             ds_put_sparse_hex_dump
        - Src:             'lib/dpif-offload-tc-netdev.c:1886,13'
          Dst:             ds_cstr
        - Src:             'lib/dpif-offload-tc-netdev.c:1886,13'
          Dst:             vlog
        - Src:             'lib/dpif-offload-tc-netdev.c:1887,13'
          Dst:             ds_destroy
    - functionName:    is_ipv6_fragment_and_masked
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1777
      functionLinenumberEnd: 1788
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          81
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - htons
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc-netdev.c:1778,25'
          Dst:             htons
    - functionName:    parse_match_ct_state_to_flower
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1967
      functionLinenumberEnd: 2053
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         61
      ICount:          534
      EdgeCount:       81
      CyclomaticComplexity: 22
      functionsReached:
        - ovs_u128_is_zero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc-netdev.c:2048,10'
          Dst:             ovs_u128_is_zero
    - functionName:    flower_match_to_tun_opt
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1898
      functionLinenumberEnd: 1963
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          269
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc-netdev.c:1907,13'
          Dst:             vlog_rate_limit
    - functionName:    ntohll
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
        - ntohl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byte-order.h:36,12'
          Dst:             htonl
        - Src:             'lib/byte-order.h:36,44'
          Dst:             ntohl
        - Src:             'lib/byte-order.h:36,62'
          Dst:             ntohl
    - functionName:    flow_tnl_src_is_set
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 58
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ipv6_addr_is_set
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:58,27'
          Dst:             ipv6_addr_is_set
    - functionName:    flow_tnl_dst_is_set
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 51
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ipv6_addr_is_set
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:52,27'
          Dst:             ipv6_addr_is_set
    - functionName:    tc_netdev_flow_put
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2321
      functionLinenumberEnd: 2741
      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:         279
      ICount:          2413
      EdgeCount:       369
      CyclomaticComplexity: 92
      functionsReached:
        - add_ufid_tc_mapping
        - ccmap_find
        - ccmap_inc
        - del_filter_and_ufid_mapping
        - eth_type_vlan
        - flow_tnl_dst_is_set
        - flow_tnl_src_is_set
        - flower_match_to_tun_opt
        - get_block_id_from_netdev
        - get_prio_for_tc_flower
        - get_tc_qdisc_hook
        - get_ufid_tc_mapping
        - htons
        - is_ip_any
        - is_ipv6_fragment_and_masked
        - netdev_get_ifindex
        - netdev_get_name
        - netdev_get_type
        - netdev_tc_adjust_stats
        - netdev_tc_parse_nl_actions
        - ntohl
        - ntohll
        - ntohs
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovs_strerror
        - parse_match_ct_state_to_flower
        - strcmp
        - tc_make_tcf_id_chain
        - tc_replace_flower
        - test_key_and_mask
        - vlan_tci_to_pcp
        - vlan_tci_to_vid
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc-netdev.c:2323,31'
          Dst:             get_tc_qdisc_hook
        - Src:             'lib/dpif-offload-tc-netdev.c:2339,15'
          Dst:             netdev_get_ifindex
        - Src:             'lib/dpif-offload-tc-netdev.c:2341,9'
          Dst:             netdev_get_name
        - Src:             'lib/dpif-offload-tc-netdev.c:2341,9'
          Dst:             ovs_strerror
        - Src:             'lib/dpif-offload-tc-netdev.c:2341,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-offload-tc-netdev.c:2347,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-offload-tc-netdev.c:2354,47'
          Dst:             htons
        - Src:             'lib/dpif-offload-tc-netdev.c:2362,14'
          Dst:             ccmap_find
        - Src:             'lib/dpif-offload-tc-netdev.c:2363,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-offload-tc-netdev.c:2369,9'
          Dst:             flow_tnl_dst_is_set
        - Src:             'lib/dpif-offload-tc-netdev.c:2370,9'
          Dst:             flow_tnl_src_is_set
        - Src:             'lib/dpif-offload-tc-netdev.c:2371,9'
          Dst:             ntohll
        - Src:             'lib/dpif-offload-tc-netdev.c:2371,9'
          Dst:             ntohl
        - Src:             'lib/dpif-offload-tc-netdev.c:2371,9'
          Dst:             ntohl
        - Src:             'lib/dpif-offload-tc-netdev.c:2371,9'
          Dst:             ntohl
        - Src:             'lib/dpif-offload-tc-netdev.c:2371,9'
          Dst:             ntohl
        - Src:             'lib/dpif-offload-tc-netdev.c:2371,9'
          Dst:             ntohl
        - Src:             'lib/dpif-offload-tc-netdev.c:2371,9'
          Dst:             ntohl
        - Src:             'lib/dpif-offload-tc-netdev.c:2371,9'
          Dst:             ntohl
        - Src:             'lib/dpif-offload-tc-netdev.c:2371,9'
          Dst:             ntohl
        - Src:             'lib/dpif-offload-tc-netdev.c:2371,9'
          Dst:             ntohs
        - Src:             'lib/dpif-offload-tc-netdev.c:2371,9'
          Dst:             ntohs
        - Src:             'lib/dpif-offload-tc-netdev.c:2371,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-offload-tc-netdev.c:2457,21'
          Dst:             netdev_get_type
        - Src:             'lib/dpif-offload-tc-netdev.c:2457,14'
          Dst:             strcmp
        - Src:             'lib/dpif-offload-tc-netdev.c:2458,19'
          Dst:             flower_match_to_tun_opt
        - Src:             'lib/dpif-offload-tc-netdev.c:2460,17'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-offload-tc-netdev.c:2480,32'
          Dst:             eth_type_vlan
        - Src:             'lib/dpif-offload-tc-netdev.c:2487,50'
          Dst:             htons
        - Src:             'lib/dpif-offload-tc-netdev.c:2488,50'
          Dst:             htons
        - Src:             'lib/dpif-offload-tc-netdev.c:2489,45'
          Dst:             htons
        - Src:             'lib/dpif-offload-tc-netdev.c:2491,40'
          Dst:             htons
        - Src:             'lib/dpif-offload-tc-netdev.c:2492,42'
          Dst:             htons
        - Src:             'lib/dpif-offload-tc-netdev.c:2493,42'
          Dst:             htons
        - Src:             'lib/dpif-offload-tc-netdev.c:2496,41'
          Dst:             vlan_tci_to_vid
        - Src:             'lib/dpif-offload-tc-netdev.c:2497,42'
          Dst:             vlan_tci_to_vid
        - Src:             'lib/dpif-offload-tc-netdev.c:2498,17'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-offload-tc-netdev.c:2501,43'
          Dst:             vlan_tci_to_pcp
        - Src:             'lib/dpif-offload-tc-netdev.c:2502,44'
          Dst:             vlan_tci_to_pcp
        - Src:             'lib/dpif-offload-tc-netdev.c:2503,17'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-offload-tc-netdev.c:2506,42'
          Dst:             htons
        - Src:             'lib/dpif-offload-tc-netdev.c:2507,20'
          Dst:             ntohs
        - Src:             'lib/dpif-offload-tc-netdev.c:2515,32'
          Dst:             eth_type_vlan
        - Src:             'lib/dpif-offload-tc-netdev.c:2522,50'
          Dst:             htons
        - Src:             'lib/dpif-offload-tc-netdev.c:2523,50'
          Dst:             htons
        - Src:             'lib/dpif-offload-tc-netdev.c:2524,45'
          Dst:             htons
        - Src:             'lib/dpif-offload-tc-netdev.c:2526,40'
          Dst:             htons
        - Src:             'lib/dpif-offload-tc-netdev.c:2527,42'
          Dst:             htons
        - Src:             'lib/dpif-offload-tc-netdev.c:2528,42'
          Dst:             htons
        - Src:             'lib/dpif-offload-tc-netdev.c:2531,41'
          Dst:             vlan_tci_to_vid
        - Src:             'lib/dpif-offload-tc-netdev.c:2532,42'
          Dst:             vlan_tci_to_vid
        - Src:             'lib/dpif-offload-tc-netdev.c:2533,17'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-offload-tc-netdev.c:2536,43'
          Dst:             vlan_tci_to_pcp
        - Src:             'lib/dpif-offload-tc-netdev.c:2537,44'
          Dst:             vlan_tci_to_pcp
        - Src:             'lib/dpif-offload-tc-netdev.c:2538,17'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-offload-tc-netdev.c:2540,42'
          Dst:             htons
        - Src:             'lib/dpif-offload-tc-netdev.c:2541,20'
          Dst:             ntohs
        - Src:             'lib/dpif-offload-tc-netdev.c:2559,51'
          Dst:             htons
        - Src:             'lib/dpif-offload-tc-netdev.c:2578,35'
          Dst:             is_ip_any
        - Src:             'lib/dpif-offload-tc-netdev.c:2579,13'
          Dst:             is_ipv6_fragment_and_masked
        - Src:             'lib/dpif-offload-tc-netdev.c:2640,46'
          Dst:             ntohs
        - Src:             'lib/dpif-offload-tc-netdev.c:2641,47'
          Dst:             ntohs
        - Src:             'lib/dpif-offload-tc-netdev.c:2642,46'
          Dst:             ntohs
        - Src:             'lib/dpif-offload-tc-netdev.c:2643,47'
          Dst:             ntohs
        - Src:             'lib/dpif-offload-tc-netdev.c:2648,29'
          Dst:             htons
        - Src:             'lib/dpif-offload-tc-netdev.c:2655,36'
          Dst:             htons
        - Src:             'lib/dpif-offload-tc-netdev.c:2665,5'
          Dst:             parse_match_ct_state_to_flower
        - Src:             'lib/dpif-offload-tc-netdev.c:2672,11'
          Dst:             test_key_and_mask
        - Src:             'lib/dpif-offload-tc-netdev.c:2678,11'
          Dst:             netdev_tc_parse_nl_actions
        - Src:             'lib/dpif-offload-tc-netdev.c:2686,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-offload-tc-netdev.c:2691,9'
          Dst:             get_ufid_tc_mapping
        - Src:             'lib/dpif-offload-tc-netdev.c:2692,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-offload-tc-netdev.c:2695,41'
          Dst:             del_filter_and_ufid_mapping
        - Src:             'lib/dpif-offload-tc-netdev.c:2699,12'
          Dst:             get_prio_for_tc_flower
        - Src:             'lib/dpif-offload-tc-netdev.c:2701,9'
          Dst:             ovs_strerror
        - Src:             'lib/dpif-offload-tc-netdev.c:2701,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-offload-tc-netdev.c:2708,16'
          Dst:             get_block_id_from_netdev
        - Src:             'lib/dpif-offload-tc-netdev.c:2709,10'
          Dst:             tc_make_tcf_id_chain
        - Src:             'lib/dpif-offload-tc-netdev.c:2710,11'
          Dst:             tc_replace_flower
        - Src:             'lib/dpif-offload-tc-netdev.c:2716,13'
          Dst:             netdev_tc_adjust_stats
        - Src:             'lib/dpif-offload-tc-netdev.c:2729,21'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-offload-tc-netdev.c:2730,21'
          Dst:             ccmap_inc
        - Src:             'lib/dpif-offload-tc-netdev.c:2731,21'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/dpif-offload-tc-netdev.c:2737,9'
          Dst:             add_ufid_tc_mapping
    - functionName:    find_ufid
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 389
      functionLinenumberEnd: 405
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          108
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - hash_int
        - hmap_first_with_hash
        - hmap_next_with_hash
        - is_tcf_id_eq
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc-netdev.c:393,24'
          Dst:             hash_int
        - Src:             'lib/dpif-offload-tc-netdev.c:393,15'
          Dst:             hash_int
        - Src:             'lib/dpif-offload-tc-netdev.c:394,15'
          Dst:             hash_int
        - Src:             'lib/dpif-offload-tc-netdev.c:396,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-offload-tc-netdev.c:397,5'
          Dst:             hmap_first_with_hash
        - Src:             'lib/dpif-offload-tc-netdev.c:398,39'
          Dst:             is_tcf_id_eq
        - Src:             'lib/dpif-offload-tc-netdev.c:397,5'
          Dst:             hmap_next_with_hash
        - Src:             'lib/dpif-offload-tc-netdev.c:403,5'
          Dst:             ovs_mutex_unlock
    - functionName:    tc_netdev_flow_dump_next
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1373
      functionLinenumberEnd: 1414
      functionDepth:   0
      returnType:      bool
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          157
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - find_ufid
        - get_32aligned_u128
        - get_block_id_from_netdev
        - get_tc_qdisc_hook
        - get_ufid_adjust_stats
        - match_set_recirc_id
        - netdev_get_ifindex
        - netdev_tc_adjust_stats
        - nl_dump_next
        - parse_netlink_to_tc_flower
        - parse_tc_flower_to_match
        - tc_make_tcf_id
        - u32_to_odp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc-netdev.c:1378,25'
          Dst:             netdev_get_ifindex
        - Src:             'lib/dpif-offload-tc-netdev.c:1379,25'
          Dst:             get_block_id_from_netdev
        - Src:             'lib/dpif-offload-tc-netdev.c:1381,25'
          Dst:             get_tc_qdisc_hook
        - Src:             'lib/dpif-offload-tc-netdev.c:1378,10'
          Dst:             tc_make_tcf_id
        - Src:             'lib/dpif-offload-tc-netdev.c:1383,12'
          Dst:             nl_dump_next
        - Src:             'lib/dpif-offload-tc-netdev.c:1387,13'
          Dst:             parse_netlink_to_tc_flower
        - Src:             'lib/dpif-offload-tc-netdev.c:1391,13'
          Dst:             parse_tc_flower_to_match
        - Src:             'lib/dpif-offload-tc-netdev.c:1397,21'
          Dst:             get_32aligned_u128
        - Src:             'lib/dpif-offload-tc-netdev.c:1398,21'
          Dst:             find_ufid
        - Src:             'lib/dpif-offload-tc-netdev.c:1402,14'
          Dst:             get_ufid_adjust_stats
        - Src:             'lib/dpif-offload-tc-netdev.c:1403,13'
          Dst:             netdev_tc_adjust_stats
        - Src:             'lib/dpif-offload-tc-netdev.c:1406,44'
          Dst:             u32_to_odp
        - Src:             'lib/dpif-offload-tc-netdev.c:1408,9'
          Dst:             match_set_recirc_id
    - functionName:    tc_netdev_flow_dump_destroy
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 621
      functionLinenumberEnd: 626
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - netdev_close
        - nl_dump_done
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc-netdev.c:622,5'
          Dst:             nl_dump_done
        - Src:             'lib/dpif-offload-tc-netdev.c:623,5'
          Dst:             netdev_close
    - functionName:    tc_netdev_flow_dump_create
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 591
      functionLinenumberEnd: 618
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          111
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - get_block_id_from_netdev
        - get_tc_qdisc_hook
        - netdev_get_ifindex
        - netdev_get_name
        - netdev_ref
        - ovs_strerror
        - tc_dump_flower_start
        - tc_make_tcf_id
        - vlog_rate_limit
        - xzalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc-netdev.c:592,31'
          Dst:             get_tc_qdisc_hook
        - Src:             'lib/dpif-offload-tc-netdev.c:599,15'
          Dst:             netdev_get_ifindex
        - Src:             'lib/dpif-offload-tc-netdev.c:601,9'
          Dst:             netdev_get_name
        - Src:             'lib/dpif-offload-tc-netdev.c:601,9'
          Dst:             ovs_strerror
        - Src:             'lib/dpif-offload-tc-netdev.c:601,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-offload-tc-netdev.c:606,16'
          Dst:             get_block_id_from_netdev
        - Src:             'lib/dpif-offload-tc-netdev.c:607,12'
          Dst:             xzalloc
        - Src:             'lib/dpif-offload-tc-netdev.c:608,21'
          Dst:             xzalloc
        - Src:             'lib/dpif-offload-tc-netdev.c:609,20'
          Dst:             netdev_ref
        - Src:             'lib/dpif-offload-tc-netdev.c:612,10'
          Dst:             tc_make_tcf_id
        - Src:             'lib/dpif-offload-tc-netdev.c:613,5'
          Dst:             tc_dump_flower_start
    - functionName:    hmap_next
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 429
      functionLinenumberEnd: 432
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_next__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:432,15'
          Dst:             hmap_next__
    - functionName:    hmap_first
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 416
      functionLinenumberEnd: 417
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:417,12'
          Dst:             hmap_next__
    - functionName:    tc_netdev_flow_flush
      functionSourceFile: '/src/openvswitch/lib/dpif-offload-tc-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 568
      functionLinenumberEnd: 585
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          81
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - del_ufid_tc_mapping_unlocked
        - hmap_first
        - hmap_next
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - tc_del_flower_filter
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-offload-tc-netdev.c:572,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-offload-tc-netdev.c:573,5'
          Dst:             hmap_first
        - Src:             'lib/dpif-offload-tc-netdev.c:573,5'
          Dst:             hmap_next
        - Src:             'lib/dpif-offload-tc-netdev.c:578,15'
          Dst:             tc_del_flower_filter
        - Src:             'lib/dpif-offload-tc-netdev.c:580,13'
          Dst:             del_ufid_tc_mapping_unlocked
        - Src:             'lib/dpif-offload-tc-netdev.c:583,5'
          Dst:             ovs_mutex_unlock
    - functionName:    init_this_module_netlink_conntrack
      functionSourceFile: '/src/openvswitch/lib/netlink-conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41
      functionLinenumberEnd: 41
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-conntrack.c:41,1'
          Dst:             vlog_insert_module
    - functionName:    nl_ct_sctp_state_to_dpif
      functionSourceFile: '/src/openvswitch/lib/netlink-conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 754
      functionLinenumberEnd: 779
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          68
      EdgeCount:       28
      CyclomaticComplexity: 15
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/netlink-conntrack.c:755,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    ip_ct_tcp_flags_to_dpif
      functionSourceFile: '/src/openvswitch/lib/netlink-conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 681
      functionLinenumberEnd: 687
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          81
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nl_ct_tcp_state_to_dpif
      functionSourceFile: '/src/openvswitch/lib/netlink-conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 652
      functionLinenumberEnd: 677
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          68
      EdgeCount:       24
      CyclomaticComplexity: 13
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/netlink-conntrack.c:653,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    nl_ct_parse_protoinfo_sctp
      functionSourceFile: '/src/openvswitch/lib/netlink-conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 784
      functionLinenumberEnd: 810
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          79
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - nl_attr_get_u32
        - nl_attr_get_u8
        - nl_ct_sctp_state_to_dpif
        - nl_parse_nested
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-conntrack.c:795,14'
          Dst:             nl_parse_nested
        - Src:             'lib/netlink-conntrack.c:800,13'
          Dst:             nl_attr_get_u8
        - Src:             'lib/netlink-conntrack.c:799,33'
          Dst:             nl_ct_sctp_state_to_dpif
        - Src:             'lib/netlink-conntrack.c:801,37'
          Dst:             nl_attr_get_u32
        - Src:             'lib/netlink-conntrack.c:803,38'
          Dst:             nl_attr_get_u32
        - Src:             'lib/netlink-conntrack.c:806,9'
          Dst:             vlog_rate_limit
    - functionName:    nl_ct_parse_protoinfo_tcp
      functionSourceFile: '/src/openvswitch/lib/netlink-conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 693
      functionLinenumberEnd: 748
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         23
      ICount:          157
      EdgeCount:       29
      CyclomaticComplexity: 8
      functionsReached:
        - ip_ct_tcp_flags_to_dpif
        - nl_attr_get_u8
        - nl_attr_get_unspec
        - nl_ct_tcp_state_to_dpif
        - nl_parse_nested
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-conntrack.c:708,14'
          Dst:             nl_parse_nested
        - Src:             'lib/netlink-conntrack.c:715,13'
          Dst:             nl_attr_get_u8
        - Src:             'lib/netlink-conntrack.c:714,17'
          Dst:             nl_ct_tcp_state_to_dpif
        - Src:             'lib/netlink-conntrack.c:723,17'
          Dst:             nl_attr_get_u8
        - Src:             'lib/netlink-conntrack.c:727,17'
          Dst:             nl_attr_get_u8
        - Src:             'lib/netlink-conntrack.c:731,17'
          Dst:             nl_attr_get_unspec
        - Src:             'lib/netlink-conntrack.c:734,17'
          Dst:             ip_ct_tcp_flags_to_dpif
        - Src:             'lib/netlink-conntrack.c:738,17'
          Dst:             nl_attr_get_unspec
        - Src:             'lib/netlink-conntrack.c:741,17'
          Dst:             ip_ct_tcp_flags_to_dpif
        - Src:             'lib/netlink-conntrack.c:744,9'
          Dst:             vlog_rate_limit
    - functionName:    ntohll
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
        - ntohl
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byte-order.h:36,12'
          Dst:             htonl
        - Src:             'lib/byte-order.h:36,44'
          Dst:             ntohl
        - Src:             'lib/byte-order.h:36,62'
          Dst:             ntohl
    - functionName:    nl_ct_parse_tuple_proto
      functionSourceFile: '/src/openvswitch/lib/netlink-conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 481
      functionLinenumberEnd: 534
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         59
      ICount:          310
      EdgeCount:       76
      CyclomaticComplexity: 19
      functionsReached:
        - nl_attr_get_be16
        - nl_attr_get_u8
        - nl_parse_nested
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-conntrack.c:496,14'
          Dst:             nl_parse_nested
        - Src:             'lib/netlink-conntrack.c:499,27'
          Dst:             nl_attr_get_u8
        - Src:             'lib/netlink-conntrack.c:504,17'
          Dst:             vlog_rate_limit
        - Src:             'lib/netlink-conntrack.c:507,30'
          Dst:             nl_attr_get_be16
        - Src:             'lib/netlink-conntrack.c:508,32'
          Dst:             nl_attr_get_u8
        - Src:             'lib/netlink-conntrack.c:509,32'
          Dst:             nl_attr_get_u8
        - Src:             'lib/netlink-conntrack.c:514,17'
          Dst:             vlog_rate_limit
        - Src:             'lib/netlink-conntrack.c:517,30'
          Dst:             nl_attr_get_be16
        - Src:             'lib/netlink-conntrack.c:518,32'
          Dst:             nl_attr_get_u8
        - Src:             'lib/netlink-conntrack.c:519,32'
          Dst:             nl_attr_get_u8
        - Src:             'lib/netlink-conntrack.c:521,31'
          Dst:             nl_attr_get_be16
        - Src:             'lib/netlink-conntrack.c:522,31'
          Dst:             nl_attr_get_be16
        - Src:             'lib/netlink-conntrack.c:526,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/netlink-conntrack.c:529,9'
          Dst:             vlog_rate_limit
    - functionName:    nl_ct_parse_tuple_ip
      functionSourceFile: '/src/openvswitch/lib/netlink-conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 438
      functionLinenumberEnd: 477
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         35
      ICount:          175
      EdgeCount:       44
      CyclomaticComplexity: 11
      functionsReached:
        - nl_attr_get
        - nl_attr_get_be32
        - nl_parse_nested
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-conntrack.c:448,14'
          Dst:             nl_parse_nested
        - Src:             'lib/netlink-conntrack.c:453,33'
          Dst:             nl_attr_get_be32
        - Src:             'lib/netlink-conntrack.c:456,33'
          Dst:             nl_attr_get_be32
        - Src:             'lib/netlink-conntrack.c:460,41'
          Dst:             nl_attr_get
        - Src:             'lib/netlink-conntrack.c:464,41'
          Dst:             nl_attr_get
        - Src:             'lib/netlink-conntrack.c:468,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/netlink-conntrack.c:472,9'
          Dst:             vlog_rate_limit
    - functionName:    nl_ct_parse_helper
      functionSourceFile: '/src/openvswitch/lib/netlink-conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 848
      functionLinenumberEnd: 866
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          63
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - nl_attr_get_string
        - nl_parse_nested
        - vlog_rate_limit
        - xstrdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-conntrack.c:855,14'
          Dst:             nl_parse_nested
        - Src:             'lib/netlink-conntrack.c:860,32'
          Dst:             nl_attr_get_string
        - Src:             'lib/netlink-conntrack.c:860,24'
          Dst:             xstrdup
        - Src:             'lib/netlink-conntrack.c:862,9'
          Dst:             vlog_rate_limit
    - functionName:    nl_ct_parse_protoinfo
      functionSourceFile: '/src/openvswitch/lib/netlink-conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 815
      functionLinenumberEnd: 843
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         22
      ICount:          105
      EdgeCount:       27
      CyclomaticComplexity: 7
      functionsReached:
        - nl_ct_parse_protoinfo_sctp
        - nl_ct_parse_protoinfo_tcp
        - nl_parse_nested
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-conntrack.c:824,14'
          Dst:             nl_parse_nested
        - Src:             'lib/netlink-conntrack.c:830,22'
          Dst:             nl_ct_parse_protoinfo_tcp
        - Src:             'lib/netlink-conntrack.c:833,22'
          Dst:             nl_ct_parse_protoinfo_sctp
        - Src:             'lib/netlink-conntrack.c:836,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/netlink-conntrack.c:839,9'
          Dst:             vlog_rate_limit
    - functionName:    ips_status_to_dpif_flags
      functionSourceFile: '/src/openvswitch/lib/netlink-conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1173
      functionLinenumberEnd: 1179
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          126
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nl_ct_parse_timestamp
      functionSourceFile: '/src/openvswitch/lib/netlink-conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 411
      functionLinenumberEnd: 433
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          77
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - nl_attr_get_be64
        - nl_parse_nested
        - ntohll
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-conntrack.c:419,14'
          Dst:             nl_parse_nested
        - Src:             'lib/netlink-conntrack.c:423,22'
          Dst:             nl_attr_get_be64
        - Src:             'lib/netlink-conntrack.c:423,15'
          Dst:             ntohll
        - Src:             'lib/netlink-conntrack.c:426,26'
          Dst:             nl_attr_get_be64
        - Src:             'lib/netlink-conntrack.c:426,19'
          Dst:             ntohll
        - Src:             'lib/netlink-conntrack.c:429,9'
          Dst:             vlog_rate_limit
    - functionName:    nl_ct_parse_counters
      functionSourceFile: '/src/openvswitch/lib/netlink-conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 387
      functionLinenumberEnd: 406
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          68
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - nl_attr_get_be64
        - nl_parse_nested
        - ntohll
        - vlog_rate_limit
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-conntrack.c:395,14'
          Dst:             nl_parse_nested
        - Src:             'lib/netlink-conntrack.c:399,22'
          Dst:             nl_attr_get_be64
        - Src:             'lib/netlink-conntrack.c:399,15'
          Dst:             ntohll
        - Src:             'lib/netlink-conntrack.c:400,34'
          Dst:             nl_attr_get_be64
        - Src:             'lib/netlink-conntrack.c:400,27'
          Dst:             ntohll
        - Src:             'lib/netlink-conntrack.c:402,9'
          Dst:             vlog_rate_limit
    - functionName:    nl_ct_parse_tuple
      functionSourceFile: '/src/openvswitch/lib/netlink-conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 539
      functionLinenumberEnd: 573
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          116
      EdgeCount:       27
      CyclomaticComplexity: 7
      functionsReached:
        - ct_dpif_format_tuple
        - ds_cstr
        - ds_destroy
        - ds_init
        - nl_ct_parse_tuple_ip
        - nl_ct_parse_tuple_proto
        - nl_parse_nested
        - vlog_rate_limit
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-conntrack.c:547,14'
          Dst:             nl_parse_nested
        - Src:             'lib/netlink-conntrack.c:554,14'
          Dst:             nl_ct_parse_tuple_ip
        - Src:             'lib/netlink-conntrack.c:555,17'
          Dst:             nl_ct_parse_tuple_proto
        - Src:             'lib/netlink-conntrack.c:558,13'
          Dst:             ds_init
        - Src:             'lib/netlink-conntrack.c:559,13'
          Dst:             ct_dpif_format_tuple
        - Src:             'lib/netlink-conntrack.c:561,13'
          Dst:             ds_cstr
        - Src:             'lib/netlink-conntrack.c:561,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/netlink-conntrack.c:562,13'
          Dst:             ds_destroy
        - Src:             'lib/netlink-conntrack.c:568,9'
          Dst:             vlog_rate_limit
    - functionName:    ofpbuf_at
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 183
      functionLinenumberEnd: 189
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:185,9'
          Dst:             ovs_ignore
    - functionName:    nl_ct_set_timeout_policy_attr
      functionSourceFile: '/src/openvswitch/lib/netlink-conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 879
      functionLinenumberEnd: 882
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          24
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nl_ct_parse_icmpv6_timeout_policy_data
      functionSourceFile: '/src/openvswitch/lib/netlink-conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 978
      functionLinenumberEnd: 995
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          57
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - nl_attr_get_be32
        - nl_ct_set_timeout_policy_attr
        - nl_parse_nested
        - ntohl
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-conntrack.c:985,10'
          Dst:             nl_parse_nested
        - Src:             'lib/netlink-conntrack.c:986,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/netlink-conntrack.c:993,15'
          Dst:             nl_attr_get_be32
        - Src:             'lib/netlink-conntrack.c:993,9'
          Dst:             ntohl
        - Src:             'lib/netlink-conntrack.c:991,5'
          Dst:             nl_ct_set_timeout_policy_attr
    - functionName:    nl_ct_parse_icmp_timeout_policy_data
      functionSourceFile: '/src/openvswitch/lib/netlink-conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 956
      functionLinenumberEnd: 973
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          57
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - nl_attr_get_be32
        - nl_ct_set_timeout_policy_attr
        - nl_parse_nested
        - ntohl
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-conntrack.c:963,10'
          Dst:             nl_parse_nested
        - Src:             'lib/netlink-conntrack.c:964,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/netlink-conntrack.c:971,15'
          Dst:             nl_attr_get_be32
        - Src:             'lib/netlink-conntrack.c:971,9'
          Dst:             ntohl
        - Src:             'lib/netlink-conntrack.c:969,5'
          Dst:             nl_ct_set_timeout_policy_attr
    - functionName:    nl_ct_parse_udp_timeout_policy_data
      functionSourceFile: '/src/openvswitch/lib/netlink-conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 930
      functionLinenumberEnd: 951
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          75
      EdgeCount:       18
      CyclomaticComplexity: 5
      functionsReached:
        - nl_attr_get_be32
        - nl_ct_set_timeout_policy_attr
        - nl_parse_nested
        - ntohl
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-conntrack.c:939,10'
          Dst:             nl_parse_nested
        - Src:             'lib/netlink-conntrack.c:940,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/netlink-conntrack.c:948,45'
          Dst:             nl_attr_get_be32
        - Src:             'lib/netlink-conntrack.c:948,39'
          Dst:             ntohl
        - Src:             'lib/netlink-conntrack.c:947,9'
          Dst:             nl_ct_set_timeout_policy_attr
    - functionName:    nl_ct_parse_tcp_timeout_policy_data
      functionSourceFile: '/src/openvswitch/lib/netlink-conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 887
      functionLinenumberEnd: 925
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          75
      EdgeCount:       18
      CyclomaticComplexity: 5
      functionsReached:
        - nl_attr_get_be32
        - nl_ct_set_timeout_policy_attr
        - nl_parse_nested
        - ntohl
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-conntrack.c:914,10'
          Dst:             nl_parse_nested
        - Src:             'lib/netlink-conntrack.c:915,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/netlink-conntrack.c:922,45'
          Dst:             nl_attr_get_be32
        - Src:             'lib/netlink-conntrack.c:922,39'
          Dst:             ntohl
        - Src:             'lib/netlink-conntrack.c:921,9'
          Dst:             nl_ct_set_timeout_policy_attr
    - functionName:    ofpbuf_pull
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 258
      functionLinenumberEnd: 269
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          64
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:259,5'
          Dst:             ovs_ignore
    - functionName:    nl_ct_parse_timeout_policy_data
      functionSourceFile: '/src/openvswitch/lib/netlink-conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1000
      functionLinenumberEnd: 1013
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          61
      EdgeCount:       17
      CyclomaticComplexity: 10
      functionsReached:
        - nl_ct_parse_icmp_timeout_policy_data
        - nl_ct_parse_icmpv6_timeout_policy_data
        - nl_ct_parse_tcp_timeout_policy_data
        - nl_ct_parse_udp_timeout_policy_data
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/netlink-conntrack.c:1001,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/netlink-conntrack.c:1003,20'
          Dst:             nl_ct_parse_tcp_timeout_policy_data
        - Src:             'lib/netlink-conntrack.c:1005,20'
          Dst:             nl_ct_parse_udp_timeout_policy_data
        - Src:             'lib/netlink-conntrack.c:1007,20'
          Dst:             nl_ct_parse_icmp_timeout_policy_data
        - Src:             'lib/netlink-conntrack.c:1009,20'
          Dst:             nl_ct_parse_icmpv6_timeout_policy_data
    - functionName:    ofpbuf_try_pull
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 275
      functionLinenumberEnd: 276
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofpbuf_pull
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:276,30'
          Dst:             ofpbuf_pull
    - functionName:    ofpbuf_const_initializer
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 97
      functionLinenumberEnd: 105
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          30
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nl_ct_put_tuple_proto
      functionSourceFile: '/src/openvswitch/lib/netlink-conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 598
      functionLinenumberEnd: 625
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         29
      ICount:          194
      EdgeCount:       37
      CyclomaticComplexity: 10
      functionsReached:
        - nl_msg_end_nested
        - nl_msg_put_be16
        - nl_msg_put_u8
        - nl_msg_start_nested
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-conntrack.c:599,21'
          Dst:             nl_msg_start_nested
        - Src:             'lib/netlink-conntrack.c:601,5'
          Dst:             nl_msg_put_u8
        - Src:             'lib/netlink-conntrack.c:604,9'
          Dst:             nl_msg_put_be16
        - Src:             'lib/netlink-conntrack.c:605,9'
          Dst:             nl_msg_put_u8
        - Src:             'lib/netlink-conntrack.c:606,9'
          Dst:             nl_msg_put_u8
        - Src:             'lib/netlink-conntrack.c:609,9'
          Dst:             nl_msg_put_be16
        - Src:             'lib/netlink-conntrack.c:610,9'
          Dst:             nl_msg_put_u8
        - Src:             'lib/netlink-conntrack.c:611,9'
          Dst:             nl_msg_put_u8
        - Src:             'lib/netlink-conntrack.c:615,9'
          Dst:             nl_msg_put_be16
        - Src:             'lib/netlink-conntrack.c:616,9'
          Dst:             nl_msg_put_be16
        - Src:             'lib/netlink-conntrack.c:618,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/netlink-conntrack.c:623,5'
          Dst:             nl_msg_end_nested
    - functionName:    nl_ct_put_tuple_ip
      functionSourceFile: '/src/openvswitch/lib/netlink-conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 577
      functionLinenumberEnd: 594
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          95
      EdgeCount:       18
      CyclomaticComplexity: 5
      functionsReached:
        - nl_msg_end_nested
        - nl_msg_put_be32
        - nl_msg_put_in6_addr
        - nl_msg_start_nested
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-conntrack.c:578,21'
          Dst:             nl_msg_start_nested
        - Src:             'lib/netlink-conntrack.c:581,9'
          Dst:             nl_msg_put_be32
        - Src:             'lib/netlink-conntrack.c:582,9'
          Dst:             nl_msg_put_be32
        - Src:             'lib/netlink-conntrack.c:584,9'
          Dst:             nl_msg_put_in6_addr
        - Src:             'lib/netlink-conntrack.c:585,9'
          Dst:             nl_msg_put_in6_addr
        - Src:             'lib/netlink-conntrack.c:587,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/netlink-conntrack.c:592,5'
          Dst:             nl_msg_end_nested
    - functionName:    ovsthread_once_start
      functionSourceFile: '/src/openvswitch/./include/openvswitch/thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsthread_once_start__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/thread.h:161,12'
          Dst:             ovsthread_once_start__
    - functionName:    nl_ct_parse_entry
      functionSourceFile: '/src/openvswitch/lib/netlink-conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1302
      functionLinenumberEnd: 1318
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          52
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - ct_dpif_entry_uninit
        - nl_ct_attrs_to_ct_dpif_entry
        - nl_ct_parse_header_policy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-conntrack.c:1307,10'
          Dst:             nl_ct_parse_header_policy
        - Src:             'lib/netlink-conntrack.c:1311,10'
          Dst:             nl_ct_attrs_to_ct_dpif_entry
        - Src:             'lib/netlink-conntrack.c:1312,9'
          Dst:             ct_dpif_entry_uninit
    - functionName:    nl_ct_parse_header_policy
      functionSourceFile: '/src/openvswitch/lib/netlink-conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1187
      functionLinenumberEnd: 1233
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         41
      ICount:          224
      EdgeCount:       49
      CyclomaticComplexity: 10
      functionsReached:
        - nl_policy_parse
        - ofpbuf_at
        - vlog_rate_limit
      functionUses:    3
      BranchProfiles:
        - Branch String:   'lib/netlink-conntrack.c:1219,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/netlink-conntrack.c:1192,11'
          Dst:             ofpbuf_at
        - Src:             'lib/netlink-conntrack.c:1193,11'
          Dst:             ofpbuf_at
        - Src:             'lib/netlink-conntrack.c:1195,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/netlink-conntrack.c:1199,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/netlink-conntrack.c:1204,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/netlink-conntrack.c:1209,10'
          Dst:             nl_policy_parse
        - Src:             'lib/netlink-conntrack.c:1212,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/netlink-conntrack.c:1228,9'
          Dst:             vlog_rate_limit
    - functionName:    nl_ct_attrs_to_ct_dpif_entry
      functionSourceFile: '/src/openvswitch/lib/netlink-conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1239
      functionLinenumberEnd: 1297
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         59
      ICount:          347
      EdgeCount:       80
      CyclomaticComplexity: 23
      functionsReached:
        - ips_status_to_dpif_flags
        - nl_attr_get
        - nl_attr_get_be16
        - nl_attr_get_be32
        - nl_attr_get_size
        - nl_ct_parse_counters
        - nl_ct_parse_helper
        - nl_ct_parse_protoinfo
        - nl_ct_parse_timestamp
        - nl_ct_parse_tuple
        - ntohl
        - ntohs
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-conntrack.c:1240,10'
          Dst:             nl_ct_parse_tuple
        - Src:             'lib/netlink-conntrack.c:1244,10'
          Dst:             nl_ct_parse_tuple
        - Src:             'lib/netlink-conntrack.c:1249,10'
          Dst:             nl_ct_parse_counters
        - Src:             'lib/netlink-conntrack.c:1254,10'
          Dst:             nl_ct_parse_counters
        - Src:             'lib/netlink-conntrack.c:1259,10'
          Dst:             nl_ct_parse_timestamp
        - Src:             'lib/netlink-conntrack.c:1263,27'
          Dst:             nl_attr_get_be32
        - Src:             'lib/netlink-conntrack.c:1263,21'
          Dst:             ntohl
        - Src:             'lib/netlink-conntrack.c:1266,29'
          Dst:             nl_attr_get_be16
        - Src:             'lib/netlink-conntrack.c:1266,23'
          Dst:             ntohs
        - Src:             'lib/netlink-conntrack.c:1270,19'
          Dst:             nl_attr_get_be32
        - Src:             'lib/netlink-conntrack.c:1270,13'
          Dst:             ntohl
        - Src:             'lib/netlink-conntrack.c:1269,25'
          Dst:             ips_status_to_dpif_flags
        - Src:             'lib/netlink-conntrack.c:1273,32'
          Dst:             nl_attr_get_be32
        - Src:             'lib/netlink-conntrack.c:1273,26'
          Dst:             ntohl
        - Src:             'lib/netlink-conntrack.c:1276,29'
          Dst:             nl_attr_get_be32
        - Src:             'lib/netlink-conntrack.c:1276,23'
          Dst:             ntohl
        - Src:             'lib/netlink-conntrack.c:1280,32'
          Dst:             nl_attr_get
        - Src:             'lib/netlink-conntrack.c:1281,16'
          Dst:             nl_attr_get_size
        - Src:             'lib/netlink-conntrack.c:1281,16'
          Dst:             nl_attr_get_size
        - Src:             'lib/netlink-conntrack.c:1284,10'
          Dst:             nl_ct_parse_protoinfo
        - Src:             'lib/netlink-conntrack.c:1288,10'
          Dst:             nl_ct_parse_helper
        - Src:             'lib/netlink-conntrack.c:1292,10'
          Dst:             nl_ct_parse_tuple
    - functionName:    nl_ct_timeout_policy_dump_done
      functionSourceFile: '/src/openvswitch/lib/netlink-conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1163
      functionLinenumberEnd: 1167
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_dump_done
        - ofpbuf_uninit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-conntrack.c:1164,16'
          Dst:             nl_dump_done
        - Src:             'lib/netlink-conntrack.c:1165,5'
          Dst:             ofpbuf_uninit
    - functionName:    nl_ct_timeout_policy_dump_next
      functionSourceFile: '/src/openvswitch/lib/netlink-conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1150
      functionLinenumberEnd: 1159
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - nl_ct_timeout_policy_from_ofpbuf
        - nl_dump_next
        - ofpbuf_uninit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-conntrack.c:1153,10'
          Dst:             nl_dump_next
        - Src:             'lib/netlink-conntrack.c:1156,15'
          Dst:             nl_ct_timeout_policy_from_ofpbuf
        - Src:             'lib/netlink-conntrack.c:1157,5'
          Dst:             ofpbuf_uninit
    - functionName:    nl_ct_timeout_policy_from_ofpbuf
      functionSourceFile: '/src/openvswitch/lib/netlink-conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1019
      functionLinenumberEnd: 1055
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          130
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - nl_attr_get_be16
        - nl_attr_get_string
        - nl_attr_get_u8
        - nl_ct_parse_timeout_policy_data
        - nl_policy_parse
        - ntohs
        - ofpbuf_const_initializer
        - ofpbuf_try_pull
        - ovs_strlcpy
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-conntrack.c:1033,23'
          Dst:             ofpbuf_const_initializer
        - Src:             'lib/netlink-conntrack.c:1034,30'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/netlink-conntrack.c:1035,30'
          Dst:             ofpbuf_try_pull
        - Src:             'lib/netlink-conntrack.c:1040,13'
          Dst:             nl_policy_parse
        - Src:             'lib/netlink-conntrack.c:1047,34'
          Dst:             nl_attr_get_string
        - Src:             'lib/netlink-conntrack.c:1047,9'
          Dst:             ovs_strlcpy
        - Src:             'lib/netlink-conntrack.c:1050,26'
          Dst:             nl_attr_get_be16
        - Src:             'lib/netlink-conntrack.c:1050,20'
          Dst:             ntohs
        - Src:             'lib/netlink-conntrack.c:1051,20'
          Dst:             nl_attr_get_u8
        - Src:             'lib/netlink-conntrack.c:1054,12'
          Dst:             nl_ct_parse_timeout_policy_data
    - functionName:    nl_ct_timeout_policy_dump_start
      functionSourceFile: '/src/openvswitch/lib/netlink-conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1131
      functionLinenumberEnd: 1144
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_dump_start
        - nl_msg_put_nfgenmsg
        - ofpbuf_init
        - ofpbuf_uninit
        - xzalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-conntrack.c:1135,23'
          Dst:             xzalloc
        - Src:             'lib/netlink-conntrack.c:1136,5'
          Dst:             ofpbuf_init
        - Src:             'lib/netlink-conntrack.c:1137,5'
          Dst:             nl_msg_put_nfgenmsg
        - Src:             'lib/netlink-conntrack.c:1141,5'
          Dst:             nl_dump_start
        - Src:             'lib/netlink-conntrack.c:1142,5'
          Dst:             ofpbuf_uninit
        - Src:             'lib/netlink-conntrack.c:1143,5'
          Dst:             ofpbuf_init
    - functionName:    nl_msg_put_nfgenmsg
      functionSourceFile: '/src/openvswitch/lib/netlink-conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1347
      functionLinenumberEnd: 1357
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - size_t
        - int
        - char
        - char
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          55
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_msg_put_nlmsghdr
        - nl_msg_put_uninit
        - ovs_ignore
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-conntrack.c:1350,5'
          Dst:             nl_msg_put_nlmsghdr
        - Src:             'lib/netlink-conntrack.c:1352,5'
          Dst:             ovs_ignore
        - Src:             'lib/netlink-conntrack.c:1353,11'
          Dst:             nl_msg_put_uninit
    - functionName:    nl_ct_del_timeout_policy
      functionSourceFile: '/src/openvswitch/lib/netlink-conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1110
      functionLinenumberEnd: 1120
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_msg_put_nfgenmsg
        - nl_msg_put_string
        - nl_transact
        - ofpbuf_init
        - ofpbuf_uninit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-conntrack.c:1113,5'
          Dst:             ofpbuf_init
        - Src:             'lib/netlink-conntrack.c:1114,5'
          Dst:             nl_msg_put_nfgenmsg
        - Src:             'lib/netlink-conntrack.c:1117,5'
          Dst:             nl_msg_put_string
        - Src:             'lib/netlink-conntrack.c:1118,15'
          Dst:             nl_transact
        - Src:             'lib/netlink-conntrack.c:1119,5'
          Dst:             ofpbuf_uninit
    - functionName:    ofpbuf_delete
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 172
      functionLinenumberEnd: 177
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          28
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofpbuf_uninit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:174,9'
          Dst:             ofpbuf_uninit
    - functionName:    nl_ct_get_timeout_policy
      functionSourceFile: '/src/openvswitch/lib/netlink-conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1088
      functionLinenumberEnd: 1105
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - nl_ct_timeout_policy_from_ofpbuf
        - nl_msg_put_nfgenmsg
        - nl_msg_put_string
        - nl_transact
        - ofpbuf_delete
        - ofpbuf_init
        - ofpbuf_uninit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-conntrack.c:1091,5'
          Dst:             ofpbuf_init
        - Src:             'lib/netlink-conntrack.c:1092,5'
          Dst:             nl_msg_put_nfgenmsg
        - Src:             'lib/netlink-conntrack.c:1094,5'
          Dst:             nl_msg_put_string
        - Src:             'lib/netlink-conntrack.c:1095,15'
          Dst:             nl_transact
        - Src:             'lib/netlink-conntrack.c:1100,11'
          Dst:             nl_ct_timeout_policy_from_ofpbuf
        - Src:             'lib/netlink-conntrack.c:1103,5'
          Dst:             ofpbuf_uninit
        - Src:             'lib/netlink-conntrack.c:1104,5'
          Dst:             ofpbuf_delete
    - functionName:    nl_ct_set_timeout_policy
      functionSourceFile: '/src/openvswitch/lib/netlink-conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1059
      functionLinenumberEnd: 1082
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          90
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - htonl
        - htons
        - nl_msg_end_nested
        - nl_msg_put_be16
        - nl_msg_put_be32
        - nl_msg_put_nfgenmsg
        - nl_msg_put_string
        - nl_msg_put_u8
        - nl_msg_start_nested
        - nl_transact
        - ofpbuf_init
        - ofpbuf_uninit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-conntrack.c:1063,5'
          Dst:             ofpbuf_init
        - Src:             'lib/netlink-conntrack.c:1064,5'
          Dst:             nl_msg_put_nfgenmsg
        - Src:             'lib/netlink-conntrack.c:1068,5'
          Dst:             nl_msg_put_string
        - Src:             'lib/netlink-conntrack.c:1069,48'
          Dst:             htons
        - Src:             'lib/netlink-conntrack.c:1069,5'
          Dst:             nl_msg_put_be16
        - Src:             'lib/netlink-conntrack.c:1070,5'
          Dst:             nl_msg_put_u8
        - Src:             'lib/netlink-conntrack.c:1072,14'
          Dst:             nl_msg_start_nested
        - Src:             'lib/netlink-conntrack.c:1075,38'
          Dst:             htonl
        - Src:             'lib/netlink-conntrack.c:1075,13'
          Dst:             nl_msg_put_be32
        - Src:             'lib/netlink-conntrack.c:1078,5'
          Dst:             nl_msg_end_nested
        - Src:             'lib/netlink-conntrack.c:1080,15'
          Dst:             nl_transact
        - Src:             'lib/netlink-conntrack.c:1081,5'
          Dst:             ofpbuf_uninit
    - functionName:    nl_ct_flush_zone_with_cta_zone
      functionSourceFile: '/src/openvswitch/lib/netlink-conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 271
      functionLinenumberEnd: 284
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htons
        - nl_msg_put_be16
        - nl_msg_put_nfgenmsg
        - nl_transact
        - ofpbuf_init
        - ofpbuf_uninit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-conntrack.c:275,5'
          Dst:             ofpbuf_init
        - Src:             'lib/netlink-conntrack.c:277,5'
          Dst:             nl_msg_put_nfgenmsg
        - Src:             'lib/netlink-conntrack.c:279,37'
          Dst:             htons
        - Src:             'lib/netlink-conntrack.c:279,5'
          Dst:             nl_msg_put_be16
        - Src:             'lib/netlink-conntrack.c:281,11'
          Dst:             nl_transact
        - Src:             'lib/netlink-conntrack.c:282,5'
          Dst:             ofpbuf_uninit
    - functionName:    netlink_flush_supports_zone
      functionSourceFile: '/src/openvswitch/lib/netlink-conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 289
      functionLinenumberEnd: 302
      functionDepth:   0
      returnType:      bool
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         14
      ICount:          51
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - ovs_kernel_is_version_or_newer
        - ovsthread_once_done
        - ovsthread_once_start
        - vlog
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-conntrack.c:293,9'
          Dst:             ovsthread_once_start
        - Src:             'lib/netlink-conntrack.c:294,13'
          Dst:             ovs_kernel_is_version_or_newer
        - Src:             'lib/netlink-conntrack.c:297,13'
          Dst:             vlog
        - Src:             'lib/netlink-conntrack.c:300,9'
          Dst:             ovsthread_once_done
    - functionName:    nl_ct_flush_zone
      functionSourceFile: '/src/openvswitch/lib/netlink-conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 307
      functionLinenumberEnd: 381
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         17
      ICount:          121
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - htons
        - netlink_flush_supports_zone
        - nl_attr_get_be16
        - nl_ct_flush_zone_with_cta_zone
        - nl_ct_parse_header_policy
        - nl_dump_done
        - nl_dump_next
        - nl_dump_start
        - nl_msg_put_be16
        - nl_msg_put_nfgenmsg
        - nl_msg_put_unspec
        - nl_transact
        - ntohs
        - ofpbuf_clear
        - ofpbuf_init
        - ofpbuf_uninit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-conntrack.c:325,9'
          Dst:             netlink_flush_supports_zone
        - Src:             'lib/netlink-conntrack.c:326,16'
          Dst:             nl_ct_flush_zone_with_cta_zone
        - Src:             'lib/netlink-conntrack.c:329,5'
          Dst:             ofpbuf_init
        - Src:             'lib/netlink-conntrack.c:330,5'
          Dst:             ofpbuf_init
        - Src:             'lib/netlink-conntrack.c:332,5'
          Dst:             nl_msg_put_nfgenmsg
        - Src:             'lib/netlink-conntrack.c:334,37'
          Dst:             htons
        - Src:             'lib/netlink-conntrack.c:334,5'
          Dst:             nl_msg_put_be16
        - Src:             'lib/netlink-conntrack.c:335,5'
          Dst:             nl_dump_start
        - Src:             'lib/netlink-conntrack.c:336,5'
          Dst:             ofpbuf_clear
        - Src:             'lib/netlink-conntrack.c:344,14'
          Dst:             nl_dump_next
        - Src:             'lib/netlink-conntrack.c:348,14'
          Dst:             nl_ct_parse_header_policy
        - Src:             'lib/netlink-conntrack.c:354,26'
          Dst:             nl_attr_get_be16
        - Src:             'lib/netlink-conntrack.c:354,20'
          Dst:             ntohs
        - Src:             'lib/netlink-conntrack.c:361,9'
          Dst:             nl_msg_put_nfgenmsg
        - Src:             'lib/netlink-conntrack.c:364,44'
          Dst:             htons
        - Src:             'lib/netlink-conntrack.c:364,9'
          Dst:             nl_msg_put_be16
        - Src:             'lib/netlink-conntrack.c:365,9'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/netlink-conntrack.c:367,9'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/netlink-conntrack.c:369,9'
          Dst:             nl_transact
        - Src:             'lib/netlink-conntrack.c:370,9'
          Dst:             ofpbuf_clear
        - Src:             'lib/netlink-conntrack.c:373,5'
          Dst:             nl_dump_done
        - Src:             'lib/netlink-conntrack.c:375,5'
          Dst:             ofpbuf_uninit
        - Src:             'lib/netlink-conntrack.c:376,5'
          Dst:             ofpbuf_uninit
    - functionName:    ofpbuf_clear
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 250
      functionLinenumberEnd: 253
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nl_ct_put_ct_tuple
      functionSourceFile: '/src/openvswitch/lib/netlink-conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 630
      functionLinenumberEnd: 647
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          80
      EdgeCount:       20
      CyclomaticComplexity: 7
      functionsReached:
        - nl_ct_put_tuple_ip
        - nl_ct_put_tuple_proto
        - nl_msg_end_nested
        - nl_msg_start_nested
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-conntrack.c:636,21'
          Dst:             nl_msg_start_nested
        - Src:             'lib/netlink-conntrack.c:638,10'
          Dst:             nl_ct_put_tuple_ip
        - Src:             'lib/netlink-conntrack.c:641,10'
          Dst:             nl_ct_put_tuple_proto
        - Src:             'lib/netlink-conntrack.c:645,5'
          Dst:             nl_msg_end_nested
    - functionName:    nl_ct_flush_tuple
      functionSourceFile: '/src/openvswitch/lib/netlink-conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 250
      functionLinenumberEnd: 266
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htons
        - nl_ct_put_ct_tuple
        - nl_msg_put_be16
        - nl_msg_put_nfgenmsg
        - nl_transact
        - ofpbuf_init
        - ofpbuf_uninit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-conntrack.c:254,5'
          Dst:             ofpbuf_init
        - Src:             'lib/netlink-conntrack.c:255,5'
          Dst:             nl_msg_put_nfgenmsg
        - Src:             'lib/netlink-conntrack.c:258,37'
          Dst:             htons
        - Src:             'lib/netlink-conntrack.c:258,5'
          Dst:             nl_msg_put_be16
        - Src:             'lib/netlink-conntrack.c:259,10'
          Dst:             nl_ct_put_ct_tuple
        - Src:             'lib/netlink-conntrack.c:263,11'
          Dst:             nl_transact
        - Src:             'lib/netlink-conntrack.c:265,5'
          Dst:             ofpbuf_uninit
    - functionName:    nl_ct_flush
      functionSourceFile: '/src/openvswitch/lib/netlink-conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 230
      functionLinenumberEnd: 245
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_msg_put_nfgenmsg
        - nl_transact
        - ofpbuf_init
        - ofpbuf_uninit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-conntrack.c:234,5'
          Dst:             ofpbuf_init
        - Src:             'lib/netlink-conntrack.c:236,5'
          Dst:             nl_msg_put_nfgenmsg
        - Src:             'lib/netlink-conntrack.c:239,11'
          Dst:             nl_transact
        - Src:             'lib/netlink-conntrack.c:240,5'
          Dst:             ofpbuf_uninit
    - functionName:    nl_ct_format_event_entry
      functionSourceFile: '/src/openvswitch/lib/netlink-conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 219
      functionLinenumberEnd: 226
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - bool
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          60
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ct_dpif_format_entry
        - ds_put_format
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-conntrack.c:220,5'
          Dst:             ds_put_format
        - Src:             'lib/netlink-conntrack.c:225,5'
          Dst:             ct_dpif_format_entry
    - functionName:    nl_ct_dump_done
      functionSourceFile: '/src/openvswitch/lib/netlink-conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 206
      functionLinenumberEnd: 211
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nl_dump_done
        - ofpbuf_uninit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-conntrack.c:207,17'
          Dst:             nl_dump_done
        - Src:             'lib/netlink-conntrack.c:209,5'
          Dst:             ofpbuf_uninit
    - functionName:    nl_ct_dump_next
      functionSourceFile: '/src/openvswitch/lib/netlink-conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 201
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         20
      ICount:          108
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - ct_dpif_entry_uninit
        - nl_attr_get_be16
        - nl_ct_attrs_to_ct_dpif_entry
        - nl_ct_parse_header_policy
        - nl_dump_next
        - ntohs
        - ofpbuf_uninit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-conntrack.c:173,14'
          Dst:             nl_dump_next
        - Src:             'lib/netlink-conntrack.c:177,14'
          Dst:             nl_ct_parse_header_policy
        - Src:             'lib/netlink-conntrack.c:183,43'
          Dst:             nl_attr_get_be16
        - Src:             'lib/netlink-conntrack.c:183,37'
          Dst:             ntohs
        - Src:             'lib/netlink-conntrack.c:190,13'
          Dst:             nl_ct_attrs_to_ct_dpif_entry
        - Src:             'lib/netlink-conntrack.c:194,9'
          Dst:             ct_dpif_entry_uninit
        - Src:             'lib/netlink-conntrack.c:199,5'
          Dst:             ofpbuf_uninit
    - functionName:    nl_ct_dump_start
      functionSourceFile: '/src/openvswitch/lib/netlink-conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 131
      functionLinenumberEnd: 153
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          74
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - htons
        - nl_dump_start
        - nl_msg_put_be16
        - nl_msg_put_nfgenmsg
        - ofpbuf_clear
        - ofpbuf_init
        - xzalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-conntrack.c:134,23'
          Dst:             xzalloc
        - Src:             'lib/netlink-conntrack.c:135,5'
          Dst:             ofpbuf_init
        - Src:             'lib/netlink-conntrack.c:142,5'
          Dst:             nl_msg_put_nfgenmsg
        - Src:             'lib/netlink-conntrack.c:145,48'
          Dst:             htons
        - Src:             'lib/netlink-conntrack.c:145,9'
          Dst:             nl_msg_put_be16
        - Src:             'lib/netlink-conntrack.c:147,5'
          Dst:             nl_dump_start
        - Src:             'lib/netlink-conntrack.c:148,5'
          Dst:             ofpbuf_clear
    - functionName:    init_this_module_netlink_notifier
      functionSourceFile: '/src/openvswitch/lib/netlink-notifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 31
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-notifier.c:31,1'
          Dst:             vlog_insert_module
    - functionName:    nln_changed_init_coverage
      functionSourceFile: '/src/openvswitch/lib/netlink-notifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33
      functionLinenumberEnd: 33
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-notifier.c:33,1'
          Dst:             coverage_counter_register
    - functionName:    nln_changed_count
      functionSourceFile: '/src/openvswitch/lib/netlink-notifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33
      functionLinenumberEnd: 33
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_nln_changed_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-notifier.c:33,1'
          Dst:             counter_nln_changed_get
    - functionName:    counter_nln_changed_get
      functionSourceFile: '/src/openvswitch/lib/netlink-notifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33
      functionLinenumberEnd: 33
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_nln_changed_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-notifier.c:33,1'
          Dst:             counter_nln_changed_get_unsafe
    - functionName:    counter_nln_changed_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/netlink-notifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33
      functionLinenumberEnd: 33
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_list_insert
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 169
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nln_changed_add
      functionSourceFile: '/src/openvswitch/lib/netlink-notifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33
      functionLinenumberEnd: 33
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_nln_changed_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-notifier.c:33,1'
          Dst:             counter_nln_changed_get
    - functionName:    nln_wait
      functionSourceFile: '/src/openvswitch/lib/netlink-notifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 219
      functionLinenumberEnd: 224
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - nl_sock_wait
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-notifier.c:222,9'
          Dst:             nl_sock_wait
    - functionName:    nln_report
      functionSourceFile: '/src/openvswitch/lib/netlink-notifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 228
      functionLinenumberEnd: 240
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          103
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - nln_changed_add
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-notifier.c:232,9'
          Dst:             nln_changed_add
    - functionName:    ovs_list_remove
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 251
      functionLinenumberEnd: 254
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          25
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nln_notifier_destroy
      functionSourceFile: '/src/openvswitch/lib/netlink-notifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 144
      functionLinenumberEnd: 168
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         22
      ICount:          129
      EdgeCount:       28
      CyclomaticComplexity: 8
      functionsReached:
        - nl_sock_destroy
        - nl_sock_leave_mcgroup
        - ovs_list_is_empty
        - ovs_list_remove
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-notifier.c:150,9'
          Dst:             ovs_list_remove
        - Src:             'lib/netlink-notifier.c:159,13'
          Dst:             nl_sock_leave_mcgroup
        - Src:             'lib/netlink-notifier.c:162,13'
          Dst:             ovs_list_is_empty
        - Src:             'lib/netlink-notifier.c:163,13'
          Dst:             nl_sock_destroy
    - functionName:    ovs_list_is_empty
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 320
      functionLinenumberEnd: 321
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_list_push_back
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 204
      functionLinenumberEnd: 206
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_list_insert
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/list.h:205,5'
          Dst:             ovs_list_insert
    - functionName:    nln_run
      functionSourceFile: '/src/openvswitch/lib/netlink-notifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 174
      functionLinenumberEnd: 214
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         36
      ICount:          169
      EdgeCount:       45
      CyclomaticComplexity: 11
      functionsReached:
        - nl_sock_recv
        - nln_report
        - ofpbuf_uninit
        - ofpbuf_use_stub
        - ovs_strerror
        - vlog_rate_limit
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-notifier.c:187,9'
          Dst:             ofpbuf_use_stub
        - Src:             'lib/netlink-notifier.c:188,17'
          Dst:             nl_sock_recv
        - Src:             'lib/netlink-notifier.c:193,17'
          Dst:             nln_report
        - Src:             'lib/netlink-notifier.c:195,17'
          Dst:             vlog_rate_limit
        - Src:             'lib/netlink-notifier.c:196,17'
          Dst:             nln_report
        - Src:             'lib/netlink-notifier.c:198,13'
          Dst:             ofpbuf_uninit
        - Src:             'lib/netlink-notifier.c:205,17'
          Dst:             nln_report
        - Src:             'lib/netlink-notifier.c:206,17'
          Dst:             vlog_rate_limit
        - Src:             'lib/netlink-notifier.c:208,17'
          Dst:             ovs_strerror
        - Src:             'lib/netlink-notifier.c:208,17'
          Dst:             vlog_rate_limit
    - functionName:    nln_notifier_create
      functionSourceFile: '/src/openvswitch/lib/netlink-notifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 102
      functionLinenumberEnd: 138
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          143
      EdgeCount:       26
      CyclomaticComplexity: 7
      functionsReached:
        - nl_sock_create
        - nl_sock_join_mcgroup
        - nln_run
        - ovs_list_push_back
        - ovs_strerror
        - vlog
        - xmalloc
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-notifier.c:109,17'
          Dst:             nl_sock_create
        - Src:             'lib/netlink-notifier.c:111,13'
          Dst:             ovs_strerror
        - Src:             'lib/netlink-notifier.c:111,13'
          Dst:             vlog
        - Src:             'lib/netlink-notifier.c:119,9'
          Dst:             nln_run
        - Src:             'lib/netlink-notifier.c:122,13'
          Dst:             nl_sock_join_mcgroup
        - Src:             'lib/netlink-notifier.c:124,9'
          Dst:             ovs_strerror
        - Src:             'lib/netlink-notifier.c:124,9'
          Dst:             vlog
        - Src:             'lib/netlink-notifier.c:129,16'
          Dst:             xmalloc
        - Src:             'lib/netlink-notifier.c:135,5'
          Dst:             ovs_list_push_back
    - functionName:    nln_destroy
      functionSourceFile: '/src/openvswitch/lib/netlink-notifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 83
      functionLinenumberEnd: 89
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - nl_sock_destroy
        - ovs_ignore
        - ovs_list_is_empty
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-notifier.c:85,20'
          Dst:             ovs_list_is_empty
        - Src:             'lib/netlink-notifier.c:85,9'
          Dst:             ovs_ignore
        - Src:             'lib/netlink-notifier.c:86,9'
          Dst:             nl_sock_destroy
    - functionName:    ovs_list_init
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nln_create
      functionSourceFile: '/src/openvswitch/lib/netlink-notifier.c'
      linkageType:     InternalLinkage
      functionLinenumber: 62
      functionLinenumberEnd: 73
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          42
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_list_init
        - xzalloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/netlink-notifier.c:65,11'
          Dst:             xzalloc
        - Src:             'lib/netlink-notifier.c:72,5'
          Dst:             ovs_list_init
    - functionName:    init_this_module_stream_ssl
      functionSourceFile: '/src/openvswitch/lib/stream-ssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-ssl.c:52,1'
          Dst:             vlog_insert_module
    - functionName:    hmap_next__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 401
      functionLinenumberEnd: 410
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          51
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    bitmap_unit__
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 26
      functionLinenumberEnd: 27
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    bitmap_bit__
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 32
      functionLinenumberEnd: 33
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    tmp_dh_callback
      functionSourceFile: '/src/openvswitch/lib/stream-ssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1068
      functionLinenumberEnd: 1096
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          102
      EdgeCount:       24
      CyclomaticComplexity: 6
      functionsReached:
        - out_of_memory
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-ssl.c:1087,21'
          Dst:             out_of_memory
        - Src:             'lib/stream-ssl.c:1093,5'
          Dst:             vlog_rate_limit
    - functionName:    do_ssl_init
      functionSourceFile: '/src/openvswitch/lib/stream-ssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 993
      functionLinenumberEnd: 1063
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         36
      ICount:          179
      EdgeCount:       45
      CyclomaticComplexity: 11
      functionsReached:
        - ERR_error_string
        - ERR_get_error
        - RAND_seed
        - RAND_status
        - SSL_CTX_ctrl
        - SSL_CTX_new
        - SSL_CTX_set_cipher_list
        - SSL_CTX_set_options
        - SSL_CTX_set_tmp_dh_callback
        - SSL_CTX_set_verify
        - TLS_method
        - get_entropy
        - ovs_retval_to_string
        - tmp_dh_callback
        - vlog
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-ssl.c:994,10'
          Dst:             RAND_status
        - Src:             'lib/stream-ssl.c:1012,9'
          Dst:             vlog
        - Src:             'lib/stream-ssl.c:1014,18'
          Dst:             get_entropy
        - Src:             'lib/stream-ssl.c:1016,13'
          Dst:             ovs_retval_to_string
        - Src:             'lib/stream-ssl.c:1016,13'
          Dst:             vlog
        - Src:             'lib/stream-ssl.c:1021,9'
          Dst:             RAND_seed
        - Src:             'lib/stream-ssl.c:1029,32'
          Dst:             TLS_method
        - Src:             'lib/stream-ssl.c:1031,9'
          Dst:             ERR_get_error
        - Src:             'lib/stream-ssl.c:1031,9'
          Dst:             ERR_error_string
        - Src:             'lib/stream-ssl.c:1031,9'
          Dst:             vlog
        - Src:             'lib/stream-ssl.c:1035,11'
          Dst:             SSL_CTX_new
        - Src:             'lib/stream-ssl.c:1037,9'
          Dst:             ERR_get_error
        - Src:             'lib/stream-ssl.c:1037,9'
          Dst:             ERR_error_string
        - Src:             'lib/stream-ssl.c:1037,9'
          Dst:             vlog
        - Src:             'lib/stream-ssl.c:1046,5'
          Dst:             SSL_CTX_ctrl
        - Src:             'lib/stream-ssl.c:1047,5'
          Dst:             SSL_CTX_ctrl
        - Src:             'lib/stream-ssl.c:1050,5'
          Dst:             SSL_CTX_set_tmp_dh_callback
        - Src:             'lib/stream-ssl.c:1050,5'
          Dst:             tmp_dh_callback
        - Src:             'lib/stream-ssl.c:1054,5'
          Dst:             SSL_CTX_ctrl
        - Src:             'lib/stream-ssl.c:1055,5'
          Dst:             SSL_CTX_ctrl
        - Src:             'lib/stream-ssl.c:1056,5'
          Dst:             SSL_CTX_set_verify
        - Src:             'lib/stream-ssl.c:1058,5'
          Dst:             SSL_CTX_ctrl
        - Src:             'lib/stream-ssl.c:1059,5'
          Dst:             SSL_CTX_set_options
        - Src:             'lib/stream-ssl.c:1060,5'
          Dst:             SSL_CTX_set_cipher_list
    - functionName:    RAND_status
      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:    RAND_seed
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    TLS_method
      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:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ERR_error_string
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    18
      BranchProfiles:  []
      Callsites:       []
    - functionName:    SSL_CTX_new
      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:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    SSL_CTX_ctrl
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    SSL_CTX_set_tmp_dh_callback
      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:    SSL_CTX_set_verify
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    SSL_CTX_set_options
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    SSL_CTX_set_cipher_list
      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:    pstream_assert_class
      functionSourceFile: '/src/openvswitch/lib/stream-provider.h'
      linkageType:     InternalLinkage
      functionLinenumber: 145
      functionLinenumberEnd: 147
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-provider.h:146,5'
          Dst:             ovs_ignore
    - functionName:    pssl_pstream_cast
      functionSourceFile: '/src/openvswitch/lib/stream-ssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 871
      functionLinenumberEnd: 873
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - pstream_assert_class
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-ssl.c:872,5'
          Dst:             pstream_assert_class
    - functionName:    pssl_open
      functionSourceFile: '/src/openvswitch/lib/stream-ssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 879
      functionLinenumberEnd: 910
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          85
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - ds_put_format
        - ds_steal_cstr
        - htons
        - inet_open_passive
        - pstream_init
        - pstream_set_bound_port
        - ss_format_address
        - ss_get_port
        - ssl_init
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-ssl.c:886,14'
          Dst:             ssl_init
        - Src:             'lib/stream-ssl.c:891,10'
          Dst:             inet_open_passive
        - Src:             'lib/stream-ssl.c:896,12'
          Dst:             ss_get_port
        - Src:             'lib/stream-ssl.c:899,5'
          Dst:             ds_put_format
        - Src:             'lib/stream-ssl.c:900,5'
          Dst:             ss_format_address
        - Src:             'lib/stream-ssl.c:902,12'
          Dst:             xmalloc
        - Src:             'lib/stream-ssl.c:904,18'
          Dst:             ds_steal_cstr
        - Src:             'lib/stream-ssl.c:903,5'
          Dst:             pstream_init
        - Src:             'lib/stream-ssl.c:905,44'
          Dst:             htons
        - Src:             'lib/stream-ssl.c:905,5'
          Dst:             pstream_set_bound_port
    - functionName:    pssl_close
      functionSourceFile: '/src/openvswitch/lib/stream-ssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 914
      functionLinenumberEnd: 918
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - close
        - pssl_pstream_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-ssl.c:915,33'
          Dst:             pssl_pstream_cast
        - Src:             'lib/stream-ssl.c:916,5'
          Dst:             close
    - functionName:    pssl_accept
      functionSourceFile: '/src/openvswitch/lib/stream-ssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 922
      functionLinenumberEnd: 950
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          108
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - accept
        - close
        - ds_put_cstr
        - ds_put_format
        - ds_steal_cstr
        - new_ssl_stream
        - pssl_pstream_cast
        - set_nonblocking
        - sock_errno
        - sock_strerror
        - ss_format_address
        - ss_get_port
        - vlog_rate_limit
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-ssl.c:923,33'
          Dst:             pssl_pstream_cast
        - Src:             'lib/stream-ssl.c:929,14'
          Dst:             accept
        - Src:             'lib/stream-ssl.c:931,17'
          Dst:             sock_errno
        - Src:             'lib/stream-ssl.c:933,13'
          Dst:             sock_strerror
        - Src:             'lib/stream-ssl.c:933,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/stream-ssl.c:938,13'
          Dst:             set_nonblocking
        - Src:             'lib/stream-ssl.c:940,9'
          Dst:             close
        - Src:             'lib/stream-ssl.c:945,5'
          Dst:             ds_put_cstr
        - Src:             'lib/stream-ssl.c:946,5'
          Dst:             ss_format_address
        - Src:             'lib/stream-ssl.c:947,38'
          Dst:             ss_get_port
        - Src:             'lib/stream-ssl.c:947,5'
          Dst:             ds_put_format
        - Src:             'lib/stream-ssl.c:948,27'
          Dst:             ds_steal_cstr
        - Src:             'lib/stream-ssl.c:948,12'
          Dst:             new_ssl_stream
    - functionName:    pssl_wait
      functionSourceFile: '/src/openvswitch/lib/stream-ssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 954
      functionLinenumberEnd: 957
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - poll_fd_wait_at
        - pssl_pstream_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-ssl.c:955,33'
          Dst:             pssl_pstream_cast
        - Src:             'lib/stream-ssl.c:956,5'
          Dst:             poll_fd_wait_at
    - functionName:    accept
      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:    sock_errno
      functionSourceFile: '/src/openvswitch/lib/socket-util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 148
      functionLinenumberEnd: 149
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __errno_location
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/socket-util.h:149,12'
          Dst:             __errno_location
    - functionName:    new_ssl_stream
      functionSourceFile: '/src/openvswitch/lib/stream-ssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 232
      functionLinenumberEnd: 314
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         83
      ICount:          412
      EdgeCount:       107
      CyclomaticComplexity: 26
      functionsReached:
        - ERR_error_string
        - ERR_get_error
        - SSL_CTX_check_private_key
        - SSL_ctrl
        - SSL_free
        - SSL_new
        - SSL_set_fd
        - SSL_set_msg_callback
        - SSL_set_verify
        - close
        - setsockopt_tcp_nodelay
        - ssl_protocol_cb
        - stream_init
        - vlog
        - vlog_is_enabled
        - xmalloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-ssl.c:240,9'
          Dst:             vlog
        - Src:             'lib/stream-ssl.c:244,9'
          Dst:             vlog
        - Src:             'lib/stream-ssl.c:248,9'
          Dst:             vlog
        - Src:             'lib/stream-ssl.c:251,21'
          Dst:             SSL_CTX_check_private_key
        - Src:             'lib/stream-ssl.c:252,9'
          Dst:             ERR_get_error
        - Src:             'lib/stream-ssl.c:252,9'
          Dst:             ERR_error_string
        - Src:             'lib/stream-ssl.c:252,9'
          Dst:             vlog
        - Src:             'lib/stream-ssl.c:261,5'
          Dst:             setsockopt_tcp_nodelay
        - Src:             'lib/stream-ssl.c:264,11'
          Dst:             SSL_new
        - Src:             'lib/stream-ssl.c:266,9'
          Dst:             ERR_get_error
        - Src:             'lib/stream-ssl.c:266,9'
          Dst:             ERR_error_string
        - Src:             'lib/stream-ssl.c:266,9'
          Dst:             vlog
        - Src:             'lib/stream-ssl.c:270,9'
          Dst:             SSL_set_fd
        - Src:             'lib/stream-ssl.c:271,9'
          Dst:             ERR_get_error
        - Src:             'lib/stream-ssl.c:271,9'
          Dst:             ERR_error_string
        - Src:             'lib/stream-ssl.c:271,9'
          Dst:             vlog
        - Src:             'lib/stream-ssl.c:276,9'
          Dst:             SSL_set_verify
        - Src:             'lib/stream-ssl.c:278,25'
          Dst:             SSL_ctrl
        - Src:             'lib/stream-ssl.c:279,9'
          Dst:             ERR_get_error
        - Src:             'lib/stream-ssl.c:279,9'
          Dst:             ERR_error_string
        - Src:             'lib/stream-ssl.c:279,9'
          Dst:             vlog
        - Src:             'lib/stream-ssl.c:286,12'
          Dst:             xmalloc
        - Src:             'lib/stream-ssl.c:287,5'
          Dst:             stream_init
        - Src:             'lib/stream-ssl.c:297,9'
          Dst:             vlog_is_enabled
        - Src:             'lib/stream-ssl.c:298,9'
          Dst:             SSL_set_msg_callback
        - Src:             'lib/stream-ssl.c:298,9'
          Dst:             ssl_protocol_cb
        - Src:             'lib/stream-ssl.c:299,9'
          Dst:             SSL_ctrl
        - Src:             'lib/stream-ssl.c:308,9'
          Dst:             SSL_free
        - Src:             'lib/stream-ssl.c:310,5'
          Dst:             close
    - functionName:    SSL_CTX_check_private_key
      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:    SSL_new
      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:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    SSL_set_fd
      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:    SSL_set_verify
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    SSL_ctrl
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ssl_protocol_cb
      functionSourceFile: '/src/openvswitch/lib/stream-ssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1582
      functionLinenumberEnd: 1611
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - int
        - int
        - int
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          130
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - ds_cstr
        - ds_destroy
        - ds_init
        - ds_put_cstr
        - ds_put_format
        - ssl_alert_description_to_string
        - ssl_alert_level_to_string
        - ssl_handshake_type_to_string
        - stream_get_name
        - vlog
        - vlog_is_enabled
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-ssl.c:1587,10'
          Dst:             vlog_is_enabled
        - Src:             'lib/stream-ssl.c:1591,5'
          Dst:             ds_init
        - Src:             'lib/stream-ssl.c:1593,9'
          Dst:             ds_put_cstr
        - Src:             'lib/stream-ssl.c:1596,23'
          Dst:             ssl_alert_level_to_string
        - Src:             'lib/stream-ssl.c:1597,23'
          Dst:             ssl_alert_description_to_string
        - Src:             'lib/stream-ssl.c:1595,9'
          Dst:             ds_put_format
        - Src:             'lib/stream-ssl.c:1600,23'
          Dst:             ssl_handshake_type_to_string
        - Src:             'lib/stream-ssl.c:1599,9'
          Dst:             ds_put_format
        - Src:             'lib/stream-ssl.c:1602,9'
          Dst:             ds_put_format
        - Src:             'lib/stream-ssl.c:1605,5'
          Dst:             stream_get_name
        - Src:             'lib/stream-ssl.c:1605,5'
          Dst:             ds_cstr
        - Src:             'lib/stream-ssl.c:1605,5'
          Dst:             vlog
        - Src:             'lib/stream-ssl.c:1610,5'
          Dst:             ds_destroy
    - functionName:    SSL_set_msg_callback
      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:    SSL_free
      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:    ssl_alert_level_to_string
      functionSourceFile: '/src/openvswitch/lib/stream-ssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1522
      functionLinenumberEnd: 1528
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ''
      BBCount:         5
      ICount:          28
      EdgeCount:       8
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/stream-ssl.c:1523,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    ssl_alert_description_to_string
      functionSourceFile: '/src/openvswitch/lib/stream-ssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1532
      functionLinenumberEnd: 1559
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ''
      BBCount:         26
      ICount:          133
      EdgeCount:       50
      CyclomaticComplexity: 26
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/stream-ssl.c:1533,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    ssl_handshake_type_to_string
      functionSourceFile: '/src/openvswitch/lib/stream-ssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1563
      functionLinenumberEnd: 1577
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          68
      EdgeCount:       24
      CyclomaticComplexity: 13
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/stream-ssl.c:1564,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    ssl_open
      functionSourceFile: '/src/openvswitch/lib/stream-ssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 349
      functionLinenumberEnd: 371
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          105
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - get_server_name
        - inet_open_active
        - new_ssl_stream
        - ovs_strerror
        - ssl_init
        - vlog
        - xstrdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-ssl.c:352,13'
          Dst:             ssl_init
        - Src:             'lib/stream-ssl.c:357,13'
          Dst:             inet_open_active
        - Src:             'lib/stream-ssl.c:362,31'
          Dst:             xstrdup
        - Src:             'lib/stream-ssl.c:363,31'
          Dst:             get_server_name
        - Src:             'lib/stream-ssl.c:365,31'
          Dst:             xstrdup
        - Src:             'lib/stream-ssl.c:365,16'
          Dst:             new_ssl_stream
        - Src:             'lib/stream-ssl.c:368,9'
          Dst:             ovs_strerror
        - Src:             'lib/stream-ssl.c:368,9'
          Dst:             vlog
    - functionName:    ssl_close
      functionSourceFile: '/src/openvswitch/lib/stream-ssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 579
      functionLinenumberEnd: 598
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ERR_clear_error
        - SSL_free
        - SSL_shutdown
        - close
        - ssl_clear_txbuf
        - ssl_stream_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-ssl.c:580,31'
          Dst:             ssl_stream_cast
        - Src:             'lib/stream-ssl.c:581,5'
          Dst:             ssl_clear_txbuf
        - Src:             'lib/stream-ssl.c:588,5'
          Dst:             SSL_shutdown
        - Src:             'lib/stream-ssl.c:593,5'
          Dst:             ERR_clear_error
        - Src:             'lib/stream-ssl.c:595,5'
          Dst:             SSL_free
        - Src:             'lib/stream-ssl.c:596,5'
          Dst:             close
    - functionName:    ssl_connect
      functionSourceFile: '/src/openvswitch/lib/stream-ssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 502
      functionLinenumberEnd: 575
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         46
      ICount:          281
      EdgeCount:       57
      CyclomaticComplexity: 13
      functionsReached:
        - SSL_accept
        - SSL_connect
        - SSL_get_error
        - SSL_get_servername
        - SSL_get_verify_mode
        - abort
        - check_connection_completion
        - do_ca_cert_bootstrap
        - get_peer_common_name
        - interpret_ssl_error
        - recv
        - setsockopt_tcp_nodelay
        - shutdown
        - ssl_stream_cast
        - ssl_wants_io
        - stream_get_name
        - stream_report_content
        - stream_set_peer_id
        - vlog
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib/stream-ssl.c:506,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/stream-ssl.c:503,31'
          Dst:             ssl_stream_cast
        - Src:             'lib/stream-ssl.c:508,18'
          Dst:             check_connection_completion
        - Src:             'lib/stream-ssl.c:513,9'
          Dst:             setsockopt_tcp_nodelay
        - Src:             'lib/stream-ssl.c:520,28'
          Dst:             recv
        - Src:             'lib/stream-ssl.c:525,22'
          Dst:             SSL_connect
        - Src:             'lib/stream-ssl.c:525,47'
          Dst:             SSL_accept
        - Src:             'lib/stream-ssl.c:527,25'
          Dst:             SSL_get_error
        - Src:             'lib/stream-ssl.c:528,31'
          Dst:             ssl_wants_io
        - Src:             'lib/stream-ssl.c:533,17'
          Dst:             interpret_ssl_error
        - Src:             'lib/stream-ssl.c:535,17'
          Dst:             shutdown
        - Src:             'lib/stream-ssl.c:537,53'
          Dst:             stream_get_name
        - Src:             'lib/stream-ssl.c:536,17'
          Dst:             stream_report_content
        - Src:             'lib/stream-ssl.c:541,20'
          Dst:             do_ca_cert_bootstrap
        - Src:             'lib/stream-ssl.c:543,25'
          Dst:             SSL_get_verify_mode
        - Src:             'lib/stream-ssl.c:554,13'
          Dst:             vlog
        - Src:             'lib/stream-ssl.c:558,38'
          Dst:             SSL_get_servername
        - Src:             'lib/stream-ssl.c:561,17'
          Dst:             vlog
        - Src:             'lib/stream-ssl.c:564,24'
          Dst:             get_peer_common_name
        - Src:             'lib/stream-ssl.c:567,17'
          Dst:             stream_set_peer_id
        - Src:             'lib/stream-ssl.c:574,5'
          Dst:             abort
    - functionName:    ssl_recv
      functionSourceFile: '/src/openvswitch/lib/stream-ssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 681
      functionLinenumberEnd: 707
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          105
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - SSL_get_error
        - SSL_get_state
        - SSL_read
        - interpret_ssl_error
        - ovs_ignore
        - ssl_stream_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-ssl.c:682,31'
          Dst:             ssl_stream_cast
        - Src:             'lib/stream-ssl.c:687,5'
          Dst:             ovs_ignore
        - Src:             'lib/stream-ssl.c:689,17'
          Dst:             SSL_get_state
        - Src:             'lib/stream-ssl.c:690,11'
          Dst:             SSL_read
        - Src:             'lib/stream-ssl.c:691,22'
          Dst:             SSL_get_state
        - Src:             'lib/stream-ssl.c:699,21'
          Dst:             SSL_get_error
        - Src:             'lib/stream-ssl.c:703,21'
          Dst:             interpret_ssl_error
    - functionName:    ssl_send
      functionSourceFile: '/src/openvswitch/lib/stream-ssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 748
      functionLinenumberEnd: 773
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          83
      EdgeCount:       9
      CyclomaticComplexity: 2
      functionsReached:
        - ofpbuf_clone_data
        - ofpbuf_use_const
        - ssl_do_tx
        - ssl_stream_cast
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib/stream-ssl.c:760,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/stream-ssl.c:749,31'
          Dst:             ssl_stream_cast
        - Src:             'lib/stream-ssl.c:757,9'
          Dst:             ofpbuf_use_const
        - Src:             'lib/stream-ssl.c:759,17'
          Dst:             ssl_do_tx
        - Src:             'lib/stream-ssl.c:766,27'
          Dst:             ofpbuf_clone_data
    - functionName:    ssl_run
      functionSourceFile: '/src/openvswitch/lib/stream-ssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 777
      functionLinenumberEnd: 783
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          41
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - ssl_clear_txbuf
        - ssl_do_tx
        - ssl_stream_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-ssl.c:778,31'
          Dst:             ssl_stream_cast
        - Src:             'lib/stream-ssl.c:780,24'
          Dst:             ssl_do_tx
        - Src:             'lib/stream-ssl.c:781,9'
          Dst:             ssl_clear_txbuf
    - functionName:    ssl_run_wait
      functionSourceFile: '/src/openvswitch/lib/stream-ssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 787
      functionLinenumberEnd: 793
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - poll_fd_wait_at
        - ssl_stream_cast
        - want_to_poll_events
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-ssl.c:788,31'
          Dst:             ssl_stream_cast
        - Src:             'lib/stream-ssl.c:791,9'
          Dst:             want_to_poll_events
        - Src:             'lib/stream-ssl.c:791,9'
          Dst:             poll_fd_wait_at
    - functionName:    ssl_wait
      functionSourceFile: '/src/openvswitch/lib/stream-ssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 797
      functionLinenumberEnd: 844
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          111
      EdgeCount:       41
      CyclomaticComplexity: 22
      functionsReached:
        - SSL_want
        - abort
        - poll_fd_wait_at
        - poll_immediate_wake_at
        - ssl_stream_cast
        - stream_connect
        - want_to_poll_events
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib/stream-ssl.c:800,5'
          Branch Sides:    []
        - Branch String:   'lib/stream-ssl.c:805,13'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/stream-ssl.c:798,31'
          Dst:             ssl_stream_cast
        - Src:             'lib/stream-ssl.c:802,13'
          Dst:             stream_connect
        - Src:             'lib/stream-ssl.c:803,13'
          Dst:             poll_immediate_wake_at
        - Src:             'lib/stream-ssl.c:807,17'
          Dst:             poll_fd_wait_at
        - Src:             'lib/stream-ssl.c:813,17'
          Dst:             SSL_want
        - Src:             'lib/stream-ssl.c:813,17'
          Dst:             want_to_poll_events
        - Src:             'lib/stream-ssl.c:813,17'
          Dst:             poll_fd_wait_at
        - Src:             'lib/stream-ssl.c:818,17'
          Dst:             abort
        - Src:             'lib/stream-ssl.c:825,13'
          Dst:             want_to_poll_events
        - Src:             'lib/stream-ssl.c:825,13'
          Dst:             poll_fd_wait_at
        - Src:             'lib/stream-ssl.c:827,13'
          Dst:             poll_immediate_wake_at
        - Src:             'lib/stream-ssl.c:834,13'
          Dst:             poll_immediate_wake_at
        - Src:             'lib/stream-ssl.c:842,9'
          Dst:             abort
    - functionName:    ssl_stream_cast
      functionSourceFile: '/src/openvswitch/lib/stream-ssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 318
      functionLinenumberEnd: 320
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - stream_assert_class
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-ssl.c:319,5'
          Dst:             stream_assert_class
    - functionName:    SSL_want
      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:    want_to_poll_events
      functionSourceFile: '/src/openvswitch/lib/stream-ssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 202
      functionLinenumberEnd: 216
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          39
      EdgeCount:       13
      CyclomaticComplexity: 7
      functionsReached:
        - abort
      functionUses:    3
      BranchProfiles:
        - Branch String:   'lib/stream-ssl.c:203,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/stream-ssl.c:205,9'
          Dst:             abort
        - Src:             'lib/stream-ssl.c:214,9'
          Dst:             abort
    - functionName:    stream_assert_class
      functionSourceFile: '/src/openvswitch/lib/stream-provider.h'
      linkageType:     InternalLinkage
      functionLinenumber: 42
      functionLinenumberEnd: 44
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-provider.h:43,5'
          Dst:             ovs_ignore
    - functionName:    ssl_do_tx
      functionSourceFile: '/src/openvswitch/lib/stream-ssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 718
      functionLinenumberEnd: 744
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         20
      ICount:          137
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - SSL_get_error
        - SSL_get_state
        - SSL_write
        - interpret_ssl_error
        - ofpbuf_pull
        - ssl_stream_cast
        - vlog_rate_limit
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-ssl.c:719,31'
          Dst:             ssl_stream_cast
        - Src:             'lib/stream-ssl.c:722,25'
          Dst:             SSL_get_state
        - Src:             'lib/stream-ssl.c:723,19'
          Dst:             SSL_write
        - Src:             'lib/stream-ssl.c:724,26'
          Dst:             SSL_get_state
        - Src:             'lib/stream-ssl.c:729,13'
          Dst:             ofpbuf_pull
        - Src:             'lib/stream-ssl.c:734,29'
          Dst:             SSL_get_error
        - Src:             'lib/stream-ssl.c:736,17'
          Dst:             vlog_rate_limit
        - Src:             'lib/stream-ssl.c:739,24'
          Dst:             interpret_ssl_error
    - functionName:    ssl_clear_txbuf
      functionSourceFile: '/src/openvswitch/lib/stream-ssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 711
      functionLinenumberEnd: 714
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpbuf_delete
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-ssl.c:712,5'
          Dst:             ofpbuf_delete
    - functionName:    ofpbuf_delete
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 172
      functionLinenumberEnd: 177
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          28
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ofpbuf_uninit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:174,9'
          Dst:             ofpbuf_uninit
    - functionName:    SSL_get_state
      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:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    SSL_write
      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:    ofpbuf_pull
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 258
      functionLinenumberEnd: 269
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          64
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:259,5'
          Dst:             ovs_ignore
    - functionName:    SSL_get_error
      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:    interpret_ssl_error
      functionSourceFile: '/src/openvswitch/lib/stream-ssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 615
      functionLinenumberEnd: 677
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         64
      ICount:          290
      EdgeCount:       74
      CyclomaticComplexity: 12
      functionsReached:
        - ERR_error_string
        - ERR_get_error
        - __errno_location
        - interpret_queued_ssl_error
        - ovs_strerror
        - vlog_rate_limit
      functionUses:    3
      BranchProfiles:
        - Branch String:   'lib/stream-ssl.c:618,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/stream-ssl.c:620,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/stream-ssl.c:624,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/stream-ssl.c:636,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/stream-ssl.c:640,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/stream-ssl.c:644,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/stream-ssl.c:649,28'
          Dst:             ERR_get_error
        - Src:             'lib/stream-ssl.c:652,30'
          Dst:             __errno_location
        - Src:             'lib/stream-ssl.c:653,17'
          Dst:             ovs_strerror
        - Src:             'lib/stream-ssl.c:653,17'
          Dst:             vlog_rate_limit
        - Src:             'lib/stream-ssl.c:657,17'
          Dst:             vlog_rate_limit
        - Src:             'lib/stream-ssl.c:662,13'
          Dst:             ERR_error_string
        - Src:             'lib/stream-ssl.c:662,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/stream-ssl.c:669,9'
          Dst:             interpret_queued_ssl_error
        - Src:             'lib/stream-ssl.c:673,9'
          Dst:             vlog_rate_limit
    - functionName:    interpret_queued_ssl_error
      functionSourceFile: '/src/openvswitch/lib/stream-ssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 602
      functionLinenumberEnd: 610
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         16
      ICount:          72
      EdgeCount:       19
      CyclomaticComplexity: 5
      functionsReached:
        - ERR_error_string
        - ERR_get_error
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-ssl.c:603,24'
          Dst:             ERR_get_error
        - Src:             'lib/stream-ssl.c:605,9'
          Dst:             ERR_error_string
        - Src:             'lib/stream-ssl.c:605,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/stream-ssl.c:608,9'
          Dst:             vlog_rate_limit
    - functionName:    SSL_read
      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:    SSL_connect
      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:    SSL_accept
      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:    ssl_wants_io
      functionSourceFile: '/src/openvswitch/lib/stream-ssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 975
      functionLinenumberEnd: 977
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          22
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    shutdown
      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:    do_ca_cert_bootstrap
      functionSourceFile: '/src/openvswitch/lib/stream-ssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 375
      functionLinenumberEnd: 461
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         81
      ICount:          408
      EdgeCount:       102
      CyclomaticComplexity: 23
      functionsReached:
        - ERR_error_string
        - ERR_get_error
        - PEM_write_X509
        - SSL_CTX_add_client_CA
        - SSL_CTX_load_verify_locations
        - SSL_CTX_set_cert_store
        - SSL_get_peer_cert_chain
        - X509_STORE_new
        - X509_check_issued
        - X509_verify_cert_error_string
        - __errno_location
        - fclose
        - fdopen
        - log_ca_cert
        - open
        - ovs_strerror
        - sk_X509_num
        - sk_X509_value
        - ssl_stream_cast
        - stream_ssl_set_ca_cert_file__
        - unlink
        - vlog
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-ssl.c:376,31'
          Dst:             ssl_stream_cast
        - Src:             'lib/stream-ssl.c:383,13'
          Dst:             SSL_get_peer_cert_chain
        - Src:             'lib/stream-ssl.c:384,20'
          Dst:             sk_X509_num
        - Src:             'lib/stream-ssl.c:385,9'
          Dst:             vlog
        - Src:             'lib/stream-ssl.c:389,33'
          Dst:             sk_X509_num
        - Src:             'lib/stream-ssl.c:389,12'
          Dst:             sk_X509_value
        - Src:             'lib/stream-ssl.c:393,13'
          Dst:             X509_check_issued
        - Src:             'lib/stream-ssl.c:395,9'
          Dst:             X509_verify_cert_error_string
        - Src:             'lib/stream-ssl.c:395,9'
          Dst:             vlog
        - Src:             'lib/stream-ssl.c:398,13'
          Dst:             sk_X509_num
        - Src:             'lib/stream-ssl.c:399,13'
          Dst:             vlog
        - Src:             'lib/stream-ssl.c:405,10'
          Dst:             open
        - Src:             'lib/stream-ssl.c:407,13'
          Dst:             __errno_location
        - Src:             'lib/stream-ssl.c:408,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/stream-ssl.c:410,13'
          Dst:             stream_ssl_set_ca_cert_file__
        - Src:             'lib/stream-ssl.c:413,13'
          Dst:             __errno_location
        - Src:             'lib/stream-ssl.c:413,13'
          Dst:             ovs_strerror
        - Src:             'lib/stream-ssl.c:413,13'
          Dst:             vlog
        - Src:             'lib/stream-ssl.c:415,20'
          Dst:             __errno_location
        - Src:             'lib/stream-ssl.c:419,12'
          Dst:             fdopen
        - Src:             'lib/stream-ssl.c:421,17'
          Dst:             __errno_location
        - Src:             'lib/stream-ssl.c:422,9'
          Dst:             ovs_strerror
        - Src:             'lib/stream-ssl.c:422,9'
          Dst:             vlog
        - Src:             'lib/stream-ssl.c:424,9'
          Dst:             unlink
        - Src:             'lib/stream-ssl.c:428,10'
          Dst:             PEM_write_X509
        - Src:             'lib/stream-ssl.c:429,9'
          Dst:             ERR_get_error
        - Src:             'lib/stream-ssl.c:429,9'
          Dst:             ERR_error_string
        - Src:             'lib/stream-ssl.c:429,9'
          Dst:             vlog
        - Src:             'lib/stream-ssl.c:432,9'
          Dst:             fclose
        - Src:             'lib/stream-ssl.c:433,9'
          Dst:             unlink
        - Src:             'lib/stream-ssl.c:437,9'
          Dst:             fclose
        - Src:             'lib/stream-ssl.c:438,17'
          Dst:             __errno_location
        - Src:             'lib/stream-ssl.c:439,9'
          Dst:             ovs_strerror
        - Src:             'lib/stream-ssl.c:439,9'
          Dst:             vlog
        - Src:             'lib/stream-ssl.c:441,9'
          Dst:             unlink
        - Src:             'lib/stream-ssl.c:445,5'
          Dst:             vlog
        - Src:             'lib/stream-ssl.c:446,5'
          Dst:             log_ca_cert
        - Src:             'lib/stream-ssl.c:451,5'
          Dst:             SSL_CTX_add_client_CA
        - Src:             'lib/stream-ssl.c:453,33'
          Dst:             X509_STORE_new
        - Src:             'lib/stream-ssl.c:453,5'
          Dst:             SSL_CTX_set_cert_store
        - Src:             'lib/stream-ssl.c:454,9'
          Dst:             SSL_CTX_load_verify_locations
        - Src:             'lib/stream-ssl.c:455,9'
          Dst:             ERR_get_error
        - Src:             'lib/stream-ssl.c:455,9'
          Dst:             ERR_error_string
        - Src:             'lib/stream-ssl.c:455,9'
          Dst:             vlog
        - Src:             'lib/stream-ssl.c:459,5'
          Dst:             vlog
    - functionName:    SSL_get_verify_mode
      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:    SSL_get_servername
      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:    get_peer_common_name
      functionSourceFile: '/src/openvswitch/lib/stream-ssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 465
      functionLinenumberEnd: 498
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          81
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - ASN1_STRING_get0_data
        - SSL_get_peer_certificate
        - X509_NAME_ENTRY_get_data
        - X509_NAME_get_entry
        - X509_NAME_get_index_by_NID
        - X509_free
        - X509_get_subject_name
        - xstrdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-ssl.c:468,23'
          Dst:             SSL_get_peer_certificate
        - Src:             'lib/stream-ssl.c:476,47'
          Dst:             X509_get_subject_name
        - Src:             'lib/stream-ssl.c:476,20'
          Dst:             X509_NAME_get_index_by_NID
        - Src:             'lib/stream-ssl.c:483,9'
          Dst:             X509_get_subject_name
        - Src:             'lib/stream-ssl.c:482,33'
          Dst:             X509_NAME_get_entry
        - Src:             'lib/stream-ssl.c:488,28'
          Dst:             X509_NAME_ENTRY_get_data
        - Src:             'lib/stream-ssl.c:493,40'
          Dst:             ASN1_STRING_get0_data
        - Src:             'lib/stream-ssl.c:493,17'
          Dst:             xstrdup
        - Src:             'lib/stream-ssl.c:496,5'
          Dst:             X509_free
    - functionName:    SSL_get_peer_certificate
      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:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    X509_get_subject_name
      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:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    X509_NAME_get_index_by_NID
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    X509_NAME_get_entry
      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:    X509_NAME_ENTRY_get_data
      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:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ASN1_STRING_get0_data
      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:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    X509_free
      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:    SSL_get_peer_cert_chain
      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:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sk_X509_num
      functionSourceFile: '/usr/include/openssl/x509.h'
      linkageType:     InternalLinkage
      functionLinenumber: 99
      functionLinenumberEnd: 99
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - OPENSSL_sk_num
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             '/usr/include/openssl/x509.h:99,1'
          Dst:             OPENSSL_sk_num
    - functionName:    sk_X509_value
      functionSourceFile: '/usr/include/openssl/x509.h'
      linkageType:     InternalLinkage
      functionLinenumber: 99
      functionLinenumberEnd: 99
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - OPENSSL_sk_value
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             '/usr/include/openssl/x509.h:99,1'
          Dst:             OPENSSL_sk_value
    - functionName:    X509_check_issued
      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:    X509_verify_cert_error_string
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    stream_ssl_set_ca_cert_file__
      functionSourceFile: '/src/openvswitch/lib/stream-ssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1469
      functionLinenumberEnd: 1504
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - bool
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         40
      ICount:          176
      EdgeCount:       51
      CyclomaticComplexity: 13
      functionsReached:
        - ERR_error_string
        - ERR_get_error
        - SSL_CTX_load_verify_locations
        - SSL_CTX_set_cert_store
        - SSL_CTX_set_client_CA_list
        - SSL_load_client_CA_file
        - X509_STORE_new
        - __errno_location
        - stat
        - strcmp
        - update_ssl_config
        - vlog
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-ssl.c:1472,10'
          Dst:             update_ssl_config
        - Src:             'lib/stream-ssl.c:1476,10'
          Dst:             strcmp
        - Src:             'lib/stream-ssl.c:1478,9'
          Dst:             vlog
        - Src:             'lib/stream-ssl.c:1480,29'
          Dst:             stat
        - Src:             'lib/stream-ssl.c:1480,52'
          Dst:             __errno_location
        - Src:             'lib/stream-ssl.c:1483,43'
          Dst:             SSL_load_client_CA_file
        - Src:             'lib/stream-ssl.c:1487,13'
          Dst:             SSL_CTX_set_client_CA_list
        - Src:             'lib/stream-ssl.c:1491,41'
          Dst:             X509_STORE_new
        - Src:             'lib/stream-ssl.c:1491,13'
          Dst:             SSL_CTX_set_cert_store
        - Src:             'lib/stream-ssl.c:1492,17'
          Dst:             SSL_CTX_load_verify_locations
        - Src:             'lib/stream-ssl.c:1493,17'
          Dst:             ERR_get_error
        - Src:             'lib/stream-ssl.c:1493,17'
          Dst:             ERR_error_string
        - Src:             'lib/stream-ssl.c:1493,17'
          Dst:             vlog
        - Src:             'lib/stream-ssl.c:1499,13'
          Dst:             ERR_get_error
        - Src:             'lib/stream-ssl.c:1499,13'
          Dst:             ERR_error_string
        - Src:             'lib/stream-ssl.c:1499,13'
          Dst:             vlog
    - 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:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    PEM_write_X509
      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:    log_ca_cert
      functionSourceFile: '/src/openvswitch/lib/stream-ssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1441
      functionLinenumberEnd: 1464
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          112
      EdgeCount:       26
      CyclomaticComplexity: 7
      functionsReached:
        - CRYPTO_free
        - EVP_sha1
        - X509_NAME_oneline
        - X509_digest
        - X509_get_subject_name
        - ds_cstr
        - ds_destroy
        - ds_init
        - ds_put_char
        - ds_put_cstr
        - ds_put_format
        - vlog
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-ssl.c:1447,5'
          Dst:             ds_init
        - Src:             'lib/stream-ssl.c:1448,28'
          Dst:             EVP_sha1
        - Src:             'lib/stream-ssl.c:1448,10'
          Dst:             X509_digest
        - Src:             'lib/stream-ssl.c:1449,9'
          Dst:             ds_put_cstr
        - Src:             'lib/stream-ssl.c:1454,17'
          Dst:             ds_put_char
        - Src:             'lib/stream-ssl.c:1456,13'
          Dst:             ds_put_format
        - Src:             'lib/stream-ssl.c:1459,33'
          Dst:             X509_get_subject_name
        - Src:             'lib/stream-ssl.c:1459,15'
          Dst:             X509_NAME_oneline
        - Src:             'lib/stream-ssl.c:1460,5'
          Dst:             ds_cstr
        - Src:             'lib/stream-ssl.c:1460,5'
          Dst:             vlog
        - Src:             'lib/stream-ssl.c:1462,5'
          Dst:             CRYPTO_free
        - Src:             'lib/stream-ssl.c:1463,5'
          Dst:             ds_destroy
    - functionName:    SSL_CTX_add_client_CA
      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:    X509_STORE_new
      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:    SSL_CTX_set_cert_store
      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:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    SSL_CTX_load_verify_locations
      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:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    X509_digest
      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:    ds_put_char
      functionSourceFile: '/src/openvswitch/./include/openvswitch/dynamic-string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_char__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/dynamic-string.h:99,9'
          Dst:             ds_put_char__
    - functionName:    X509_NAME_oneline
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    CRYPTO_free
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    update_ssl_config
      functionSourceFile: '/src/openvswitch/lib/stream-ssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1108
      functionLinenumberEnd: 1137
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         31
      ICount:          161
      EdgeCount:       41
      CyclomaticComplexity: 12
      functionsReached:
        - get_mtime
        - ovs_strerror
        - ssl_init
        - strcmp
        - vlog_rate_limit
        - xstrdup
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-ssl.c:1112,9'
          Dst:             ssl_init
        - Src:             'lib/stream-ssl.c:1118,13'
          Dst:             get_mtime
        - Src:             'lib/stream-ssl.c:1120,9'
          Dst:             ovs_strerror
        - Src:             'lib/stream-ssl.c:1120,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/stream-ssl.c:1124,13'
          Dst:             strcmp
        - Src:             'lib/stream-ssl.c:1134,29'
          Dst:             xstrdup
    - functionName:    SSL_load_client_CA_file
      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:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    SSL_CTX_set_client_CA_list
      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:    ssl_init
      functionSourceFile: '/src/openvswitch/lib/stream-ssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 982
      functionLinenumberEnd: 988
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - do_ssl_init
        - ovs_ignore
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-ssl.c:985,23'
          Dst:             do_ssl_init
        - Src:             'lib/stream-ssl.c:986,9'
          Dst:             ovs_ignore
    - functionName:    OPENSSL_sk_value
      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:    OPENSSL_sk_num
      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:    SSL_shutdown
      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:    ERR_clear_error
      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:    get_server_name
      functionSourceFile: '/src/openvswitch/lib/stream-ssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 331
      functionLinenumberEnd: 344
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          50
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - inet_parse_host_port_tokens
        - ip_parse
        - ipv6_parse
        - xstrdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-ssl.c:332,20'
          Dst:             xstrdup
        - Src:             'lib/stream-ssl.c:335,5'
          Dst:             inet_parse_host_port_tokens
        - Src:             'lib/stream-ssl.c:339,26'
          Dst:             ip_parse
        - Src:             'lib/stream-ssl.c:339,51'
          Dst:             ipv6_parse
        - Src:             'lib/stream-ssl.c:340,35'
          Dst:             xstrdup
    - functionName:    stream_ssl_set_ca_cert_file
      functionSourceFile: '/src/openvswitch/lib/stream-ssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1514
      functionLinenumberEnd: 1516
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - stream_ssl_set_ca_cert_file__
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-ssl.c:1515,5'
          Dst:             stream_ssl_set_ca_cert_file__
    - functionName:    read_cert_file
      functionSourceFile: '/src/openvswitch/lib/stream-ssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1357
      functionLinenumberEnd: 1409
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         36
      ICount:          209
      EdgeCount:       45
      CyclomaticComplexity: 11
      functionsReached:
        - ERR_error_string
        - ERR_get_error
        - PEM_read_X509
        - X509_free
        - __ctype_b_loc
        - __errno_location
        - fclose
        - fopen
        - getc
        - ovs_strerror
        - ungetc
        - vlog
        - x2nrealloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-ssl.c:1364,12'
          Dst:             fopen
        - Src:             'lib/stream-ssl.c:1366,9'
          Dst:             __errno_location
        - Src:             'lib/stream-ssl.c:1366,9'
          Dst:             ovs_strerror
        - Src:             'lib/stream-ssl.c:1366,9'
          Dst:             vlog
        - Src:             'lib/stream-ssl.c:1368,16'
          Dst:             __errno_location
        - Src:             'lib/stream-ssl.c:1376,16'
          Dst:             PEM_read_X509
        - Src:             'lib/stream-ssl.c:1380,13'
          Dst:             ERR_get_error
        - Src:             'lib/stream-ssl.c:1380,13'
          Dst:             ERR_error_string
        - Src:             'lib/stream-ssl.c:1380,13'
          Dst:             vlog
        - Src:             'lib/stream-ssl.c:1383,17'
          Dst:             X509_free
        - Src:             'lib/stream-ssl.c:1388,13'
          Dst:             fclose
        - Src:             'lib/stream-ssl.c:1394,22'
          Dst:             x2nrealloc
        - Src:             'lib/stream-ssl.c:1400,17'
          Dst:             getc
        - Src:             'lib/stream-ssl.c:1401,30'
          Dst:             __ctype_b_loc
        - Src:             'lib/stream-ssl.c:1405,9'
          Dst:             ungetc
        - Src:             'lib/stream-ssl.c:1407,5'
          Dst:             fclose
    - functionName:    PEM_read_X509
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      'N/A'
      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:    ungetc
      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:    stream_ssl_set_peer_ca_cert_file
      functionSourceFile: '/src/openvswitch/lib/stream-ssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1418
      functionLinenumberEnd: 1436
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         20
      ICount:          92
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - ERR_error_string
        - ERR_get_error
        - SSL_CTX_ctrl
        - read_cert_file
        - ssl_init
        - vlog
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-ssl.c:1423,9'
          Dst:             ssl_init
        - Src:             'lib/stream-ssl.c:1427,10'
          Dst:             read_cert_file
        - Src:             'lib/stream-ssl.c:1429,17'
          Dst:             SSL_CTX_ctrl
        - Src:             'lib/stream-ssl.c:1430,17'
          Dst:             ERR_get_error
        - Src:             'lib/stream-ssl.c:1430,17'
          Dst:             ERR_error_string
        - Src:             'lib/stream-ssl.c:1430,17'
          Dst:             vlog
    - functionName:    bitmap_is_set
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 90
      functionLinenumberEnd: 91
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - bitmap_bit__
        - bitmap_unit__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/bitmap.h:91,14'
          Dst:             bitmap_unit__
        - Src:             'lib/bitmap.h:91,46'
          Dst:             bitmap_bit__
    - functionName:    hmap_next
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 429
      functionLinenumberEnd: 432
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_next__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:432,15'
          Dst:             hmap_next__
    - functionName:    hmap_first
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 416
      functionLinenumberEnd: 417
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:417,12'
          Dst:             hmap_next__
    - functionName:    bitmap_set1
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 96
      functionLinenumberEnd: 98
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - bitmap_bit__
        - bitmap_unit__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/bitmap.h:97,39'
          Dst:             bitmap_bit__
        - Src:             'lib/bitmap.h:97,6'
          Dst:             bitmap_unit__
    - functionName:    stream_ssl_set_protocols
      functionSourceFile: '/src/openvswitch/lib/stream-ssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1254
      functionLinenumberEnd: 1346
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         97
      ICount:          509
      EdgeCount:       125
      CyclomaticComplexity: 30
      functionsReached:
        - SSL_CTX_ctrl
        - bitmap_is_set
        - bitmap_set1
        - hmap_first
        - hmap_next
        - ovs_ignore
        - sset_add_and_free
        - sset_contains
        - sset_destroy
        - sset_find_and_delete
        - sset_from_delimited_string
        - sset_is_empty
        - ssl_init
        - strchr
        - strcmp
        - strlen
        - vlog
        - xmemdup0
        - xstrdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-ssl.c:1255,9'
          Dst:             ssl_init
        - Src:             'lib/stream-ssl.c:1255,32'
          Dst:             strcmp
        - Src:             'lib/stream-ssl.c:1269,24'
          Dst:             strchr
        - Src:             'lib/stream-ssl.c:1271,15'
          Dst:             strlen
        - Src:             'lib/stream-ssl.c:1276,33'
          Dst:             xmemdup0
        - Src:             'lib/stream-ssl.c:1276,9'
          Dst:             sset_add_and_free
        - Src:             'lib/stream-ssl.c:1281,33'
          Dst:             xmemdup0
        - Src:             'lib/stream-ssl.c:1281,9'
          Dst:             sset_add_and_free
        - Src:             'lib/stream-ssl.c:1282,33'
          Dst:             xstrdup
        - Src:             'lib/stream-ssl.c:1282,9'
          Dst:             sset_add_and_free
        - Src:             'lib/stream-ssl.c:1285,9'
          Dst:             sset_from_delimited_string
        - Src:             'lib/stream-ssl.c:1288,9'
          Dst:             sset_is_empty
        - Src:             'lib/stream-ssl.c:1289,9'
          Dst:             vlog
        - Src:             'lib/stream-ssl.c:1298,13'
          Dst:             sset_contains
        - Src:             'lib/stream-ssl.c:1302,17'
          Dst:             vlog
        - Src:             'lib/stream-ssl.c:1304,13'
          Dst:             bitmap_set1
        - Src:             'lib/stream-ssl.c:1305,13'
          Dst:             sset_find_and_delete
        - Src:             'lib/stream-ssl.c:1309,10'
          Dst:             sset_is_empty
        - Src:             'lib/stream-ssl.c:1312,9'
          Dst:             hmap_first
        - Src:             'lib/stream-ssl.c:1312,9'
          Dst:             hmap_first
        - Src:             'lib/stream-ssl.c:1313,13'
          Dst:             vlog
        - Src:             'lib/stream-ssl.c:1312,9'
          Dst:             hmap_next
        - Src:             'lib/stream-ssl.c:1312,9'
          Dst:             hmap_next
        - Src:             'lib/stream-ssl.c:1319,5'
          Dst:             ovs_ignore
        - Src:             'lib/stream-ssl.c:1320,5'
          Dst:             ovs_ignore
        - Src:             'lib/stream-ssl.c:1323,18'
          Dst:             bitmap_is_set
        - Src:             'lib/stream-ssl.c:1324,17'
          Dst:             vlog
        - Src:             'lib/stream-ssl.c:1332,9'
          Dst:             ovs_ignore
        - Src:             'lib/stream-ssl.c:1337,5'
          Dst:             SSL_CTX_ctrl
        - Src:             'lib/stream-ssl.c:1338,5'
          Dst:             SSL_CTX_ctrl
        - Src:             'lib/stream-ssl.c:1339,5'
          Dst:             vlog
        - Src:             'lib/stream-ssl.c:1342,21'
          Dst:             xstrdup
        - Src:             'lib/stream-ssl.c:1345,5'
          Dst:             sset_destroy
    - functionName:    stream_ssl_set_server_name
      functionSourceFile: '/src/openvswitch/lib/stream-ssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1245
      functionLinenumberEnd: 1248
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - nullable_xstrdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-ssl.c:1247,32'
          Dst:             nullable_xstrdup
    - functionName:    stream_ssl_set_ciphersuites
      functionSourceFile: '/src/openvswitch/lib/stream-ssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1229
      functionLinenumberEnd: 1238
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         19
      ICount:          78
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - ERR_error_string
        - ERR_get_error
        - SSL_CTX_set_ciphersuites
        - ssl_init
        - strcmp
        - vlog
        - xstrdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-ssl.c:1230,9'
          Dst:             ssl_init
        - Src:             'lib/stream-ssl.c:1230,32'
          Dst:             strcmp
        - Src:             'lib/stream-ssl.c:1233,9'
          Dst:             SSL_CTX_set_ciphersuites
        - Src:             'lib/stream-ssl.c:1234,9'
          Dst:             ERR_get_error
        - Src:             'lib/stream-ssl.c:1234,9'
          Dst:             ERR_error_string
        - Src:             'lib/stream-ssl.c:1234,9'
          Dst:             vlog
        - Src:             'lib/stream-ssl.c:1237,24'
          Dst:             xstrdup
    - functionName:    SSL_CTX_set_ciphersuites
      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:    stream_ssl_set_ciphers
      functionSourceFile: '/src/openvswitch/lib/stream-ssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1214
      functionLinenumberEnd: 1223
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         19
      ICount:          78
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - ERR_error_string
        - ERR_get_error
        - SSL_CTX_set_cipher_list
        - ssl_init
        - strcmp
        - vlog
        - xstrdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-ssl.c:1215,9'
          Dst:             ssl_init
        - Src:             'lib/stream-ssl.c:1215,32'
          Dst:             strcmp
        - Src:             'lib/stream-ssl.c:1218,9'
          Dst:             SSL_CTX_set_cipher_list
        - Src:             'lib/stream-ssl.c:1219,9'
          Dst:             ERR_get_error
        - Src:             'lib/stream-ssl.c:1219,9'
          Dst:             ERR_error_string
        - Src:             'lib/stream-ssl.c:1219,9'
          Dst:             vlog
        - Src:             'lib/stream-ssl.c:1222,19'
          Dst:             xstrdup
    - functionName:    stream_ssl_set_key_and_cert
      functionSourceFile: '/src/openvswitch/lib/stream-ssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1202
      functionLinenumberEnd: 1208
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          37
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - stream_ssl_set_certificate_file__
        - stream_ssl_set_private_key_file__
        - update_ssl_config
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-ssl.c:1203,9'
          Dst:             update_ssl_config
        - Src:             'lib/stream-ssl.c:1204,12'
          Dst:             update_ssl_config
        - Src:             'lib/stream-ssl.c:1205,9'
          Dst:             stream_ssl_set_certificate_file__
        - Src:             'lib/stream-ssl.c:1206,9'
          Dst:             stream_ssl_set_private_key_file__
    - functionName:    stream_ssl_set_certificate_file__
      functionSourceFile: '/src/openvswitch/lib/stream-ssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1160
      functionLinenumberEnd: 1167
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          49
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - ERR_error_string
        - ERR_get_error
        - SSL_CTX_use_certificate_file
        - vlog
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-ssl.c:1161,9'
          Dst:             SSL_CTX_use_certificate_file
        - Src:             'lib/stream-ssl.c:1164,9'
          Dst:             ERR_get_error
        - Src:             'lib/stream-ssl.c:1164,9'
          Dst:             ERR_error_string
        - Src:             'lib/stream-ssl.c:1164,9'
          Dst:             vlog
    - functionName:    stream_ssl_set_private_key_file__
      functionSourceFile: '/src/openvswitch/lib/stream-ssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1141
      functionLinenumberEnd: 1148
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          49
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - ERR_error_string
        - ERR_get_error
        - SSL_CTX_use_PrivateKey_file
        - vlog
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-ssl.c:1142,9'
          Dst:             SSL_CTX_use_PrivateKey_file
        - Src:             'lib/stream-ssl.c:1145,9'
          Dst:             ERR_get_error
        - Src:             'lib/stream-ssl.c:1145,9'
          Dst:             ERR_error_string
        - Src:             'lib/stream-ssl.c:1145,9'
          Dst:             vlog
    - functionName:    SSL_CTX_use_PrivateKey_file
      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:    SSL_CTX_use_certificate_file
      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:    stream_ssl_set_certificate_file
      functionSourceFile: '/src/openvswitch/lib/stream-ssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1171
      functionLinenumberEnd: 1175
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          26
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - stream_ssl_set_certificate_file__
        - update_ssl_config
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-ssl.c:1172,9'
          Dst:             update_ssl_config
        - Src:             'lib/stream-ssl.c:1173,9'
          Dst:             stream_ssl_set_certificate_file__
    - functionName:    stream_ssl_set_private_key_file
      functionSourceFile: '/src/openvswitch/lib/stream-ssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1152
      functionLinenumberEnd: 1156
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          26
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - stream_ssl_set_private_key_file__
        - update_ssl_config
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-ssl.c:1153,9'
          Dst:             update_ssl_config
        - Src:             'lib/stream-ssl.c:1154,9'
          Dst:             stream_ssl_set_private_key_file__
    - functionName:    stream_ssl_is_configured
      functionSourceFile: '/src/openvswitch/lib/stream-ssl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1102
      functionLinenumberEnd: 1103
      functionDepth:   0
      returnType:      bool
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         6
      ICount:          25
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_dh4096
      functionSourceFile: '/src/openvswitch/lib/dhparams.c'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 139
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         13
      ICount:          69
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - BN_bin2bn
        - BN_free
        - DH_free
        - DH_new
        - my_DH_set0_pqg
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dhparams.c:124,14'
          Dst:             DH_new
        - Src:             'lib/dhparams.c:129,9'
          Dst:             BN_bin2bn
        - Src:             'lib/dhparams.c:130,9'
          Dst:             BN_bin2bn
        - Src:             'lib/dhparams.c:132,17'
          Dst:             my_DH_set0_pqg
        - Src:             'lib/dhparams.c:133,9'
          Dst:             DH_free
        - Src:             'lib/dhparams.c:134,9'
          Dst:             BN_free
        - Src:             'lib/dhparams.c:135,9'
          Dst:             BN_free
    - functionName:    DH_new
      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:    BN_bin2bn
      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:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    my_DH_set0_pqg
      functionSourceFile: '/src/openvswitch/lib/dhparams.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12
      functionLinenumberEnd: 14
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - DH_set0_pqg
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dhparams.c:13,5'
          Dst:             ovs_ignore
        - Src:             'lib/dhparams.c:14,12'
          Dst:             DH_set0_pqg
    - functionName:    DH_free
      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:    BN_free
      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:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    DH_set0_pqg
      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:    get_dh2048
      functionSourceFile: '/src/openvswitch/lib/dhparams.c'
      linkageType:     InternalLinkage
      functionLinenumber: 17
      functionLinenumberEnd: 64
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         13
      ICount:          69
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - BN_bin2bn
        - BN_free
        - DH_free
        - DH_new
        - my_DH_set0_pqg
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dhparams.c:49,14'
          Dst:             DH_new
        - Src:             'lib/dhparams.c:54,9'
          Dst:             BN_bin2bn
        - Src:             'lib/dhparams.c:55,9'
          Dst:             BN_bin2bn
        - Src:             'lib/dhparams.c:57,17'
          Dst:             my_DH_set0_pqg
        - Src:             'lib/dhparams.c:58,9'
          Dst:             DH_free
        - Src:             'lib/dhparams.c:59,9'
          Dst:             BN_free
        - Src:             'lib/dhparams.c:60,9'
          Dst:             BN_free
    - functionName:    init_this_module_bundle
      functionSourceFile: '/src/openvswitch/lib/bundle.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 38
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/bundle.c:38,1'
          Dst:             vlog_insert_module
    - functionName:    ofpbuf_tail
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 203
      functionLinenumberEnd: 205
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          56
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:204,5'
          Dst:             ovs_ignore
    - functionName:    ofpact_finish_BUNDLE
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_finish
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ovs_ignore
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_finish
    - functionName:    ofpbuf_oversized
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 291
      functionLinenumberEnd: 292
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpbuf_tail
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:292,20'
          Dst:             ofpbuf_tail
    - functionName:    ofpact_put_BUNDLE
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_put
    - functionName:    hash_rot
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 32
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhash_add__
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hash_rot
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:71,12'
          Dst:             hash_rot
    - functionName:    mhash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_rot
        - mhash_add__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:78,12'
          Dst:             mhash_add__
        - Src:             'lib/hash.h:79,12'
          Dst:             hash_rot
    - functionName:    mhash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 108
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_add
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:109,12'
          Dst:             mhash_add
    - functionName:    hash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:119,12'
          Dst:             mhash_finish
    - functionName:    hash_2words
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 153
      functionLinenumberEnd: 154
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_add
        - hash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:154,33'
          Dst:             hash_add
        - Src:             'lib/hash.h:154,24'
          Dst:             hash_add
        - Src:             'lib/hash.h:154,12'
          Dst:             hash_finish
    - functionName:    ds_put_char
      functionSourceFile: '/src/openvswitch/./include/openvswitch/dynamic-string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_char__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/dynamic-string.h:99,9'
          Dst:             ds_put_char__
    - functionName:    bundle_format
      functionSourceFile: '/src/openvswitch/lib/bundle.c'
      linkageType:     InternalLinkage
      functionLinenumber: 305
      functionLinenumberEnd: 342
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          144
      EdgeCount:       19
      CyclomaticComplexity: 4
      functionsReached:
        - ds_put_char
        - ds_put_format
        - flow_hash_fields_to_str
        - mf_format_subfield
        - ofputil_format_port
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/bundle.c:311,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/bundle.c:309,14'
          Dst:             flow_hash_fields_to_str
        - Src:             'lib/bundle.c:324,5'
          Dst:             ds_put_format
        - Src:             'lib/bundle.c:328,9'
          Dst:             mf_format_subfield
        - Src:             'lib/bundle.c:329,9'
          Dst:             ds_put_char
        - Src:             'lib/bundle.c:332,5'
          Dst:             ds_put_format
        - Src:             'lib/bundle.c:335,13'
          Dst:             ds_put_char
        - Src:             'lib/bundle.c:338,9'
          Dst:             ofputil_format_port
        - Src:             'lib/bundle.c:341,5'
          Dst:             ds_put_format
    - functionName:    bundle_parse_load
      functionSourceFile: '/src/openvswitch/lib/bundle.c'
      linkageType:     InternalLinkage
      functionLinenumber: 277
      functionLinenumberEnd: 297
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          57
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - bundle_parse__
        - strtok_r
        - xstrdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/bundle.c:283,14'
          Dst:             xstrdup
        - Src:             'lib/bundle.c:284,14'
          Dst:             strtok_r
        - Src:             'lib/bundle.c:285,13'
          Dst:             strtok_r
        - Src:             'lib/bundle.c:286,17'
          Dst:             strtok_r
        - Src:             'lib/bundle.c:287,19'
          Dst:             strtok_r
        - Src:             'lib/bundle.c:288,11'
          Dst:             strtok_r
        - Src:             'lib/bundle.c:289,20'
          Dst:             strtok_r
        - Src:             'lib/bundle.c:291,13'
          Dst:             bundle_parse__
    - functionName:    bundle_parse__
      functionSourceFile: '/src/openvswitch/lib/bundle.c'
      linkageType:     InternalLinkage
      functionLinenumber: 155
      functionLinenumberEnd: 238
      functionDepth:   0
      returnType:      'N/A'
      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:         58
      ICount:          344
      EdgeCount:       78
      CyclomaticComplexity: 22
      functionsReached:
        - atoi
        - mf_nxm_header
        - mf_parse_subfield
        - ofpact_finish_BUNDLE
        - ofpact_put_BUNDLE
        - ofpbuf_oversized
        - ofpbuf_put
        - ofputil_port_from_string
        - strcasecmp
        - strtok_r
        - xasprintf
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/bundle.c:159,16'
          Dst:             xasprintf
        - Src:             'lib/bundle.c:162,9'
          Dst:             strcasecmp
        - Src:             'lib/bundle.c:163,12'
          Dst:             strcasecmp
        - Src:             'lib/bundle.c:164,16'
          Dst:             xasprintf
        - Src:             'lib/bundle.c:168,14'
          Dst:             ofpact_put_BUNDLE
        - Src:             'lib/bundle.c:174,18'
          Dst:             strtok_r
        - Src:             'lib/bundle.c:179,14'
          Dst:             ofputil_port_from_string
        - Src:             'lib/bundle.c:180,20'
          Dst:             xasprintf
        - Src:             'lib/bundle.c:182,9'
          Dst:             ofpbuf_put
        - Src:             'lib/bundle.c:188,9'
          Dst:             ofpbuf_oversized
        - Src:             'lib/bundle.c:189,16'
          Dst:             xasprintf
        - Src:             'lib/bundle.c:192,5'
          Dst:             ofpact_finish_BUNDLE
        - Src:             'lib/bundle.c:193,21'
          Dst:             atoi
        - Src:             'lib/bundle.c:195,10'
          Dst:             strcasecmp
        - Src:             'lib/bundle.c:197,17'
          Dst:             strcasecmp
        - Src:             'lib/bundle.c:199,17'
          Dst:             strcasecmp
        - Src:             'lib/bundle.c:201,17'
          Dst:             strcasecmp
        - Src:             'lib/bundle.c:203,17'
          Dst:             strcasecmp
        - Src:             'lib/bundle.c:205,17'
          Dst:             strcasecmp
        - Src:             'lib/bundle.c:207,17'
          Dst:             strcasecmp
        - Src:             'lib/bundle.c:210,16'
          Dst:             xasprintf
        - Src:             'lib/bundle.c:213,10'
          Dst:             strcasecmp
        - Src:             'lib/bundle.c:215,17'
          Dst:             strcasecmp
        - Src:             'lib/bundle.c:218,16'
          Dst:             xasprintf
        - Src:             'lib/bundle.c:221,9'
          Dst:             strcasecmp
        - Src:             'lib/bundle.c:222,16'
          Dst:             xasprintf
        - Src:             'lib/bundle.c:226,23'
          Dst:             mf_parse_subfield
        - Src:             'lib/bundle.c:231,14'
          Dst:             mf_nxm_header
        - Src:             'lib/bundle.c:232,20'
          Dst:             xasprintf
    - functionName:    bundle_parse
      functionSourceFile: '/src/openvswitch/lib/bundle.c'
      linkageType:     InternalLinkage
      functionLinenumber: 248
      functionLinenumberEnd: 266
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          53
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - bundle_parse__
        - strtok_r
        - xstrdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/bundle.c:254,14'
          Dst:             xstrdup
        - Src:             'lib/bundle.c:255,14'
          Dst:             strtok_r
        - Src:             'lib/bundle.c:256,13'
          Dst:             strtok_r
        - Src:             'lib/bundle.c:257,17'
          Dst:             strtok_r
        - Src:             'lib/bundle.c:258,19'
          Dst:             strtok_r
        - Src:             'lib/bundle.c:259,20'
          Dst:             strtok_r
        - Src:             'lib/bundle.c:261,13'
          Dst:             bundle_parse__
    - functionName:    bundle_check
      functionSourceFile: '/src/openvswitch/lib/bundle.c'
      linkageType:     InternalLinkage
      functionLinenumber: 111
      functionLinenumberEnd: 142
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          158
      EdgeCount:       38
      CyclomaticComplexity: 10
      functionsReached:
        - mf_check_dst
        - ofpact_check_output_port
        - vlog_rate_limit
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/bundle.c:116,29'
          Dst:             mf_check_dst
        - Src:             'lib/bundle.c:126,33'
          Dst:             ofpact_check_output_port
        - Src:             'lib/bundle.c:128,17'
          Dst:             vlog_rate_limit
        - Src:             'lib/bundle.c:136,13'
          Dst:             vlog_rate_limit
    - functionName:    execute_ab
      functionSourceFile: '/src/openvswitch/lib/bundle.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          64
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    execute_hrw
      functionSourceFile: '/src/openvswitch/lib/bundle.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 83
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          145
      EdgeCount:       28
      CyclomaticComplexity: 8
      functionsReached:
        - flow_hash_fields
        - flow_mask_hash_fields
        - hash_2words
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/bundle.c:65,9'
          Dst:             flow_mask_hash_fields
        - Src:             'lib/bundle.c:68,17'
          Dst:             flow_hash_fields
        - Src:             'lib/bundle.c:74,29'
          Dst:             hash_2words
    - functionName:    bundle_execute
      functionSourceFile: '/src/openvswitch/lib/bundle.c'
      linkageType:     InternalLinkage
      functionLinenumber: 95
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          55
      EdgeCount:       12
      CyclomaticComplexity: 7
      functionsReached:
        - abort
        - execute_ab
        - execute_hrw
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib/bundle.c:96,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/bundle.c:98,16'
          Dst:             execute_hrw
        - Src:             'lib/bundle.c:101,16'
          Dst:             execute_ab
        - Src:             'lib/bundle.c:104,9'
          Dst:             abort
    - functionName:    init_this_module_conntrack
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48
      functionLinenumberEnd: 48
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:48,1'
          Dst:             vlog_insert_module
    - functionName:    conntrack_full_init_coverage
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:50,1'
          Dst:             coverage_counter_register
    - functionName:    conntrack_l3csum_checked_init_coverage
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51
      functionLinenumberEnd: 51
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:51,1'
          Dst:             coverage_counter_register
    - functionName:    conntrack_l3csum_err_init_coverage
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:52,1'
          Dst:             coverage_counter_register
    - functionName:    conntrack_l4csum_checked_init_coverage
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 53
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:53,1'
          Dst:             coverage_counter_register
    - functionName:    conntrack_l4csum_err_init_coverage
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:54,1'
          Dst:             coverage_counter_register
    - functionName:    conntrack_lookup_natted_miss_init_coverage
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:55,1'
          Dst:             coverage_counter_register
    - functionName:    conntrack_zone_full_init_coverage
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:56,1'
          Dst:             coverage_counter_register
    - functionName:    conntrack_zone_full_count
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_conntrack_zone_full_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:56,1'
          Dst:             counter_conntrack_zone_full_get
    - functionName:    counter_conntrack_zone_full_get
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_conntrack_zone_full_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:56,1'
          Dst:             counter_conntrack_zone_full_get_unsafe
    - functionName:    counter_conntrack_zone_full_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    conntrack_lookup_natted_miss_count
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_conntrack_lookup_natted_miss_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:55,1'
          Dst:             counter_conntrack_lookup_natted_miss_get
    - functionName:    counter_conntrack_lookup_natted_miss_get
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_conntrack_lookup_natted_miss_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:55,1'
          Dst:             counter_conntrack_lookup_natted_miss_get_unsafe
    - functionName:    counter_conntrack_lookup_natted_miss_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    conntrack_l4csum_err_count
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_conntrack_l4csum_err_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:54,1'
          Dst:             counter_conntrack_l4csum_err_get
    - functionName:    counter_conntrack_l4csum_err_get
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_conntrack_l4csum_err_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:54,1'
          Dst:             counter_conntrack_l4csum_err_get_unsafe
    - functionName:    counter_conntrack_l4csum_err_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    conntrack_l4csum_checked_count
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 53
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_conntrack_l4csum_checked_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:53,1'
          Dst:             counter_conntrack_l4csum_checked_get
    - functionName:    counter_conntrack_l4csum_checked_get
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 53
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_conntrack_l4csum_checked_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:53,1'
          Dst:             counter_conntrack_l4csum_checked_get_unsafe
    - functionName:    counter_conntrack_l4csum_checked_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 53
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    conntrack_l3csum_err_count
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_conntrack_l3csum_err_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:52,1'
          Dst:             counter_conntrack_l3csum_err_get
    - functionName:    counter_conntrack_l3csum_err_get
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_conntrack_l3csum_err_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:52,1'
          Dst:             counter_conntrack_l3csum_err_get_unsafe
    - functionName:    counter_conntrack_l3csum_err_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    conntrack_l3csum_checked_count
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51
      functionLinenumberEnd: 51
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_conntrack_l3csum_checked_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:51,1'
          Dst:             counter_conntrack_l3csum_checked_get
    - functionName:    counter_conntrack_l3csum_checked_get
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51
      functionLinenumberEnd: 51
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_conntrack_l3csum_checked_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:51,1'
          Dst:             counter_conntrack_l3csum_checked_get_unsafe
    - functionName:    counter_conntrack_l3csum_checked_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51
      functionLinenumberEnd: 51
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    conntrack_full_count
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_conntrack_full_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:50,1'
          Dst:             counter_conntrack_full_get
    - functionName:    counter_conntrack_full_get
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_conntrack_full_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:50,1'
          Dst:             counter_conntrack_full_get_unsafe
    - functionName:    counter_conntrack_full_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ct_dpif_inet_addr_to_ct_endpoint
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2754
      functionLinenumberEnd: 2760
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          51
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - htons
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:2755,20'
          Dst:             htons
        - Src:             'lib/conntrack.c:2757,27'
          Dst:             htons
    - functionName:    ct_endpoint_to_ct_dpif_inet_addr
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2739
      functionLinenumberEnd: 2745
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          51
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - htons
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:2740,20'
          Dst:             htons
        - Src:             'lib/conntrack.c:2742,27'
          Dst:             htons
    - functionName:    conn_key_to_tuple
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2764
      functionLinenumberEnd: 2784
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          143
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - ct_endpoint_to_ct_dpif_inet_addr
        - htons
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:2765,25'
          Dst:             htons
        - Src:             'lib/conntrack.c:2767,32'
          Dst:             htons
        - Src:             'lib/conntrack.c:2771,5'
          Dst:             ct_endpoint_to_ct_dpif_inet_addr
        - Src:             'lib/conntrack.c:2773,5'
          Dst:             ct_endpoint_to_ct_dpif_inet_addr
    - functionName:    conn_expiration
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2689
      functionLinenumberEnd: 2694
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ipv6_addr_equals
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1184
      functionLinenumberEnd: 1186
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          80
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_l4_proto_set_sctp
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1294
      functionLinenumberEnd: 1296
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sctp_checksum_valid
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1788
      functionLinenumberEnd: 1804
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - conntrack_l4csum_checked_add
        - conntrack_l4csum_err_add
        - crc32c
        - get_16aligned_be32
        - put_16aligned_be32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:1792,17'
          Dst:             get_16aligned_be32
        - Src:             'lib/conntrack.c:1793,5'
          Dst:             put_16aligned_be32
        - Src:             'lib/conntrack.c:1794,12'
          Dst:             crc32c
        - Src:             'lib/conntrack.c:1795,5'
          Dst:             put_16aligned_be32
        - Src:             'lib/conntrack.c:1797,5'
          Dst:             conntrack_l4csum_checked_add
        - Src:             'lib/conntrack.c:1799,9'
          Dst:             conntrack_l4csum_err_add
    - functionName:    get_16aligned_be32
      functionSourceFile: '/src/openvswitch/lib/unaligned.h'
      linkageType:     InternalLinkage
      functionLinenumber: 246
      functionLinenumberEnd: 250
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    put_16aligned_be32
      functionSourceFile: '/src/openvswitch/lib/unaligned.h'
      linkageType:     InternalLinkage
      functionLinenumber: 257
      functionLinenumberEnd: 265
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          19
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    conntrack_l4csum_checked_add
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 53
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_conntrack_l4csum_checked_get
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:53,1'
          Dst:             counter_conntrack_l4csum_checked_get
    - functionName:    conntrack_l4csum_err_add
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_conntrack_l4csum_err_get
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:54,1'
          Dst:             counter_conntrack_l4csum_err_get
    - functionName:    sctp_check_len
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1860
      functionLinenumberEnd: 1887
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          82
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - ntohs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:1881,13'
          Dst:             ntohs
        - Src:             'lib/conntrack.c:1874,18'
          Dst:             ntohs
    - functionName:    dp_packet_l4_proto_set_udp
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1280
      functionLinenumberEnd: 1283
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_l4_proto_set_tcp
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1266
      functionLinenumberEnd: 1269
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_l4_checksum_set_good
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1310
      functionLinenumberEnd: 1313
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_l4_checksum_set_bad
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1324
      functionLinenumberEnd: 1327
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    checksum_valid
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1766
      functionLinenumberEnd: 1783
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          94
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - conntrack_l4csum_checked_add
        - conntrack_l4csum_err_add
        - csum_continue
        - csum_finish
        - htons
        - packet_csum_pseudoheader
        - packet_csum_upperlayer6
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:1769,25'
          Dst:             htons
        - Src:             'lib/conntrack.c:1770,25'
          Dst:             packet_csum_pseudoheader
        - Src:             'lib/conntrack.c:1771,30'
          Dst:             csum_continue
        - Src:             'lib/conntrack.c:1771,18'
          Dst:             csum_finish
        - Src:             'lib/conntrack.c:1772,32'
          Dst:             htons
        - Src:             'lib/conntrack.c:1773,18'
          Dst:             packet_csum_upperlayer6
        - Src:             'lib/conntrack.c:1778,5'
          Dst:             conntrack_l4csum_checked_add
        - Src:             'lib/conntrack.c:1780,9'
          Dst:             conntrack_l4csum_err_add
    - functionName:    dp_packet_l4_checksum_unknown
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1348
      functionLinenumberEnd: 1349
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    extract_l4_icmp6
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2099
      functionLinenumberEnd: 2163
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          214
      EdgeCount:       32
      CyclomaticComplexity: 7
      functionsReached:
        - conn_key_reverse
        - extract_l3_ipv6
        - extract_l4
        - htons
        - ipv6_addr_equals
        - reverse_icmp6_type
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/conntrack.c:2108,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/conntrack.c:2117,30'
          Dst:             reverse_icmp6_type
        - Src:             'lib/conntrack.c:2135,29'
          Dst:             htons
        - Src:             'lib/conntrack.c:2136,19'
          Dst:             extract_l3_ipv6
        - Src:             'lib/conntrack.c:2142,14'
          Dst:             ipv6_addr_equals
        - Src:             'lib/conntrack.c:2151,14'
          Dst:             extract_l4
        - Src:             'lib/conntrack.c:2153,13'
          Dst:             conn_key_reverse
    - functionName:    reverse_icmp6_type
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2080
      functionLinenumberEnd: 2089
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          35
      EdgeCount:       12
      CyclomaticComplexity: 7
      functionsReached:
        - abort
      functionUses:    3
      BranchProfiles:
        - Branch String:   'lib/conntrack.c:2081,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/conntrack.c:2087,9'
          Dst:             abort
    - functionName:    extract_l3_ipv6
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1731
      functionLinenumberEnd: 1761
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          101
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - parse_ipv6_ext_hdrs
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:1743,10'
          Dst:             parse_ipv6_ext_hdrs
    - functionName:    extract_l4
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2181
      functionLinenumberEnd: 2203
      functionDepth:   0
      returnType:      bool
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         54
      ICount:          259
      EdgeCount:       71
      CyclomaticComplexity: 19
      functionsReached:
        - check_l4_icmp
        - check_l4_icmp6
        - check_l4_sctp
        - check_l4_tcp
        - check_l4_udp
        - extract_l4_icmp
        - extract_l4_icmp6
        - extract_l4_sctp
        - extract_l4_tcp
        - extract_l4_udp
        - htons
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:2183,29'
          Dst:             check_l4_tcp
        - Src:             'lib/conntrack.c:2184,19'
          Dst:             extract_l4_tcp
        - Src:             'lib/conntrack.c:2186,29'
          Dst:             check_l4_udp
        - Src:             'lib/conntrack.c:2187,19'
          Dst:             extract_l4_udp
        - Src:             'lib/conntrack.c:2189,29'
          Dst:             check_l4_sctp
        - Src:             'lib/conntrack.c:2190,19'
          Dst:             extract_l4_sctp
        - Src:             'lib/conntrack.c:2191,32'
          Dst:             htons
        - Src:             'lib/conntrack.c:2193,29'
          Dst:             check_l4_icmp
        - Src:             'lib/conntrack.c:2194,19'
          Dst:             extract_l4_icmp
        - Src:             'lib/conntrack.c:2195,32'
          Dst:             htons
        - Src:             'lib/conntrack.c:2197,29'
          Dst:             check_l4_icmp6
        - Src:             'lib/conntrack.c:2198,19'
          Dst:             extract_l4_icmp6
    - functionName:    conn_key_reverse
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2327
      functionLinenumberEnd: 2331
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    check_l4_tcp
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1809
      functionLinenumberEnd: 1829
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          111
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - checksum_valid
        - dp_packet_l4_checksum_set_bad
        - dp_packet_l4_checksum_set_good
        - dp_packet_l4_checksum_unknown
        - dp_packet_l4_proto_set_tcp
        - ntohs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:1815,22'
          Dst:             ntohs
        - Src:             'lib/conntrack.c:1820,16'
          Dst:             dp_packet_l4_checksum_unknown
        - Src:             'lib/conntrack.c:1821,14'
          Dst:             checksum_valid
        - Src:             'lib/conntrack.c:1822,13'
          Dst:             dp_packet_l4_checksum_set_bad
        - Src:             'lib/conntrack.c:1825,9'
          Dst:             dp_packet_l4_checksum_set_good
        - Src:             'lib/conntrack.c:1826,9'
          Dst:             dp_packet_l4_proto_set_tcp
    - functionName:    extract_l4_tcp
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1931
      functionLinenumberEnd: 1942
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          86
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    check_l4_udp
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1834
      functionLinenumberEnd: 1856
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          136
      EdgeCount:       31
      CyclomaticComplexity: 10
      functionsReached:
        - checksum_valid
        - dp_packet_l4_checksum_set_bad
        - dp_packet_l4_checksum_set_good
        - dp_packet_l4_checksum_unknown
        - dp_packet_l4_proto_set_udp
        - htons
        - ntohs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:1840,22'
          Dst:             ntohs
        - Src:             'lib/conntrack.c:1846,49'
          Dst:             htons
        - Src:             'lib/conntrack.c:1847,20'
          Dst:             dp_packet_l4_checksum_unknown
        - Src:             'lib/conntrack.c:1848,14'
          Dst:             checksum_valid
        - Src:             'lib/conntrack.c:1849,13'
          Dst:             dp_packet_l4_checksum_set_bad
        - Src:             'lib/conntrack.c:1852,9'
          Dst:             dp_packet_l4_checksum_set_good
        - Src:             'lib/conntrack.c:1853,9'
          Dst:             dp_packet_l4_proto_set_udp
    - functionName:    extract_l4_udp
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1947
      functionLinenumberEnd: 1958
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          86
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    check_l4_sctp
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1891
      functionLinenumberEnd: 1905
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          70
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - dp_packet_l4_checksum_set_bad
        - dp_packet_l4_checksum_set_good
        - dp_packet_l4_checksum_unknown
        - dp_packet_l4_proto_set_sctp
        - sctp_check_len
        - sctp_checksum_valid
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:1892,9'
          Dst:             sctp_check_len
        - Src:             'lib/conntrack.c:1896,16'
          Dst:             dp_packet_l4_checksum_unknown
        - Src:             'lib/conntrack.c:1897,14'
          Dst:             sctp_checksum_valid
        - Src:             'lib/conntrack.c:1898,13'
          Dst:             dp_packet_l4_checksum_set_bad
        - Src:             'lib/conntrack.c:1901,9'
          Dst:             dp_packet_l4_checksum_set_good
        - Src:             'lib/conntrack.c:1902,9'
          Dst:             dp_packet_l4_proto_set_sctp
    - functionName:    extract_l4_sctp
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1963
      functionLinenumberEnd: 1973
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          86
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    check_l4_icmp
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1909
      functionLinenumberEnd: 1919
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          45
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - conntrack_l4csum_checked_add
        - conntrack_l4csum_err_add
        - csum
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:1911,9'
          Dst:             conntrack_l4csum_checked_add
        - Src:             'lib/conntrack.c:1912,13'
          Dst:             csum
        - Src:             'lib/conntrack.c:1913,13'
          Dst:             conntrack_l4csum_err_add
    - functionName:    extract_l4_icmp
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2010
      functionLinenumberEnd: 2076
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         35
      ICount:          262
      EdgeCount:       41
      CyclomaticComplexity: 8
      functionsReached:
        - conn_key_reverse
        - extract_l3_ipv4
        - extract_l4
        - htons
        - reverse_icmp_type
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/conntrack.c:2017,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/conntrack.c:2030,30'
          Dst:             reverse_icmp_type
        - Src:             'lib/conntrack.c:2049,29'
          Dst:             htons
        - Src:             'lib/conntrack.c:2050,19'
          Dst:             extract_l3_ipv4
        - Src:             'lib/conntrack.c:2064,14'
          Dst:             extract_l4
        - Src:             'lib/conntrack.c:2066,13'
          Dst:             conn_key_reverse
    - functionName:    check_l4_icmp6
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1924
      functionLinenumberEnd: 1925
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - checksum_valid
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:1925,18'
          Dst:             checksum_valid
    - functionName:    reverse_icmp_type
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1981
      functionLinenumberEnd: 2000
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          55
      EdgeCount:       20
      CyclomaticComplexity: 11
      functionsReached:
        - abort
      functionUses:    3
      BranchProfiles:
        - Branch String:   'lib/conntrack.c:1982,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/conntrack.c:1998,9'
          Dst:             abort
    - functionName:    extract_l3_ipv4
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1684
      functionLinenumberEnd: 1723
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          169
      EdgeCount:       30
      CyclomaticComplexity: 10
      functionsReached:
        - conntrack_l3csum_checked_add
        - conntrack_l3csum_err_add
        - csum
        - dp_packet_ip_checksum_set_bad
        - dp_packet_ip_checksum_set_good
        - dp_packet_ip_checksum_unknown
        - get_16aligned_be32
        - htons
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:1700,9'
          Dst:             htons
        - Src:             'lib/conntrack.c:1704,16'
          Dst:             dp_packet_ip_checksum_unknown
        - Src:             'lib/conntrack.c:1705,9'
          Dst:             conntrack_l3csum_checked_add
        - Src:             'lib/conntrack.c:1706,13'
          Dst:             csum
        - Src:             'lib/conntrack.c:1707,13'
          Dst:             conntrack_l3csum_err_add
        - Src:             'lib/conntrack.c:1708,13'
          Dst:             dp_packet_ip_checksum_set_bad
        - Src:             'lib/conntrack.c:1711,9'
          Dst:             dp_packet_ip_checksum_set_good
        - Src:             'lib/conntrack.c:1718,26'
          Dst:             get_16aligned_be32
        - Src:             'lib/conntrack.c:1719,26'
          Dst:             get_16aligned_be32
    - functionName:    dp_packet_ip_checksum_unknown
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1179
      functionLinenumberEnd: 1180
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    conntrack_l3csum_checked_add
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51
      functionLinenumberEnd: 51
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_conntrack_l3csum_checked_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:51,1'
          Dst:             counter_conntrack_l3csum_checked_get
    - functionName:    conntrack_l3csum_err_add
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_conntrack_l3csum_err_get
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:52,1'
          Dst:             counter_conntrack_l3csum_err_get
    - functionName:    dp_packet_ip_checksum_set_bad
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1156
      functionLinenumberEnd: 1159
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_ip_checksum_set_good
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1142
      functionLinenumberEnd: 1145
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_is_eth
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 397
      functionLinenumberEnd: 398
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:398,30'
          Dst:             htonl
    - functionName:    dp_packet_l4_checksum_bad
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1317
      functionLinenumberEnd: 1319
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_l3_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 491
      functionLinenumberEnd: 494
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_l2_pad_size
        - dp_packet_l3
        - dp_packet_tail
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:493,25'
          Dst:             dp_packet_tail
        - Src:             'lib/dp-packet.h:493,59'
          Dst:             dp_packet_l3
        - Src:             'lib/dp-packet.h:494,11'
          Dst:             dp_packet_l2_pad_size
    - functionName:    dp_packet_tail
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 326
      functionLinenumberEnd: 327
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_data
        - dp_packet_size
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:327,21'
          Dst:             dp_packet_data
        - Src:             'lib/dp-packet.h:327,41'
          Dst:             dp_packet_size
    - functionName:    dp_packet_l3
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 461
      functionLinenumberEnd: 463
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_data
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:463,23'
          Dst:             dp_packet_data
    - functionName:    dp_packet_l2_pad_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 432
      functionLinenumberEnd: 433
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_data
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 845
      functionLinenumberEnd: 847
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __packet_data
        - dp_packet_base
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:846,12'
          Dst:             __packet_data
        - Src:             'lib/dp-packet.h:847,23'
          Dst:             dp_packet_base
        - Src:             'lib/dp-packet.h:847,43'
          Dst:             __packet_data
    - functionName:    __packet_data
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 774
      functionLinenumberEnd: 775
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_base
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 750
      functionLinenumberEnd: 751
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 762
      functionLinenumberEnd: 763
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_ip_checksum_bad
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1149
      functionLinenumberEnd: 1151
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_eth
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 405
      functionLinenumberEnd: 407
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          39
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - dp_packet_data
        - dp_packet_is_eth
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:406,13'
          Dst:             dp_packet_is_eth
        - Src:             'lib/dp-packet.h:407,15'
          Dst:             dp_packet_data
    - functionName:    ct_sweep
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1593
      functionLinenumberEnd: 1611
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          93
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - conn_clean
        - conn_expired
        - rculist_next
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:1598,5'
          Dst:             rculist_next
        - Src:             'lib/conntrack.c:1599,13'
          Dst:             conn_expired
        - Src:             'lib/conntrack.c:1600,13'
          Dst:             conn_clean
        - Src:             'lib/conntrack.c:1598,5'
          Dst:             rculist_next
    - functionName:    rculist_next
      functionSourceFile: '/src/openvswitch/lib/rculist.h'
      linkageType:     InternalLinkage
      functionLinenumber: 113
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          22
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    conn_expired
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2699
      functionLinenumberEnd: 2700
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - conn_expiration
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:2700,19'
          Dst:             conn_expiration
    - functionName:    conn_clean
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 586
      functionLinenumberEnd: 602
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          74
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - atomic_count_dec
        - atomic_flag_test_and_set
        - conn_clean__
        - delete_conn
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovsrcu_postpone__
        - zone_limit_lookup
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:587,9'
          Dst:             atomic_flag_test_and_set
        - Src:             'lib/conntrack.c:591,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/conntrack.c:592,5'
          Dst:             conn_clean__
        - Src:             'lib/conntrack.c:593,5'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/conntrack.c:595,29'
          Dst:             zone_limit_lookup
        - Src:             'lib/conntrack.c:597,9'
          Dst:             atomic_count_dec
        - Src:             'lib/conntrack.c:600,5'
          Dst:             ovsrcu_postpone__
        - Src:             'lib/conntrack.c:600,5'
          Dst:             delete_conn
        - Src:             'lib/conntrack.c:601,5'
          Dst:             atomic_count_dec
    - functionName:    atomic_flag_test_and_set
      functionSourceFile: '/src/openvswitch/lib/ovs-atomic-flag-gcc4.7+.h'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - atomic_flag_test_and_set_explicit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-atomic-flag-gcc4.7+.h:39,12'
          Dst:             atomic_flag_test_and_set_explicit
    - functionName:    conn_clean__
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 560
      functionLinenumberEnd: 579
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          102
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - cmap_remove
        - conn_key_hash
        - expectation_clean
        - rculist_remove
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:564,9'
          Dst:             expectation_clean
        - Src:             'lib/conntrack.c:567,12'
          Dst:             conn_key_hash
        - Src:             'lib/conntrack.c:568,5'
          Dst:             cmap_remove
        - Src:             'lib/conntrack.c:572,16'
          Dst:             conn_key_hash
        - Src:             'lib/conntrack.c:574,9'
          Dst:             cmap_remove
        - Src:             'lib/conntrack.c:578,5'
          Dst:             rculist_remove
    - functionName:    zone_limit_lookup
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 345
      functionLinenumberEnd: 354
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          78
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - cmap_find
        - cmap_node_next
        - zone_key_hash
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:346,21'
          Dst:             zone_key_hash
        - Src:             'lib/conntrack.c:348,5'
          Dst:             cmap_find
        - Src:             'lib/conntrack.c:348,5'
          Dst:             cmap_node_next
    - functionName:    atomic_count_dec
      functionSourceFile: '/src/openvswitch/lib/ovs-atomic.h'
      linkageType:     InternalLinkage
      functionLinenumber: 461
      functionLinenumberEnd: 466
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    delete_conn
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2725
      functionLinenumberEnd: 2728
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - delete_conn__
        - ovs_mutex_destroy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:2726,5'
          Dst:             ovs_mutex_destroy
        - Src:             'lib/conntrack.c:2727,5'
          Dst:             delete_conn__
    - functionName:    delete_conn__
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2718
      functionLinenumberEnd: 2721
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    zone_key_hash
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 302
      functionLinenumberEnd: 304
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_int
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:303,19'
          Dst:             hash_int
    - functionName:    cmap_node_next
      functionSourceFile: '/src/openvswitch/lib/cmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 67
      functionLinenumberEnd: 68
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          22
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_int
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 408
      functionLinenumberEnd: 409
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_2words
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:409,12'
          Dst:             hash_2words
    - functionName:    hash_2words
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 153
      functionLinenumberEnd: 154
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_add
        - hash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:154,33'
          Dst:             hash_add
        - Src:             'lib/hash.h:154,24'
          Dst:             hash_add
        - Src:             'lib/hash.h:154,12'
          Dst:             hash_finish
    - functionName:    hash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 108
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_add
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:109,12'
          Dst:             mhash_add
    - functionName:    hash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_finish
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:119,12'
          Dst:             mhash_finish
    - functionName:    mhash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_rot
        - mhash_add__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:78,12'
          Dst:             mhash_add__
        - Src:             'lib/hash.h:79,12'
          Dst:             hash_rot
    - functionName:    mhash_add__
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hash_rot
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:71,12'
          Dst:             hash_rot
    - functionName:    hash_rot
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 32
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    expectation_clean
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3149
      functionLinenumberEnd: 3165
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          99
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - conn_key_cmp
        - conn_key_hash
        - expectation_remove
        - hindex_node_with_hash
        - hindex_remove
        - ovs_rwlock_unlock
        - ovs_rwlock_wrlock_at
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:3150,5'
          Dst:             ovs_rwlock_wrlock_at
        - Src:             'lib/conntrack.c:3153,5'
          Dst:             conn_key_hash
        - Src:             'lib/conntrack.c:3153,5'
          Dst:             hindex_node_with_hash
        - Src:             'lib/conntrack.c:3156,14'
          Dst:             conn_key_cmp
        - Src:             'lib/conntrack.c:3157,13'
          Dst:             expectation_remove
        - Src:             'lib/conntrack.c:3159,13'
          Dst:             hindex_remove
        - Src:             'lib/conntrack.c:3164,5'
          Dst:             ovs_rwlock_unlock
    - functionName:    conn_key_hash
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2305
      functionLinenumberEnd: 2322
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          53
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ct_endpoint_hash_add
        - hash_words
      functionUses:    12
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:2311,12'
          Dst:             ct_endpoint_hash_add
        - Src:             'lib/conntrack.c:2312,12'
          Dst:             ct_endpoint_hash_add
        - Src:             'lib/conntrack.c:2322,12'
          Dst:             hash_words
    - functionName:    cmap_remove
      functionSourceFile: '/src/openvswitch/lib/cmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 293
      functionLinenumberEnd: 294
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - cmap_replace
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/cmap.h:294,12'
          Dst:             cmap_replace
    - functionName:    rculist_remove
      functionSourceFile: '/src/openvswitch/lib/rculist.h'
      linkageType:     InternalLinkage
      functionLinenumber: 267
      functionLinenumberEnd: 273
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          67
      EdgeCount:       13
      CyclomaticComplexity: 8
      functionsReached:
        - rculist_next_protected
        - rculist_poison
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/rculist.h:271,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/rculist.h:268,33'
          Dst:             rculist_next_protected
        - Src:             'lib/rculist.h:272,5'
          Dst:             rculist_poison
    - functionName:    rculist_next_protected
      functionSourceFile: '/src/openvswitch/lib/rculist.h'
      linkageType:     InternalLinkage
      functionLinenumber: 120
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          22
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rculist_poison
      functionSourceFile: '/src/openvswitch/lib/rculist.h'
      linkageType:     InternalLinkage
      functionLinenumber: 139
      functionLinenumberEnd: 141
      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:    ct_endpoint_hash_add
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2297
      functionLinenumberEnd: 2299
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_add_bytes32
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:2299,12'
          Dst:             hash_add_bytes32
    - functionName:    hash_words
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 357
      functionLinenumberEnd: 363
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hash_words__
        - hash_words_inline
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:359,16'
          Dst:             hash_words_inline
        - Src:             'lib/hash.h:361,16'
          Dst:             hash_words__
    - functionName:    hash_words_inline
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 129
      functionLinenumberEnd: 130
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_add_words
        - hash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:130,24'
          Dst:             hash_add_words
        - Src:             'lib/hash.h:130,12'
          Dst:             hash_finish
    - functionName:    hash_add_words
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 428
      functionLinenumberEnd: 432
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          44
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - hash_add
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:430,16'
          Dst:             hash_add
    - functionName:    hash_add_bytes32
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 446
      functionLinenumberEnd: 447
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_add_words
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:447,12'
          Dst:             hash_add_words
    - functionName:    hindex_node_with_hash
      functionSourceFile: '/src/openvswitch/lib/hindex.h'
      linkageType:     InternalLinkage
      functionLinenumber: 168
      functionLinenumberEnd: 174
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          52
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    conn_key_cmp
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 226
      functionLinenumberEnd: 242
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         27
      ICount:          211
      EdgeCount:       38
      CyclomaticComplexity: 13
      functionsReached:
        - memcmp
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:227,10'
          Dst:             memcmp
        - Src:             'lib/conntrack.c:228,10'
          Dst:             memcmp
    - functionName:    expectation_remove
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3101
      functionLinenumberEnd: 3111
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          73
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - conn_key_cmp
        - conn_key_hash
        - hmap_first_with_hash
        - hmap_next_with_hash
        - hmap_remove
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:3104,5'
          Dst:             conn_key_hash
        - Src:             'lib/conntrack.c:3104,5'
          Dst:             hmap_first_with_hash
        - Src:             'lib/conntrack.c:3106,14'
          Dst:             conn_key_cmp
        - Src:             'lib/conntrack.c:3107,13'
          Dst:             hmap_remove
        - Src:             'lib/conntrack.c:3104,5'
          Dst:             hmap_next_with_hash
    - functionName:    hmap_first_with_hash
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 360
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next_with_hash__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:360,12'
          Dst:             hmap_next_with_hash__
    - functionName:    hmap_remove
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 317
      functionLinenumberEnd: 324
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          48
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_next_with_hash
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 395
      functionLinenumberEnd: 396
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next_with_hash__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:396,12'
          Dst:             hmap_next_with_hash__
    - functionName:    hmap_next_with_hash__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 348
      functionLinenumberEnd: 352
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          40
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    atomic_flag_test_and_set_explicit
      functionSourceFile: '/src/openvswitch/lib/ovs-atomic-flag-gcc4.7+.h'
      linkageType:     InternalLinkage
      functionLinenumber: 32
      functionLinenumberEnd: 33
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          62
      EdgeCount:       16
      CyclomaticComplexity: 9
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ovs-atomic-flag-gcc4.7+.h:33,12'
          Branch Sides:    []
      Callsites:       []
    - functionName:    conntrack_clean
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1619
      functionLinenumberEnd: 1646
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          132
      EdgeCount:       22
      CyclomaticComplexity: 6
      functionsReached:
        - conntrack_get_sweep_interval
        - ct_sweep
        - time_msec
        - vlog
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:1620,35'
          Dst:             conntrack_get_sweep_interval
        - Src:             'lib/conntrack.c:1636,18'
          Dst:             ct_sweep
        - Src:             'lib/conntrack.c:1642,5'
          Dst:             time_msec
        - Src:             'lib/conntrack.c:1642,5'
          Dst:             vlog
    - functionName:    conntrack_get_sweep_interval
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1583
      functionLinenumberEnd: 1586
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    handle_tftp_ctl
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3814
      functionLinenumberEnd: 3819
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - expectation_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:3815,5'
          Dst:             expectation_create
    - functionName:    expectation_create
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3171
      functionLinenumberEnd: 3239
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - short
        - 'N/A'
        - bool
        - bool
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          268
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - conn_key_hash
        - expectation_lookup
        - expectation_ref_create
        - hmap_insert_at
        - ovs_rwlock_unlock
        - ovs_rwlock_wrlock_at
        - xzalloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:3176,41'
          Dst:             xzalloc
        - Src:             'lib/conntrack.c:3224,5'
          Dst:             ovs_rwlock_wrlock_at
        - Src:             'lib/conntrack.c:3225,36'
          Dst:             expectation_lookup
        - Src:             'lib/conntrack.c:3229,9'
          Dst:             ovs_rwlock_unlock
        - Src:             'lib/conntrack.c:3234,5'
          Dst:             conn_key_hash
        - Src:             'lib/conntrack.c:3234,5'
          Dst:             hmap_insert_at
        - Src:             'lib/conntrack.c:3236,5'
          Dst:             expectation_ref_create
        - Src:             'lib/conntrack.c:3238,5'
          Dst:             ovs_rwlock_unlock
    - functionName:    expectation_lookup
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3076
      functionLinenumberEnd: 3095
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          95
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - conn_key_cmp
        - conn_key_hash
        - hmap_first_with_hash
        - hmap_next_with_hash
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:3087,5'
          Dst:             conn_key_hash
        - Src:             'lib/conntrack.c:3087,5'
          Dst:             hmap_first_with_hash
        - Src:             'lib/conntrack.c:3090,14'
          Dst:             conn_key_cmp
        - Src:             'lib/conntrack.c:3087,5'
          Dst:             hmap_next_with_hash
    - functionName:    hmap_insert_at
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 306
      functionLinenumberEnd: 311
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_expand_at
        - hmap_insert_fast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:307,5'
          Dst:             hmap_insert_fast
        - Src:             './include/openvswitch/hmap.h:309,9'
          Dst:             hmap_expand_at
    - functionName:    expectation_ref_create
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3138
      functionLinenumberEnd: 3145
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - conn_key_hash
        - expectation_ref_lookup_unique
        - hindex_insert
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:3139,10'
          Dst:             expectation_ref_lookup_unique
        - Src:             'lib/conntrack.c:3143,23'
          Dst:             conn_key_hash
        - Src:             'lib/conntrack.c:3142,9'
          Dst:             hindex_insert
    - functionName:    expectation_ref_lookup_unique
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3119
      functionLinenumberEnd: 3131
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          92
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - conn_key_cmp
        - conn_key_hash
        - hindex_node_with_hash
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:3122,5'
          Dst:             conn_key_hash
        - Src:             'lib/conntrack.c:3122,5'
          Dst:             hindex_node_with_hash
        - Src:             'lib/conntrack.c:3125,14'
          Dst:             conn_key_cmp
        - Src:             'lib/conntrack.c:3126,14'
          Dst:             conn_key_cmp
    - functionName:    hmap_insert_fast
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 289
      functionLinenumberEnd: 295
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          38
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rculist_insert
      functionSourceFile: '/src/openvswitch/lib/rculist.h'
      linkageType:     InternalLinkage
      functionLinenumber: 160
      functionLinenumberEnd: 165
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          98
      EdgeCount:       15
      CyclomaticComplexity: 8
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/rculist.h:162,5'
          Branch Sides:    []
        - Branch String:   'lib/rculist.h:163,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    rculist_push_front
      functionSourceFile: '/src/openvswitch/lib/rculist.h'
      linkageType:     InternalLinkage
      functionLinenumber: 198
      functionLinenumberEnd: 200
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - rculist_insert
        - rculist_next_protected
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/rculist.h:199,20'
          Dst:             rculist_next_protected
        - Src:             'lib/rculist.h:199,5'
          Dst:             rculist_insert
    - functionName:    htonll
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 30
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byte-order.h:30,12'
          Dst:             htonl
        - Src:             'lib/byte-order.h:30,44'
          Dst:             htonl
        - Src:             'lib/byte-order.h:30,62'
          Dst:             htonl
    - functionName:    ntohll
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
        - ntohl
      functionUses:    14
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byte-order.h:36,12'
          Dst:             htonl
        - Src:             'lib/byte-order.h:36,44'
          Dst:             ntohl
        - Src:             'lib/byte-order.h:36,62'
          Dst:             ntohl
    - functionName:    nat_ipv6_addr_increment
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2378
      functionLinenumberEnd: 2398
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          83
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - abort
        - htonll
        - ntohll
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:2386,35'
          Dst:             ntohll
        - Src:             'lib/conntrack.c:2387,42'
          Dst:             ntohll
        - Src:             'lib/conntrack.c:2387,23'
          Dst:             htonll
        - Src:             'lib/conntrack.c:2389,34'
          Dst:             ntohll
        - Src:             'lib/conntrack.c:2389,23'
          Dst:             htonll
        - Src:             'lib/conntrack.c:2391,43'
          Dst:             ntohll
        - Src:             'lib/conntrack.c:2390,23'
          Dst:             htonll
        - Src:             'lib/conntrack.c:2393,9'
          Dst:             abort
    - functionName:    nat_ipv6_addrs_delta
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2336
      functionLinenumberEnd: 2371
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          133
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - ntohll
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:2355,9'
          Dst:             ntohll
        - Src:             'lib/conntrack.c:2355,36'
          Dst:             ntohll
        - Src:             'lib/conntrack.c:2356,16'
          Dst:             ntohll
        - Src:             'lib/conntrack.c:2356,42'
          Dst:             ntohll
        - Src:             'lib/conntrack.c:2357,16'
          Dst:             ntohll
        - Src:             'lib/conntrack.c:2357,47'
          Dst:             ntohll
        - Src:             'lib/conntrack.c:2358,16'
          Dst:             ntohll
        - Src:             'lib/conntrack.c:2358,42'
          Dst:             ntohll
        - Src:             'lib/conntrack.c:2359,30'
          Dst:             ntohll
        - Src:             'lib/conntrack.c:2360,30'
          Dst:             ntohll
    - functionName:    get_addr_in_range
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2473
      functionLinenumberEnd: 2490
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          71
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
        - nat_ipv6_addr_increment
        - nat_ipv6_addrs_delta
        - ntohl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:2477,18'
          Dst:             ntohl
        - Src:             'lib/conntrack.c:2477,37'
          Dst:             ntohl
        - Src:             'lib/conntrack.c:2479,28'
          Dst:             ntohl
        - Src:             'lib/conntrack.c:2479,22'
          Dst:             htonl
        - Src:             'lib/conntrack.c:2481,17'
          Dst:             nat_ipv6_addrs_delta
        - Src:             'lib/conntrack.c:2488,9'
          Dst:             nat_ipv6_addr_increment
    - functionName:    ct_addr_hash_add
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2290
      functionLinenumberEnd: 2292
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_add_bytes32
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:2292,12'
          Dst:             hash_add_bytes32
    - functionName:    nat_get_unique_l4
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2529
      functionLinenumberEnd: 2570
      functionDepth:   0
      returnType:      bool
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - short
        - short
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         42
      ICount:          258
      EdgeCount:       55
      CyclomaticComplexity: 15
      functionsReached:
        - conn_lookup
        - htons
        - random_uint32
        - time_msec
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:2548,17'
          Dst:             htons
        - Src:             'lib/conntrack.c:2550,26'
          Dst:             htons
        - Src:             'lib/conntrack.c:2553,39'
          Dst:             time_msec
        - Src:             'lib/conntrack.c:2553,14'
          Dst:             conn_lookup
        - Src:             'lib/conntrack.c:2560,23'
          Dst:             random_uint32
        - Src:             'lib/conntrack.c:2564,13'
          Dst:             htons
        - Src:             'lib/conntrack.c:2566,22'
          Dst:             htons
    - functionName:    conn_lookup
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 714
      functionLinenumberEnd: 716
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - conn_key_hash
        - conn_key_lookup
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:715,21'
          Dst:             conn_key_hash
        - Src:             'lib/conntrack.c:716,12'
          Dst:             conn_key_lookup
    - functionName:    conn_key_lookup
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 674
      functionLinenumberEnd: 708
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         34
      ICount:          181
      EdgeCount:       44
      CyclomaticComplexity: 12
      functionsReached:
        - cmap_find
        - cmap_node_next
        - conn_expired
        - conn_key_cmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:679,5'
          Dst:             cmap_find
        - Src:             'lib/conntrack.c:686,13'
          Dst:             conn_expired
        - Src:             'lib/conntrack.c:691,18'
          Dst:             conn_key_cmp
        - Src:             'lib/conntrack.c:679,5'
          Dst:             cmap_node_next
    - functionName:    store_addr_to_key
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2517
      functionLinenumberEnd: 2523
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          34
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_dport_range
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2457
      functionLinenumberEnd: 2466
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          79
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ntohs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:2463,17'
          Dst:             ntohs
    - functionName:    set_sport_range
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2432
      functionLinenumberEnd: 2451
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          123
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - ntohs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:2435,17'
          Dst:             ntohs
    - functionName:    find_addr
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2497
      functionLinenumberEnd: 2512
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          84
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - get_addr_in_range
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:2503,10'
          Dst:             memcmp
        - Src:             'lib/conntrack.c:2510,9'
          Dst:             get_addr_in_range
    - functionName:    nat_range_hash
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2403
      functionLinenumberEnd: 2424
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          94
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ct_addr_hash_add
        - ct_endpoint_hash_add
        - hash_add
        - hash_finish
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:2407,16'
          Dst:             ct_addr_hash_add
        - Src:             'lib/conntrack.c:2409,16'
          Dst:             ct_endpoint_hash_add
        - Src:             'lib/conntrack.c:2410,16'
          Dst:             ct_endpoint_hash_add
        - Src:             'lib/conntrack.c:2413,12'
          Dst:             ct_addr_hash_add
        - Src:             'lib/conntrack.c:2414,12'
          Dst:             ct_addr_hash_add
        - Src:             'lib/conntrack.c:2415,12'
          Dst:             hash_add
        - Src:             'lib/conntrack.c:2418,12'
          Dst:             hash_add
        - Src:             'lib/conntrack.c:2419,12'
          Dst:             hash_add
        - Src:             'lib/conntrack.c:2420,12'
          Dst:             hash_add
        - Src:             'lib/conntrack.c:2424,12'
          Dst:             hash_finish
    - functionName:    atomic_flag_clear_explicit
      functionSourceFile: '/src/openvswitch/lib/ovs-atomic-flag-gcc4.7+.h'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 46
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         5
      ICount:          28
      EdgeCount:       8
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ovs-atomic-flag-gcc4.7+.h:45,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    atomic_count_inc
      functionSourceFile: '/src/openvswitch/lib/ovs-atomic.h'
      linkageType:     InternalLinkage
      functionLinenumber: 451
      functionLinenumberEnd: 456
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    conn_expire_push_front
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2680
      functionLinenumberEnd: 2685
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - rculist_push_front
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:2684,5'
          Dst:             rculist_push_front
    - functionName:    nat_get_unique_tuple
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2596
      functionLinenumberEnd: 2663
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         36
      ICount:          302
      EdgeCount:       48
      CyclomaticComplexity: 14
      functionsReached:
        - conn_lookup
        - find_addr
        - htons
        - nat_get_unique_l4
        - nat_range_hash
        - random_uint32
        - set_dport_range
        - set_sport_range
        - store_addr_to_key
        - time_msec
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:2613,12'
          Dst:             nat_range_hash
        - Src:             'lib/conntrack.c:2616,20'
          Dst:             random_uint32
        - Src:             'lib/conntrack.c:2620,20'
          Dst:             nat_range_hash
        - Src:             'lib/conntrack.c:2627,36'
          Dst:             htons
        - Src:             'lib/conntrack.c:2626,5'
          Dst:             find_addr
        - Src:             'lib/conntrack.c:2629,5'
          Dst:             set_sport_range
        - Src:             'lib/conntrack.c:2631,5'
          Dst:             set_dport_range
        - Src:             'lib/conntrack.c:2635,29'
          Dst:             htons
        - Src:             'lib/conntrack.c:2636,29'
          Dst:             htons
        - Src:             'lib/conntrack.c:2639,5'
          Dst:             store_addr_to_key
        - Src:             'lib/conntrack.c:2642,42'
          Dst:             time_msec
        - Src:             'lib/conntrack.c:2642,17'
          Dst:             conn_lookup
        - Src:             'lib/conntrack.c:2647,17'
          Dst:             nat_get_unique_l4
        - Src:             'lib/conntrack.c:2652,17'
          Dst:             nat_get_unique_l4
    - functionName:    atomic_flag_clear
      functionSourceFile: '/src/openvswitch/lib/ovs-atomic-flag-gcc4.7+.h'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - atomic_flag_clear_explicit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-atomic-flag-gcc4.7+.h:51,5'
          Dst:             atomic_flag_clear_explicit
    - functionName:    ct_verify_helper
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1006
      functionLinenumberEnd: 1022
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          80
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - strncmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:1011,15'
          Dst:             strncmp
        - Src:             'lib/conntrack.c:1014,21'
          Dst:             strncmp
    - functionName:    new_conn
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2712
      functionLinenumberEnd: 2713
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    conntrack_full_add
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_conntrack_full_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:50,1'
          Dst:             counter_conntrack_full_get
    - functionName:    conntrack_zone_full_add
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_conntrack_zone_full_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:56,1'
          Dst:             counter_conntrack_zone_full_get
    - functionName:    zone_limit_get_limit
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 318
      functionLinenumberEnd: 326
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          52
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - zone_limit_get_limit__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:319,21'
          Dst:             zone_limit_get_limit__
    - functionName:    zone_limit_get_limit__
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 309
      functionLinenumberEnd: 313
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    zone_limit_lookup_or_default
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 393
      functionLinenumberEnd: 405
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          53
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - zone_limit_create__
        - zone_limit_lookup_protected
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:394,29'
          Dst:             zone_limit_lookup_protected
        - Src:             'lib/conntrack.c:401,18'
          Dst:             zone_limit_create__
    - functionName:    zone_limit_lookup_protected
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 332
      functionLinenumberEnd: 341
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          78
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - cmap_find_protected
        - cmap_node_next_protected
        - zone_key_hash
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:333,21'
          Dst:             zone_key_hash
        - Src:             'lib/conntrack.c:335,5'
          Dst:             cmap_find_protected
        - Src:             'lib/conntrack.c:335,5'
          Dst:             cmap_node_next_protected
    - functionName:    zone_limit_create__
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 372
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          78
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - atomic_count_init
        - cmap_insert
        - xmalloc
        - zone_key_hash
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:363,14'
          Dst:             xmalloc
        - Src:             'lib/conntrack.c:365,9'
          Dst:             atomic_count_init
        - Src:             'lib/conntrack.c:368,25'
          Dst:             zone_key_hash
        - Src:             'lib/conntrack.c:369,9'
          Dst:             cmap_insert
    - functionName:    atomic_count_init
      functionSourceFile: '/src/openvswitch/lib/ovs-atomic.h'
      linkageType:     InternalLinkage
      functionLinenumber: 445
      functionLinenumberEnd: 447
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    cmap_node_next_protected
      functionSourceFile: '/src/openvswitch/lib/cmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 73
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          22
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    valid_new
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2705
      functionLinenumberEnd: 2706
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    conn_update
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2668
      functionLinenumberEnd: 2674
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          55
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:2669,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/conntrack.c:2673,5'
          Dst:             ovs_mutex_unlock
    - functionName:    dp_packet_set_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 768
      functionLinenumberEnd: 770
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    replace_substring
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3245
      functionLinenumberEnd: 3249
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    modify_packet
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3273
      functionLinenumberEnd: 3278
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          43
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_set_size
        - dp_packet_tail
        - replace_substring
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:3275,38'
          Dst:             dp_packet_tail
        - Src:             'lib/conntrack.c:3274,5'
          Dst:             replace_substring
        - Src:             'lib/conntrack.c:3277,5'
          Dst:             dp_packet_set_size
    - functionName:    dp_packet_get_allocated
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 786
      functionLinenumberEnd: 787
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    repl_bytes
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3253
      functionLinenumberEnd: 3264
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - char
        - char
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          55
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    terminate_number_str
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3327
      functionLinenumberEnd: 3335
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          63
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - __ctype_b_loc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:3329,12'
          Dst:             __ctype_b_loc
    - functionName:    skip_ipv6_digits
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3561
      functionLinenumberEnd: 3565
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          63
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - __ctype_b_loc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:3562,12'
          Dst:             __ctype_b_loc
    - functionName:    skip_non_digits
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3318
      functionLinenumberEnd: 3322
      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:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:3319,13'
          Dst:             __ctype_b_loc
    - functionName:    dp_packet_get_tcp_payload
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 547
      functionLinenumberEnd: 559
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          86
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - dp_packet_l4
        - dp_packet_l4_size
        - ntohs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:548,22'
          Dst:             dp_packet_l4_size
        - Src:             'lib/dp-packet.h:551,34'
          Dst:             dp_packet_l4
        - Src:             'lib/dp-packet.h:552,23'
          Dst:             ntohs
    - functionName:    dp_packet_l4_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 502
      functionLinenumberEnd: 505
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_l2_pad_size
        - dp_packet_l4
        - dp_packet_tail
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:504,25'
          Dst:             dp_packet_tail
        - Src:             'lib/dp-packet.h:504,59'
          Dst:             dp_packet_l4
        - Src:             'lib/dp-packet.h:505,11'
          Dst:             dp_packet_l2_pad_size
    - functionName:    dp_packet_l4
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 475
      functionLinenumberEnd: 477
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_data
      functionUses:    10
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:477,23'
          Dst:             dp_packet_data
    - functionName:    dp_packet_get_tcp_payload_length
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 579
      functionLinenumberEnd: 587
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_get_tcp_payload
        - dp_packet_l2_pad_size
        - dp_packet_tail
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:580,31'
          Dst:             dp_packet_get_tcp_payload
        - Src:             'lib/dp-packet.h:582,26'
          Dst:             dp_packet_tail
        - Src:             'lib/dp-packet.h:582,48'
          Dst:             dp_packet_l2_pad_size
    - functionName:    get_ftp_ctl_msg
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3341
      functionLinenumberEnd: 3351
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          59
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_get_tcp_payload_length
        - dp_packet_l4
        - ntohs
        - ovs_strlcpy
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:3342,29'
          Dst:             dp_packet_l4
        - Src:             'lib/conntrack.c:3344,32'
          Dst:             dp_packet_get_tcp_payload_length
        - Src:             'lib/conntrack.c:3347,26'
          Dst:             ntohs
        - Src:             'lib/conntrack.c:3349,5'
          Dst:             ovs_strlcpy
    - functionName:    conn_seq_skew_set
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 994
      functionLinenumberEnd: 1002
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          59
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - conn_lookup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:997,5'
          Dst:             conn_lookup
    - functionName:    dp_packet_l4_checksum_set_partial
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1342
      functionLinenumberEnd: 1344
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_l4_checksum_valid
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1360
      functionLinenumberEnd: 1361
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    adj_seqnum
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3698
      functionLinenumberEnd: 3700
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_16aligned_be32
        - htonl
        - ntohl
        - put_16aligned_be32
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:3699,41'
          Dst:             get_16aligned_be32
        - Src:             'lib/conntrack.c:3699,35'
          Dst:             ntohl
        - Src:             'lib/conntrack.c:3699,29'
          Dst:             htonl
        - Src:             'lib/conntrack.c:3699,5'
          Dst:             put_16aligned_be32
    - functionName:    dp_packet_ip_checksum_set_partial
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1173
      functionLinenumberEnd: 1175
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_ip_checksum_valid
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1191
      functionLinenumberEnd: 1192
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    repl_ftp_v4_addr
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3286
      functionLinenumberEnd: 3314
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          112
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - dp_packet_get_allocated
        - dp_packet_size
        - inet_ntop
        - modify_packet
        - ovs_ignore
        - repl_bytes
        - strlen
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:3296,31'
          Dst:             dp_packet_size
        - Src:             'lib/conntrack.c:3298,9'
          Dst:             dp_packet_get_allocated
        - Src:             'lib/conntrack.c:3301,9'
          Dst:             dp_packet_get_allocated
        - Src:             'lib/conntrack.c:3301,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/conntrack.c:3307,16'
          Dst:             inet_ntop
        - Src:             'lib/conntrack.c:3307,5'
          Dst:             ovs_ignore
        - Src:             'lib/conntrack.c:3309,5'
          Dst:             repl_bytes
        - Src:             'lib/conntrack.c:3311,43'
          Dst:             strlen
        - Src:             'lib/conntrack.c:3310,5'
          Dst:             modify_packet
        - Src:             'lib/conntrack.c:3313,18'
          Dst:             strlen
    - functionName:    repl_ftp_v6_addr
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3667
      functionLinenumberEnd: 3693
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          103
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - dp_packet_get_allocated
        - dp_packet_size
        - inet_ntop
        - modify_packet
        - ovs_ignore
        - strlen
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:3676,31'
          Dst:             dp_packet_size
        - Src:             'lib/conntrack.c:3678,9'
          Dst:             dp_packet_get_allocated
        - Src:             'lib/conntrack.c:3681,9'
          Dst:             dp_packet_get_allocated
        - Src:             'lib/conntrack.c:3681,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/conntrack.c:3687,16'
          Dst:             inet_ntop
        - Src:             'lib/conntrack.c:3687,5'
          Dst:             ovs_ignore
        - Src:             'lib/conntrack.c:3690,43'
          Dst:             strlen
        - Src:             'lib/conntrack.c:3689,5'
          Dst:             modify_packet
        - Src:             'lib/conntrack.c:3692,18'
          Dst:             strlen
    - functionName:    process_ftp_ctl_v4
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3387
      functionLinenumberEnd: 3557
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         87
      ICount:          583
      EdgeCount:       116
      CyclomaticComplexity: 31
      functionsReached:
        - __ctype_b_loc
        - abort
        - dp_packet_l4
        - expectation_create
        - get_ftp_ctl_msg
        - htons
        - inet_pton
        - ntohs
        - repl_bytes
        - skip_non_digits
        - str_to_int
        - strchr
        - strncasecmp
        - terminate_number_str
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/conntrack.c:3526,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/conntrack.c:3388,29'
          Dst:             dp_packet_l4
        - Src:             'lib/conntrack.c:3389,26'
          Dst:             ntohs
        - Src:             'lib/conntrack.c:3393,5'
          Dst:             get_ftp_ctl_msg
        - Src:             'lib/conntrack.c:3399,10'
          Dst:             strncasecmp
        - Src:             'lib/conntrack.c:3402,17'
          Dst:             strncasecmp
        - Src:             'lib/conntrack.c:3406,17'
          Dst:             strncasecmp
        - Src:             'lib/conntrack.c:3417,11'
          Dst:             strchr
        - Src:             'lib/conntrack.c:3423,11'
          Dst:             skip_non_digits
        - Src:             'lib/conntrack.c:3430,36'
          Dst:             __ctype_b_loc
        - Src:             'lib/conntrack.c:3434,15'
          Dst:             skip_non_digits
        - Src:             'lib/conntrack.c:3443,9'
          Dst:             repl_bytes
        - Src:             'lib/conntrack.c:3447,18'
          Dst:             __ctype_b_loc
        - Src:             'lib/conntrack.c:3455,19'
          Dst:             inet_pton
        - Src:             'lib/conntrack.c:3470,15'
          Dst:             terminate_number_str
        - Src:             'lib/conntrack.c:3475,14'
          Dst:             str_to_int
        - Src:             'lib/conntrack.c:3491,16'
          Dst:             __ctype_b_loc
        - Src:             'lib/conntrack.c:3499,14'
          Dst:             str_to_int
        - Src:             'lib/conntrack.c:3509,15'
          Dst:             terminate_number_str
        - Src:             'lib/conntrack.c:3514,14'
          Dst:             str_to_int
        - Src:             'lib/conntrack.c:3523,21'
          Dst:             htons
        - Src:             'lib/conntrack.c:3541,9'
          Dst:             abort
        - Src:             'lib/conntrack.c:3554,5'
          Dst:             expectation_create
    - functionName:    process_ftp_ctl_v6
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3575
      functionLinenumberEnd: 3660
      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:         33
      ICount:          306
      EdgeCount:       41
      CyclomaticComplexity: 10
      functionsReached:
        - __ctype_b_loc
        - abort
        - dp_packet_l4
        - expectation_create
        - get_ftp_ctl_msg
        - htons
        - inet_pton
        - memcmp
        - ntohs
        - skip_ipv6_digits
        - skip_non_digits
        - str_to_int
        - strcspn
        - strncasecmp
        - terminate_number_str
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/conntrack.c:3637,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/conntrack.c:3576,29'
          Dst:             dp_packet_l4
        - Src:             'lib/conntrack.c:3577,26'
          Dst:             ntohs
        - Src:             'lib/conntrack.c:3580,5'
          Dst:             get_ftp_ctl_msg
        - Src:             'lib/conntrack.c:3585,10'
          Dst:             strncasecmp
        - Src:             'lib/conntrack.c:3587,15'
          Dst:             skip_non_digits
        - Src:             'lib/conntrack.c:3588,34'
          Dst:             __ctype_b_loc
        - Src:             'lib/conntrack.c:3597,15'
          Dst:             skip_ipv6_digits
        - Src:             'lib/conntrack.c:3600,19'
          Dst:             inet_pton
        - Src:             'lib/conntrack.c:3607,25'
          Dst:             strcspn
        - Src:             'lib/conntrack.c:3608,15'
          Dst:             skip_non_digits
        - Src:             'lib/conntrack.c:3609,14'
          Dst:             __ctype_b_loc
        - Src:             'lib/conntrack.c:3621,11'
          Dst:             terminate_number_str
        - Src:             'lib/conntrack.c:3627,10'
          Dst:             str_to_int
        - Src:             'lib/conntrack.c:3635,21'
          Dst:             htons
        - Src:             'lib/conntrack.c:3642,13'
          Dst:             memcmp
        - Src:             'lib/conntrack.c:3643,13'
          Dst:             memcmp
        - Src:             'lib/conntrack.c:3654,9'
          Dst:             abort
        - Src:             'lib/conntrack.c:3657,5'
          Dst:             expectation_create
    - functionName:    detect_ftp_ctl_type
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3356
      functionLinenumberEnd: 3377
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          99
      EdgeCount:       28
      CyclomaticComplexity: 9
      functionsReached:
        - get_ftp_ctl_msg
        - htons
        - strcasestr
        - strncasecmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:3358,5'
          Dst:             get_ftp_ctl_msg
        - Src:             'lib/conntrack.c:3360,29'
          Dst:             htons
        - Src:             'lib/conntrack.c:3361,13'
          Dst:             strncasecmp
        - Src:             'lib/conntrack.c:3362,14'
          Dst:             strcasestr
        - Src:             'lib/conntrack.c:3366,13'
          Dst:             strncasecmp
        - Src:             'lib/conntrack.c:3367,13'
          Dst:             strncasecmp
        - Src:             'lib/conntrack.c:3368,13'
          Dst:             strncasecmp
        - Src:             'lib/conntrack.c:3370,13'
          Dst:             strncasecmp
    - functionName:    strcasestr
      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:    handle_ftp_ctl
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3706
      functionLinenumberEnd: 3806
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         57
      ICount:          416
      EdgeCount:       74
      CyclomaticComplexity: 19
      functionsReached:
        - abort
        - adj_seqnum
        - conn_seq_skew_set
        - csum_continue
        - csum_finish
        - detect_ftp_ctl_type
        - dp_packet_ip_checksum_set_partial
        - dp_packet_ip_checksum_valid
        - dp_packet_l3
        - dp_packet_l4
        - dp_packet_l4_checksum_set_partial
        - dp_packet_l4_checksum_valid
        - dp_packet_l4_size
        - htons
        - ntohs
        - packet_csum_pseudoheader
        - packet_csum_upperlayer6
        - process_ftp_ctl_v4
        - process_ftp_ctl_v6
        - recalc_csum16
        - repl_ftp_v4_addr
        - repl_ftp_v6_addr
        - vlog_rate_limit
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:3707,32'
          Dst:             dp_packet_l3
        - Src:             'lib/conntrack.c:3715,9'
          Dst:             detect_ftp_ctl_type
        - Src:             'lib/conntrack.c:3719,41'
          Dst:             dp_packet_l3
        - Src:             'lib/conntrack.c:3724,33'
          Dst:             htons
        - Src:             'lib/conntrack.c:3725,18'
          Dst:             process_ftp_ctl_v6
        - Src:             'lib/conntrack.c:3730,18'
          Dst:             process_ftp_ctl_v4
        - Src:             'lib/conntrack.c:3737,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/conntrack.c:3743,37'
          Dst:             htons
        - Src:             'lib/conntrack.c:3745,32'
          Dst:             repl_ftp_v6_addr
        - Src:             'lib/conntrack.c:3752,30'
          Dst:             ntohs
        - Src:             'lib/conntrack.c:3754,59'
          Dst:             htons
        - Src:             'lib/conntrack.c:3758,32'
          Dst:             repl_ftp_v4_addr
        - Src:             'lib/conntrack.c:3764,30'
          Dst:             ntohs
        - Src:             'lib/conntrack.c:3765,25'
          Dst:             dp_packet_ip_checksum_valid
        - Src:             'lib/conntrack.c:3766,25'
          Dst:             dp_packet_ip_checksum_set_partial
        - Src:             'lib/conntrack.c:3770,57'
          Dst:             htons
        - Src:             'lib/conntrack.c:3768,43'
          Dst:             recalc_csum16
        - Src:             'lib/conntrack.c:3772,42'
          Dst:             htons
        - Src:             'lib/conntrack.c:3776,13'
          Dst:             abort
        - Src:             'lib/conntrack.c:3780,29'
          Dst:             dp_packet_l4
        - Src:             'lib/conntrack.c:3784,13'
          Dst:             adj_seqnum
        - Src:             'lib/conntrack.c:3785,13'
          Dst:             adj_seqnum
        - Src:             'lib/conntrack.c:3788,9'
          Dst:             dp_packet_l4_checksum_valid
        - Src:             'lib/conntrack.c:3789,9'
          Dst:             dp_packet_l4_checksum_set_partial
        - Src:             'lib/conntrack.c:3792,33'
          Dst:             htons
        - Src:             'lib/conntrack.c:3794,32'
          Dst:             dp_packet_l4_size
        - Src:             'lib/conntrack.c:3793,28'
          Dst:             packet_csum_upperlayer6
        - Src:             'lib/conntrack.c:3796,33'
          Dst:             packet_csum_pseudoheader
        - Src:             'lib/conntrack.c:3798,46'
          Dst:             dp_packet_l4_size
        - Src:             'lib/conntrack.c:3798,18'
          Dst:             csum_continue
        - Src:             'lib/conntrack.c:3797,28'
          Dst:             csum_finish
        - Src:             'lib/conntrack.c:3803,9'
          Dst:             conn_seq_skew_set
    - functionName:    is_ftp_ctl
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 781
      functionLinenumberEnd: 782
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    conntrack_lookup_natted_miss_add
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_conntrack_lookup_natted_miss_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:55,1'
          Dst:             counter_conntrack_lookup_natted_miss_get
    - functionName:    set_cached_conn
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1306
      functionLinenumberEnd: 1314
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          61
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    handle_alg_ctl
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 832
      functionLinenumberEnd: 840
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - size_t
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          87
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:835,9'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/conntrack.c:838,9'
          Dst:             ovs_mutex_unlock
    - functionName:    conn_not_found
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1031
      functionLinenumberEnd: 1147
      functionDepth:   0
      returnType:      'N/A'
      argCount:        10
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         51
      ICount:          437
      EdgeCount:       67
      CyclomaticComplexity: 18
      functionsReached:
        - atomic_count_get
        - atomic_count_inc
        - atomic_flag_clear
        - cmap_insert
        - conn_expire_push_front
        - conn_key_hash
        - conn_key_reverse
        - conntrack_full_add
        - conntrack_zone_full_add
        - ct_verify_helper
        - delete_conn__
        - nat_get_unique_tuple
        - nat_packet
        - new_conn
        - nullable_xstrdup
        - ovs_mutex_init_adaptive
        - valid_new
        - vlog_rate_limit
        - zone_limit_get_limit
        - zone_limit_lookup_or_default
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:1034,10'
          Dst:             valid_new
        - Src:             'lib/conntrack.c:1048,33'
          Dst:             zone_limit_lookup_or_default
        - Src:             'lib/conntrack.c:1051,25'
          Dst:             zone_limit_get_limit
        - Src:             'lib/conntrack.c:1053,17'
          Dst:             atomic_count_get
        - Src:             'lib/conntrack.c:1054,17'
          Dst:             conntrack_zone_full_add
        - Src:             'lib/conntrack.c:1061,13'
          Dst:             atomic_count_get
        - Src:             'lib/conntrack.c:1062,13'
          Dst:             conntrack_full_add
        - Src:             'lib/conntrack.c:1066,14'
          Dst:             new_conn
        - Src:             'lib/conntrack.c:1072,9'
          Dst:             conn_key_reverse
        - Src:             'lib/conntrack.c:1074,13'
          Dst:             ct_verify_helper
        - Src:             'lib/conntrack.c:1075,23'
          Dst:             nullable_xstrdup
        - Src:             'lib/conntrack.c:1085,9'
          Dst:             ovs_mutex_init_adaptive
        - Src:             'lib/conntrack.c:1086,9'
          Dst:             atomic_flag_clear
        - Src:             'lib/conntrack.c:1109,32'
          Dst:             nat_get_unique_tuple
        - Src:             'lib/conntrack.c:1115,13'
          Dst:             nat_packet
        - Src:             'lib/conntrack.c:1116,33'
          Dst:             conn_key_hash
        - Src:             'lib/conntrack.c:1118,13'
          Dst:             cmap_insert
        - Src:             'lib/conntrack.c:1122,9'
          Dst:             cmap_insert
        - Src:             'lib/conntrack.c:1124,9'
          Dst:             conn_expire_push_front
        - Src:             'lib/conntrack.c:1125,9'
          Dst:             atomic_count_inc
        - Src:             'lib/conntrack.c:1128,13'
          Dst:             atomic_count_inc
        - Src:             'lib/conntrack.c:1142,5'
          Dst:             delete_conn__
        - Src:             'lib/conntrack.c:1144,5'
          Dst:             vlog_rate_limit
    - functionName:    atomic_count_get
      functionSourceFile: '/src/openvswitch/lib/ovs-atomic.h'
      linkageType:     InternalLinkage
      functionLinenumber: 471
      functionLinenumberEnd: 476
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nat_packet
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 961
      functionLinenumberEnd: 989
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          179
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - htons
        - nat_action_reverse
        - nat_inner_packet
        - nat_packet_ipv4
        - nat_packet_ipv6
        - pat_packet
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:964,35'
          Dst:             nat_action_reverse
        - Src:             'lib/conntrack.c:975,25'
          Dst:             htons
        - Src:             'lib/conntrack.c:976,9'
          Dst:             nat_packet_ipv4
        - Src:             'lib/conntrack.c:978,9'
          Dst:             nat_packet_ipv6
        - Src:             'lib/conntrack.c:983,26'
          Dst:             nat_action_reverse
        - Src:             'lib/conntrack.c:984,13'
          Dst:             nat_inner_packet
        - Src:             'lib/conntrack.c:986,13'
          Dst:             pat_packet
    - functionName:    nat_action_reverse
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 859
      functionLinenumberEnd: 867
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          52
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nat_packet_ipv4
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 873
      functionLinenumberEnd: 881
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          62
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - dp_packet_l3
        - packet_set_ipv4_addr
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:874,28'
          Dst:             dp_packet_l3
        - Src:             'lib/conntrack.c:877,9'
          Dst:             packet_set_ipv4_addr
        - Src:             'lib/conntrack.c:879,9'
          Dst:             packet_set_ipv4_addr
    - functionName:    nat_packet_ipv6
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 886
      functionLinenumberEnd: 896
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          68
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - dp_packet_l3
        - packet_set_ipv6_addr
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:887,41'
          Dst:             dp_packet_l3
        - Src:             'lib/conntrack.c:890,9'
          Dst:             packet_set_ipv6_addr
        - Src:             'lib/conntrack.c:893,9'
          Dst:             packet_set_ipv6_addr
    - functionName:    nat_inner_packet
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 901
      functionLinenumberEnd: 957
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          206
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - conn_key_reverse
        - csum
        - dp_packet_ip_checksum_set_unknown
        - dp_packet_l2_pad_size
        - dp_packet_l3
        - dp_packet_l4
        - dp_packet_l4_checksum_set_unknown
        - dp_packet_tail
        - extract_l3_ipv4
        - extract_l3_ipv6
        - htons
        - nat_packet_ipv4
        - nat_packet_ipv6
        - packet_csum_upperlayer6
        - pat_packet
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:902,18'
          Dst:             dp_packet_tail
        - Src:             'lib/conntrack.c:903,20'
          Dst:             dp_packet_l2_pad_size
        - Src:             'lib/conntrack.c:910,16'
          Dst:             dp_packet_l3
        - Src:             'lib/conntrack.c:911,16'
          Dst:             dp_packet_l4
        - Src:             'lib/conntrack.c:916,25'
          Dst:             htons
        - Src:             'lib/conntrack.c:918,9'
          Dst:             extract_l3_ipv4
        - Src:             'lib/conntrack.c:922,9'
          Dst:             extract_l3_ipv6
        - Src:             'lib/conntrack.c:929,5'
          Dst:             dp_packet_ip_checksum_set_unknown
        - Src:             'lib/conntrack.c:930,5'
          Dst:             dp_packet_l4_checksum_set_unknown
        - Src:             'lib/conntrack.c:934,5'
          Dst:             conn_key_reverse
        - Src:             'lib/conntrack.c:936,5'
          Dst:             pat_packet
        - Src:             'lib/conntrack.c:938,25'
          Dst:             htons
        - Src:             'lib/conntrack.c:939,9'
          Dst:             nat_packet_ipv4
        - Src:             'lib/conntrack.c:943,27'
          Dst:             csum
        - Src:             'lib/conntrack.c:945,9'
          Dst:             nat_packet_ipv6
        - Src:             'lib/conntrack.c:950,13'
          Dst:             packet_csum_upperlayer6
    - functionName:    pat_packet
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 844
      functionLinenumberEnd: 855
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          110
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - packet_is_icmpv4_info_message
        - packet_set_icmp_id
        - packet_set_sctp_port
        - packet_set_tcp_port
        - packet_set_udp_port
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:846,9'
          Dst:             packet_set_tcp_port
        - Src:             'lib/conntrack.c:848,9'
          Dst:             packet_set_udp_port
        - Src:             'lib/conntrack.c:850,9'
          Dst:             packet_set_sctp_port
        - Src:             'lib/conntrack.c:852,19'
          Dst:             packet_is_icmpv4_info_message
        - Src:             'lib/conntrack.c:853,9'
          Dst:             packet_set_icmp_id
    - functionName:    dp_packet_ip_checksum_set_unknown
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1185
      functionLinenumberEnd: 1187
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_l4_checksum_set_unknown
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1354
      functionLinenumberEnd: 1356
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    alg_src_ip_wc
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 821
      functionLinenumberEnd: 826
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          22
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    check_orig_tuple
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1218
      functionLinenumberEnd: 1267
      functionDepth:   0
      returnType:      bool
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          356
      EdgeCount:       37
      CyclomaticComplexity: 11
      functionsReached:
        - conn_lookup
        - htons
        - ntohs
        - reverse_icmp6_type
        - reverse_icmp_type
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:1220,33'
          Dst:             htons
        - Src:             'lib/conntrack.c:1222,33'
          Dst:             htons
        - Src:             'lib/conntrack.c:1231,32'
          Dst:             htons
        - Src:             'lib/conntrack.c:1238,33'
          Dst:             ntohs
        - Src:             'lib/conntrack.c:1240,33'
          Dst:             reverse_icmp_type
        - Src:             'lib/conntrack.c:1253,33'
          Dst:             ntohs
        - Src:             'lib/conntrack.c:1255,33'
          Dst:             reverse_icmp6_type
        - Src:             'lib/conntrack.c:1265,5'
          Dst:             conn_lookup
    - functionName:    conn_update_state
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1153
      functionLinenumberEnd: 1193
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          185
      EdgeCount:       27
      CyclomaticComplexity: 5
      functionsReached:
        - abort
        - conn_force_expire
        - conn_lookup
        - conn_update
      functionUses:    4
      BranchProfiles:
        - Branch String:   'lib/conntrack.c:1168,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/conntrack.c:1166,34'
          Dst:             conn_update
        - Src:             'lib/conntrack.c:1180,17'
          Dst:             conn_lookup
        - Src:             'lib/conntrack.c:1182,17'
          Dst:             conn_force_expire
        - Src:             'lib/conntrack.c:1190,13'
          Dst:             abort
    - functionName:    conn_force_expire
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 606
      functionLinenumberEnd: 608
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    conn_update_state_alg
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1275
      functionLinenumberEnd: 1300
      functionDepth:   0
      returnType:      bool
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          125
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - conn_update_state
        - handle_ftp_ctl
        - is_ftp_ctl
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:1276,9'
          Dst:             is_ftp_ctl
        - Src:             'lib/conntrack.c:1279,9'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/conntrack.c:1281,13'
          Dst:             handle_ftp_ctl
        - Src:             'lib/conntrack.c:1284,13'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/conntrack.c:1285,32'
          Dst:             conn_update_state
        - Src:             'lib/conntrack.c:1288,13'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/conntrack.c:1289,32'
          Dst:             conn_update_state
        - Src:             'lib/conntrack.c:1290,13'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/conntrack.c:1292,17'
          Dst:             handle_ftp_ctl
        - Src:             'lib/conntrack.c:1295,13'
          Dst:             ovs_mutex_unlock
    - functionName:    initial_conn_lookup
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1345
      functionLinenumberEnd: 1370
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          114
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - conn_key_hash
        - conn_key_lookup
        - conn_key_reverse
        - conntrack_lookup_natted_miss_add
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:1350,9'
          Dst:             conn_key_reverse
        - Src:             'lib/conntrack.c:1353,5'
          Dst:             conn_key_lookup
        - Src:             'lib/conntrack.c:1361,25'
          Dst:             conn_key_hash
        - Src:             'lib/conntrack.c:1366,13'
          Dst:             conntrack_lookup_natted_miss_add
        - Src:             'lib/conntrack.c:1367,13'
          Dst:             conn_key_reverse
    - functionName:    set_label
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1554
      functionLinenumberEnd: 1571
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          96
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:1555,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/conntrack.c:1570,5'
          Dst:             ovs_mutex_unlock
    - functionName:    set_mark
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1539
      functionLinenumberEnd: 1548
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          69
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:1540,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/conntrack.c:1547,5'
          Dst:             ovs_mutex_unlock
    - functionName:    handle_nat
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1199
      functionLinenumberEnd: 1211
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - short
        - bool
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          116
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - nat_packet
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:1209,9'
          Dst:             nat_packet
    - functionName:    zone_limit_clean__
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 437
      functionLinenumberEnd: 441
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - cmap_remove
        - ovsrcu_postpone__
        - zone_key_hash
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:438,21'
          Dst:             zone_key_hash
        - Src:             'lib/conntrack.c:439,5'
          Dst:             cmap_remove
        - Src:             'lib/conntrack.c:440,5'
          Dst:             ovsrcu_postpone__
    - functionName:    zone_limit_clean
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 446
      functionLinenumberEnd: 457
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - zone_limit_clean__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:455,9'
          Dst:             zone_limit_clean__
    - functionName:    zone_limit_clean_default
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 462
      functionLinenumberEnd: 474
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          78
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - cmap_cursor_advance
        - cmap_cursor_start
        - zone_limit_clean__
        - zone_limit_get_limit__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:468,5'
          Dst:             cmap_cursor_start
        - Src:             'lib/conntrack.c:468,5'
          Dst:             cmap_cursor_advance
        - Src:             'lib/conntrack.c:470,13'
          Dst:             zone_limit_get_limit__
        - Src:             'lib/conntrack.c:471,13'
          Dst:             zone_limit_clean__
    - functionName:    conntrack_get_tcp_seq_chk
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3066
      functionLinenumberEnd: 3069
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    conntrack_set_tcp_seq_chk
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3059
      functionLinenumberEnd: 3061
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    conntrack_get_nconns
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3052
      functionLinenumberEnd: 3054
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - atomic_count_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:3053,15'
          Dst:             atomic_count_get
    - functionName:    conntrack_get_maxconns
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3045
      functionLinenumberEnd: 3047
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    conntrack_set_maxconns
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3038
      functionLinenumberEnd: 3040
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    tuple_to_conn_key
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2789
      functionLinenumberEnd: 2815
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - short
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          198
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - ct_dpif_inet_addr_to_ct_endpoint
        - htons
        - reverse_icmp6_type
        - reverse_icmp_type
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:2791,24'
          Dst:             htons
        - Src:             'lib/conntrack.c:2793,24'
          Dst:             htons
        - Src:             'lib/conntrack.c:2796,5'
          Dst:             ct_dpif_inet_addr_to_ct_endpoint
        - Src:             'lib/conntrack.c:2798,5'
          Dst:             ct_dpif_inet_addr_to_ct_endpoint
        - Src:             'lib/conntrack.c:2807,32'
          Dst:             reverse_icmp_type
        - Src:             'lib/conntrack.c:2808,32'
          Dst:             reverse_icmp6_type
    - functionName:    conntrack_flush_tuple
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3017
      functionLinenumberEnd: 3033
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          63
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - conn_clean
        - conn_lookup
        - time_msec
        - tuple_to_conn_key
        - vlog
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:3023,5'
          Dst:             tuple_to_conn_key
        - Src:             'lib/conntrack.c:3024,27'
          Dst:             time_msec
        - Src:             'lib/conntrack.c:3024,5'
          Dst:             conn_lookup
        - Src:             'lib/conntrack.c:3027,9'
          Dst:             conn_clean
        - Src:             'lib/conntrack.c:3029,9'
          Dst:             vlog
    - functionName:    conntrack_flush_zone
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2985
      functionLinenumberEnd: 2997
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          70
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - cmap_cursor_advance
        - cmap_cursor_start
        - conn_clean
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:2989,5'
          Dst:             cmap_cursor_start
        - Src:             'lib/conntrack.c:2989,5'
          Dst:             cmap_cursor_advance
        - Src:             'lib/conntrack.c:2994,9'
          Dst:             conn_clean
    - functionName:    conntrack_flush
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3002
      functionLinenumberEnd: 3012
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          54
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - conntrack_flush_zone
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:3004,16'
          Dst:             conntrack_flush_zone
        - Src:             'lib/conntrack.c:3008,9'
          Dst:             conntrack_flush_zone
    - functionName:    conntrack_exp_dump_done
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2979
      functionLinenumberEnd: 2980
      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:    exp_node_to_ct_dpif_exp
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2920
      functionLinenumberEnd: 2929
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          54
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - conn_key_to_tuple
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:2923,5'
          Dst:             conn_key_to_tuple
        - Src:             'lib/conntrack.c:2924,5'
          Dst:             conn_key_to_tuple
    - functionName:    conntrack_exp_dump_next
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2949
      functionLinenumberEnd: 2974
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          81
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - exp_node_to_ct_dpif_exp
        - hmap_at_position
        - ovs_rwlock_rdlock_at
        - ovs_rwlock_unlock
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:2954,5'
          Dst:             ovs_rwlock_rdlock_at
        - Src:             'lib/conntrack.c:2957,34'
          Dst:             hmap_at_position
        - Src:             'lib/conntrack.c:2967,13'
          Dst:             exp_node_to_ct_dpif_exp
        - Src:             'lib/conntrack.c:2972,5'
          Dst:             ovs_rwlock_unlock
    - functionName:    conntrack_exp_dump_start
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2934
      functionLinenumberEnd: 2944
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          35
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    conntrack_dump_done
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2913
      functionLinenumberEnd: 2914
      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:    conn_to_ct_dpif_entry
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2820
      functionLinenumberEnd: 2852
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          156
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - conn_expiration
        - conn_key_to_tuple
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - xstrdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:2825,5'
          Dst:             conn_key_to_tuple
        - Src:             'lib/conntrack.c:2826,5'
          Dst:             conn_key_to_tuple
        - Src:             'lib/conntrack.c:2829,9'
          Dst:             conn_key_to_tuple
        - Src:             'lib/conntrack.c:2834,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/conntrack.c:2838,28'
          Dst:             conn_expiration
        - Src:             'lib/conntrack.c:2844,5'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/conntrack.c:2850,30'
          Dst:             xstrdup
    - functionName:    conntrack_dump_next
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2880
      functionLinenumberEnd: 2909
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          130
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - cmap_cursor_advance
        - cmap_cursor_start
        - conn_expired
        - conn_to_ct_dpif_entry
        - time_msec
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:2881,21'
          Dst:             time_msec
        - Src:             'lib/conntrack.c:2887,9'
          Dst:             cmap_cursor_advance
        - Src:             'lib/conntrack.c:2893,17'
          Dst:             conn_expired
        - Src:             'lib/conntrack.c:2897,13'
          Dst:             conn_to_ct_dpif_entry
        - Src:             'lib/conntrack.c:2905,24'
          Dst:             cmap_cursor_start
    - functionName:    conntrack_dump_start
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2863
      functionLinenumberEnd: 2875
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          66
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - cmap_cursor_start
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:2874,20'
          Dst:             cmap_cursor_start
    - functionName:    conntrack_ipf_ctx
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2856
      functionLinenumberEnd: 2857
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    conntrack_set_sweep_interval
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1576
      functionLinenumberEnd: 1578
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pkt_metadata_init_conn
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 159
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    conntrack_clear
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1530
      functionLinenumberEnd: 1535
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - pkt_metadata_init_conn
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:1534,5'
          Dst:             pkt_metadata_init_conn
    - functionName:    process_one
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1379
      functionLinenumberEnd: 1464
      functionDepth:   0
      returnType:      void
      argCount:        12
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - short
        - bool
        - bool
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         60
      ICount:          445
      EdgeCount:       81
      CyclomaticComplexity: 23
      functionsReached:
        - alg_src_ip_wc
        - check_orig_tuple
        - conn_force_expire
        - conn_lookup
        - conn_not_found
        - conn_update_state
        - conn_update_state_alg
        - expectation_lookup
        - get_alg_ctl_type
        - handle_alg_ctl
        - handle_nat
        - initial_conn_lookup
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovs_rwlock_rdlock_at
        - ovs_rwlock_unlock
        - set_cached_conn
        - set_label
        - set_mark
        - write_ct_md
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:1386,5'
          Dst:             initial_conn_lookup
        - Src:             'lib/conntrack.c:1392,13'
          Dst:             conn_lookup
        - Src:             'lib/conntrack.c:1394,13'
          Dst:             conn_force_expire
        - Src:             'lib/conntrack.c:1403,39'
          Dst:             get_alg_ctl_type
        - Src:             'lib/conntrack.c:1406,13'
          Dst:             conn_update_state_alg
        - Src:             'lib/conntrack.c:1410,31'
          Dst:             conn_update_state
        - Src:             'lib/conntrack.c:1413,13'
          Dst:             handle_nat
        - Src:             'lib/conntrack.c:1416,16'
          Dst:             check_orig_tuple
        - Src:             'lib/conntrack.c:1417,27'
          Dst:             conn_update_state
        - Src:             'lib/conntrack.c:1433,9'
          Dst:             ovs_rwlock_rdlock_at
        - Src:             'lib/conntrack.c:1436,38'
          Dst:             alg_src_ip_wc
        - Src:             'lib/conntrack.c:1434,19'
          Dst:             expectation_lookup
        - Src:             'lib/conntrack.c:1441,9'
          Dst:             ovs_rwlock_unlock
        - Src:             'lib/conntrack.c:1443,9'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/conntrack.c:1444,14'
          Dst:             conn_lookup
        - Src:             'lib/conntrack.c:1445,20'
          Dst:             conn_not_found
        - Src:             'lib/conntrack.c:1448,9'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/conntrack.c:1451,5'
          Dst:             write_ct_md
        - Src:             'lib/conntrack.c:1454,9'
          Dst:             set_mark
        - Src:             'lib/conntrack.c:1458,9'
          Dst:             set_label
        - Src:             'lib/conntrack.c:1461,5'
          Dst:             handle_alg_ctl
        - Src:             'lib/conntrack.c:1463,5'
          Dst:             set_cached_conn
    - functionName:    get_alg_ctl_type
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 787
      functionLinenumberEnd: 817
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         31
      ICount:          163
      EdgeCount:       41
      CyclomaticComplexity: 12
      functionsReached:
        - dp_packet_l4
        - htons
        - packet_get_ip_proto
        - strncmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:793,24'
          Dst:             packet_get_ip_proto
        - Src:             'lib/conntrack.c:794,29'
          Dst:             dp_packet_l4
        - Src:             'lib/conntrack.c:795,29'
          Dst:             dp_packet_l4
        - Src:             'lib/conntrack.c:796,25'
          Dst:             htons
        - Src:             'lib/conntrack.c:797,26'
          Dst:             htons
        - Src:             'lib/conntrack.c:801,15'
          Dst:             strncmp
        - Src:             'lib/conntrack.c:805,15'
          Dst:             strncmp
    - functionName:    write_ct_md
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 722
      functionLinenumberEnd: 777
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - short
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         33
      ICount:          343
      EdgeCount:       43
      CyclomaticComplexity: 12
      functionsReached:
        - htons
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:727,9'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/conntrack.c:730,9'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/conntrack.c:752,29'
          Dst:             htons
        - Src:             'lib/conntrack.c:757,35'
          Dst:             htons
        - Src:             'lib/conntrack.c:759,35'
          Dst:             htons
        - Src:             'lib/conntrack.c:768,35'
          Dst:             htons
        - Src:             'lib/conntrack.c:770,35'
          Dst:             htons
    - functionName:    conn_key_extract
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2208
      functionLinenumberEnd: 2286
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - short
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          179
      EdgeCount:       37
      CyclomaticComplexity: 11
      functionsReached:
        - conn_key_hash
        - conntrack_l3csum_err_add
        - conntrack_l4csum_err_add
        - dp_packet_eth
        - dp_packet_ip_checksum_bad
        - dp_packet_l3
        - dp_packet_l3_size
        - dp_packet_l4
        - dp_packet_l4_checksum_bad
        - dp_packet_l4_size
        - extract_l3_ipv4
        - extract_l3_ipv6
        - extract_l4
        - htons
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:2209,35'
          Dst:             dp_packet_eth
        - Src:             'lib/conntrack.c:2210,34'
          Dst:             dp_packet_l3
        - Src:             'lib/conntrack.c:2211,22'
          Dst:             dp_packet_l4
        - Src:             'lib/conntrack.c:2256,29'
          Dst:             htons
        - Src:             'lib/conntrack.c:2257,13'
          Dst:             dp_packet_ip_checksum_bad
        - Src:             'lib/conntrack.c:2259,13'
          Dst:             conntrack_l3csum_err_add
        - Src:             'lib/conntrack.c:2263,54'
          Dst:             dp_packet_l3_size
        - Src:             'lib/conntrack.c:2263,18'
          Dst:             extract_l3_ipv4
        - Src:             'lib/conntrack.c:2266,36'
          Dst:             htons
        - Src:             'lib/conntrack.c:2267,45'
          Dst:             dp_packet_l3_size
        - Src:             'lib/conntrack.c:2267,14'
          Dst:             extract_l3_ipv6
        - Src:             'lib/conntrack.c:2273,14'
          Dst:             dp_packet_l4_checksum_bad
        - Src:             'lib/conntrack.c:2275,48'
          Dst:             dp_packet_l4_size
        - Src:             'lib/conntrack.c:2275,17'
          Dst:             extract_l4
        - Src:             'lib/conntrack.c:2277,29'
          Dst:             conn_key_hash
        - Src:             'lib/conntrack.c:2281,13'
          Dst:             conntrack_l4csum_err_add
    - functionName:    process_one_fast
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1321
      functionLinenumberEnd: 1340
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - short
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          120
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - handle_nat
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - set_label
        - set_mark
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:1323,9'
          Dst:             handle_nat
        - Src:             'lib/conntrack.c:1328,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/conntrack.c:1331,5'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/conntrack.c:1334,9'
          Dst:             set_mark
        - Src:             'lib/conntrack.c:1338,9'
          Dst:             set_label
    - functionName:    dp_packet_batch_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 910
      functionLinenumberEnd: 911
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    conntrack_execute
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1483
      functionLinenumberEnd: 1525
      functionDepth:   0
      returnType:      int
      argCount:        12
      argTypes:
        - 'N/A'
        - 'N/A'
        - short
        - bool
        - bool
        - short
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         38
      ICount:          280
      EdgeCount:       50
      CyclomaticComplexity: 14
      functionsReached:
        - conn_key_extract
        - dp_packet_batch_size
        - get_alg_ctl_type
        - ipf_postprocess_conntrack
        - ipf_preprocess_conntrack
        - process_one
        - process_one_fast
        - write_ct_md
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:1488,5'
          Dst:             dp_packet_batch_size
        - Src:             'lib/conntrack.c:1495,5'
          Dst:             ipf_preprocess_conntrack
        - Src:             'lib/conntrack.c:1499,5'
          Dst:             dp_packet_batch_size
        - Src:             'lib/conntrack.c:1507,13'
          Dst:             write_ct_md
        - Src:             'lib/conntrack.c:1510,21'
          Dst:             get_alg_ctl_type
        - Src:             'lib/conntrack.c:1511,13'
          Dst:             process_one_fast
        - Src:             'lib/conntrack.c:1513,20'
          Dst:             conn_key_extract
        - Src:             'lib/conntrack.c:1516,13'
          Dst:             write_ct_md
        - Src:             'lib/conntrack.c:1518,13'
          Dst:             process_one
        - Src:             'lib/conntrack.c:1523,5'
          Dst:             ipf_postprocess_conntrack
    - functionName:    hmap_pop_helper__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 226
      functionLinenumberEnd: 238
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          66
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - hmap_remove
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:232,13'
          Dst:             hmap_remove
    - functionName:    conntrack_destroy
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 615
      functionLinenumberEnd: 667
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         36
      ICount:          277
      EdgeCount:       46
      CyclomaticComplexity: 12
      functionsReached:
        - cmap_cursor_advance
        - cmap_cursor_start
        - cmap_destroy
        - cmap_remove
        - conn_clean
        - hash_int
        - hindex_destroy
        - hmap_destroy
        - hmap_pop_helper__
        - ipf_destroy
        - latch_destroy
        - latch_set
        - ovs_mutex_destroy
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovs_rwlock_destroy
        - ovs_rwlock_unlock
        - ovs_rwlock_wrlock_at
        - ovsrcu_postpone__
        - pthread_join
        - rculist_next
        - zone_key_hash
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:618,5'
          Dst:             latch_set
        - Src:             'lib/conntrack.c:619,5'
          Dst:             pthread_join
        - Src:             'lib/conntrack.c:620,5'
          Dst:             latch_destroy
        - Src:             'lib/conntrack.c:623,9'
          Dst:             rculist_next
        - Src:             'lib/conntrack.c:624,13'
          Dst:             conn_clean
        - Src:             'lib/conntrack.c:623,9'
          Dst:             rculist_next
        - Src:             'lib/conntrack.c:629,5'
          Dst:             cmap_cursor_start
        - Src:             'lib/conntrack.c:629,5'
          Dst:             cmap_cursor_advance
        - Src:             'lib/conntrack.c:630,25'
          Dst:             zone_key_hash
        - Src:             'lib/conntrack.c:632,9'
          Dst:             cmap_remove
        - Src:             'lib/conntrack.c:633,9'
          Dst:             ovsrcu_postpone__
        - Src:             'lib/conntrack.c:637,5'
          Dst:             cmap_cursor_start
        - Src:             'lib/conntrack.c:637,5'
          Dst:             cmap_cursor_advance
        - Src:             'lib/conntrack.c:638,25'
          Dst:             hash_int
        - Src:             'lib/conntrack.c:640,9'
          Dst:             cmap_remove
        - Src:             'lib/conntrack.c:641,9'
          Dst:             ovsrcu_postpone__
        - Src:             'lib/conntrack.c:644,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/conntrack.c:647,9'
          Dst:             cmap_destroy
        - Src:             'lib/conntrack.c:649,5'
          Dst:             cmap_destroy
        - Src:             'lib/conntrack.c:650,5'
          Dst:             cmap_destroy
        - Src:             'lib/conntrack.c:652,5'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/conntrack.c:653,5'
          Dst:             ovs_mutex_destroy
        - Src:             'lib/conntrack.c:655,5'
          Dst:             ovs_rwlock_wrlock_at
        - Src:             'lib/conntrack.c:657,5'
          Dst:             hmap_pop_helper__
        - Src:             'lib/conntrack.c:660,5'
          Dst:             hmap_destroy
        - Src:             'lib/conntrack.c:661,5'
          Dst:             hindex_destroy
        - Src:             'lib/conntrack.c:662,5'
          Dst:             ovs_rwlock_unlock
        - Src:             'lib/conntrack.c:663,5'
          Dst:             ovs_rwlock_destroy
        - Src:             'lib/conntrack.c:665,5'
          Dst:             ipf_destroy
    - functionName:    zone_limit_create
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 378
      functionLinenumberEnd: 386
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - zone_limit_create__
        - zone_limit_lookup_protected
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:379,29'
          Dst:             zone_limit_lookup_protected
        - Src:             'lib/conntrack.c:385,12'
          Dst:             zone_limit_create__
    - functionName:    zone_limit_update_default
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 515
      functionLinenumberEnd: 524
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - zone_limit_delete__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:518,9'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/conntrack.c:519,9'
          Dst:             zone_limit_delete__
        - Src:             'lib/conntrack.c:520,9'
          Dst:             ovs_mutex_unlock
    - functionName:    zone_limit_delete__
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 479
      functionLinenumberEnd: 491
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          48
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - zone_limit_clean
        - zone_limit_clean_default
        - zone_limit_lookup_protected
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:483,9'
          Dst:             zone_limit_clean_default
        - Src:             'lib/conntrack.c:485,14'
          Dst:             zone_limit_lookup_protected
        - Src:             'lib/conntrack.c:487,13'
          Dst:             zone_limit_clean
    - functionName:    zone_limit_update
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 528
      functionLinenumberEnd: 555
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         32
      ICount:          168
      EdgeCount:       39
      CyclomaticComplexity: 9
      functionsReached:
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - vlog
        - zone_limit_create
        - zone_limit_lookup
        - zone_limit_update_default
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:533,9'
          Dst:             zone_limit_update_default
        - Src:             'lib/conntrack.c:534,9'
          Dst:             vlog
        - Src:             'lib/conntrack.c:538,10'
          Dst:             zone_limit_lookup
        - Src:             'lib/conntrack.c:541,9'
          Dst:             vlog
        - Src:             'lib/conntrack.c:543,9'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/conntrack.c:544,15'
          Dst:             zone_limit_create
        - Src:             'lib/conntrack.c:545,9'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/conntrack.c:547,13'
          Dst:             vlog
        - Src:             'lib/conntrack.c:549,13'
          Dst:             vlog
    - functionName:    zone_limit_delete
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 496
      functionLinenumberEnd: 510
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          63
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - vlog
        - zone_limit_delete__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:499,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/conntrack.c:500,15'
          Dst:             zone_limit_delete__
        - Src:             'lib/conntrack.c:501,5'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/conntrack.c:504,9'
          Dst:             vlog
    - functionName:    zone_limit_get
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 410
      functionLinenumberEnd: 431
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          82
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - atomic_count_get
        - zone_limit_get_limit__
        - zone_limit_lookup
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:416,29'
          Dst:             zone_limit_lookup
        - Src:             'lib/conntrack.c:418,29'
          Dst:             zone_limit_get_limit__
        - Src:             'lib/conntrack.c:426,21'
          Dst:             atomic_count_get
    - functionName:    ovsthread_once_start
      functionSourceFile: '/src/openvswitch/./include/openvswitch/thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsthread_once_start__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/thread.h:161,12'
          Dst:             ovsthread_once_start__
    - functionName:    clean_thread_main
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1658
      functionLinenumberEnd: 1675
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          56
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - conntrack_clean
        - latch_is_set
        - latch_wait_at
        - poll_block
        - poll_timer_wait_until_at
        - time_msec
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:1661,13'
          Dst:             latch_is_set
        - Src:             'lib/conntrack.c:1663,25'
          Dst:             time_msec
        - Src:             'lib/conntrack.c:1664,21'
          Dst:             conntrack_clean
        - Src:             'lib/conntrack.c:1667,13'
          Dst:             poll_timer_wait_until_at
        - Src:             'lib/conntrack.c:1669,13'
          Dst:             poll_timer_wait_until_at
        - Src:             'lib/conntrack.c:1671,9'
          Dst:             latch_wait_at
        - Src:             'lib/conntrack.c:1672,9'
          Dst:             poll_block
    - functionName:    rculist_init
      functionSourceFile: '/src/openvswitch/lib/rculist.h'
      linkageType:     InternalLinkage
      functionLinenumber: 127
      functionLinenumberEnd: 130
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    conntrack_init
      functionSourceFile: '/src/openvswitch/lib/conntrack.c'
      linkageType:     InternalLinkage
      functionLinenumber: 248
      functionLinenumberEnd: 297
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         18
      ICount:          156
      EdgeCount:       22
      CyclomaticComplexity: 6
      functionsReached:
        - atomic_count_init
        - clean_thread_main
        - cmap_init
        - hindex_init
        - hmap_init
        - ipf_init
        - latch_init
        - ovs_mutex_init_adaptive
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovs_rwlock_init
        - ovs_rwlock_unlock
        - ovs_rwlock_wrlock_at
        - ovs_thread_create
        - ovsthread_once_done
        - ovsthread_once_start
        - random_uint32
        - rculist_init
        - timeout_policy_init
        - xzalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack.c:250,28'
          Dst:             xzalloc
        - Src:             'lib/conntrack.c:255,22'
          Dst:             random_uint32
        - Src:             'lib/conntrack.c:257,5'
          Dst:             ovs_rwlock_init
        - Src:             'lib/conntrack.c:258,5'
          Dst:             ovs_rwlock_wrlock_at
        - Src:             'lib/conntrack.c:259,5'
          Dst:             hmap_init
        - Src:             'lib/conntrack.c:260,5'
          Dst:             hindex_init
        - Src:             'lib/conntrack.c:261,5'
          Dst:             ovs_rwlock_unlock
        - Src:             'lib/conntrack.c:263,5'
          Dst:             ovs_mutex_init_adaptive
        - Src:             'lib/conntrack.c:264,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/conntrack.c:266,9'
          Dst:             cmap_init
        - Src:             'lib/conntrack.c:269,9'
          Dst:             rculist_init
        - Src:             'lib/conntrack.c:271,5'
          Dst:             cmap_init
        - Src:             'lib/conntrack.c:273,5'
          Dst:             timeout_policy_init
        - Src:             'lib/conntrack.c:274,5'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/conntrack.c:276,5'
          Dst:             atomic_count_init
        - Src:             'lib/conntrack.c:281,5'
          Dst:             latch_init
        - Src:             'lib/conntrack.c:282,24'
          Dst:             ovs_thread_create
        - Src:             'lib/conntrack.c:282,24'
          Dst:             clean_thread_main
        - Src:             'lib/conntrack.c:283,15'
          Dst:             ipf_init
        - Src:             'lib/conntrack.c:286,9'
          Dst:             ovsthread_once_start
        - Src:             'lib/conntrack.c:295,9'
          Dst:             ovsthread_once_done
    - functionName:    init_this_module_cooperative_multitasking
      functionSourceFile: '/src/openvswitch/lib/cooperative-multitasking.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27
      functionLinenumberEnd: 27
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/cooperative-multitasking.c:27,1'
          Dst:             vlog_insert_module
    - functionName:    hmap_insert_fast
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 289
      functionLinenumberEnd: 295
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          38
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_rot
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 32
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhash_add__
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hash_rot
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:71,12'
          Dst:             hash_rot
    - functionName:    mhash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_rot
        - mhash_add__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:78,12'
          Dst:             mhash_add__
        - Src:             'lib/hash.h:79,12'
          Dst:             hash_rot
    - functionName:    mhash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 108
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_add
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:109,12'
          Dst:             mhash_add
    - functionName:    hash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:119,12'
          Dst:             mhash_finish
    - functionName:    hash_2words
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 153
      functionLinenumberEnd: 154
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_add
        - hash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:154,33'
          Dst:             hash_add
        - Src:             'lib/hash.h:154,24'
          Dst:             hash_add
        - Src:             'lib/hash.h:154,12'
          Dst:             hash_finish
    - functionName:    hash_int
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 408
      functionLinenumberEnd: 409
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_2words
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:409,12'
          Dst:             hash_2words
    - functionName:    hmap_next_with_hash__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 348
      functionLinenumberEnd: 352
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          40
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_next__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 401
      functionLinenumberEnd: 410
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          51
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    cooperative_multitasking_yield_at__
      functionSourceFile: '/src/openvswitch/lib/cooperative-multitasking.c'
      linkageType:     InternalLinkage
      functionLinenumber: 105
      functionLinenumberEnd: 134
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         31
      ICount:          183
      EdgeCount:       39
      CyclomaticComplexity: 10
      functionsReached:
        - hmap_first
        - hmap_next
        - log_backtrace_at
        - time_msec
        - vlog
        - vlog_is_enabled
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/cooperative-multitasking.c:106,27'
          Dst:             time_msec
        - Src:             'lib/cooperative-multitasking.c:111,5'
          Dst:             hmap_first
        - Src:             'lib/cooperative-multitasking.c:112,19'
          Dst:             time_msec
        - Src:             'lib/cooperative-multitasking.c:117,13'
          Dst:             vlog
        - Src:             'lib/cooperative-multitasking.c:122,25'
          Dst:             vlog_is_enabled
        - Src:             'lib/cooperative-multitasking.c:123,17'
          Dst:             log_backtrace_at
        - Src:             'lib/cooperative-multitasking.c:111,5'
          Dst:             hmap_next
        - Src:             'lib/cooperative-multitasking.c:130,15'
          Dst:             time_msec
        - Src:             'lib/cooperative-multitasking.c:132,9'
          Dst:             vlog
    - functionName:    hmap_first
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 416
      functionLinenumberEnd: 417
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:417,12'
          Dst:             hmap_next__
    - functionName:    hmap_next
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 429
      functionLinenumberEnd: 432
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_next__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:432,15'
          Dst:             hmap_next__
    - functionName:    ovsthread_once_start
      functionSourceFile: '/src/openvswitch/./include/openvswitch/thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsthread_once_start__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/thread.h:161,12'
          Dst:             ovsthread_once_start__
    - functionName:    cooperative_multitasking_yield_at
      functionSourceFile: '/src/openvswitch/lib/cooperative-multitasking.c'
      linkageType:     InternalLinkage
      functionLinenumber: 140
      functionLinenumberEnd: 157
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         19
      ICount:          70
      EdgeCount:       23
      CyclomaticComplexity: 6
      functionsReached:
        - cooperative_multitasking_yield_at__
        - log_backtrace_at
        - ovsthread_once_done
        - ovsthread_once_start
        - vlog
        - vlog_is_enabled
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/cooperative-multitasking.c:144,9'
          Dst:             ovsthread_once_start
        - Src:             'lib/cooperative-multitasking.c:144,9'
          Dst:             vlog
        - Src:             'lib/cooperative-multitasking.c:144,9'
          Dst:             ovsthread_once_done
        - Src:             'lib/cooperative-multitasking.c:146,13'
          Dst:             vlog_is_enabled
        - Src:             'lib/cooperative-multitasking.c:147,13'
          Dst:             vlog
        - Src:             'lib/cooperative-multitasking.c:148,13'
          Dst:             log_backtrace_at
        - Src:             'lib/cooperative-multitasking.c:154,5'
          Dst:             cooperative_multitasking_yield_at__
    - functionName:    cooperative_multitasking_remove
      functionSourceFile: '/src/openvswitch/lib/cooperative-multitasking.c'
      linkageType:     InternalLinkage
      functionLinenumber: 90
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          83
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - hash_pointer
        - hmap_first_with_hash
        - hmap_next_with_hash
        - hmap_remove
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/cooperative-multitasking.c:93,5'
          Dst:             hash_pointer
        - Src:             'lib/cooperative-multitasking.c:93,5'
          Dst:             hmap_first_with_hash
        - Src:             'lib/cooperative-multitasking.c:96,13'
          Dst:             hmap_remove
        - Src:             'lib/cooperative-multitasking.c:93,5'
          Dst:             hmap_next_with_hash
    - functionName:    hash_pointer
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 140
      functionLinenumberEnd: 149
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_int
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:149,12'
          Dst:             hash_int
    - functionName:    hmap_first_with_hash
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 360
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next_with_hash__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:360,12'
          Dst:             hmap_next_with_hash__
    - functionName:    hmap_remove
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 317
      functionLinenumberEnd: 324
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          48
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_next_with_hash
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 395
      functionLinenumberEnd: 396
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next_with_hash__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:396,12'
          Dst:             hmap_next_with_hash__
    - functionName:    hmap_insert_at
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 306
      functionLinenumberEnd: 311
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_expand_at
        - hmap_insert_fast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:307,5'
          Dst:             hmap_insert_fast
        - Src:             './include/openvswitch/hmap.h:309,9'
          Dst:             hmap_expand_at
    - functionName:    cooperative_multitasking_set
      functionSourceFile: '/src/openvswitch/lib/cooperative-multitasking.c'
      linkageType:     InternalLinkage
      functionLinenumber: 59
      functionLinenumberEnd: 85
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          154
      EdgeCount:       32
      CyclomaticComplexity: 9
      functionsReached:
        - hash_pointer
        - hmap_first_with_hash
        - hmap_insert_at
        - hmap_next_with_hash
        - time_msec
        - xzalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/cooperative-multitasking.c:62,5'
          Dst:             hash_pointer
        - Src:             'lib/cooperative-multitasking.c:62,5'
          Dst:             hmap_first_with_hash
        - Src:             'lib/cooperative-multitasking.c:62,5'
          Dst:             hmap_next_with_hash
        - Src:             'lib/cooperative-multitasking.c:76,16'
          Dst:             xzalloc
        - Src:             'lib/cooperative-multitasking.c:80,48'
          Dst:             time_msec
        - Src:             'lib/cooperative-multitasking.c:83,5'
          Dst:             hash_pointer
        - Src:             'lib/cooperative-multitasking.c:83,5'
          Dst:             hmap_insert_at
    - functionName:    cooperative_multitasking_destroy
      functionSourceFile: '/src/openvswitch/lib/cooperative-multitasking.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 41
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         10
      ICount:          55
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - hmap_first
        - hmap_next
        - hmap_remove
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/cooperative-multitasking.c:37,5'
          Dst:             hmap_first
        - Src:             'lib/cooperative-multitasking.c:37,5'
          Dst:             hmap_next
        - Src:             'lib/cooperative-multitasking.c:38,9'
          Dst:             hmap_remove
    - functionName:    init_this_module_ct_dpif
      functionSourceFile: '/src/openvswitch/lib/ct-dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28
      functionLinenumberEnd: 28
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ct-dpif.c:28,1'
          Dst:             vlog_insert_module
    - functionName:    ovs_list_remove
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 251
      functionLinenumberEnd: 254
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          25
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_list_insert
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 169
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ct_dpif_tcp_flags
      functionSourceFile: '/src/openvswitch/lib/ct-dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 765
      functionLinenumberEnd: 775
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          47
      EdgeCount:       16
      CyclomaticComplexity: 9
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/ct-dpif.c:766,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    ct_dpif_format_protoinfo_sctp
      functionSourceFile: '/src/openvswitch/lib/ct-dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 804
      functionLinenumberEnd: 809
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          32
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ct_dpif_format_enum__
        - ds_put_format
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ct-dpif.c:805,5'
          Dst:             ct_dpif_format_enum__
        - Src:             'lib/ct-dpif.c:807,5'
          Dst:             ds_put_format
    - functionName:    ct_dpif_format_enum__
      functionSourceFile: '/src/openvswitch/lib/ct-dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 717
      functionLinenumberEnd: 726
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          58
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ds_put_cstr
        - ds_put_format
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ct-dpif.c:719,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ct-dpif.c:722,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ct-dpif.c:724,9'
          Dst:             ds_put_format
    - functionName:    ct_dpif_format_protoinfo_tcp
      functionSourceFile: '/src/openvswitch/lib/ct-dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 751
      functionLinenumberEnd: 761
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          57
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - coalesce_tcp_state
        - ct_dpif_format_enum__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ct-dpif.c:759,17'
          Dst:             coalesce_tcp_state
        - Src:             'lib/ct-dpif.c:760,5'
          Dst:             ct_dpif_format_enum__
    - functionName:    coalesce_tcp_state
      functionSourceFile: '/src/openvswitch/lib/ct-dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 733
      functionLinenumberEnd: 746
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ''
      BBCount:         5
      ICount:          29
      EdgeCount:       8
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/ct-dpif.c:738,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    ct_dpif_format_protoinfo_tcp_verbose
      functionSourceFile: '/src/openvswitch/lib/ct-dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 780
      functionLinenumberEnd: 799
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          84
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ct_dpif_format_enum__
        - ct_dpif_tcp_flags
        - ds_put_format
        - format_flags_masked
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ct-dpif.c:781,5'
          Dst:             ct_dpif_format_enum__
        - Src:             'lib/ct-dpif.c:783,5'
          Dst:             ct_dpif_format_enum__
        - Src:             'lib/ct-dpif.c:787,9'
          Dst:             ds_put_format
        - Src:             'lib/ct-dpif.c:792,5'
          Dst:             format_flags_masked
        - Src:             'lib/ct-dpif.c:792,5'
          Dst:             ct_dpif_tcp_flags
        - Src:             'lib/ct-dpif.c:796,5'
          Dst:             format_flags_masked
        - Src:             'lib/ct-dpif.c:796,5'
          Dst:             ct_dpif_tcp_flags
    - functionName:    htonll
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 30
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byte-order.h:30,12'
          Dst:             htonl
        - Src:             'lib/byte-order.h:30,44'
          Dst:             htonl
        - Src:             'lib/byte-order.h:30,62'
          Dst:             htonl
    - functionName:    ipv6_addr_equals
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1184
      functionLinenumberEnd: 1186
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          80
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ct_dpif_inet_addr_cmp_partial
      functionSourceFile: '/src/openvswitch/lib/ct-dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 199
      functionLinenumberEnd: 213
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          76
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - in6_addr_get_mapped_ipv4
        - ipv6_addr_equals
        - ipv6_is_zero
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ct-dpif.c:200,9'
          Dst:             ipv6_is_zero
        - Src:             'lib/ct-dpif.c:204,31'
          Dst:             in6_addr_get_mapped_ipv4
        - Src:             'lib/ct-dpif.c:208,33'
          Dst:             ipv6_addr_equals
    - functionName:    in6_addr_get_mapped_ipv4
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1231
      functionLinenumberEnd: 1239
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          75
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - get_16aligned_be32
        - htonl
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:1234,9'
          Dst:             htonl
        - Src:             'lib/packets.h:1235,16'
          Dst:             get_16aligned_be32
    - functionName:    get_16aligned_be32
      functionSourceFile: '/src/openvswitch/lib/unaligned.h'
      linkageType:     InternalLinkage
      functionLinenumber: 246
      functionLinenumberEnd: 250
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_u128_and
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 515
      functionLinenumberEnd: 521
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          31
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_u128_equals
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 481
      functionLinenumberEnd: 482
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          37
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ct_dpif_tuple_ip_cmp_partial
      functionSourceFile: '/src/openvswitch/lib/ct-dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 219
      functionLinenumberEnd: 251
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - short
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          184
      EdgeCount:       41
      CyclomaticComplexity: 13
      functionsReached:
        - ct_dpif_inet_addr_cmp_partial
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ct-dpif.c:220,10'
          Dst:             ct_dpif_inet_addr_cmp_partial
        - Src:             'lib/ct-dpif.c:224,10'
          Dst:             ct_dpif_inet_addr_cmp_partial
    - functionName:    ct_dpif_entry_cmp
      functionSourceFile: '/src/openvswitch/lib/ct-dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 258
      functionLinenumberEnd: 287
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         22
      ICount:          201
      EdgeCount:       30
      CyclomaticComplexity: 10
      functionsReached:
        - ct_dpif_tuple_ip_cmp_partial
        - ovs_u128_and
        - ovs_u128_equals
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ct-dpif.c:267,10'
          Dst:             ct_dpif_tuple_ip_cmp_partial
        - Src:             'lib/ct-dpif.c:272,10'
          Dst:             ct_dpif_tuple_ip_cmp_partial
        - Src:             'lib/ct-dpif.c:281,26'
          Dst:             ovs_u128_and
        - Src:             'lib/ct-dpif.c:282,26'
          Dst:             ovs_u128_and
        - Src:             'lib/ct-dpif.c:281,10'
          Dst:             ovs_u128_equals
    - functionName:    ct_dpif_tuple_from_ofp_ct_tuple
      functionSourceFile: '/src/openvswitch/lib/ct-dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 175
      functionLinenumberEnd: 194
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - short
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          113
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - in6_addr_get_mapped_ipv4
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ct-dpif.c:177,25'
          Dst:             in6_addr_get_mapped_ipv4
        - Src:             'lib/ct-dpif.c:178,25'
          Dst:             in6_addr_get_mapped_ipv4
    - functionName:    ct_dpif_is_zone_limit_protected
      functionSourceFile: '/src/openvswitch/lib/ct-dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1097
      functionLinenumberEnd: 1098
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sset_contains
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ct-dpif.c:1098,12'
          Dst:             sset_contains
    - functionName:    ct_dpif_set_zone_limit_protection
      functionSourceFile: '/src/openvswitch/lib/ct-dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1083
      functionLinenumberEnd: 1093
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          50
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - sset_add
        - sset_contains
        - sset_find_and_delete
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ct-dpif.c:1084,9'
          Dst:             sset_contains
        - Src:             'lib/ct-dpif.c:1089,9'
          Dst:             sset_add
        - Src:             'lib/ct-dpif.c:1091,9'
          Dst:             sset_find_and_delete
    - functionName:    ct_dpif_get_features
      functionSourceFile: '/src/openvswitch/lib/ct-dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1075
      functionLinenumberEnd: 1077
      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:    ct_dpif_get_timeout_policy_name
      functionSourceFile: '/src/openvswitch/lib/ct-dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1066
      functionLinenumberEnd: 1069
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - short
        - char
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ct_dpif_timeout_policy_dump_done
      functionSourceFile: '/src/openvswitch/lib/ct-dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1056
      functionLinenumberEnd: 1058
      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:    ct_dpif_timeout_policy_dump_next
      functionSourceFile: '/src/openvswitch/lib/ct-dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1048
      functionLinenumberEnd: 1050
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ct_dpif_timeout_policy_dump_start
      functionSourceFile: '/src/openvswitch/lib/ct-dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1039
      functionLinenumberEnd: 1041
      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:    ct_dpif_get_timeout_policy
      functionSourceFile: '/src/openvswitch/lib/ct-dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1031
      functionLinenumberEnd: 1034
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ct_dpif_del_timeout_policy
      functionSourceFile: '/src/openvswitch/lib/ct-dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1022
      functionLinenumberEnd: 1024
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ct_dpif_set_timeout_policy
      functionSourceFile: '/src/openvswitch/lib/ct-dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1014
      functionLinenumberEnd: 1016
      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:    ct_dpif_timeout_policy_support_ipproto
      functionSourceFile: '/src/openvswitch/lib/ct-dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1003
      functionLinenumberEnd: 1009
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          51
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ct_dpif_set_timeout_policy_attr
      functionSourceFile: '/src/openvswitch/lib/ct-dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 978
      functionLinenumberEnd: 985
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          60
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ct_dpif_set_timeout_policy_attr_by_name
      functionSourceFile: '/src/openvswitch/lib/ct-dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 992
      functionLinenumberEnd: 999
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          57
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ct_dpif_set_timeout_policy_attr
        - strcasecmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ct-dpif.c:994,14'
          Dst:             strcasecmp
        - Src:             'lib/ct-dpif.c:995,20'
          Dst:             ct_dpif_set_timeout_policy_attr
    - functionName:    ct_dpif_format_zone_limits
      functionSourceFile: '/src/openvswitch/lib/ct-dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 941
      functionLinenumberEnd: 958
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         22
      ICount:          135
      EdgeCount:       28
      CyclomaticComplexity: 8
      functionsReached:
        - ds_put_format
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ct-dpif.c:946,13'
          Dst:             ds_put_format
        - Src:             'lib/ct-dpif.c:954,9'
          Dst:             ds_put_format
        - Src:             'lib/ct-dpif.c:955,9'
          Dst:             ds_put_format
        - Src:             'lib/ct-dpif.c:956,9'
          Dst:             ds_put_format
    - functionName:    ct_dpif_parse_zone_limit_tuple
      functionSourceFile: '/src/openvswitch/lib/ct-dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 893
      functionLinenumberEnd: 937
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          137
      EdgeCount:       34
      CyclomaticComplexity: 10
      functionsReached:
        - ds_put_format
        - ofputil_parse_key_value
        - str_to_u16
        - str_to_u32
        - strcmp
        - xstrdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ct-dpif.c:897,18'
          Dst:             xstrdup
        - Src:             'lib/ct-dpif.c:898,12'
          Dst:             ofputil_parse_key_value
        - Src:             'lib/ct-dpif.c:900,13'
          Dst:             ds_put_format
        - Src:             'lib/ct-dpif.c:904,14'
          Dst:             strcmp
        - Src:             'lib/ct-dpif.c:905,19'
          Dst:             str_to_u16
        - Src:             'lib/ct-dpif.c:911,22'
          Dst:             strcmp
        - Src:             'lib/ct-dpif.c:912,19'
          Dst:             str_to_u32
        - Src:             'lib/ct-dpif.c:919,13'
          Dst:             ds_put_format
        - Src:             'lib/ct-dpif.c:925,9'
          Dst:             ds_put_format
        - Src:             'lib/ct-dpif.c:933,5'
          Dst:             ds_put_format
    - functionName:    ovs_list_pop_front
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 261
      functionLinenumberEnd: 265
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_list_remove
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/list.h:264,5'
          Dst:             ovs_list_remove
    - functionName:    ovs_list_is_empty
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 320
      functionLinenumberEnd: 321
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ct_dpif_free_zone_limits
      functionSourceFile: '/src/openvswitch/lib/ct-dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 878
      functionLinenumberEnd: 885
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_list_is_empty
        - ovs_list_pop_front
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ct-dpif.c:879,13'
          Dst:             ovs_list_is_empty
        - Src:             'lib/ct-dpif.c:880,34'
          Dst:             ovs_list_pop_front
    - functionName:    ovs_list_push_back
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 204
      functionLinenumberEnd: 206
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_list_insert
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/list.h:205,5'
          Dst:             ovs_list_insert
    - functionName:    ct_dpif_push_zone_limit
      functionSourceFile: '/src/openvswitch/lib/ct-dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 868
      functionLinenumberEnd: 874
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          38
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_list_push_back
        - xmalloc
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ct-dpif.c:869,45'
          Dst:             xmalloc
        - Src:             'lib/ct-dpif.c:873,5'
          Dst:             ovs_list_push_back
    - functionName:    ct_dpif_format_tcp_stat
      functionSourceFile: '/src/openvswitch/lib/ct-dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 858
      functionLinenumberEnd: 862
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ct_dpif_format_enum__
        - ds_put_cstr
        - ds_put_format
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ct-dpif.c:859,5'
          Dst:             ct_dpif_format_enum__
        - Src:             'lib/ct-dpif.c:860,5'
          Dst:             ds_put_cstr
        - Src:             'lib/ct-dpif.c:861,5'
          Dst:             ds_put_format
    - functionName:    ct_dpif_coalesce_tcp_state
      functionSourceFile: '/src/openvswitch/lib/ct-dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 852
      functionLinenumberEnd: 853
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coalesce_tcp_state
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ct-dpif.c:853,12'
          Dst:             coalesce_tcp_state
    - functionName:    ct_dpif_format_tuple_tp
      functionSourceFile: '/src/openvswitch/lib/ct-dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 671
      functionLinenumberEnd: 674
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_format
        - ntohs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ct-dpif.c:673,19'
          Dst:             ntohs
        - Src:             'lib/ct-dpif.c:673,43'
          Dst:             ntohs
        - Src:             'lib/ct-dpif.c:672,5'
          Dst:             ds_put_format
    - functionName:    ct_dpif_format_tuple_icmp
      functionSourceFile: '/src/openvswitch/lib/ct-dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 664
      functionLinenumberEnd: 667
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          32
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_format
        - ntohs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ct-dpif.c:665,49'
          Dst:             ntohs
        - Src:             'lib/ct-dpif.c:665,5'
          Dst:             ds_put_format
    - functionName:    ct_dpif_format_helper
      functionSourceFile: '/src/openvswitch/lib/ct-dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 841
      functionLinenumberEnd: 848
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          46
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ds_put_cstr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ct-dpif.c:844,13'
          Dst:             ds_put_cstr
        - Src:             'lib/ct-dpif.c:846,9'
          Dst:             ds_put_cstr
    - functionName:    ct_dpif_format_protoinfo
      functionSourceFile: '/src/openvswitch/lib/ct-dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 815
      functionLinenumberEnd: 836
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          95
      EdgeCount:       22
      CyclomaticComplexity: 5
      functionsReached:
        - ct_dpif_format_protoinfo_sctp
        - ct_dpif_format_protoinfo_tcp
        - ct_dpif_format_protoinfo_tcp_verbose
        - ds_put_cstr
        - ds_put_format
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ct-dpif.c:820,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ct-dpif.c:818,13'
          Dst:             ds_put_format
        - Src:             'lib/ct-dpif.c:823,17'
          Dst:             ct_dpif_format_protoinfo_tcp_verbose
        - Src:             'lib/ct-dpif.c:825,17'
          Dst:             ct_dpif_format_protoinfo_tcp
        - Src:             'lib/ct-dpif.c:829,13'
          Dst:             ct_dpif_format_protoinfo_sctp
        - Src:             'lib/ct-dpif.c:833,13'
          Dst:             ds_put_cstr
    - functionName:    ct_dpif_status_flags
      functionSourceFile: '/src/openvswitch/lib/ct-dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 521
      functionLinenumberEnd: 531
      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:   'lib/ct-dpif.c:522,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    ct_dpif_format_timestamp
      functionSourceFile: '/src/openvswitch/lib/ct-dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 651
      functionLinenumberEnd: 660
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          66
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - ds_put_strftime_msec
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ct-dpif.c:653,9'
          Dst:             ds_put_strftime_msec
        - Src:             'lib/ct-dpif.c:656,13'
          Dst:             ds_put_strftime_msec
    - functionName:    ct_dpif_format_counters
      functionSourceFile: '/src/openvswitch/lib/ct-dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 641
      functionLinenumberEnd: 646
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          48
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ds_put_format
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ct-dpif.c:643,9'
          Dst:             ds_put_format
    - functionName:    ct_dpif_format_entry
      functionSourceFile: '/src/openvswitch/lib/ct-dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 564
      functionLinenumberEnd: 615
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         35
      ICount:          254
      EdgeCount:       46
      CyclomaticComplexity: 13
      functionsReached:
        - ct_dpif_format_counters
        - ct_dpif_format_helper
        - ct_dpif_format_ipproto
        - ct_dpif_format_protoinfo
        - ct_dpif_format_timestamp
        - ct_dpif_format_tuple
        - ct_dpif_status_flags
        - ds_put_cstr
        - ds_put_format
        - ds_put_hex
        - format_flags_masked
        - hton128
        - ovs_u128_is_zero
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ct-dpif.c:565,5'
          Dst:             ct_dpif_format_ipproto
        - Src:             'lib/ct-dpif.c:567,5'
          Dst:             ds_put_cstr
        - Src:             'lib/ct-dpif.c:568,5'
          Dst:             ct_dpif_format_tuple
        - Src:             'lib/ct-dpif.c:570,9'
          Dst:             ct_dpif_format_counters
        - Src:             'lib/ct-dpif.c:572,5'
          Dst:             ds_put_cstr
        - Src:             'lib/ct-dpif.c:574,5'
          Dst:             ds_put_cstr
        - Src:             'lib/ct-dpif.c:575,5'
          Dst:             ct_dpif_format_tuple
        - Src:             'lib/ct-dpif.c:577,9'
          Dst:             ct_dpif_format_counters
        - Src:             'lib/ct-dpif.c:579,5'
          Dst:             ds_put_cstr
        - Src:             'lib/ct-dpif.c:582,9'
          Dst:             ct_dpif_format_timestamp
        - Src:             'lib/ct-dpif.c:585,9'
          Dst:             ds_put_format
        - Src:             'lib/ct-dpif.c:588,9'
          Dst:             ds_put_format
        - Src:             'lib/ct-dpif.c:591,9'
          Dst:             format_flags_masked
        - Src:             'lib/ct-dpif.c:591,9'
          Dst:             ct_dpif_status_flags
        - Src:             'lib/ct-dpif.c:596,9'
          Dst:             ds_put_format
        - Src:             'lib/ct-dpif.c:599,9'
          Dst:             ds_put_format
        - Src:             'lib/ct-dpif.c:601,10'
          Dst:             ovs_u128_is_zero
        - Src:             'lib/ct-dpif.c:604,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ct-dpif.c:605,17'
          Dst:             hton128
        - Src:             'lib/ct-dpif.c:606,9'
          Dst:             ds_put_hex
        - Src:             'lib/ct-dpif.c:608,5'
          Dst:             ct_dpif_format_protoinfo
        - Src:             'lib/ct-dpif.c:609,5'
          Dst:             ct_dpif_format_helper
        - Src:             'lib/ct-dpif.c:611,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ct-dpif.c:612,9'
          Dst:             ct_dpif_format_tuple
        - Src:             'lib/ct-dpif.c:613,9'
          Dst:             ds_put_cstr
    - functionName:    ct_dpif_format_ipproto
      functionSourceFile: '/src/openvswitch/lib/ct-dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 619
      functionLinenumberEnd: 637
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         27
      ICount:          121
      EdgeCount:       35
      CyclomaticComplexity: 10
      functionsReached:
        - ds_put_cstr
        - ds_put_format
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ct-dpif.c:633,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ct-dpif.c:635,9'
          Dst:             ds_put_format
    - functionName:    ct_dpif_format_tuple
      functionSourceFile: '/src/openvswitch/lib/ct-dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 678
      functionLinenumberEnd: 700
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          142
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - ct_dpif_format_tuple_icmp
        - ct_dpif_format_tuple_tp
        - ds_put_cstr
        - ds_put_format
        - ds_put_hex_dump
        - ipv6_format_addr
        - ntohl
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ct-dpif.c:681,23'
          Dst:             ntohl
        - Src:             'lib/ct-dpif.c:681,23'
          Dst:             ntohl
        - Src:             'lib/ct-dpif.c:681,23'
          Dst:             ntohl
        - Src:             'lib/ct-dpif.c:681,23'
          Dst:             ntohl
        - Src:             'lib/ct-dpif.c:681,47'
          Dst:             ntohl
        - Src:             'lib/ct-dpif.c:681,47'
          Dst:             ntohl
        - Src:             'lib/ct-dpif.c:681,47'
          Dst:             ntohl
        - Src:             'lib/ct-dpif.c:681,47'
          Dst:             ntohl
        - Src:             'lib/ct-dpif.c:680,9'
          Dst:             ds_put_format
        - Src:             'lib/ct-dpif.c:683,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ct-dpif.c:684,9'
          Dst:             ipv6_format_addr
        - Src:             'lib/ct-dpif.c:685,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ct-dpif.c:686,9'
          Dst:             ipv6_format_addr
        - Src:             'lib/ct-dpif.c:688,9'
          Dst:             ds_put_format
        - Src:             'lib/ct-dpif.c:690,9'
          Dst:             ds_put_hex_dump
        - Src:             'lib/ct-dpif.c:696,9'
          Dst:             ct_dpif_format_tuple_icmp
        - Src:             'lib/ct-dpif.c:698,9'
          Dst:             ct_dpif_format_tuple_tp
    - functionName:    ovs_u128_is_zero
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 488
      functionLinenumberEnd: 489
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          28
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hton128
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 48
      functionLinenumberEnd: 53
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonll
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byte-order.h:51,19'
          Dst:             htonll
        - Src:             'lib/byte-order.h:52,19'
          Dst:             htonll
    - functionName:    ct_dpif_format_exp_entry
      functionSourceFile: '/src/openvswitch/lib/ct-dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 535
      functionLinenumberEnd: 559
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          114
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - ct_dpif_format_ipproto
        - ct_dpif_format_tuple
        - ds_put_cstr
        - ds_put_format
        - ds_put_hex
        - hton128
        - ovs_u128_is_zero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ct-dpif.c:536,5'
          Dst:             ct_dpif_format_ipproto
        - Src:             'lib/ct-dpif.c:538,5'
          Dst:             ds_put_cstr
        - Src:             'lib/ct-dpif.c:539,5'
          Dst:             ct_dpif_format_tuple
        - Src:             'lib/ct-dpif.c:540,5'
          Dst:             ds_put_cstr
        - Src:             'lib/ct-dpif.c:543,9'
          Dst:             ds_put_format
        - Src:             'lib/ct-dpif.c:546,9'
          Dst:             ds_put_format
        - Src:             'lib/ct-dpif.c:548,10'
          Dst:             ovs_u128_is_zero
        - Src:             'lib/ct-dpif.c:551,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ct-dpif.c:552,17'
          Dst:             hton128
        - Src:             'lib/ct-dpif.c:553,9'
          Dst:             ds_put_hex
        - Src:             'lib/ct-dpif.c:556,5'
          Dst:             ds_put_cstr
        - Src:             'lib/ct-dpif.c:557,5'
          Dst:             ct_dpif_format_tuple
        - Src:             'lib/ct-dpif.c:558,5'
          Dst:             ds_put_cstr
    - functionName:    ct_dpif_entry_uninit
      functionSourceFile: '/src/openvswitch/lib/ct-dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 511
      functionLinenumberEnd: 517
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          40
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ct_dpif_ipf_dump_done
      functionSourceFile: '/src/openvswitch/lib/ct-dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 503
      functionLinenumberEnd: 505
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ct_dpif_ipf_dump_next
      functionSourceFile: '/src/openvswitch/lib/ct-dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 495
      functionLinenumberEnd: 497
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ct_dpif_ipf_dump_start
      functionSourceFile: '/src/openvswitch/lib/ct-dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 487
      functionLinenumberEnd: 489
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ct_dpif_ipf_get_status
      functionSourceFile: '/src/openvswitch/lib/ct-dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 479
      functionLinenumberEnd: 481
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ct_dpif_ipf_set_max_nfrags
      functionSourceFile: '/src/openvswitch/lib/ct-dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 471
      functionLinenumberEnd: 473
      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:    ct_dpif_ipf_set_min_frag
      functionSourceFile: '/src/openvswitch/lib/ct-dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 463
      functionLinenumberEnd: 465
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - bool
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ct_dpif_ipf_set_enabled
      functionSourceFile: '/src/openvswitch/lib/ct-dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 455
      functionLinenumberEnd: 457
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - bool
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          48
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ct_dpif_sweep
      functionSourceFile: '/src/openvswitch/lib/ct-dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 441
      functionLinenumberEnd: 451
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          79
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ct_dpif_del_limits
      functionSourceFile: '/src/openvswitch/lib/ct-dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 433
      functionLinenumberEnd: 435
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ct_dpif_get_limits
      functionSourceFile: '/src/openvswitch/lib/ct-dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 424
      functionLinenumberEnd: 427
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ct_dpif_set_limits
      functionSourceFile: '/src/openvswitch/lib/ct-dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 415
      functionLinenumberEnd: 417
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ct_dpif_get_tcp_seq_chk
      functionSourceFile: '/src/openvswitch/lib/ct-dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 407
      functionLinenumberEnd: 409
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ct_dpif_set_tcp_seq_chk
      functionSourceFile: '/src/openvswitch/lib/ct-dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 399
      functionLinenumberEnd: 401
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ct_dpif_get_nconns
      functionSourceFile: '/src/openvswitch/lib/ct-dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 391
      functionLinenumberEnd: 393
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ct_dpif_get_maxconns
      functionSourceFile: '/src/openvswitch/lib/ct-dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 383
      functionLinenumberEnd: 385
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ct_dpif_set_maxconns
      functionSourceFile: '/src/openvswitch/lib/ct-dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 375
      functionLinenumberEnd: 377
      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:    ct_dpif_flush_tuple
      functionSourceFile: '/src/openvswitch/lib/ct-dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 292
      functionLinenumberEnd: 344
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         38
      ICount:          211
      EdgeCount:       50
      CyclomaticComplexity: 14
      functionsReached:
        - ct_dpif_dump_done
        - ct_dpif_dump_next
        - ct_dpif_dump_start
        - ct_dpif_entry_cmp
        - ct_dpif_tuple_from_ofp_ct_tuple
        - dpif_name
        - ds_cstr
        - ds_destroy
        - ofp_ct_match_format
        - ofp_ct_match_is_five_tuple
        - vlog
        - vlog_is_enabled
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ct-dpif.c:302,9'
          Dst:             vlog_is_enabled
        - Src:             'lib/ct-dpif.c:304,9'
          Dst:             ofp_ct_match_format
        - Src:             'lib/ct-dpif.c:305,9'
          Dst:             dpif_name
        - Src:             'lib/ct-dpif.c:305,9'
          Dst:             ds_cstr
        - Src:             'lib/ct-dpif.c:305,9'
          Dst:             vlog
        - Src:             'lib/ct-dpif.c:307,9'
          Dst:             ds_destroy
        - Src:             'lib/ct-dpif.c:312,9'
          Dst:             ofp_ct_match_is_five_tuple
        - Src:             'lib/ct-dpif.c:315,9'
          Dst:             ct_dpif_tuple_from_ofp_ct_tuple
        - Src:             'lib/ct-dpif.c:320,13'
          Dst:             ct_dpif_dump_start
        - Src:             'lib/ct-dpif.c:325,22'
          Dst:             ct_dpif_dump_next
        - Src:             'lib/ct-dpif.c:330,13'
          Dst:             ct_dpif_entry_cmp
        - Src:             'lib/ct-dpif.c:342,5'
          Dst:             ct_dpif_dump_done
    - functionName:    ct_dpif_dump_start
      functionSourceFile: '/src/openvswitch/lib/ct-dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 77
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          67
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ct_dpif_dump_next
      functionSourceFile: '/src/openvswitch/lib/ct-dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 91
      functionLinenumberEnd: 95
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ct_dpif_dump_done
      functionSourceFile: '/src/openvswitch/lib/ct-dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 102
      functionLinenumberEnd: 106
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ct_dpif_flush
      functionSourceFile: '/src/openvswitch/lib/ct-dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 371
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          127
      EdgeCount:       32
      CyclomaticComplexity: 8
      functionsReached:
        - ct_dpif_flush_tuple
        - dpif_name
        - ofp_ct_match_is_zero
        - vlog
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ct-dpif.c:360,19'
          Dst:             ofp_ct_match_is_zero
        - Src:             'lib/ct-dpif.c:361,16'
          Dst:             ct_dpif_flush_tuple
        - Src:             'lib/ct-dpif.c:363,9'
          Dst:             dpif_name
        - Src:             'lib/ct-dpif.c:363,9'
          Dst:             vlog
        - Src:             'lib/ct-dpif.c:365,9'
          Dst:             dpif_name
        - Src:             'lib/ct-dpif.c:365,9'
          Dst:             vlog
    - functionName:    ct_exp_dpif_dump_done
      functionSourceFile: '/src/openvswitch/lib/ct-dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 161
      functionLinenumberEnd: 165
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ct_exp_dpif_dump_next
      functionSourceFile: '/src/openvswitch/lib/ct-dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 150
      functionLinenumberEnd: 154
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ct_exp_dpif_dump_start
      functionSourceFile: '/src/openvswitch/lib/ct-dpif.c'
      linkageType:     InternalLinkage
      functionLinenumber: 124
      functionLinenumberEnd: 135
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          64
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    init_this_module_daemon
      functionSourceFile: '/src/openvswitch/lib/daemon.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26
      functionLinenumberEnd: 26
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/daemon.c:26,1'
          Dst:             vlog_insert_module
    - functionName:    get_null_fd
      functionSourceFile: '/src/openvswitch/lib/daemon.c'
      linkageType:     InternalLinkage
      functionLinenumber: 105
      functionLinenumberEnd: 118
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         14
      ICount:          67
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - __errno_location
        - open
        - ovs_strerror
        - vlog
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/daemon.c:110,19'
          Dst:             open
        - Src:             'lib/daemon.c:112,25'
          Dst:             __errno_location
        - Src:             'lib/daemon.c:113,13'
          Dst:             ovs_strerror
        - Src:             'lib/daemon.c:113,13'
          Dst:             vlog
    - functionName:    close_standard_fds
      functionSourceFile: '/src/openvswitch/lib/daemon.c'
      linkageType:     InternalLinkage
      functionLinenumber: 126
      functionLinenumberEnd: 140
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         13
      ICount:          59
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - dup2
        - get_null_fd
        - vlog_set_levels
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/daemon.c:127,19'
          Dst:             get_null_fd
        - Src:             'lib/daemon.c:133,17'
          Dst:             dup2
        - Src:             'lib/daemon.c:139,5'
          Dst:             vlog_set_levels
    - functionName:    dup2
      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:    daemon_save_fd
      functionSourceFile: '/src/openvswitch/lib/daemon.c'
      linkageType:     InternalLinkage
      functionLinenumber: 93
      functionLinenumberEnd: 98
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          42
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - ovs_ignore
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/daemon.c:94,5'
          Dst:             ovs_ignore
    - functionName:    daemon_should_self_confine
      functionSourceFile: '/src/openvswitch/lib/daemon.c'
      linkageType:     InternalLinkage
      functionLinenumber: 80
      functionLinenumberEnd: 81
      functionDepth:   0
      returnType:      bool
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    daemon_disable_self_confinement
      functionSourceFile: '/src/openvswitch/lib/daemon.c'
      linkageType:     InternalLinkage
      functionLinenumber: 72
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_pidfile
      functionSourceFile: '/src/openvswitch/lib/daemon.c'
      linkageType:     InternalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 67
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - assert_single_threaded_at
        - make_pidfile_name
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/daemon.c:64,5'
          Dst:             assert_single_threaded_at
        - Src:             'lib/daemon.c:66,15'
          Dst:             make_pidfile_name
    - functionName:    daemonize
      functionSourceFile: '/src/openvswitch/lib/daemon.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 53
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - daemonize_complete
        - daemonize_start
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/daemon.c:51,5'
          Dst:             daemonize_start
        - Src:             'lib/daemon.c:52,5'
          Dst:             daemonize_complete
    - functionName:    get_detach
      functionSourceFile: '/src/openvswitch/lib/daemon.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42
      functionLinenumberEnd: 43
      functionDepth:   0
      returnType:      bool
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpctl_unixctl_print
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3146
      functionLinenumberEnd: 3149
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_cstr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:3148,5'
          Dst:             ds_put_cstr
    - functionName:    compare_output_actions
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2817
      functionLinenumberEnd: 2823
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          48
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - nl_attr_get_u32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:2820,23'
          Dst:             nl_attr_get_u32
        - Src:             'lib/dpctl.c:2821,23'
          Dst:             nl_attr_get_u32
    - functionName:    sort_output_actions__
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2828
      functionLinenumberEnd: 2834
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - compare_output_actions
        - ovs_ignore
        - qsort
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:2832,5'
          Dst:             ovs_ignore
        - Src:             'lib/dpctl.c:2833,5'
          Dst:             qsort
        - Src:             'lib/dpctl.c:2833,5'
          Dst:             compare_output_actions
    - functionName:    hmap_insert_fast
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 289
      functionLinenumberEnd: 295
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          38
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    flow_compare_3way
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 178
      functionLinenumberEnd: 179
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memcmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:179,12'
          Dst:             memcmp
    - functionName:    hmap_next_with_hash__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 348
      functionLinenumberEnd: 352
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          40
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_rot
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 32
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhash_add__
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hash_rot
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:71,12'
          Dst:             hash_rot
    - functionName:    mhash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_rot
        - mhash_add__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:78,12'
          Dst:             mhash_add__
        - Src:             'lib/hash.h:79,12'
          Dst:             hash_rot
    - functionName:    hash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 108
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_add
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:109,12'
          Dst:             mhash_add
    - functionName:    hash_add64
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 113
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_add
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:114,21'
          Dst:             hash_add
        - Src:             'lib/hash.h:114,12'
          Dst:             hash_add
    - functionName:    mhash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_add_words64
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 437
      functionLinenumberEnd: 441
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          44
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - hash_add64
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:439,16'
          Dst:             hash_add64
    - functionName:    hash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:119,12'
          Dst:             mhash_finish
    - functionName:    hash_words64_inline
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 135
      functionLinenumberEnd: 136
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_add_words64
        - hash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:136,24'
          Dst:             hash_add_words64
        - Src:             'lib/hash.h:136,12'
          Dst:             hash_finish
    - functionName:    hash_words64
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 367
      functionLinenumberEnd: 373
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hash_words64__
        - hash_words64_inline
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:369,16'
          Dst:             hash_words64_inline
        - Src:             'lib/hash.h:371,16'
          Dst:             hash_words64__
    - functionName:    hash_bytes64
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 398
      functionLinenumberEnd: 399
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_words64
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:399,12'
          Dst:             hash_words64
    - functionName:    hmap_insert_at
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 306
      functionLinenumberEnd: 311
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_expand_at
        - hmap_insert_fast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:307,5'
          Dst:             hmap_insert_fast
        - Src:             './include/openvswitch/hmap.h:309,9'
          Dst:             hmap_expand_at
    - functionName:    hmap_next_with_hash
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 395
      functionLinenumberEnd: 396
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next_with_hash__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:396,12'
          Dst:             hmap_next_with_hash__
    - functionName:    flow_equal
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 184
      functionLinenumberEnd: 185
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - flow_compare_3way
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:185,13'
          Dst:             flow_compare_3way
    - functionName:    hmap_first_with_hash
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 360
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next_with_hash__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:360,12'
          Dst:             hmap_next_with_hash__
    - functionName:    flow_hash
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 190
      functionLinenumberEnd: 191
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_bytes64
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:191,12'
          Dst:             hash_bytes64
    - functionName:    mpls_lse_to_ttl
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 584
      functionLinenumberEnd: 585
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:585,13'
          Dst:             ntohl
    - functionName:    mpls_lse_to_tc
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 576
      functionLinenumberEnd: 577
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:577,13'
          Dst:             ntohl
    - functionName:    mpls_lse_to_label
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 568
      functionLinenumberEnd: 569
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:569,13'
          Dst:             ntohl
    - functionName:    eth_type_mpls
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 423
      functionLinenumberEnd: 425
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htons
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:424,24'
          Dst:             htons
        - Src:             'lib/packets.h:425,21'
          Dst:             htons
    - functionName:    vlan_tci_to_pcp
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 515
      functionLinenumberEnd: 516
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:516,13'
          Dst:             ntohs
    - functionName:    vlan_tci_to_vid
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 507
      functionLinenumberEnd: 508
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ntohs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/packets.h:508,13'
          Dst:             ntohs
    - functionName:    sort_output_actions
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2838
      functionLinenumberEnd: 2860
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          101
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - nl_attr_is_valid
        - nl_attr_len_pad
        - nl_attr_next
        - nl_attr_type
        - sort_output_actions__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:2843,5'
          Dst:             nl_attr_is_valid
        - Src:             'lib/dpctl.c:2844,13'
          Dst:             nl_attr_type
        - Src:             'lib/dpctl.c:2850,17'
          Dst:             sort_output_actions__
        - Src:             'lib/dpctl.c:2843,5'
          Dst:             nl_attr_len_pad
        - Src:             'lib/dpctl.c:2843,5'
          Dst:             nl_attr_next
        - Src:             'lib/dpctl.c:2857,9'
          Dst:             sort_output_actions__
    - functionName:    nl_attr_is_valid
      functionSourceFile: '/src/openvswitch/lib/netlink.h'
      linkageType:     InternalLinkage
      functionLinenumber: 171
      functionLinenumberEnd: 174
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nl_attr_len_pad
      functionSourceFile: '/src/openvswitch/lib/netlink.h'
      linkageType:     InternalLinkage
      functionLinenumber: 179
      functionLinenumberEnd: 182
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          37
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nl_attr_next
      functionSourceFile: '/src/openvswitch/lib/netlink.h'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 165
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    compare_actions_for_flow
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2808
      functionLinenumberEnd: 2812
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - flow_compare_3way
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:2812,12'
          Dst:             flow_compare_3way
    - functionName:    hmap_count
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 263
      functionLinenumberEnd: 264
      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:    get_actions_for_flow
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2789
      functionLinenumberEnd: 2804
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          89
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - flow_equal
        - flow_hash
        - hmap_first_with_hash
        - hmap_insert_at
        - hmap_next_with_hash
        - ofpbuf_init
        - xmalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:2790,21'
          Dst:             flow_hash
        - Src:             'lib/dpctl.c:2793,5'
          Dst:             hmap_first_with_hash
        - Src:             'lib/dpctl.c:2794,13'
          Dst:             flow_equal
        - Src:             'lib/dpctl.c:2793,5'
          Dst:             hmap_next_with_hash
        - Src:             'lib/dpctl.c:2799,10'
          Dst:             xmalloc
        - Src:             'lib/dpctl.c:2801,5'
          Dst:             ofpbuf_init
        - Src:             'lib/dpctl.c:2802,5'
          Dst:             hmap_insert_at
    - functionName:    get_all_dpctl_commands
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3098
      functionLinenumberEnd: 3099
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          4
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpctl_add_dp
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 261
      functionLinenumberEnd: 275
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          61
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - dpctl_add_if
        - dpctl_error
        - dpif_close
        - parsed_dpif_open
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:265,13'
          Dst:             parsed_dpif_open
        - Src:             'lib/dpctl.c:267,9'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:270,5'
          Dst:             dpif_close
        - Src:             'lib/dpctl.c:272,17'
          Dst:             dpctl_add_if
    - functionName:    dpctl_del_dp
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 280
      functionLinenumberEnd: 296
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          62
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - dpctl_error
        - dpif_close
        - dpif_delete
        - parsed_dpif_open
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:284,13'
          Dst:             parsed_dpif_open
        - Src:             'lib/dpctl.c:286,9'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:289,13'
          Dst:             dpif_delete
        - Src:             'lib/dpctl.c:291,9'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:294,5'
          Dst:             dpif_close
    - functionName:    dpctl_add_if
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 301
      functionLinenumberEnd: 392
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         43
      ICount:          267
      EdgeCount:       57
      CyclomaticComplexity: 16
      functionsReached:
        - atoi
        - dpctl_error
        - dpif_close
        - dpif_port_add
        - if_up
        - netdev_close
        - netdev_open
        - netdev_set_config
        - parsed_dpif_open
        - smap_add_once
        - smap_destroy
        - smap_init
        - strcmp
        - strtok_r
        - u32_to_odp
        - xstrdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:305,13'
          Dst:             parsed_dpif_open
        - Src:             'lib/dpctl.c:307,9'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:318,19'
          Dst:             xstrdup
        - Src:             'lib/dpctl.c:319,16'
          Dst:             strtok_r
        - Src:             'lib/dpctl.c:323,13'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:329,9'
          Dst:             smap_init
        - Src:             'lib/dpctl.c:330,26'
          Dst:             strtok_r
        - Src:             'lib/dpctl.c:334,19'
          Dst:             strtok_r
        - Src:             'lib/dpctl.c:335,21'
          Dst:             strtok_r
        - Src:             'lib/dpctl.c:341,17'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:346,18'
          Dst:             strcmp
        - Src:             'lib/dpctl.c:348,25'
          Dst:             strcmp
        - Src:             'lib/dpctl.c:349,38'
          Dst:             atoi
        - Src:             'lib/dpctl.c:349,27'
          Dst:             u32_to_odp
        - Src:             'lib/dpctl.c:350,25'
          Dst:             smap_add_once
        - Src:             'lib/dpctl.c:351,17'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:355,17'
          Dst:             netdev_open
        - Src:             'lib/dpctl.c:357,13'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:362,17'
          Dst:             netdev_set_config
        - Src:             'lib/dpctl.c:367,17'
          Dst:             dpif_port_add
        - Src:             'lib/dpctl.c:369,13'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:374,17'
          Dst:             if_up
        - Src:             'lib/dpctl.c:376,13'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:381,9'
          Dst:             netdev_close
        - Src:             'lib/dpctl.c:382,9'
          Dst:             smap_destroy
        - Src:             'lib/dpctl.c:389,5'
          Dst:             dpif_close
    - functionName:    dpctl_del_if
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 537
      functionLinenumberEnd: 566
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          125
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - atoi
        - dpctl_error
        - dpif_close
        - dpif_port_del
        - get_port_number
        - parsed_dpif_open
        - strspn
        - u32_to_odp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:541,13'
          Dst:             parsed_dpif_open
        - Src:             'lib/dpctl.c:543,9'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:550,19'
          Dst:             strspn
        - Src:             'lib/dpctl.c:551,31'
          Dst:             atoi
        - Src:             'lib/dpctl.c:551,20'
          Dst:             u32_to_odp
        - Src:             'lib/dpctl.c:552,21'
          Dst:             get_port_number
        - Src:             'lib/dpctl.c:557,17'
          Dst:             dpif_port_del
        - Src:             'lib/dpctl.c:559,13'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:564,5'
          Dst:             dpif_close
    - functionName:    dpctl_set_if
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 396
      functionLinenumberEnd: 517
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         55
      ICount:          349
      EdgeCount:       74
      CyclomaticComplexity: 21
      functionsReached:
        - atoi
        - dpctl_error
        - dpif_close
        - dpif_port_destroy
        - dpif_port_query_by_name
        - netdev_close
        - netdev_get_config
        - netdev_open
        - netdev_set_config
        - parsed_dpif_open
        - smap_destroy
        - smap_init
        - smap_remove
        - smap_replace
        - strcmp
        - strtok_r
        - u32_to_odp
        - xstrdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:400,13'
          Dst:             parsed_dpif_open
        - Src:             'lib/dpctl.c:402,9'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:418,19'
          Dst:             xstrdup
        - Src:             'lib/dpctl.c:419,16'
          Dst:             strtok_r
        - Src:             'lib/dpctl.c:421,13'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:427,17'
          Dst:             dpif_port_query_by_name
        - Src:             'lib/dpctl.c:429,13'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:433,16'
          Dst:             xstrdup
        - Src:             'lib/dpctl.c:435,9'
          Dst:             dpif_port_destroy
        - Src:             'lib/dpctl.c:438,17'
          Dst:             netdev_open
        - Src:             'lib/dpctl.c:440,13'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:445,9'
          Dst:             smap_init
        - Src:             'lib/dpctl.c:446,17'
          Dst:             netdev_get_config
        - Src:             'lib/dpctl.c:448,13'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:454,26'
          Dst:             strtok_r
        - Src:             'lib/dpctl.c:458,19'
          Dst:             strtok_r
        - Src:             'lib/dpctl.c:459,21'
          Dst:             strtok_r
        - Src:             'lib/dpctl.c:465,17'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:470,18'
          Dst:             strcmp
        - Src:             'lib/dpctl.c:471,21'
          Dst:             strcmp
        - Src:             'lib/dpctl.c:472,21'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:478,25'
          Dst:             strcmp
        - Src:             'lib/dpctl.c:479,43'
          Dst:             atoi
        - Src:             'lib/dpctl.c:479,32'
          Dst:             u32_to_odp
        - Src:             'lib/dpctl.c:481,66'
          Dst:             atoi
        - Src:             'lib/dpctl.c:480,21'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:486,17'
          Dst:             smap_remove
        - Src:             'lib/dpctl.c:488,17'
          Dst:             smap_replace
        - Src:             'lib/dpctl.c:494,17'
          Dst:             netdev_set_config
        - Src:             'lib/dpctl.c:496,13'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:505,9'
          Dst:             smap_destroy
        - Src:             'lib/dpctl.c:507,9'
          Dst:             netdev_close
        - Src:             'lib/dpctl.c:514,5'
          Dst:             dpif_close
    - functionName:    dpctl_dump_dps
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 868
      functionLinenumberEnd: 869
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dps_for_each
        - dump_cb
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:869,12'
          Dst:             dps_for_each
        - Src:             'lib/dpctl.c:869,12'
          Dst:             dump_cb
    - functionName:    dpctl_show
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 834
      functionLinenumberEnd: 856
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          86
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - dpctl_error
        - dpif_close
        - dps_for_each
        - parsed_dpif_open
        - show_dpif
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:842,21'
          Dst:             parsed_dpif_open
        - Src:             'lib/dpctl.c:844,17'
          Dst:             show_dpif
        - Src:             'lib/dpctl.c:845,17'
          Dst:             dpif_close
        - Src:             'lib/dpctl.c:847,17'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:853,21'
          Dst:             dps_for_each
        - Src:             'lib/dpctl.c:853,21'
          Dst:             show_dpif
    - functionName:    dpctl_dump_flows
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1033
      functionLinenumberEnd: 1184
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         75
      ICount:          445
      EdgeCount:       101
      CyclomaticComplexity: 28
      functionsReached:
        - determine_dpif_flow_dump_types
        - dpctl_error
        - dpctl_free_portno_names
        - dpctl_get_portno_names
        - dpctl_print
        - dpif_close
        - dpif_flow_dump_create
        - dpif_flow_dump_destroy
        - dpif_flow_dump_next
        - dpif_flow_dump_thread_create
        - dpif_flow_dump_thread_destroy
        - dpif_port_dump_done
        - dpif_port_dump_next
        - dpif_port_dump_start
        - ds_clear
        - ds_cstr
        - ds_destroy
        - ds_init
        - ds_put_format
        - flow_passes_type_filter
        - format_dpif_flow
        - match_init
        - minimatch_destroy
        - minimatch_init
        - minimatch_matches_flow
        - odp_flow_key_to_flow
        - odp_flow_key_to_mask
        - odp_to_u32
        - ofputil_port_map_destroy
        - ofputil_port_map_init
        - ofputil_port_map_put
        - opt_dpif_open
        - ovs_scan
        - parse_ofp_exact_flow
        - populate_dump_types
        - strncmp
        - u16_to_ofp
        - xstrdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:1054,14'
          Dst:             strncmp
        - Src:             'lib/dpctl.c:1055,22'
          Dst:             xstrdup
        - Src:             'lib/dpctl.c:1056,21'
          Dst:             strncmp
        - Src:             'lib/dpctl.c:1058,17'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:1064,26'
          Dst:             xstrdup
        - Src:             'lib/dpctl.c:1065,21'
          Dst:             strncmp
        - Src:             'lib/dpctl.c:1068,18'
          Dst:             ovs_scan
        - Src:             'lib/dpctl.c:1084,13'
          Dst:             opt_dpif_open
        - Src:             'lib/dpctl.c:1089,33'
          Dst:             dpctl_get_portno_names
        - Src:             'lib/dpctl.c:1093,9'
          Dst:             ofputil_port_map_init
        - Src:             'lib/dpctl.c:1097,9'
          Dst:             dpif_port_dump_start
        - Src:             'lib/dpctl.c:1097,9'
          Dst:             dpif_port_dump_next
        - Src:             'lib/dpctl.c:1097,9'
          Dst:             dpif_port_dump_done
        - Src:             'lib/dpctl.c:1099,45'
          Dst:             odp_to_u32
        - Src:             'lib/dpctl.c:1099,34'
          Dst:             u16_to_ofp
        - Src:             'lib/dpctl.c:1098,13'
          Dst:             ofputil_port_map_put
        - Src:             'lib/dpctl.c:1102,21'
          Dst:             parse_ofp_exact_flow
        - Src:             'lib/dpctl.c:1104,9'
          Dst:             ofputil_port_map_destroy
        - Src:             'lib/dpctl.c:1106,13'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:1114,13'
          Dst:             populate_dump_types
        - Src:             'lib/dpctl.c:1118,5'
          Dst:             determine_dpif_flow_dump_types
        - Src:             'lib/dpctl.c:1126,5'
          Dst:             ds_init
        - Src:             'lib/dpctl.c:1128,17'
          Dst:             dpif_flow_dump_create
        - Src:             'lib/dpctl.c:1129,24'
          Dst:             dpif_flow_dump_thread_create
        - Src:             'lib/dpctl.c:1130,12'
          Dst:             dpif_flow_dump_next
        - Src:             'lib/dpctl.c:1137,13'
          Dst:             odp_flow_key_to_flow
        - Src:             'lib/dpctl.c:1138,13'
          Dst:             odp_flow_key_to_mask
        - Src:             'lib/dpctl.c:1139,13'
          Dst:             match_init
        - Src:             'lib/dpctl.c:1141,13'
          Dst:             match_init
        - Src:             'lib/dpctl.c:1142,13'
          Dst:             match_init
        - Src:             'lib/dpctl.c:1143,13'
          Dst:             minimatch_init
        - Src:             'lib/dpctl.c:1145,18'
          Dst:             minimatch_matches_flow
        - Src:             'lib/dpctl.c:1146,17'
          Dst:             minimatch_destroy
        - Src:             'lib/dpctl.c:1149,13'
          Dst:             minimatch_destroy
        - Src:             'lib/dpctl.c:1151,9'
          Dst:             ds_clear
        - Src:             'lib/dpctl.c:1157,17'
          Dst:             ds_put_format
        - Src:             'lib/dpctl.c:1159,17'
          Dst:             ds_put_format
        - Src:             'lib/dpctl.c:1165,13'
          Dst:             flow_passes_type_filter
        - Src:             'lib/dpctl.c:1166,13'
          Dst:             format_dpif_flow
        - Src:             'lib/dpctl.c:1167,42'
          Dst:             ds_cstr
        - Src:             'lib/dpctl.c:1167,13'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:1170,5'
          Dst:             dpif_flow_dump_thread_destroy
        - Src:             'lib/dpctl.c:1171,13'
          Dst:             dpif_flow_dump_destroy
        - Src:             'lib/dpctl.c:1174,9'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:1176,5'
          Dst:             ds_destroy
        - Src:             'lib/dpctl.c:1179,5'
          Dst:             dpctl_free_portno_names
        - Src:             'lib/dpctl.c:1180,5'
          Dst:             dpif_close
    - functionName:    dpctl_add_flow
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1299
      functionLinenumberEnd: 1300
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dpctl_put_flow
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:1300,12'
          Dst:             dpctl_put_flow
    - functionName:    dpctl_mod_flow
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1305
      functionLinenumberEnd: 1316
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          56
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - dpctl_put_flow
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:1316,12'
          Dst:             dpctl_put_flow
    - functionName:    dpctl_get_flow
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1321
      functionLinenumberEnd: 1363
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          105
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - dpctl_error
        - dpctl_free_portno_names
        - dpctl_get_portno_names
        - dpctl_print
        - dpif_close
        - dpif_flow_get
        - ds_cstr
        - ds_destroy
        - ds_init
        - format_dpif_flow
        - odp_ufid_from_string
        - ofpbuf_uninit
        - ofpbuf_use_stub
        - opt_dpif_open
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:1331,13'
          Dst:             opt_dpif_open
        - Src:             'lib/dpctl.c:1336,5'
          Dst:             ofpbuf_use_stub
        - Src:             'lib/dpctl.c:1338,33'
          Dst:             dpctl_get_portno_names
        - Src:             'lib/dpctl.c:1340,9'
          Dst:             odp_ufid_from_string
        - Src:             'lib/dpctl.c:1342,9'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:1347,13'
          Dst:             dpif_flow_get
        - Src:             'lib/dpctl.c:1349,9'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:1353,5'
          Dst:             ds_init
        - Src:             'lib/dpctl.c:1354,5'
          Dst:             format_dpif_flow
        - Src:             'lib/dpctl.c:1355,34'
          Dst:             ds_cstr
        - Src:             'lib/dpctl.c:1355,5'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:1356,5'
          Dst:             ds_destroy
        - Src:             'lib/dpctl.c:1359,5'
          Dst:             dpctl_free_portno_names
        - Src:             'lib/dpctl.c:1360,5'
          Dst:             ofpbuf_uninit
        - Src:             'lib/dpctl.c:1361,5'
          Dst:             dpif_close
    - functionName:    dpctl_del_flow
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1449
      functionLinenumberEnd: 1463
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          57
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dpctl_del_flow_dpif
        - dpif_close
        - opt_dpif_open
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:1454,13'
          Dst:             opt_dpif_open
        - Src:             'lib/dpctl.c:1459,13'
          Dst:             dpctl_del_flow_dpif
        - Src:             'lib/dpctl.c:1461,5'
          Dst:             dpif_close
    - functionName:    dpctl_process_flows
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1512
      functionLinenumberEnd: 1582
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         49
      ICount:          257
      EdgeCount:       62
      CyclomaticComplexity: 15
      functionsReached:
        - __errno_location
        - dpctl_del_flow_dpif
        - dpctl_error
        - dpctl_parse_flow_line
        - dpctl_put_flow_dpif
        - dpif_close
        - ds_destroy
        - ds_get_preprocessed_line
        - ds_init
        - fclose
        - fopen
        - opt_dpif_open
        - strcmp
        - strstr
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/dpctl.c:1556,13'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/dpctl.c:1521,9'
          Dst:             strstr
        - Src:             'lib/dpctl.c:1523,16'
          Dst:             strstr
        - Src:             'lib/dpctl.c:1527,13'
          Dst:             opt_dpif_open
        - Src:             'lib/dpctl.c:1532,15'
          Dst:             strcmp
        - Src:             'lib/dpctl.c:1532,48'
          Dst:             fopen
        - Src:             'lib/dpctl.c:1534,17'
          Dst:             __errno_location
        - Src:             'lib/dpctl.c:1535,9'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:1539,5'
          Dst:             ds_init
        - Src:             'lib/dpctl.c:1540,13'
          Dst:             ds_get_preprocessed_line
        - Src:             'lib/dpctl.c:1547,19'
          Dst:             dpctl_parse_flow_line
        - Src:             'lib/dpctl.c:1552,13'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:1558,17'
          Dst:             dpctl_put_flow_dpif
        - Src:             'lib/dpctl.c:1562,17'
          Dst:             dpctl_put_flow_dpif
        - Src:             'lib/dpctl.c:1566,17'
          Dst:             dpctl_del_flow_dpif
        - Src:             'lib/dpctl.c:1575,5'
          Dst:             ds_destroy
        - Src:             'lib/dpctl.c:1577,9'
          Dst:             fclose
        - Src:             'lib/dpctl.c:1580,5'
          Dst:             dpif_close
    - functionName:    dpctl_del_flows
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1586
      functionLinenumberEnd: 1605
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          93
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - dp_arg_exists
        - dpctl_error
        - dpctl_process_flows
        - dpif_close
        - dpif_flow_flush
        - opt_dpif_open
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:1590,11'
          Dst:             dp_arg_exists
        - Src:             'lib/dpctl.c:1591,16'
          Dst:             dpctl_process_flows
        - Src:             'lib/dpctl.c:1594,13'
          Dst:             opt_dpif_open
        - Src:             'lib/dpctl.c:1599,13'
          Dst:             dpif_flow_flush
        - Src:             'lib/dpctl.c:1601,9'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:1603,5'
          Dst:             dpif_close
    - functionName:    dpctl_offload_stats_show
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1620
      functionLinenumberEnd: 1664
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          170
      EdgeCount:       35
      CyclomaticComplexity: 10
      functionsReached:
        - compare_custom_stats
        - dpctl_error
        - dpctl_print
        - dpif_close
        - dpif_offload_stats_get
        - netdev_free_custom_stats_counters
        - opt_dpif_open
        - qsort
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:1626,13'
          Dst:             opt_dpif_open
        - Src:             'lib/dpctl.c:1631,13'
          Dst:             dpif_offload_stats_get
        - Src:             'lib/dpctl.c:1633,9'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:1638,9'
          Dst:             qsort
        - Src:             'lib/dpctl.c:1638,9'
          Dst:             compare_custom_stats
        - Src:             'lib/dpctl.c:1641,5'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:1650,13'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:1653,13'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:1656,9'
          Dst:             netdev_free_custom_stats_counters
        - Src:             'lib/dpctl.c:1662,5'
          Dst:             dpif_close
    - functionName:    dpctl_dump_conntrack
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1705
      functionLinenumberEnd: 1750
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          150
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - ct_dpif_dump_done
        - ct_dpif_dump_next
        - ct_dpif_dump_start
        - ct_dpif_entry_uninit
        - ct_dpif_format_entry
        - dpctl_error
        - dpctl_print
        - dpif_close
        - ds_cstr
        - ds_destroy
        - opt_dpif_open
        - ovs_scan
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:1713,21'
          Dst:             ovs_scan
        - Src:             'lib/dpctl.c:1718,13'
          Dst:             opt_dpif_open
        - Src:             'lib/dpctl.c:1723,13'
          Dst:             ct_dpif_dump_start
        - Src:             'lib/dpctl.c:1725,9'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:1726,9'
          Dst:             dpif_close
        - Src:             'lib/dpctl.c:1730,22'
          Dst:             ct_dpif_dump_next
        - Src:             'lib/dpctl.c:1733,9'
          Dst:             ct_dpif_format_entry
        - Src:             'lib/dpctl.c:1735,9'
          Dst:             ct_dpif_entry_uninit
        - Src:             'lib/dpctl.c:1737,38'
          Dst:             ds_cstr
        - Src:             'lib/dpctl.c:1737,9'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:1738,9'
          Dst:             ds_destroy
        - Src:             'lib/dpctl.c:1744,9'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:1747,5'
          Dst:             ct_dpif_dump_done
        - Src:             'lib/dpctl.c:1748,5'
          Dst:             dpif_close
    - functionName:    dpctl_dump_conntrack_exp
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1755
      functionLinenumberEnd: 1797
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          139
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached:
        - ct_dpif_format_exp_entry
        - ct_exp_dpif_dump_done
        - ct_exp_dpif_dump_next
        - ct_exp_dpif_dump_start
        - dpctl_error
        - dpctl_print
        - dpif_close
        - ds_cstr
        - ds_destroy
        - opt_dpif_open
        - ovs_scan
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:1762,21'
          Dst:             ovs_scan
        - Src:             'lib/dpctl.c:1767,13'
          Dst:             opt_dpif_open
        - Src:             'lib/dpctl.c:1772,13'
          Dst:             ct_exp_dpif_dump_start
        - Src:             'lib/dpctl.c:1774,9'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:1775,9'
          Dst:             dpif_close
        - Src:             'lib/dpctl.c:1779,22'
          Dst:             ct_exp_dpif_dump_next
        - Src:             'lib/dpctl.c:1782,9'
          Dst:             ct_dpif_format_exp_entry
        - Src:             'lib/dpctl.c:1784,38'
          Dst:             ds_cstr
        - Src:             'lib/dpctl.c:1784,9'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:1785,9'
          Dst:             ds_destroy
        - Src:             'lib/dpctl.c:1790,9'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:1793,5'
          Dst:             ct_exp_dpif_dump_done
        - Src:             'lib/dpctl.c:1794,5'
          Dst:             dpif_close
    - functionName:    dpctl_flush_conntrack
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1802
      functionLinenumberEnd: 1840
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          134
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - ct_dpif_flush
        - dp_arg_exists
        - dpctl_error
        - dpif_close
        - ds_cstr
        - ds_destroy
        - ds_put_cstr
        - ofp_ct_match_parse
        - opt_dpif_open
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:1811,9'
          Dst:             dp_arg_exists
        - Src:             'lib/dpctl.c:1815,18'
          Dst:             ofp_ct_match_parse
        - Src:             'lib/dpctl.c:1821,13'
          Dst:             opt_dpif_open
        - Src:             'lib/dpctl.c:1823,9'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:1827,13'
          Dst:             ct_dpif_flush
        - Src:             'lib/dpctl.c:1829,9'
          Dst:             dpif_close
        - Src:             'lib/dpctl.c:1832,9'
          Dst:             ds_put_cstr
        - Src:             'lib/dpctl.c:1836,39'
          Dst:             ds_cstr
        - Src:             'lib/dpctl.c:1836,5'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:1837,5'
          Dst:             ds_destroy
        - Src:             'lib/dpctl.c:1838,5'
          Dst:             dpif_close
    - functionName:    dpctl_cache_get_size
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2667
      functionLinenumberEnd: 2684
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          60
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - dpctl_error
        - dpif_close
        - dps_for_each
        - parsed_dpif_open
        - show_dpif_cache
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:2673,17'
          Dst:             parsed_dpif_open
        - Src:             'lib/dpctl.c:2675,13'
          Dst:             show_dpif_cache
        - Src:             'lib/dpctl.c:2676,13'
          Dst:             dpif_close
        - Src:             'lib/dpctl.c:2678,13'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:2681,17'
          Dst:             dps_for_each
        - Src:             'lib/dpctl.c:2681,17'
          Dst:             show_dpif_cache
    - functionName:    dpctl_cache_set_size
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2690
      functionLinenumberEnd: 2748
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          186
      EdgeCount:       40
      CyclomaticComplexity: 12
      functionsReached:
        - dpctl_error
        - dpctl_print
        - dpif_cache_get_name
        - dpif_cache_get_size
        - dpif_cache_get_supported_levels
        - dpif_cache_set_size
        - dpif_close
        - ovs_scan
        - parsed_dpif_open
        - strcmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:2696,9'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:2700,10'
          Dst:             ovs_scan
        - Src:             'lib/dpctl.c:2701,9'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:2705,13'
          Dst:             parsed_dpif_open
        - Src:             'lib/dpctl.c:2707,13'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:2712,13'
          Dst:             dpif_cache_get_supported_levels
        - Src:             'lib/dpctl.c:2714,9'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:2721,13'
          Dst:             dpif_cache_get_name
        - Src:             'lib/dpctl.c:2724,14'
          Dst:             strcmp
        - Src:             'lib/dpctl.c:2731,9'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:2736,13'
          Dst:             dpif_cache_set_size
        - Src:             'lib/dpctl.c:2738,9'
          Dst:             dpif_cache_get_size
        - Src:             'lib/dpctl.c:2739,9'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:2742,9'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:2746,5'
          Dst:             dpif_close
    - functionName:    dpctl_ct_stats_show
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1845
      functionLinenumberEnd: 1977
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         79
      ICount:          511
      EdgeCount:       100
      CyclomaticComplexity: 23
      functionsReached:
        - ct_dpif_coalesce_tcp_state
        - ct_dpif_dump_done
        - ct_dpif_dump_next
        - ct_dpif_dump_start
        - ct_dpif_entry_uninit
        - ct_dpif_format_tcp_stat
        - dpctl_error
        - dpctl_print
        - dpif_close
        - ds_cstr
        - ds_destroy
        - opt_dpif_open
        - ovs_scan
        - strncmp
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib/dpctl.c:1891,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/dpctl.c:1861,14'
          Dst:             strncmp
        - Src:             'lib/dpctl.c:1865,21'
          Dst:             strncmp
        - Src:             'lib/dpctl.c:1866,17'
          Dst:             ovs_scan
        - Src:             'lib/dpctl.c:1873,13'
          Dst:             opt_dpif_open
        - Src:             'lib/dpctl.c:1880,13'
          Dst:             ct_dpif_dump_start
        - Src:             'lib/dpctl.c:1882,9'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:1883,9'
          Dst:             dpif_close
        - Src:             'lib/dpctl.c:1888,22'
          Dst:             ct_dpif_dump_next
        - Src:             'lib/dpctl.c:1889,9'
          Dst:             ct_dpif_entry_uninit
        - Src:             'lib/dpctl.c:1906,25'
          Dst:             ct_dpif_coalesce_tcp_state
        - Src:             'lib/dpctl.c:1933,9'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:1937,5'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:1939,9'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:1941,13'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:1945,21'
          Dst:             ct_dpif_format_tcp_stat
        - Src:             'lib/dpctl.c:1946,50'
          Dst:             ds_cstr
        - Src:             'lib/dpctl.c:1946,21'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:1947,21'
          Dst:             ds_destroy
        - Src:             'lib/dpctl.c:1953,9'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:1956,9'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:1959,9'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:1962,9'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:1965,9'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:1968,9'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:1971,9'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:1974,5'
          Dst:             ct_dpif_dump_done
        - Src:             'lib/dpctl.c:1975,5'
          Dst:             dpif_close
    - functionName:    dpctl_ct_bkts
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1983
      functionLinenumberEnd: 2071
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         48
      ICount:          309
      EdgeCount:       64
      CyclomaticComplexity: 18
      functionsReached:
        - ct_dpif_dump_done
        - ct_dpif_dump_next
        - ct_dpif_dump_start
        - ct_dpif_entry_uninit
        - dpctl_error
        - dpctl_print
        - dpif_close
        - opt_dpif_open
        - ovs_scan
        - strncmp
        - xzalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:1992,22'
          Dst:             strncmp
        - Src:             'lib/dpctl.c:1993,13'
          Dst:             ovs_scan
        - Src:             'lib/dpctl.c:1998,13'
          Dst:             opt_dpif_open
        - Src:             'lib/dpctl.c:2003,13'
          Dst:             ct_dpif_dump_start
        - Src:             'lib/dpctl.c:2005,9'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:2006,9'
          Dst:             dpif_close
        - Src:             'lib/dpctl.c:2011,10'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:2013,10'
          Dst:             ct_dpif_dump_done
        - Src:             'lib/dpctl.c:2014,10'
          Dst:             dpif_close
        - Src:             'lib/dpctl.c:2018,5'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:2021,31'
          Dst:             xzalloc
        - Src:             'lib/dpctl.c:2023,22'
          Dst:             ct_dpif_dump_next
        - Src:             'lib/dpctl.c:2024,9'
          Dst:             ct_dpif_entry_uninit
        - Src:             'lib/dpctl.c:2030,17'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:2039,9'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:2043,5'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:2044,5'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:2046,9'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:2048,9'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:2050,9'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:2055,18'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:2059,17'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:2061,17'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:2064,9'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:2067,5'
          Dst:             ct_dpif_dump_done
        - Src:             'lib/dpctl.c:2068,5'
          Dst:             dpif_close
    - functionName:    dpctl_ct_set_maxconns
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2076
      functionLinenumberEnd: 2096
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          75
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - ct_dpif_set_maxconns
        - dpctl_error
        - dpctl_print
        - dpif_close
        - opt_dpif_open
        - ovs_scan
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:2078,17'
          Dst:             opt_dpif_open
        - Src:             'lib/dpctl.c:2081,13'
          Dst:             ovs_scan
        - Src:             'lib/dpctl.c:2082,21'
          Dst:             ct_dpif_set_maxconns
        - Src:             'lib/dpctl.c:2085,17'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:2087,17'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:2091,13'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:2093,9'
          Dst:             dpif_close
    - functionName:    dpctl_ct_get_maxconns
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2102
      functionLinenumberEnd: 2117
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          58
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ct_dpif_get_maxconns
        - dpctl_error
        - dpctl_print
        - dpif_close
        - opt_dpif_open
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:2104,17'
          Dst:             opt_dpif_open
        - Src:             'lib/dpctl.c:2107,17'
          Dst:             ct_dpif_get_maxconns
        - Src:             'lib/dpctl.c:2110,13'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:2112,13'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:2114,9'
          Dst:             dpif_close
    - functionName:    dpctl_ct_get_nconns
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2123
      functionLinenumberEnd: 2138
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          58
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ct_dpif_get_nconns
        - dpctl_error
        - dpctl_print
        - dpif_close
        - opt_dpif_open
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:2125,17'
          Dst:             opt_dpif_open
        - Src:             'lib/dpctl.c:2128,17'
          Dst:             ct_dpif_get_nconns
        - Src:             'lib/dpctl.c:2131,13'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:2133,13'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:2135,9'
          Dst:             dpif_close
    - functionName:    dpctl_ct_enable_tcp_seq_chk
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2166
      functionLinenumberEnd: 2167
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dpctl_ct_set_tcp_seq_chk__
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:2167,12'
          Dst:             dpctl_ct_set_tcp_seq_chk__
    - functionName:    dpctl_ct_disable_tcp_seq_chk
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2173
      functionLinenumberEnd: 2174
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dpctl_ct_set_tcp_seq_chk__
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:2174,12'
          Dst:             dpctl_ct_set_tcp_seq_chk__
    - functionName:    dpctl_ct_get_tcp_seq_chk
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2180
      functionLinenumberEnd: 2194
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          61
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ct_dpif_get_tcp_seq_chk
        - dpctl_error
        - dpctl_print
        - dpif_close
        - opt_dpif_open
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:2182,17'
          Dst:             opt_dpif_open
        - Src:             'lib/dpctl.c:2185,17'
          Dst:             ct_dpif_get_tcp_seq_chk
        - Src:             'lib/dpctl.c:2187,13'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:2190,13'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:2192,9'
          Dst:             dpif_close
    - functionName:    dpctl_ct_set_limits
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2200
      functionLinenumberEnd: 2266
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          181
      EdgeCount:       37
      CyclomaticComplexity: 11
      functionsReached:
        - ct_dpif_free_zone_limits
        - ct_dpif_is_zone_limit_protected
        - ct_dpif_parse_zone_limit_tuple
        - ct_dpif_push_zone_limit
        - ct_dpif_set_limits
        - dp_arg_exists
        - dpctl_error
        - dpif_close
        - ds_cstr
        - ds_destroy
        - ds_put_cstr
        - opt_dpif_open
        - str_to_ullong
        - strncmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:2202,14'
          Dst:             dp_arg_exists
        - Src:             'lib/dpctl.c:2209,9'
          Dst:             ds_put_cstr
        - Src:             'lib/dpctl.c:2214,13'
          Dst:             opt_dpif_open
        - Src:             'lib/dpctl.c:2220,10'
          Dst:             strncmp
        - Src:             'lib/dpctl.c:2221,13'
          Dst:             str_to_ullong
        - Src:             'lib/dpctl.c:2223,13'
          Dst:             ct_dpif_push_zone_limit
        - Src:             'lib/dpctl.c:2227,13'
          Dst:             ds_put_cstr
        - Src:             'lib/dpctl.c:2237,14'
          Dst:             ct_dpif_parse_zone_limit_tuple
        - Src:             'lib/dpctl.c:2241,9'
          Dst:             ct_dpif_push_zone_limit
        - Src:             'lib/dpctl.c:2244,9'
          Dst:             ct_dpif_is_zone_limit_protected
        - Src:             'lib/dpctl.c:2245,9'
          Dst:             ds_put_cstr
        - Src:             'lib/dpctl.c:2251,13'
          Dst:             ct_dpif_set_limits
        - Src:             'lib/dpctl.c:2253,9'
          Dst:             ct_dpif_free_zone_limits
        - Src:             'lib/dpctl.c:2254,9'
          Dst:             dpif_close
        - Src:             'lib/dpctl.c:2257,9'
          Dst:             ds_put_cstr
        - Src:             'lib/dpctl.c:2261,39'
          Dst:             ds_cstr
        - Src:             'lib/dpctl.c:2261,5'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:2262,5'
          Dst:             ds_destroy
        - Src:             'lib/dpctl.c:2263,5'
          Dst:             ct_dpif_free_zone_limits
        - Src:             'lib/dpctl.c:2264,5'
          Dst:             dpif_close
    - functionName:    dpctl_ct_del_limits
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2301
      functionLinenumberEnd: 2354
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          149
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - ct_dpif_del_limits
        - ct_dpif_free_zone_limits
        - ct_dpif_is_zone_limit_protected
        - ct_dpif_push_zone_limit
        - dp_arg_exists
        - dpctl_error
        - dpif_close
        - ds_cstr
        - ds_destroy
        - ds_put_cstr
        - opt_dpif_open
        - parse_ct_limit_zones
        - strcmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:2303,14'
          Dst:             dp_arg_exists
        - Src:             'lib/dpctl.c:2309,9'
          Dst:             ds_put_cstr
        - Src:             'lib/dpctl.c:2314,13'
          Dst:             opt_dpif_open
        - Src:             'lib/dpctl.c:2320,10'
          Dst:             strcmp
        - Src:             'lib/dpctl.c:2321,9'
          Dst:             ct_dpif_push_zone_limit
        - Src:             'lib/dpctl.c:2327,17'
          Dst:             parse_ct_limit_zones
        - Src:             'lib/dpctl.c:2333,9'
          Dst:             ct_dpif_is_zone_limit_protected
        - Src:             'lib/dpctl.c:2334,9'
          Dst:             ds_put_cstr
        - Src:             'lib/dpctl.c:2340,13'
          Dst:             ct_dpif_del_limits
        - Src:             'lib/dpctl.c:2344,9'
          Dst:             ds_put_cstr
        - Src:             'lib/dpctl.c:2348,39'
          Dst:             ds_cstr
        - Src:             'lib/dpctl.c:2348,5'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:2349,5'
          Dst:             ds_destroy
        - Src:             'lib/dpctl.c:2351,5'
          Dst:             ct_dpif_free_zone_limits
        - Src:             'lib/dpctl.c:2352,5'
          Dst:             dpif_close
    - functionName:    dpctl_ct_get_limits
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2359
      functionLinenumberEnd: 2398
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          120
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - ct_dpif_format_zone_limits
        - ct_dpif_free_zone_limits
        - ct_dpif_get_limits
        - ct_dpif_push_zone_limit
        - dp_arg_exists
        - dpctl_error
        - dpctl_print
        - dpif_close
        - ds_cstr
        - ds_destroy
        - ds_put_format
        - opt_dpif_open
        - ovs_strerror
        - parse_ct_limit_zones
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:2362,14'
          Dst:             dp_arg_exists
        - Src:             'lib/dpctl.c:2366,17'
          Dst:             opt_dpif_open
        - Src:             'lib/dpctl.c:2372,9'
          Dst:             ct_dpif_push_zone_limit
        - Src:             'lib/dpctl.c:2374,17'
          Dst:             parse_ct_limit_zones
        - Src:             'lib/dpctl.c:2380,13'
          Dst:             ct_dpif_get_limits
        - Src:             'lib/dpctl.c:2382,9'
          Dst:             ct_dpif_format_zone_limits
        - Src:             'lib/dpctl.c:2383,38'
          Dst:             ds_cstr
        - Src:             'lib/dpctl.c:2383,9'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:2387,23'
          Dst:             ovs_strerror
        - Src:             'lib/dpctl.c:2386,9'
          Dst:             ds_put_format
        - Src:             'lib/dpctl.c:2391,39'
          Dst:             ds_cstr
        - Src:             'lib/dpctl.c:2391,5'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:2393,5'
          Dst:             ds_destroy
        - Src:             'lib/dpctl.c:2394,5'
          Dst:             ct_dpif_free_zone_limits
        - Src:             'lib/dpctl.c:2395,5'
          Dst:             ct_dpif_free_zone_limits
        - Src:             'lib/dpctl.c:2396,5'
          Dst:             dpif_close
    - functionName:    dpctl_ct_get_sweep
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2403
      functionLinenumberEnd: 2421
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          64
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ct_dpif_sweep
        - dpctl_error
        - dpctl_print
        - dpif_close
        - opt_dpif_open
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:2407,17'
          Dst:             opt_dpif_open
        - Src:             'lib/dpctl.c:2412,13'
          Dst:             ct_dpif_sweep
        - Src:             'lib/dpctl.c:2414,9'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:2416,9'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:2419,5'
          Dst:             dpif_close
    - functionName:    dpctl_ct_set_sweep
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2426
      functionLinenumberEnd: 2457
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          92
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - ct_dpif_sweep
        - dpctl_error
        - dpctl_print
        - dpif_close
        - ds_cstr
        - ds_destroy
        - ds_put_format
        - opt_dpif_open
        - ovs_scan
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:2431,17'
          Dst:             opt_dpif_open
        - Src:             'lib/dpctl.c:2436,10'
          Dst:             ovs_scan
        - Src:             'lib/dpctl.c:2438,9'
          Dst:             ds_put_format
        - Src:             'lib/dpctl.c:2443,13'
          Dst:             ct_dpif_sweep
        - Src:             'lib/dpctl.c:2445,9'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:2449,5'
          Dst:             ds_put_format
        - Src:             'lib/dpctl.c:2452,39'
          Dst:             ds_cstr
        - Src:             'lib/dpctl.c:2452,5'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:2453,5'
          Dst:             ds_destroy
        - Src:             'lib/dpctl.c:2455,5'
          Dst:             dpif_close
    - functionName:    dpctl_ipf_set_enabled
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2493
      functionLinenumberEnd: 2494
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ipf_set_enabled__
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:2494,12'
          Dst:             ipf_set_enabled__
    - functionName:    dpctl_ipf_set_disabled
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2500
      functionLinenumberEnd: 2501
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ipf_set_enabled__
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:2501,12'
          Dst:             ipf_set_enabled__
    - functionName:    dpctl_ipf_set_min_frag
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2507
      functionLinenumberEnd: 2539
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          123
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - ct_dpif_ipf_set_min_frag
        - dpctl_error
        - dpctl_print
        - dpif_close
        - opt_dpif_open
        - ovs_scan
        - strncmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:2509,17'
          Dst:             opt_dpif_open
        - Src:             'lib/dpctl.c:2512,13'
          Dst:             ovs_scan
        - Src:             'lib/dpctl.c:2513,15'
          Dst:             strncmp
        - Src:             'lib/dpctl.c:2513,46'
          Dst:             strncmp
        - Src:             'lib/dpctl.c:2515,17'
          Dst:             ovs_scan
        - Src:             'lib/dpctl.c:2517,36'
          Dst:             strncmp
        - Src:             'lib/dpctl.c:2516,25'
          Dst:             ct_dpif_ipf_set_min_frag
        - Src:             'lib/dpctl.c:2519,21'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:2522,21'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:2528,17'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:2533,13'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:2536,9'
          Dst:             dpif_close
    - functionName:    dpctl_ipf_set_max_nfrags
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2545
      functionLinenumberEnd: 2567
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          75
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - ct_dpif_ipf_set_max_nfrags
        - dpctl_error
        - dpctl_print
        - dpif_close
        - opt_dpif_open
        - ovs_scan
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:2547,17'
          Dst:             opt_dpif_open
        - Src:             'lib/dpctl.c:2550,13'
          Dst:             ovs_scan
        - Src:             'lib/dpctl.c:2551,21'
          Dst:             ct_dpif_ipf_set_max_nfrags
        - Src:             'lib/dpctl.c:2553,17'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:2556,17'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:2561,13'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:2564,9'
          Dst:             dpif_close
    - functionName:    dpctl_ct_ipf_get_status
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2599
      functionLinenumberEnd: 2662
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          173
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - ct_dpif_ipf_get_status
        - dpctl_dump_ipf
        - dpctl_error
        - dpctl_print
        - dpif_close
        - opt_dpif_open
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:2601,17'
          Dst:             opt_dpif_open
        - Src:             'lib/dpctl.c:2605,17'
          Dst:             ct_dpif_ipf_get_status
        - Src:             'lib/dpctl.c:2608,13'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:2609,13'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:2610,13'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:2612,13'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:2614,13'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:2616,13'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:2618,13'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:2620,13'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:2622,13'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:2624,13'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:2626,13'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:2628,13'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:2630,13'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:2633,13'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:2635,13'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:2637,13'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:2639,13'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:2641,13'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:2643,13'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:2645,13'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:2648,13'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:2650,13'
          Dst:             dpif_close
        - Src:             'lib/dpctl.c:2655,13'
          Dst:             dpctl_dump_ipf
        - Src:             'lib/dpctl.c:2658,9'
          Dst:             dpif_close
    - functionName:    dpctl_help
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1669
      functionLinenumberEnd: 1674
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpctl_list_commands
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1680
      functionLinenumberEnd: 1698
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          82
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - dpctl_puts
        - ds_destroy
        - ds_put_cstr
        - ds_put_format
        - get_all_dpctl_commands
        - strcmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:1682,44'
          Dst:             get_all_dpctl_commands
        - Src:             'lib/dpctl.c:1684,5'
          Dst:             ds_put_cstr
        - Src:             'lib/dpctl.c:1688,36'
          Dst:             strcmp
        - Src:             'lib/dpctl.c:1692,9'
          Dst:             ds_put_format
        - Src:             'lib/dpctl.c:1695,5'
          Dst:             dpctl_puts
        - Src:             'lib/dpctl.c:1696,5'
          Dst:             ds_destroy
    - functionName:    dpctl_parse_actions
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2754
      functionLinenumberEnd: 2779
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          79
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - dpctl_error
        - dpctl_print
        - ds_cstr
        - ds_destroy
        - ds_init
        - format_odp_actions
        - odp_actions_from_string
        - ofpbuf_init
        - ofpbuf_uninit
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:2761,9'
          Dst:             ofpbuf_init
        - Src:             'lib/dpctl.c:2762,17'
          Dst:             odp_actions_from_string
        - Src:             'lib/dpctl.c:2765,13'
          Dst:             ofpbuf_uninit
        - Src:             'lib/dpctl.c:2766,13'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:2770,9'
          Dst:             ds_init
        - Src:             'lib/dpctl.c:2771,9'
          Dst:             format_odp_actions
        - Src:             'lib/dpctl.c:2772,38'
          Dst:             ds_cstr
        - Src:             'lib/dpctl.c:2772,9'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:2773,9'
          Dst:             ds_destroy
        - Src:             'lib/dpctl.c:2775,9'
          Dst:             ofpbuf_uninit
    - functionName:    dpctl_normalize_actions
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2875
      functionLinenumberEnd: 3027
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         60
      ICount:          507
      EdgeCount:       75
      CyclomaticComplexity: 17
      functionsReached:
        - compare_actions_for_flow
        - dpctl_error
        - dpctl_print
        - dpctl_puts
        - ds_clear
        - ds_cstr
        - ds_destroy
        - ds_init
        - eth_type_mpls
        - flow_pop_vlan
        - flow_push_vlan_uninit
        - format_odp_actions
        - get_actions_for_flow
        - hmap_count
        - hmap_destroy
        - hmap_first
        - hmap_init
        - hmap_next
        - htons
        - mpls_lse_to_label
        - mpls_lse_to_tc
        - mpls_lse_to_ttl
        - nl_attr_get
        - nl_attr_get_size
        - nl_attr_get_unspec
        - nl_attr_is_valid
        - nl_attr_len_pad
        - nl_attr_next
        - nl_attr_type
        - nl_msg_put_unspec
        - odp_actions_from_string
        - odp_flow_format
        - odp_flow_from_string
        - odp_flow_key_to_flow
        - ofpbuf_init
        - ofpbuf_uninit
        - ovs_ignore
        - ovs_scan
        - qsort
        - simap_destroy
        - simap_init
        - simap_put
        - sort_output_actions
        - vlan_tci_to_pcp
        - vlan_tci_to_vid
        - xmalloc
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib/dpctl.c:2948,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/dpctl.c:2890,5'
          Dst:             ds_init
        - Src:             'lib/dpctl.c:2892,5'
          Dst:             simap_init
        - Src:             'lib/dpctl.c:2897,13'
          Dst:             ovs_scan
        - Src:             'lib/dpctl.c:2899,13'
          Dst:             simap_put
        - Src:             'lib/dpctl.c:2901,13'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:2908,5'
          Dst:             ofpbuf_init
        - Src:             'lib/dpctl.c:2910,13'
          Dst:             odp_flow_from_string
        - Src:             'lib/dpctl.c:2913,9'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:2918,5'
          Dst:             ds_clear
        - Src:             'lib/dpctl.c:2919,5'
          Dst:             odp_flow_format
        - Src:             'lib/dpctl.c:2921,46'
          Dst:             ds_cstr
        - Src:             'lib/dpctl.c:2921,5'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:2923,13'
          Dst:             odp_flow_key_to_flow
        - Src:             'lib/dpctl.c:2925,9'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:2932,5'
          Dst:             ofpbuf_init
        - Src:             'lib/dpctl.c:2933,13'
          Dst:             odp_actions_from_string
        - Src:             'lib/dpctl.c:2935,9'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:2940,9'
          Dst:             ds_clear
        - Src:             'lib/dpctl.c:2941,9'
          Dst:             format_odp_actions
        - Src:             'lib/dpctl.c:2942,53'
          Dst:             ds_cstr
        - Src:             'lib/dpctl.c:2942,9'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:2945,5'
          Dst:             hmap_init
        - Src:             'lib/dpctl.c:2946,5'
          Dst:             nl_attr_is_valid
        - Src:             'lib/dpctl.c:2948,16'
          Dst:             nl_attr_type
        - Src:             'lib/dpctl.c:2950,13'
          Dst:             flow_pop_vlan
        - Src:             'lib/dpctl.c:2954,13'
          Dst:             flow_push_vlan_uninit
        - Src:             'lib/dpctl.c:2955,20'
          Dst:             nl_attr_get_unspec
        - Src:             'lib/dpctl.c:2961,14'
          Dst:             get_actions_for_flow
        - Src:             'lib/dpctl.c:2962,41'
          Dst:             nl_attr_type
        - Src:             'lib/dpctl.c:2963,27'
          Dst:             nl_attr_get
        - Src:             'lib/dpctl.c:2963,43'
          Dst:             nl_attr_get_size
        - Src:             'lib/dpctl.c:2962,9'
          Dst:             nl_msg_put_unspec
        - Src:             'lib/dpctl.c:2946,5'
          Dst:             nl_attr_len_pad
        - Src:             'lib/dpctl.c:2946,5'
          Dst:             nl_attr_next
        - Src:             'lib/dpctl.c:2966,13'
          Dst:             hmap_count
        - Src:             'lib/dpctl.c:2967,11'
          Dst:             xmalloc
        - Src:             'lib/dpctl.c:2969,5'
          Dst:             hmap_first
        - Src:             'lib/dpctl.c:2969,5'
          Dst:             hmap_next
        - Src:             'lib/dpctl.c:2973,5'
          Dst:             ovs_ignore
        - Src:             'lib/dpctl.c:2974,5'
          Dst:             hmap_destroy
        - Src:             'lib/dpctl.c:2976,5'
          Dst:             qsort
        - Src:             'lib/dpctl.c:2976,5'
          Dst:             compare_actions_for_flow
        - Src:             'lib/dpctl.c:2980,9'
          Dst:             sort_output_actions
        - Src:             'lib/dpctl.c:2984,30'
          Dst:             htons
        - Src:             'lib/dpctl.c:2985,17'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:2986,35'
          Dst:             htons
        - Src:             'lib/dpctl.c:2987,21'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:2990,29'
          Dst:             vlan_tci_to_vid
        - Src:             'lib/dpctl.c:2991,29'
          Dst:             vlan_tci_to_pcp
        - Src:             'lib/dpctl.c:2989,17'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:2994,21'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:3000,13'
          Dst:             eth_type_mpls
        - Src:             'lib/dpctl.c:3002,25'
          Dst:             mpls_lse_to_label
        - Src:             'lib/dpctl.c:3003,25'
          Dst:             mpls_lse_to_tc
        - Src:             'lib/dpctl.c:3004,25'
          Dst:             mpls_lse_to_ttl
        - Src:             'lib/dpctl.c:3001,13'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:3006,13'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:3009,9'
          Dst:             ds_clear
        - Src:             'lib/dpctl.c:3010,9'
          Dst:             format_odp_actions
        - Src:             'lib/dpctl.c:3011,36'
          Dst:             ds_cstr
        - Src:             'lib/dpctl.c:3011,9'
          Dst:             dpctl_puts
        - Src:             'lib/dpctl.c:3013,9'
          Dst:             ofpbuf_uninit
        - Src:             'lib/dpctl.c:3020,5'
          Dst:             ofpbuf_uninit
        - Src:             'lib/dpctl.c:3022,5'
          Dst:             ofpbuf_uninit
        - Src:             'lib/dpctl.c:3024,5'
          Dst:             simap_destroy
        - Src:             'lib/dpctl.c:3025,5'
          Dst:             ds_destroy
    - functionName:    dpctl_error
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 102
      functionLinenumberEnd: 129
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          76
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - __errno_location
        - dpctl_puts
        - ds_cstr
        - ds_destroy
        - ds_put_cstr
        - ds_put_format
        - ds_put_format_valist
        - get_subprogram_name
        - ovs_retval_to_string
      functionUses:    93
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:103,35'
          Dst:             get_subprogram_name
        - Src:             'lib/dpctl.c:105,22'
          Dst:             __errno_location
        - Src:             'lib/dpctl.c:110,9'
          Dst:             ds_put_format
        - Src:             'lib/dpctl.c:112,9'
          Dst:             ds_put_format
        - Src:             'lib/dpctl.c:116,5'
          Dst:             ds_put_format_valist
        - Src:             'lib/dpctl.c:120,37'
          Dst:             ovs_retval_to_string
        - Src:             'lib/dpctl.c:120,9'
          Dst:             ds_put_format
        - Src:             'lib/dpctl.c:122,5'
          Dst:             ds_put_cstr
        - Src:             'lib/dpctl.c:124,31'
          Dst:             ds_cstr
        - Src:             'lib/dpctl.c:124,5'
          Dst:             dpctl_puts
        - Src:             'lib/dpctl.c:126,5'
          Dst:             ds_destroy
        - Src:             'lib/dpctl.c:128,5'
          Dst:             __errno_location
    - functionName:    dpctl_print
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 88
      functionLinenumberEnd: 98
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dpctl_puts
        - xvasprintf
      functionUses:    105
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:93,14'
          Dst:             xvasprintf
        - Src:             'lib/dpctl.c:96,5'
          Dst:             dpctl_puts
    - functionName:    hmap_first
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 416
      functionLinenumberEnd: 417
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next__
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:417,12'
          Dst:             hmap_next__
    - functionName:    hmap_next
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 429
      functionLinenumberEnd: 432
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_next__
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:432,15'
          Dst:             hmap_next__
    - functionName:    dpctl_puts
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 84
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_next__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 401
      functionLinenumberEnd: 410
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          51
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    opt_dpif_open
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 230
      functionLinenumberEnd: 255
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          89
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - dp_arg_exists
        - dpctl_error
        - get_one_dp
        - parsed_dpif_open
        - xstrdup
      functionUses:    26
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:233,9'
          Dst:             dp_arg_exists
        - Src:             'lib/dpctl.c:234,18'
          Dst:             xstrdup
        - Src:             'lib/dpctl.c:236,18'
          Dst:             get_one_dp
        - Src:             'lib/dpctl.c:247,9'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:249,17'
          Dst:             parsed_dpif_open
        - Src:             'lib/dpctl.c:252,13'
          Dst:             dpctl_error
    - functionName:    dpctl_dump_ipf
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2572
      functionLinenumberEnd: 2594
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          79
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - ct_dpif_ipf_dump_done
        - ct_dpif_ipf_dump_next
        - ct_dpif_ipf_dump_start
        - dpctl_error
        - dpctl_print
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:2576,17'
          Dst:             ct_dpif_ipf_dump_start
        - Src:             'lib/dpctl.c:2578,9'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:2583,5'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:2584,22'
          Dst:             ct_dpif_ipf_dump_next
        - Src:             'lib/dpctl.c:2585,9'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:2590,9'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:2593,5'
          Dst:             ct_dpif_ipf_dump_done
    - functionName:    dp_arg_exists
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 218
      functionLinenumberEnd: 219
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_exists
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:219,24'
          Dst:             dp_exists
    - functionName:    get_one_dp
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 144
      functionLinenumberEnd: 174
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         30
      ICount:          155
      EdgeCount:       39
      CyclomaticComplexity: 11
      functionsReached:
        - dp_enumerate_names
        - dp_enumerate_types
        - dpctl_error
        - hmap_first
        - hmap_next
        - sset_count
        - sset_destroy
        - sset_init
        - xasprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:150,5'
          Dst:             sset_init
        - Src:             'lib/dpctl.c:151,5'
          Dst:             dp_enumerate_types
        - Src:             'lib/dpctl.c:152,5'
          Dst:             hmap_first
        - Src:             'lib/dpctl.c:152,5'
          Dst:             hmap_first
        - Src:             'lib/dpctl.c:155,9'
          Dst:             sset_init
        - Src:             'lib/dpctl.c:156,14'
          Dst:             dp_enumerate_names
        - Src:             'lib/dpctl.c:157,22'
          Dst:             sset_count
        - Src:             'lib/dpctl.c:159,52'
          Dst:             hmap_first
        - Src:             'lib/dpctl.c:159,52'
          Dst:             hmap_first
        - Src:             'lib/dpctl.c:159,27'
          Dst:             xasprintf
        - Src:             'lib/dpctl.c:162,9'
          Dst:             sset_destroy
        - Src:             'lib/dpctl.c:152,5'
          Dst:             hmap_next
        - Src:             'lib/dpctl.c:152,5'
          Dst:             hmap_next
        - Src:             'lib/dpctl.c:164,5'
          Dst:             sset_destroy
        - Src:             'lib/dpctl.c:167,9'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:169,9'
          Dst:             dpctl_error
    - functionName:    parsed_dpif_open
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 179
      functionLinenumberEnd: 193
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_parse_name
        - dpif_create
        - dpif_open
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:183,5'
          Dst:             dp_parse_name
        - Src:             'lib/dpctl.c:186,18'
          Dst:             dpif_create
        - Src:             'lib/dpctl.c:188,18'
          Dst:             dpif_open
    - functionName:    dp_exists
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 198
      functionLinenumberEnd: 213
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          72
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - dp_enumerate_names
        - dp_enumerate_types
        - dp_parse_name
        - sset_contains
        - sset_destroy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:200,5'
          Dst:             dp_parse_name
        - Src:             'lib/dpctl.c:203,5'
          Dst:             dp_enumerate_types
        - Src:             'lib/dpctl.c:205,19'
          Dst:             sset_contains
        - Src:             'lib/dpctl.c:206,20'
          Dst:             dp_enumerate_names
        - Src:             'lib/dpctl.c:207,19'
          Dst:             sset_contains
        - Src:             'lib/dpctl.c:209,5'
          Dst:             sset_destroy
        - Src:             'lib/dpctl.c:210,5'
          Dst:             sset_destroy
    - functionName:    ipf_set_enabled__
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2462
      functionLinenumberEnd: 2487
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          117
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - ct_dpif_ipf_set_enabled
        - dpctl_error
        - dpctl_print
        - dpif_close
        - opt_dpif_open
        - ovs_scan
        - strncmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:2464,17'
          Dst:             opt_dpif_open
        - Src:             'lib/dpctl.c:2467,13'
          Dst:             ovs_scan
        - Src:             'lib/dpctl.c:2468,15'
          Dst:             strncmp
        - Src:             'lib/dpctl.c:2468,46'
          Dst:             strncmp
        - Src:             'lib/dpctl.c:2470,32'
          Dst:             strncmp
        - Src:             'lib/dpctl.c:2469,21'
          Dst:             ct_dpif_ipf_set_enabled
        - Src:             'lib/dpctl.c:2472,17'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:2476,17'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:2482,13'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:2485,9'
          Dst:             dpif_close
    - functionName:    parse_ct_limit_zones
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2271
      functionLinenumberEnd: 2296
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          78
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - ct_dpif_push_zone_limit
        - ds_put_cstr
        - ds_put_format
        - ovs_scan
        - strncmp
        - strtok_r
        - xstrdup
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:2275,9'
          Dst:             strncmp
        - Src:             'lib/dpctl.c:2276,9'
          Dst:             ds_put_format
        - Src:             'lib/dpctl.c:2280,15'
          Dst:             xstrdup
        - Src:             'lib/dpctl.c:2281,17'
          Dst:             strtok_r
        - Src:             'lib/dpctl.c:2284,13'
          Dst:             ovs_scan
        - Src:             'lib/dpctl.c:2285,13'
          Dst:             ct_dpif_push_zone_limit
        - Src:             'lib/dpctl.c:2287,13'
          Dst:             ds_put_cstr
        - Src:             'lib/dpctl.c:2291,21'
          Dst:             strtok_r
    - functionName:    dpctl_ct_set_tcp_seq_chk__
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2144
      functionLinenumberEnd: 2160
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          69
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ct_dpif_set_tcp_seq_chk
        - dpctl_error
        - dpctl_print
        - dpif_close
        - opt_dpif_open
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:2146,17'
          Dst:             opt_dpif_open
        - Src:             'lib/dpctl.c:2148,17'
          Dst:             ct_dpif_set_tcp_seq_chk
        - Src:             'lib/dpctl.c:2150,13'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:2154,13'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:2158,9'
          Dst:             dpif_close
    - functionName:    show_dpif_cache
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 633
      functionLinenumberEnd: 636
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dpctl_print
        - dpif_name
        - show_dpif_cache__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:634,35'
          Dst:             dpif_name
        - Src:             'lib/dpctl.c:634,5'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:635,5'
          Dst:             show_dpif_cache__
    - functionName:    dps_for_each
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 785
      functionLinenumberEnd: 830
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         35
      ICount:          223
      EdgeCount:       45
      CyclomaticComplexity: 12
      functionsReached:
        - dp_enumerate_names
        - dp_enumerate_types
        - dpctl_error
        - dpif_close
        - dpif_open
        - hmap_first
        - hmap_next
        - sset_destroy
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:792,5'
          Dst:             dp_enumerate_types
        - Src:             'lib/dpctl.c:794,5'
          Dst:             hmap_first
        - Src:             'lib/dpctl.c:794,5'
          Dst:             hmap_first
        - Src:             'lib/dpctl.c:795,17'
          Dst:             dp_enumerate_names
        - Src:             'lib/dpctl.c:800,9'
          Dst:             hmap_first
        - Src:             'lib/dpctl.c:800,9'
          Dst:             hmap_first
        - Src:             'lib/dpctl.c:804,21'
          Dst:             dpif_open
        - Src:             'lib/dpctl.c:807,17'
          Dst:             dpif_close
        - Src:             'lib/dpctl.c:810,17'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:800,9'
          Dst:             hmap_next
        - Src:             'lib/dpctl.c:800,9'
          Dst:             hmap_next
        - Src:             'lib/dpctl.c:794,5'
          Dst:             hmap_next
        - Src:             'lib/dpctl.c:794,5'
          Dst:             hmap_next
        - Src:             'lib/dpctl.c:816,5'
          Dst:             sset_destroy
        - Src:             'lib/dpctl.c:817,5'
          Dst:             sset_destroy
    - functionName:    show_dpif_cache__
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 610
      functionLinenumberEnd: 629
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          86
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - dpctl_print
        - dpif_cache_get_name
        - dpif_cache_get_size
        - dpif_cache_get_supported_levels
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:612,17'
          Dst:             dpif_cache_get_supported_levels
        - Src:             'lib/dpctl.c:618,5'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:623,13'
          Dst:             dpif_cache_get_name
        - Src:             'lib/dpctl.c:624,13'
          Dst:             dpif_cache_get_size
        - Src:             'lib/dpctl.c:627,9'
          Dst:             dpctl_print
    - functionName:    compare_custom_stats
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1609
      functionLinenumberEnd: 1614
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          63
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:1613,37'
          Dst:             strcmp
    - functionName:    dpctl_parse_flow_line
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1467
      functionLinenumberEnd: 1508
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          142
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - ds_cstr
        - ovs_strlcpy
        - strcspn
        - strlen
        - strncmp
        - strspn
        - xstrdup
        - xzalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:1468,24'
          Dst:             ds_cstr
        - Src:             'lib/dpctl.c:1472,13'
          Dst:             strspn
        - Src:             'lib/dpctl.c:1473,11'
          Dst:             strcspn
        - Src:             'lib/dpctl.c:1475,10'
          Dst:             strncmp
        - Src:             'lib/dpctl.c:1477,17'
          Dst:             strncmp
        - Src:             'lib/dpctl.c:1479,17'
          Dst:             strncmp
        - Src:             'lib/dpctl.c:1487,13'
          Dst:             strspn
        - Src:             'lib/dpctl.c:1488,11'
          Dst:             strcspn
        - Src:             'lib/dpctl.c:1496,13'
          Dst:             xzalloc
        - Src:             'lib/dpctl.c:1497,5'
          Dst:             ovs_strlcpy
        - Src:             'lib/dpctl.c:1500,13'
          Dst:             strspn
        - Src:             'lib/dpctl.c:1501,9'
          Dst:             strlen
        - Src:             'lib/dpctl.c:1502,19'
          Dst:             xstrdup
    - functionName:    dpctl_put_flow_dpif
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1192
      functionLinenumberEnd: 1276
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         41
      ICount:          261
      EdgeCount:       54
      CyclomaticComplexity: 15
      functionsReached:
        - dpctl_error
        - dpctl_print
        - dpif_flow_put
        - dpif_flow_stats_format
        - dpif_port_dump_done
        - dpif_port_dump_next
        - dpif_port_dump_start
        - ds_cstr
        - ds_destroy
        - ds_init
        - odp_actions_from_string
        - odp_flow_from_string
        - odp_flow_key_hash
        - odp_to_u32
        - odp_ufid_from_string
        - ofpbuf_init
        - ofpbuf_uninit
        - simap_destroy
        - simap_init
        - simap_put
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:1205,9'
          Dst:             odp_ufid_from_string
        - Src:             'lib/dpctl.c:1207,9'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:1214,5'
          Dst:             simap_init
        - Src:             'lib/dpctl.c:1215,5'
          Dst:             dpif_port_dump_start
        - Src:             'lib/dpctl.c:1215,5'
          Dst:             dpif_port_dump_next
        - Src:             'lib/dpctl.c:1215,5'
          Dst:             dpif_port_dump_done
        - Src:             'lib/dpctl.c:1216,48'
          Dst:             odp_to_u32
        - Src:             'lib/dpctl.c:1216,9'
          Dst:             simap_put
        - Src:             'lib/dpctl.c:1219,5'
          Dst:             ofpbuf_init
        - Src:             'lib/dpctl.c:1220,5'
          Dst:             ofpbuf_init
        - Src:             'lib/dpctl.c:1222,13'
          Dst:             odp_flow_from_string
        - Src:             'lib/dpctl.c:1223,5'
          Dst:             simap_destroy
        - Src:             'lib/dpctl.c:1225,9'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:1230,5'
          Dst:             ofpbuf_init
        - Src:             'lib/dpctl.c:1231,13'
          Dst:             odp_actions_from_string
        - Src:             'lib/dpctl.c:1233,9'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:1243,9'
          Dst:             odp_flow_key_hash
        - Src:             'lib/dpctl.c:1248,13'
          Dst:             dpif_flow_put
        - Src:             'lib/dpctl.c:1257,9'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:1264,9'
          Dst:             ds_init
        - Src:             'lib/dpctl.c:1265,9'
          Dst:             dpif_flow_stats_format
        - Src:             'lib/dpctl.c:1266,38'
          Dst:             ds_cstr
        - Src:             'lib/dpctl.c:1266,9'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:1267,9'
          Dst:             ds_destroy
        - Src:             'lib/dpctl.c:1271,5'
          Dst:             ofpbuf_uninit
        - Src:             'lib/dpctl.c:1273,5'
          Dst:             ofpbuf_uninit
        - Src:             'lib/dpctl.c:1274,5'
          Dst:             ofpbuf_uninit
    - functionName:    dpctl_del_flow_dpif
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1368
      functionLinenumberEnd: 1445
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         43
      ICount:          248
      EdgeCount:       57
      CyclomaticComplexity: 16
      functionsReached:
        - dpctl_error
        - dpctl_print
        - dpif_flow_del
        - dpif_flow_stats_format
        - dpif_port_dump_done
        - dpif_port_dump_next
        - dpif_port_dump_start
        - ds_cstr
        - ds_destroy
        - ds_init
        - ds_put_format
        - odp_flow_from_string
        - odp_flow_key_hash
        - odp_to_u32
        - odp_ufid_from_string
        - ofpbuf_init
        - ofpbuf_uninit
        - simap_destroy
        - simap_init
        - simap_put
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:1380,9'
          Dst:             odp_ufid_from_string
        - Src:             'lib/dpctl.c:1382,9'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:1389,5'
          Dst:             simap_init
        - Src:             'lib/dpctl.c:1390,5'
          Dst:             dpif_port_dump_start
        - Src:             'lib/dpctl.c:1390,5'
          Dst:             dpif_port_dump_next
        - Src:             'lib/dpctl.c:1390,5'
          Dst:             dpif_port_dump_done
        - Src:             'lib/dpctl.c:1391,48'
          Dst:             odp_to_u32
        - Src:             'lib/dpctl.c:1391,9'
          Dst:             simap_put
        - Src:             'lib/dpctl.c:1394,5'
          Dst:             ofpbuf_init
        - Src:             'lib/dpctl.c:1395,5'
          Dst:             ofpbuf_init
        - Src:             'lib/dpctl.c:1398,13'
          Dst:             odp_flow_from_string
        - Src:             'lib/dpctl.c:1400,9'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:1409,9'
          Dst:             odp_flow_key_hash
        - Src:             'lib/dpctl.c:1414,13'
          Dst:             dpif_flow_del
        - Src:             'lib/dpctl.c:1419,9'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:1423,13'
          Dst:             ds_init
        - Src:             'lib/dpctl.c:1424,13'
          Dst:             ds_put_format
        - Src:             'lib/dpctl.c:1425,42'
          Dst:             ds_cstr
        - Src:             'lib/dpctl.c:1425,13'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:1426,13'
          Dst:             ds_destroy
        - Src:             'lib/dpctl.c:1434,9'
          Dst:             ds_init
        - Src:             'lib/dpctl.c:1435,9'
          Dst:             dpif_flow_stats_format
        - Src:             'lib/dpctl.c:1436,38'
          Dst:             ds_cstr
        - Src:             'lib/dpctl.c:1436,9'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:1437,9'
          Dst:             ds_destroy
        - Src:             'lib/dpctl.c:1441,5'
          Dst:             ofpbuf_uninit
        - Src:             'lib/dpctl.c:1442,5'
          Dst:             ofpbuf_uninit
        - Src:             'lib/dpctl.c:1443,5'
          Dst:             simap_destroy
    - functionName:    odp_to_u32
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 202
      functionLinenumberEnd: 203
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpctl_get_portno_names
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1003
      functionLinenumberEnd: 1019
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          67
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - dpif_port_dump_done
        - dpif_port_dump_next
        - dpif_port_dump_start
        - hmap_init
        - odp_portno_names_set
        - xmalloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:1005,37'
          Dst:             xmalloc
        - Src:             'lib/dpctl.c:1006,9'
          Dst:             hmap_init
        - Src:             'lib/dpctl.c:1010,9'
          Dst:             dpif_port_dump_start
        - Src:             'lib/dpctl.c:1010,9'
          Dst:             dpif_port_dump_next
        - Src:             'lib/dpctl.c:1010,9'
          Dst:             dpif_port_dump_done
        - Src:             'lib/dpctl.c:1011,13'
          Dst:             odp_portno_names_set
    - functionName:    format_dpif_flow
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 875
      functionLinenumberEnd: 900
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         29
      ICount:          197
      EdgeCount:       39
      CyclomaticComplexity: 12
      functionsReached:
        - dpif_flow_stats_format
        - ds_put_cstr
        - ds_put_format
        - format_odp_actions
        - odp_flow_format
        - odp_format_ufid
        - strcmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:877,9'
          Dst:             odp_format_ufid
        - Src:             'lib/dpctl.c:878,9'
          Dst:             ds_put_cstr
        - Src:             'lib/dpctl.c:880,5'
          Dst:             odp_flow_format
        - Src:             'lib/dpctl.c:882,5'
          Dst:             ds_put_cstr
        - Src:             'lib/dpctl.c:884,5'
          Dst:             dpif_flow_stats_format
        - Src:             'lib/dpctl.c:886,35'
          Dst:             strcmp
        - Src:             'lib/dpctl.c:887,13'
          Dst:             ds_put_cstr
        - Src:             'lib/dpctl.c:889,13'
          Dst:             ds_put_cstr
        - Src:             'lib/dpctl.c:893,9'
          Dst:             ds_put_format
        - Src:             'lib/dpctl.c:895,5'
          Dst:             ds_put_cstr
        - Src:             'lib/dpctl.c:896,5'
          Dst:             format_odp_actions
        - Src:             'lib/dpctl.c:898,9'
          Dst:             ds_put_format
    - functionName:    dpctl_free_portno_names
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1023
      functionLinenumberEnd: 1029
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_destroy
        - odp_portno_names_destroy
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:1025,9'
          Dst:             odp_portno_names_destroy
        - Src:             'lib/dpctl.c:1026,9'
          Dst:             hmap_destroy
    - functionName:    dpctl_put_flow
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1281
      functionLinenumberEnd: 1295
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          63
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dpctl_put_flow_dpif
        - dpif_close
        - opt_dpif_open
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:1285,13'
          Dst:             opt_dpif_open
        - Src:             'lib/dpctl.c:1290,13'
          Dst:             dpctl_put_flow_dpif
        - Src:             'lib/dpctl.c:1293,5'
          Dst:             dpif_close
    - functionName:    u16_to_ofp
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 214
      functionLinenumberEnd: 215
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    populate_dump_types
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 925
      functionLinenumberEnd: 961
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         33
      ICount:          177
      EdgeCount:       43
      CyclomaticComplexity: 12
      functionsReached:
        - dpctl_error
        - enable_all_dump_types
        - strcmp
        - strcspn
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:927,9'
          Dst:             enable_all_dump_types
        - Src:             'lib/dpctl.c:935,27'
          Dst:             strcspn
        - Src:             'lib/dpctl.c:940,14'
          Dst:             strcmp
        - Src:             'lib/dpctl.c:942,21'
          Dst:             strcmp
        - Src:             'lib/dpctl.c:944,21'
          Dst:             strcmp
        - Src:             'lib/dpctl.c:946,21'
          Dst:             strcmp
        - Src:             'lib/dpctl.c:948,21'
          Dst:             strcmp
        - Src:             'lib/dpctl.c:950,21'
          Dst:             strcmp
        - Src:             'lib/dpctl.c:952,21'
          Dst:             strcmp
        - Src:             'lib/dpctl.c:953,13'
          Dst:             enable_all_dump_types
        - Src:             'lib/dpctl.c:955,13'
          Dst:             dpctl_error
    - functionName:    determine_dpif_flow_dump_types
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 966
      functionLinenumberEnd: 972
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          79
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    flow_passes_type_filter
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 977
      functionLinenumberEnd: 999
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         38
      ICount:          193
      EdgeCount:       52
      CyclomaticComplexity: 16
      functionsReached:
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:978,29'
          Dst:             strcmp
        - Src:             'lib/dpctl.c:981,28'
          Dst:             strcmp
        - Src:             'lib/dpctl.c:984,30'
          Dst:             strcmp
        - Src:             'lib/dpctl.c:988,9'
          Dst:             strcmp
        - Src:             'lib/dpctl.c:992,10'
          Dst:             strcmp
    - functionName:    enable_all_dump_types
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 913
      functionLinenumberEnd: 920
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          24
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    show_dpif
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 640
      functionLinenumberEnd: 779
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         57
      ICount:          465
      EdgeCount:       75
      CyclomaticComplexity: 20
      functionsReached:
        - compare_port_nos
        - dpctl_print
        - dpif_get_dp_stats
        - dpif_name
        - dpif_port_destroy
        - dpif_port_dump_done
        - dpif_port_dump_next
        - dpif_port_dump_start
        - dpif_port_query_by_number
        - netdev_close
        - netdev_get_config
        - netdev_get_stats
        - netdev_open
        - ovs_strerror
        - print_human_size
        - print_stat
        - qsort
        - show_dpif_cache__
        - smap_count
        - smap_destroy
        - smap_init
        - smap_sort
        - strcmp
        - x2nrealloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:646,35'
          Dst:             dpif_name
        - Src:             'lib/dpctl.c:646,5'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:647,10'
          Dst:             dpif_get_dp_stats
        - Src:             'lib/dpctl.c:648,9'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:655,13'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:663,17'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:670,5'
          Dst:             show_dpif_cache__
        - Src:             'lib/dpctl.c:674,5'
          Dst:             dpif_port_dump_start
        - Src:             'lib/dpctl.c:674,5'
          Dst:             dpif_port_dump_next
        - Src:             'lib/dpctl.c:674,5'
          Dst:             dpif_port_dump_done
        - Src:             'lib/dpctl.c:676,24'
          Dst:             x2nrealloc
        - Src:             'lib/dpctl.c:685,9'
          Dst:             qsort
        - Src:             'lib/dpctl.c:685,9'
          Dst:             compare_port_nos
        - Src:             'lib/dpctl.c:689,13'
          Dst:             dpif_port_query_by_number
        - Src:             'lib/dpctl.c:693,9'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:696,13'
          Dst:             strcmp
        - Src:             'lib/dpctl.c:699,13'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:701,21'
          Dst:             netdev_open
        - Src:             'lib/dpctl.c:705,17'
          Dst:             smap_init
        - Src:             'lib/dpctl.c:706,25'
          Dst:             netdev_get_config
        - Src:             'lib/dpctl.c:708,54'
          Dst:             smap_sort
        - Src:             'lib/dpctl.c:709,44'
          Dst:             smap_count
        - Src:             'lib/dpctl.c:711,25'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:717,51'
          Dst:             ovs_strerror
        - Src:             'lib/dpctl.c:716,21'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:719,17'
          Dst:             smap_destroy
        - Src:             'lib/dpctl.c:721,17'
          Dst:             netdev_close
        - Src:             'lib/dpctl.c:724,29'
          Dst:             ovs_strerror
        - Src:             'lib/dpctl.c:723,17'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:726,13'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:728,9'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:734,21'
          Dst:             netdev_open
        - Src:             'lib/dpctl.c:737,29'
          Dst:             ovs_strerror
        - Src:             'lib/dpctl.c:736,17'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:738,17'
          Dst:             dpif_port_destroy
        - Src:             'lib/dpctl.c:741,21'
          Dst:             netdev_get_stats
        - Src:             'lib/dpctl.c:742,13'
          Dst:             netdev_close
        - Src:             'lib/dpctl.c:744,17'
          Dst:             print_stat
        - Src:             'lib/dpctl.c:745,17'
          Dst:             print_stat
        - Src:             'lib/dpctl.c:746,17'
          Dst:             print_stat
        - Src:             'lib/dpctl.c:747,17'
          Dst:             print_stat
        - Src:             'lib/dpctl.c:748,17'
          Dst:             print_stat
        - Src:             'lib/dpctl.c:749,17'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:751,17'
          Dst:             print_stat
        - Src:             'lib/dpctl.c:752,17'
          Dst:             print_stat
        - Src:             'lib/dpctl.c:753,17'
          Dst:             print_stat
        - Src:             'lib/dpctl.c:754,17'
          Dst:             print_stat
        - Src:             'lib/dpctl.c:755,17'
          Dst:             print_stat
        - Src:             'lib/dpctl.c:756,17'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:758,17'
          Dst:             print_stat
        - Src:             'lib/dpctl.c:759,17'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:761,17'
          Dst:             print_stat
        - Src:             'lib/dpctl.c:762,17'
          Dst:             print_human_size
        - Src:             'lib/dpctl.c:763,17'
          Dst:             print_stat
        - Src:             'lib/dpctl.c:764,17'
          Dst:             print_human_size
        - Src:             'lib/dpctl.c:765,17'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:767,17'
          Dst:             print_stat
        - Src:             'lib/dpctl.c:768,17'
          Dst:             print_stat
        - Src:             'lib/dpctl.c:769,17'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:772,29'
          Dst:             ovs_strerror
        - Src:             'lib/dpctl.c:771,17'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:775,9'
          Dst:             dpif_port_destroy
    - functionName:    compare_port_nos
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 599
      functionLinenumberEnd: 605
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - odp_to_u32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:602,18'
          Dst:             odp_to_u32
        - Src:             'lib/dpctl.c:603,18'
          Dst:             odp_to_u32
    - functionName:    print_stat
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 570
      functionLinenumberEnd: 577
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dpctl_print
      functionUses:    15
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:571,5'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:573,9'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:575,9'
          Dst:             dpctl_print
    - functionName:    print_human_size
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 581
      functionLinenumberEnd: 594
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          83
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - dpctl_print
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:585,9'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:588,9'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:590,9'
          Dst:             dpctl_print
        - Src:             'lib/dpctl.c:592,9'
          Dst:             dpctl_print
    - functionName:    dump_cb
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 861
      functionLinenumberEnd: 863
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dpctl_print
        - dpif_name
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:862,34'
          Dst:             dpif_name
        - Src:             'lib/dpctl.c:862,5'
          Dst:             dpctl_print
    - functionName:    u32_to_odp
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 220
      functionLinenumberEnd: 221
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_port_number
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 522
      functionLinenumberEnd: 533
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dpctl_error
        - dpif_port_destroy
        - dpif_port_query_by_name
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:525,10'
          Dst:             dpif_port_query_by_name
        - Src:             'lib/dpctl.c:527,9'
          Dst:             dpif_port_destroy
        - Src:             'lib/dpctl.c:530,9'
          Dst:             dpctl_error
    - functionName:    if_up
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 135
      functionLinenumberEnd: 136
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - netdev_turn_flags_on
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:136,12'
          Dst:             netdev_turn_flags_on
    - functionName:    dpctl_unixctl_handler
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3154
      functionLinenumberEnd: 3236
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         58
      ICount:          329
      EdgeCount:       74
      CyclomaticComplexity: 18
      functionsReached:
        - ds_cstr
        - ds_destroy
        - ds_put_format
        - strcmp
        - strncmp
        - unixctl_command_reply
        - unixctl_command_reply_error
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/dpctl.c:3195,17'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/dpctl.c:3170,14'
          Dst:             strncmp
        - Src:             'lib/dpctl.c:3172,18'
          Dst:             strcmp
        - Src:             'lib/dpctl.c:3174,25'
          Dst:             strcmp
        - Src:             'lib/dpctl.c:3176,25'
          Dst:             strcmp
        - Src:             'lib/dpctl.c:3178,25'
          Dst:             strcmp
        - Src:             'lib/dpctl.c:3180,25'
          Dst:             strcmp
        - Src:             'lib/dpctl.c:3183,25'
          Dst:             strcmp
        - Src:             'lib/dpctl.c:3187,17'
          Dst:             ds_put_format
        - Src:             'lib/dpctl.c:3203,21'
          Dst:             ds_put_format
        - Src:             'lib/dpctl.c:3230,43'
          Dst:             ds_cstr
        - Src:             'lib/dpctl.c:3230,9'
          Dst:             unixctl_command_reply_error
        - Src:             'lib/dpctl.c:3232,37'
          Dst:             ds_cstr
        - Src:             'lib/dpctl.c:3232,9'
          Dst:             unixctl_command_reply
        - Src:             'lib/dpctl.c:3235,5'
          Dst:             ds_destroy
    - functionName:    dpctl_unixctl_register
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3240
      functionLinenumberEnd: 3255
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         10
      ICount:          67
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - dpctl_unixctl_handler
        - strcmp
        - unixctl_command_register
        - xasprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:3244,13'
          Dst:             strcmp
        - Src:             'lib/dpctl.c:3245,30'
          Dst:             xasprintf
        - Src:             'lib/dpctl.c:3246,13'
          Dst:             unixctl_command_register
        - Src:             'lib/dpctl.c:3246,13'
          Dst:             dpctl_unixctl_handler
    - functionName:    dpctl_run_command
      functionSourceFile: '/src/openvswitch/lib/dpctl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3107
      functionLinenumberEnd: 3142
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          150
      EdgeCount:       28
      CyclomaticComplexity: 9
      functionsReached:
        - dpctl_error
        - strcmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpctl.c:3110,9'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:3115,14'
          Dst:             strcmp
        - Src:             'lib/dpctl.c:3118,17'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:3123,17'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:3129,21'
          Dst:             dpctl_error
        - Src:             'lib/dpctl.c:3139,5'
          Dst:             dpctl_error
    - functionName:    init_this_module_dpif_netdev
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 91
      functionLinenumberEnd: 91
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:91,1'
          Dst:             vlog_insert_module
    - functionName:    datapath_drop_meter_init_coverage
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 112
      functionLinenumberEnd: 112
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:112,1'
          Dst:             coverage_counter_register
    - functionName:    datapath_drop_upcall_error_init_coverage
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 113
      functionLinenumberEnd: 113
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:113,1'
          Dst:             coverage_counter_register
    - functionName:    datapath_drop_lock_error_init_coverage
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 114
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:114,1'
          Dst:             coverage_counter_register
    - functionName:    datapath_drop_userspace_action_error_init_coverage
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 115
      functionLinenumberEnd: 115
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:115,1'
          Dst:             coverage_counter_register
    - functionName:    datapath_drop_tunnel_push_error_init_coverage
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 116
      functionLinenumberEnd: 116
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:116,1'
          Dst:             coverage_counter_register
    - functionName:    datapath_drop_tunnel_pop_error_init_coverage
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 117
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:117,1'
          Dst:             coverage_counter_register
    - functionName:    datapath_drop_recirc_error_init_coverage
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 118
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:118,1'
          Dst:             coverage_counter_register
    - functionName:    datapath_drop_invalid_port_init_coverage
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 119
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:119,1'
          Dst:             coverage_counter_register
    - functionName:    datapath_drop_invalid_bond_init_coverage
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 120
      functionLinenumberEnd: 120
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:120,1'
          Dst:             coverage_counter_register
    - functionName:    datapath_drop_invalid_tnl_port_init_coverage
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 121
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:121,1'
          Dst:             coverage_counter_register
    - functionName:    datapath_drop_rx_invalid_packet_init_coverage
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 122
      functionLinenumberEnd: 122
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:122,1'
          Dst:             coverage_counter_register
    - functionName:    datapath_drop_hw_post_process_init_coverage
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 123
      functionLinenumberEnd: 123
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:123,1'
          Dst:             coverage_counter_register
    - functionName:    datapath_drop_hw_post_process_consumed_init_coverage
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 124
      functionLinenumberEnd: 124
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:124,1'
          Dst:             coverage_counter_register
    - functionName:    dpif_netdev_output_grow_queues_init_coverage
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 126
      functionLinenumberEnd: 126
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:126,1'
          Dst:             coverage_counter_register
    - functionName:    dpif_netdev_recirc_big_batch_init_coverage
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 127
      functionLinenumberEnd: 127
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:127,1'
          Dst:             coverage_counter_register
    - functionName:    dpif_netdev_recirc_big_batch_count
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 127
      functionLinenumberEnd: 127
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_dpif_netdev_recirc_big_batch_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:127,1'
          Dst:             counter_dpif_netdev_recirc_big_batch_get
    - functionName:    counter_dpif_netdev_recirc_big_batch_get
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 127
      functionLinenumberEnd: 127
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_dpif_netdev_recirc_big_batch_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:127,1'
          Dst:             counter_dpif_netdev_recirc_big_batch_get_unsafe
    - functionName:    counter_dpif_netdev_recirc_big_batch_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 127
      functionLinenumberEnd: 127
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_netdev_output_grow_queues_count
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 126
      functionLinenumberEnd: 126
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_dpif_netdev_output_grow_queues_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:126,1'
          Dst:             counter_dpif_netdev_output_grow_queues_get
    - functionName:    counter_dpif_netdev_output_grow_queues_get
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 126
      functionLinenumberEnd: 126
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_dpif_netdev_output_grow_queues_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:126,1'
          Dst:             counter_dpif_netdev_output_grow_queues_get_unsafe
    - functionName:    counter_dpif_netdev_output_grow_queues_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 126
      functionLinenumberEnd: 126
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    datapath_drop_hw_post_process_consumed_count
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 124
      functionLinenumberEnd: 124
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_datapath_drop_hw_post_process_consumed_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:124,1'
          Dst:             counter_datapath_drop_hw_post_process_consumed_get
    - functionName:    counter_datapath_drop_hw_post_process_consumed_get
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 124
      functionLinenumberEnd: 124
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_datapath_drop_hw_post_process_consumed_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:124,1'
          Dst:             counter_datapath_drop_hw_post_process_consumed_get_unsafe
    - functionName:    counter_datapath_drop_hw_post_process_consumed_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 124
      functionLinenumberEnd: 124
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    datapath_drop_hw_post_process_count
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 123
      functionLinenumberEnd: 123
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_datapath_drop_hw_post_process_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:123,1'
          Dst:             counter_datapath_drop_hw_post_process_get
    - functionName:    counter_datapath_drop_hw_post_process_get
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 123
      functionLinenumberEnd: 123
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_datapath_drop_hw_post_process_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:123,1'
          Dst:             counter_datapath_drop_hw_post_process_get_unsafe
    - functionName:    counter_datapath_drop_hw_post_process_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 123
      functionLinenumberEnd: 123
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    datapath_drop_rx_invalid_packet_count
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 122
      functionLinenumberEnd: 122
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_datapath_drop_rx_invalid_packet_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:122,1'
          Dst:             counter_datapath_drop_rx_invalid_packet_get
    - functionName:    counter_datapath_drop_rx_invalid_packet_get
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 122
      functionLinenumberEnd: 122
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_datapath_drop_rx_invalid_packet_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:122,1'
          Dst:             counter_datapath_drop_rx_invalid_packet_get_unsafe
    - functionName:    counter_datapath_drop_rx_invalid_packet_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 122
      functionLinenumberEnd: 122
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    datapath_drop_invalid_tnl_port_count
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 121
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_datapath_drop_invalid_tnl_port_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:121,1'
          Dst:             counter_datapath_drop_invalid_tnl_port_get
    - functionName:    counter_datapath_drop_invalid_tnl_port_get
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 121
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_datapath_drop_invalid_tnl_port_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:121,1'
          Dst:             counter_datapath_drop_invalid_tnl_port_get_unsafe
    - functionName:    counter_datapath_drop_invalid_tnl_port_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 121
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    datapath_drop_invalid_bond_count
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 120
      functionLinenumberEnd: 120
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_datapath_drop_invalid_bond_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:120,1'
          Dst:             counter_datapath_drop_invalid_bond_get
    - functionName:    counter_datapath_drop_invalid_bond_get
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 120
      functionLinenumberEnd: 120
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_datapath_drop_invalid_bond_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:120,1'
          Dst:             counter_datapath_drop_invalid_bond_get_unsafe
    - functionName:    counter_datapath_drop_invalid_bond_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 120
      functionLinenumberEnd: 120
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    datapath_drop_invalid_port_count
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 119
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_datapath_drop_invalid_port_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:119,1'
          Dst:             counter_datapath_drop_invalid_port_get
    - functionName:    counter_datapath_drop_invalid_port_get
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 119
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_datapath_drop_invalid_port_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:119,1'
          Dst:             counter_datapath_drop_invalid_port_get_unsafe
    - functionName:    counter_datapath_drop_invalid_port_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 119
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    datapath_drop_recirc_error_count
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 118
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_datapath_drop_recirc_error_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:118,1'
          Dst:             counter_datapath_drop_recirc_error_get
    - functionName:    counter_datapath_drop_recirc_error_get
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 118
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_datapath_drop_recirc_error_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:118,1'
          Dst:             counter_datapath_drop_recirc_error_get_unsafe
    - functionName:    counter_datapath_drop_recirc_error_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 118
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    datapath_drop_tunnel_pop_error_count
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 117
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_datapath_drop_tunnel_pop_error_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:117,1'
          Dst:             counter_datapath_drop_tunnel_pop_error_get
    - functionName:    counter_datapath_drop_tunnel_pop_error_get
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 117
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_datapath_drop_tunnel_pop_error_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:117,1'
          Dst:             counter_datapath_drop_tunnel_pop_error_get_unsafe
    - functionName:    counter_datapath_drop_tunnel_pop_error_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 117
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    datapath_drop_tunnel_push_error_count
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 116
      functionLinenumberEnd: 116
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_datapath_drop_tunnel_push_error_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:116,1'
          Dst:             counter_datapath_drop_tunnel_push_error_get
    - functionName:    counter_datapath_drop_tunnel_push_error_get
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 116
      functionLinenumberEnd: 116
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_datapath_drop_tunnel_push_error_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:116,1'
          Dst:             counter_datapath_drop_tunnel_push_error_get_unsafe
    - functionName:    counter_datapath_drop_tunnel_push_error_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 116
      functionLinenumberEnd: 116
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    datapath_drop_userspace_action_error_count
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 115
      functionLinenumberEnd: 115
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_datapath_drop_userspace_action_error_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:115,1'
          Dst:             counter_datapath_drop_userspace_action_error_get
    - functionName:    counter_datapath_drop_userspace_action_error_get
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 115
      functionLinenumberEnd: 115
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_datapath_drop_userspace_action_error_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:115,1'
          Dst:             counter_datapath_drop_userspace_action_error_get_unsafe
    - functionName:    counter_datapath_drop_userspace_action_error_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 115
      functionLinenumberEnd: 115
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    datapath_drop_lock_error_count
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 114
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_datapath_drop_lock_error_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:114,1'
          Dst:             counter_datapath_drop_lock_error_get
    - functionName:    counter_datapath_drop_lock_error_get
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 114
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_datapath_drop_lock_error_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:114,1'
          Dst:             counter_datapath_drop_lock_error_get_unsafe
    - functionName:    counter_datapath_drop_lock_error_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 114
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    datapath_drop_upcall_error_count
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 113
      functionLinenumberEnd: 113
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_datapath_drop_upcall_error_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:113,1'
          Dst:             counter_datapath_drop_upcall_error_get
    - functionName:    counter_datapath_drop_upcall_error_get
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 113
      functionLinenumberEnd: 113
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_datapath_drop_upcall_error_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:113,1'
          Dst:             counter_datapath_drop_upcall_error_get_unsafe
    - functionName:    counter_datapath_drop_upcall_error_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 113
      functionLinenumberEnd: 113
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    datapath_drop_meter_count
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 112
      functionLinenumberEnd: 112
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_datapath_drop_meter_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:112,1'
          Dst:             counter_datapath_drop_meter_get
    - functionName:    counter_datapath_drop_meter_get
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 112
      functionLinenumberEnd: 112
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_datapath_drop_meter_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:112,1'
          Dst:             counter_datapath_drop_meter_get_unsafe
    - functionName:    counter_datapath_drop_meter_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 112
      functionLinenumberEnd: 112
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pvector_cursor_lookahead
      functionSourceFile: '/src/openvswitch/lib/pvector.h'
      linkageType:     InternalLinkage
      functionLinenumber: 223
      functionLinenumberEnd: 227
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_prefetch_range
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/pvector.h:225,9'
          Dst:             ovs_prefetch_range
    - functionName:    ovs_prefetch_range
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 81
      functionLinenumberEnd: 88
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         5
      ICount:          34
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    rightmost_1bit
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 382
      functionLinenumberEnd: 383
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_next__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 401
      functionLinenumberEnd: 410
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          51
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_netdev_del_bond_tx_from_pmd
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6959
      functionLinenumberEnd: 6969
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - cmap_remove
        - hash_bond_id
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovsrcu_postpone__
        - tx_bond_lookup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:6962,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-netdev.c:6963,10'
          Dst:             tx_bond_lookup
        - Src:             'lib/dpif-netdev.c:6965,48'
          Dst:             hash_bond_id
        - Src:             'lib/dpif-netdev.c:6965,9'
          Dst:             cmap_remove
        - Src:             'lib/dpif-netdev.c:6966,9'
          Dst:             ovsrcu_postpone__
        - Src:             'lib/dpif-netdev.c:6968,5'
          Dst:             ovs_mutex_unlock
    - functionName:    tx_bond_lookup
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4571
      functionLinenumberEnd: 4581
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          73
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - cmap_find
        - cmap_node_next
        - hash_bond_id
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:4572,21'
          Dst:             hash_bond_id
        - Src:             'lib/dpif-netdev.c:4575,5'
          Dst:             cmap_find
        - Src:             'lib/dpif-netdev.c:4575,5'
          Dst:             cmap_node_next
    - functionName:    hash_bond_id
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1405
      functionLinenumberEnd: 1406
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_int
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:1406,12'
          Dst:             hash_int
    - functionName:    cmap_remove
      functionSourceFile: '/src/openvswitch/lib/cmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 293
      functionLinenumberEnd: 294
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - cmap_replace
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/cmap.h:294,12'
          Dst:             cmap_replace
    - functionName:    hash_int
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 408
      functionLinenumberEnd: 409
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_2words
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:409,12'
          Dst:             hash_2words
    - functionName:    hash_2words
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 153
      functionLinenumberEnd: 154
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_add
        - hash_finish
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:154,33'
          Dst:             hash_add
        - Src:             'lib/hash.h:154,24'
          Dst:             hash_add
        - Src:             'lib/hash.h:154,12'
          Dst:             hash_finish
    - functionName:    hash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 108
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_add
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:109,12'
          Dst:             mhash_add
    - functionName:    hash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_finish
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:119,12'
          Dst:             mhash_finish
    - functionName:    mhash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_rot
        - mhash_add__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:78,12'
          Dst:             mhash_add__
        - Src:             'lib/hash.h:79,12'
          Dst:             hash_rot
    - functionName:    mhash_add__
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hash_rot
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:71,12'
          Dst:             hash_rot
    - functionName:    hash_rot
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 32
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    cmap_node_next
      functionSourceFile: '/src/openvswitch/lib/cmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 67
      functionLinenumberEnd: 68
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          22
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_meter_attach
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1267
      functionLinenumberEnd: 1269
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - cmap_insert
        - dp_meter_hash
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:1268,39'
          Dst:             dp_meter_hash
        - Src:             'lib/dpif-netdev.c:1268,5'
          Dst:             cmap_insert
    - functionName:    dp_meter_hash
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1215
      functionLinenumberEnd: 1220
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_meter_detach_free
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1256
      functionLinenumberEnd: 1263
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - cmap_remove
        - dp_meter_hash
        - dp_meter_lookup
        - ovsrcu_postpone__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:1257,26'
          Dst:             dp_meter_lookup
        - Src:             'lib/dpif-netdev.c:1260,39'
          Dst:             dp_meter_hash
        - Src:             'lib/dpif-netdev.c:1260,9'
          Dst:             cmap_remove
        - Src:             'lib/dpif-netdev.c:1261,9'
          Dst:             ovsrcu_postpone__
    - functionName:    dp_meter_lookup
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1241
      functionLinenumberEnd: 1252
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          73
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - cmap_find
        - cmap_node_next
        - dp_meter_hash
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:1242,21'
          Dst:             dp_meter_hash
        - Src:             'lib/dpif-netdev.c:1245,5'
          Dst:             cmap_find
        - Src:             'lib/dpif-netdev.c:1245,5'
          Dst:             cmap_node_next
    - functionName:    ovs_list_is_empty
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 320
      functionLinenumberEnd: 321
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_netdev_enable_upcall
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6594
      functionLinenumberEnd: 6596
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - fat_rwlock_unlock
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:6595,5'
          Dst:             fat_rwlock_unlock
    - functionName:    assign_sleep_values_to_pmds
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3780
      functionLinenumberEnd: 3807
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          140
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - cmap_cursor_advance
        - cmap_cursor_start
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:3784,5'
          Dst:             cmap_cursor_start
        - Src:             'lib/dpif-netdev.c:3784,5'
          Dst:             cmap_cursor_advance
    - functionName:    offload_flow_reference_unreference_cb
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2030
      functionLinenumberEnd: 2037
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_netdev_flow_unref
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:2035,9'
          Dst:             dp_netdev_flow_unref
    - functionName:    dp_netdev_flow_unref
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1861
      functionLinenumberEnd: 1865
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_netdev_flow_free
        - ovs_refcount_unref_relaxed
        - ovsrcu_postpone__
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:1862,9'
          Dst:             ovs_refcount_unref_relaxed
        - Src:             'lib/dpif-netdev.c:1863,9'
          Dst:             ovsrcu_postpone__
        - Src:             'lib/dpif-netdev.c:1863,9'
          Dst:             dp_netdev_flow_free
    - functionName:    ovs_refcount_unref_relaxed
      functionSourceFile: '/src/openvswitch/lib/ovs-atomic.h'
      linkageType:     InternalLinkage
      functionLinenumber: 659
      functionLinenumberEnd: 665
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-atomic.h:664,5'
          Dst:             ovs_ignore
    - functionName:    dp_netdev_flow_free
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1854
      functionLinenumberEnd: 1858
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_netdev_actions_free
        - dp_netdev_flow_get_actions
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:1855,28'
          Dst:             dp_netdev_flow_get_actions
        - Src:             'lib/dpif-netdev.c:1855,5'
          Dst:             dp_netdev_actions_free
    - functionName:    dp_netdev_flow_get_actions
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4268
      functionLinenumberEnd: 4269
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          22
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_netdev_actions_free
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4274
      functionLinenumberEnd: 4276
      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:    log_all_pmd_sleeps
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3812
      functionLinenumberEnd: 3830
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          83
      EdgeCount:       14
      CyclomaticComplexity: 4
      functionsReached:
        - log_pmd_sleep
        - sorted_poll_thread_list
        - vlog
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:3817,5'
          Dst:             vlog
        - Src:             'lib/dpif-netdev.c:3820,5'
          Dst:             sorted_poll_thread_list
        - Src:             'lib/dpif-netdev.c:3827,9'
          Dst:             log_pmd_sleep
    - functionName:    sorted_poll_thread_list
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 832
      functionLinenumberEnd: 851
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          89
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - cmap_count
        - cmap_cursor_advance
        - cmap_cursor_start
        - compare_poll_thread_list
        - qsort
        - xcalloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:837,14'
          Dst:             cmap_count
        - Src:             'lib/dpif-netdev.c:838,16'
          Dst:             xcalloc
        - Src:             'lib/dpif-netdev.c:840,5'
          Dst:             cmap_cursor_start
        - Src:             'lib/dpif-netdev.c:840,5'
          Dst:             cmap_cursor_advance
        - Src:             'lib/dpif-netdev.c:847,5'
          Dst:             qsort
        - Src:             'lib/dpif-netdev.c:847,5'
          Dst:             compare_poll_thread_list
    - functionName:    log_pmd_sleep
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3748
      functionLinenumberEnd: 3754
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - int
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          47
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - vlog
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:3752,5'
          Dst:             vlog
    - functionName:    compare_poll_thread_list
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 811
      functionLinenumberEnd: 824
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_all_pmd_max_sleeps
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3834
      functionLinenumberEnd: 3884
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         41
      ICount:          228
      EdgeCount:       53
      CyclomaticComplexity: 14
      functionsReached:
        - assign_sleep_values_to_pmds
        - nullable_string_is_equal
        - nullable_xstrdup
        - ovsthread_once_done
        - ovsthread_once_start
        - parse_pmd_sleep_list
        - smap_get
        - smap_get_ullong
        - vlog
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:3835,34'
          Dst:             smap_get
        - Src:             'lib/dpif-netdev.c:3844,20'
          Dst:             smap_get_ullong
        - Src:             'lib/dpif-netdev.c:3846,9'
          Dst:             ovsthread_once_start
        - Src:             'lib/dpif-netdev.c:3846,9'
          Dst:             vlog
        - Src:             'lib/dpif-netdev.c:3846,9'
          Dst:             ovsthread_once_done
        - Src:             'lib/dpif-netdev.c:3854,15'
          Dst:             nullable_string_is_equal
        - Src:             'lib/dpif-netdev.c:3862,26'
          Dst:             nullable_xstrdup
        - Src:             'lib/dpif-netdev.c:3865,20'
          Dst:             parse_pmd_sleep_list
        - Src:             'lib/dpif-netdev.c:3880,19'
          Dst:             assign_sleep_values_to_pmds
    - functionName:    ovsthread_once_start
      functionSourceFile: '/src/openvswitch/./include/openvswitch/thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsthread_once_start__
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/thread.h:161,12'
          Dst:             ovsthread_once_start__
    - functionName:    parse_pmd_sleep_list
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3686
      functionLinenumberEnd: 3744
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         33
      ICount:          199
      EdgeCount:       43
      CyclomaticComplexity: 12
      functionsReached:
        - ofputil_parse_key_value
        - str_to_u64
        - xrealloc
        - xstrdup
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:3694,19'
          Dst:             xstrdup
        - Src:             'lib/dpif-netdev.c:3696,12'
          Dst:             ofputil_parse_key_value
        - Src:             'lib/dpif-netdev.c:3702,17'
          Dst:             str_to_u64
        - Src:             'lib/dpif-netdev.c:3713,21'
          Dst:             str_to_u64
        - Src:             'lib/dpif-netdev.c:3731,27'
          Dst:             xrealloc
    - functionName:    set_pmd_auto_lb
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3659
      functionLinenumberEnd: 3681
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - bool
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          128
      EdgeCount:       27
      CyclomaticComplexity: 7
      functionsReached:
        - vlog
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:3669,13'
          Dst:             vlog
        - Src:             'lib/dpif-netdev.c:3678,13'
          Dst:             vlog
    - functionName:    dp_packet_swap
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 295
      functionLinenumberEnd: 302
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          69
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:296,5'
          Dst:             ovs_ignore
        - Src:             'lib/dp-packet.h:297,5'
          Dst:             ovs_ignore
    - functionName:    flow_del_on_pmd
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3327
      functionLinenumberEnd: 3344
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          68
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - dp_netdev_pmd_find_flow
        - dp_netdev_pmd_remove_flow
        - get_dpif_flow_status
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:3331,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-netdev.c:3332,19'
          Dst:             dp_netdev_pmd_find_flow
        - Src:             'lib/dpif-netdev.c:3336,13'
          Dst:             get_dpif_flow_status
        - Src:             'lib/dpif-netdev.c:3338,9'
          Dst:             dp_netdev_pmd_remove_flow
        - Src:             'lib/dpif-netdev.c:3342,5'
          Dst:             ovs_mutex_unlock
    - functionName:    dp_netdev_pmd_find_flow
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2548
      functionLinenumberEnd: 2570
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          132
      EdgeCount:       33
      CyclomaticComplexity: 10
      functionsReached:
        - cmap_find
        - cmap_node_next
        - dp_netdev_flow_hash
        - dpif_netdev_flow_from_nlattrs
        - odp_flow_key_hash
        - ovs_u128_equals
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:2555,13'
          Dst:             dpif_netdev_flow_from_nlattrs
        - Src:             'lib/dpif-netdev.c:2556,9'
          Dst:             odp_flow_key_hash
        - Src:             'lib/dpif-netdev.c:2561,9'
          Dst:             dp_netdev_flow_hash
        - Src:             'lib/dpif-netdev.c:2561,9'
          Dst:             cmap_find
        - Src:             'lib/dpif-netdev.c:2563,17'
          Dst:             ovs_u128_equals
        - Src:             'lib/dpif-netdev.c:2561,9'
          Dst:             cmap_node_next
    - functionName:    get_dpif_flow_status
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2577
      functionLinenumberEnd: 2612
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          177
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - dpif_offload_datapath_flow_stats
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:2596,9'
          Dst:             dpif_offload_datapath_flow_stats
    - functionName:    dp_netdev_pmd_remove_flow
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2117
      functionLinenumberEnd: 2132
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          65
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ccmap_dec
        - cmap_remove
        - dp_netdev_flow_hash
        - dp_netdev_flow_unref
        - dp_netdev_pmd_lookup_dpcls
        - dp_netdev_simple_match_remove
        - dpcls_remove
        - odp_to_u32
        - offload_flow_del
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:2122,11'
          Dst:             dp_netdev_pmd_lookup_dpcls
        - Src:             'lib/dpif-netdev.c:2123,5'
          Dst:             ovs_ignore
        - Src:             'lib/dpif-netdev.c:2124,5'
          Dst:             dpcls_remove
        - Src:             'lib/dpif-netdev.c:2125,5'
          Dst:             dp_netdev_simple_match_remove
        - Src:             'lib/dpif-netdev.c:2126,41'
          Dst:             dp_netdev_flow_hash
        - Src:             'lib/dpif-netdev.c:2126,5'
          Dst:             cmap_remove
        - Src:             'lib/dpif-netdev.c:2127,30'
          Dst:             odp_to_u32
        - Src:             'lib/dpif-netdev.c:2127,5'
          Dst:             ccmap_dec
        - Src:             'lib/dpif-netdev.c:2129,5'
          Dst:             offload_flow_del
        - Src:             'lib/dpif-netdev.c:2131,5'
          Dst:             dp_netdev_flow_unref
    - functionName:    dp_netdev_pmd_lookup_dpcls
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1870
      functionLinenumberEnd: 1880
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          74
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - cmap_find
        - cmap_node_next
        - hash_port_no
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:1872,21'
          Dst:             hash_port_no
        - Src:             'lib/dpif-netdev.c:1873,5'
          Dst:             cmap_find
        - Src:             'lib/dpif-netdev.c:1873,5'
          Dst:             cmap_node_next
    - functionName:    dpcls_remove
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9239
      functionLinenumberEnd: 9252
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - cmap_remove
        - dpcls_destroy_subtable
        - ovs_ignore
        - pvector_publish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:9242,5'
          Dst:             ovs_ignore
        - Src:             'lib/dpif-netdev.c:9246,9'
          Dst:             cmap_remove
        - Src:             'lib/dpif-netdev.c:9249,9'
          Dst:             dpcls_destroy_subtable
        - Src:             'lib/dpif-netdev.c:9250,9'
          Dst:             pvector_publish
    - functionName:    dp_netdev_simple_match_remove
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2910
      functionLinenumberEnd: 2932
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          109
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - ccmap_dec
        - cmap_remove
        - dp_netdev_flow_unref
        - dp_netdev_simple_match_lookup
        - dp_netdev_simple_match_mark
        - hash_uint64
        - odp_to_u32
        - vlog
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:2916,21'
          Dst:             dp_netdev_simple_match_mark
        - Src:             'lib/dpif-netdev.c:2918,21'
          Dst:             hash_uint64
        - Src:             'lib/dpif-netdev.c:2920,12'
          Dst:             dp_netdev_simple_match_lookup
        - Src:             'lib/dpif-netdev.c:2923,9'
          Dst:             vlog
        - Src:             'lib/dpif-netdev.c:2926,9'
          Dst:             cmap_remove
        - Src:             'lib/dpif-netdev.c:2929,41'
          Dst:             odp_to_u32
        - Src:             'lib/dpif-netdev.c:2929,9'
          Dst:             ccmap_dec
        - Src:             'lib/dpif-netdev.c:2930,9'
          Dst:             dp_netdev_flow_unref
    - functionName:    dp_netdev_flow_hash
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev-flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 126
      functionLinenumberEnd: 127
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    odp_to_u32
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 202
      functionLinenumberEnd: 203
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    13
      BranchProfiles:  []
      Callsites:       []
    - functionName:    offload_flow_del
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2076
      functionLinenumberEnd: 2111
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          90
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - dp_netdev_flow_ref
        - dpif_offload_datapath_flow_del
        - dpif_offload_enabled
        - offload_flow_del_resume
        - offload_queue_complete
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:2088,10'
          Dst:             dpif_offload_enabled
        - Src:             'lib/dpif-netdev.c:2098,5'
          Dst:             ovs_ignore
        - Src:             'lib/dpif-netdev.c:2099,10'
          Dst:             offload_queue_complete
        - Src:             'lib/dpif-netdev.c:2104,5'
          Dst:             dp_netdev_flow_ref
        - Src:             'lib/dpif-netdev.c:2109,13'
          Dst:             dpif_offload_datapath_flow_del
        - Src:             'lib/dpif-netdev.c:2110,5'
          Dst:             offload_flow_del_resume
    - functionName:    offload_flow_del_resume_cb
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2069
      functionLinenumberEnd: 2071
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - offload_flow_del_resume
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:2070,5'
          Dst:             offload_flow_del_resume
    - functionName:    offload_queue_complete
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2015
      functionLinenumberEnd: 2023
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          32
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_netdev_flow_ref
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2244
      functionLinenumberEnd: 2245
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_refcount_try_ref_rcu
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:2245,12'
          Dst:             ovs_refcount_try_ref_rcu
    - functionName:    offload_flow_del_resume
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2042
      functionLinenumberEnd: 2061
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          101
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - dp_netdev_flow_unref
        - vlog
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:2050,9'
          Dst:             vlog
        - Src:             'lib/dpif-netdev.c:2056,9'
          Dst:             dp_netdev_flow_unref
        - Src:             'lib/dpif-netdev.c:2060,5'
          Dst:             dp_netdev_flow_unref
    - functionName:    ovs_refcount_try_ref_rcu
      functionSourceFile: '/src/openvswitch/lib/ovs-atomic.h'
      linkageType:     InternalLinkage
      functionLinenumber: 613
      functionLinenumberEnd: 626
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          64
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_netdev_simple_match_mark
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2808
      functionLinenumberEnd: 2842
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - int
        - short
        - char
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          42
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htons
        - odp_to_u32
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:2835,24'
          Dst:             odp_to_u32
        - Src:             'lib/dpif-netdev.c:2842,47'
          Dst:             htons
    - functionName:    hash_uint64
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 165
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_uint64_basis
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:165,12'
          Dst:             hash_uint64_basis
    - functionName:    dp_netdev_simple_match_lookup
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2849
      functionLinenumberEnd: 2863
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - short
        - char
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          98
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - cmap_find
        - cmap_node_next
        - dp_netdev_simple_match_mark
        - hash_uint64
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:2850,21'
          Dst:             dp_netdev_simple_match_mark
        - Src:             'lib/dpif-netdev.c:2852,21'
          Dst:             hash_uint64
        - Src:             'lib/dpif-netdev.c:2856,5'
          Dst:             cmap_find
        - Src:             'lib/dpif-netdev.c:2856,5'
          Dst:             cmap_node_next
    - functionName:    hash_uint64_basis
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 159
      functionLinenumberEnd: 160
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_add64
        - hash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:160,24'
          Dst:             hash_add64
        - Src:             'lib/hash.h:160,12'
          Dst:             hash_finish
    - functionName:    hash_add64
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 113
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_add
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:114,21'
          Dst:             hash_add
        - Src:             'lib/hash.h:114,12'
          Dst:             hash_add
    - functionName:    dpcls_destroy_subtable
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9027
      functionLinenumberEnd: 9033
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          56
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - cmap_remove
        - dpcls_subtable_destroy_cb
        - ovsrcu_postpone__
        - pvector_remove
        - vlog
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:9028,5'
          Dst:             vlog
        - Src:             'lib/dpif-netdev.c:9029,5'
          Dst:             pvector_remove
        - Src:             'lib/dpif-netdev.c:9030,5'
          Dst:             cmap_remove
        - Src:             'lib/dpif-netdev.c:9032,5'
          Dst:             ovsrcu_postpone__
        - Src:             'lib/dpif-netdev.c:9032,5'
          Dst:             dpcls_subtable_destroy_cb
    - functionName:    pvector_publish
      functionSourceFile: '/src/openvswitch/lib/pvector.h'
      linkageType:     InternalLinkage
      functionLinenumber: 243
      functionLinenumberEnd: 247
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          28
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - pvector_publish__
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/pvector.h:245,9'
          Dst:             pvector_publish__
    - functionName:    dpcls_subtable_destroy_cb
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9010
      functionLinenumberEnd: 9014
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - cmap_destroy
        - ovsrcu_postpone__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:9011,5'
          Dst:             cmap_destroy
        - Src:             'lib/dpif-netdev.c:9012,5'
          Dst:             ovsrcu_postpone__
        - Src:             'lib/dpif-netdev.c:9013,5'
          Dst:             ovsrcu_postpone__
    - functionName:    hash_port_no
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1564
      functionLinenumberEnd: 1565
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_int
        - odp_to_u32
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:1565,21'
          Dst:             odp_to_u32
        - Src:             'lib/dpif-netdev.c:1565,12'
          Dst:             hash_int
    - functionName:    dpif_netdev_flow_from_nlattrs
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2706
      functionLinenumberEnd: 2733
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          95
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - ds_cstr
        - ds_destroy
        - ds_init
        - odp_flow_format
        - odp_flow_key_to_flow
        - vlog
        - vlog_should_drop
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:2707,9'
          Dst:             odp_flow_key_to_flow
        - Src:             'lib/dpif-netdev.c:2715,18'
          Dst:             vlog_should_drop
        - Src:             'lib/dpif-netdev.c:2718,17'
          Dst:             ds_init
        - Src:             'lib/dpif-netdev.c:2719,17'
          Dst:             odp_flow_format
        - Src:             'lib/dpif-netdev.c:2720,17'
          Dst:             ds_cstr
        - Src:             'lib/dpif-netdev.c:2720,17'
          Dst:             vlog
        - Src:             'lib/dpif-netdev.c:2721,17'
          Dst:             ds_destroy
    - functionName:    ovs_u128_equals
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 481
      functionLinenumberEnd: 482
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - size_t
        - size_t
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          37
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    flow_compare_3way
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 178
      functionLinenumberEnd: 179
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:179,12'
          Dst:             memcmp
    - functionName:    flow_equal
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 184
      functionLinenumberEnd: 185
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - flow_compare_3way
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:185,13'
          Dst:             flow_compare_3way
    - functionName:    flow_put_on_pmd
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3156
      functionLinenumberEnd: 3229
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         36
      ICount:          259
      EdgeCount:       45
      CyclomaticComplexity: 11
      functionsReached:
        - dp_netdev_actions_create
        - dp_netdev_actions_free
        - dp_netdev_flow_add
        - dp_netdev_flow_get_actions
        - dp_netdev_pmd_find_flow
        - dp_netdev_pmd_lookup_flow
        - flow_equal
        - get_dpif_flow_status
        - log_netdev_flow_change
        - offload_flow_put
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovsrcu_postpone__
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/dpif-netdev.c:3201,13'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/dpif-netdev.c:3164,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-netdev.c:3166,23'
          Dst:             dp_netdev_pmd_find_flow
        - Src:             'lib/dpif-netdev.c:3171,23'
          Dst:             dp_netdev_pmd_lookup_flow
        - Src:             'lib/dpif-netdev.c:3176,13'
          Dst:             dp_netdev_flow_add
        - Src:             'lib/dpif-netdev.c:3188,32'
          Dst:             flow_equal
        - Src:             'lib/dpif-netdev.c:3197,27'
          Dst:             dp_netdev_actions_create
        - Src:             'lib/dpif-netdev.c:3200,27'
          Dst:             dp_netdev_flow_get_actions
        - Src:             'lib/dpif-netdev.c:3203,13'
          Dst:             offload_flow_put
        - Src:             'lib/dpif-netdev.c:3205,13'
          Dst:             log_netdev_flow_change
        - Src:             'lib/dpif-netdev.c:3209,17'
          Dst:             get_dpif_flow_status
        - Src:             'lib/dpif-netdev.c:3223,13'
          Dst:             ovsrcu_postpone__
        - Src:             'lib/dpif-netdev.c:3223,13'
          Dst:             dp_netdev_actions_free
        - Src:             'lib/dpif-netdev.c:3228,5'
          Dst:             ovs_mutex_unlock
    - functionName:    dp_netdev_pmd_lookup_flow
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2529
      functionLinenumberEnd: 2541
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          72
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - dp_netdev_flow_cast
        - dp_netdev_pmd_lookup_dpcls
        - dpcls_lookup
        - flowmap_is_set
        - miniflow_get__
        - u32_to_odp
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:2532,37'
          Dst:             flowmap_is_set
        - Src:             'lib/dpif-netdev.c:2532,37'
          Dst:             miniflow_get__
        - Src:             'lib/dpif-netdev.c:2532,26'
          Dst:             u32_to_odp
        - Src:             'lib/dpif-netdev.c:2536,11'
          Dst:             dp_netdev_pmd_lookup_dpcls
        - Src:             'lib/dpif-netdev.c:2538,9'
          Dst:             dpcls_lookup
        - Src:             'lib/dpif-netdev.c:2539,23'
          Dst:             dp_netdev_flow_cast
    - functionName:    dp_netdev_flow_add
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3075
      functionLinenumberEnd: 3146
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          260
      EdgeCount:       23
      CyclomaticComplexity: 5
      functionsReached:
        - ccmap_inc
        - cmap_insert
        - count_1bits
        - dp_netdev_actions_create
        - dp_netdev_flow_hash
        - dp_netdev_flow_is_simple_match
        - dp_netdev_get_mega_ufid
        - dp_netdev_pmd_find_dpcls
        - dp_netdev_simple_match_insert
        - dpcls_insert
        - ds_destroy
        - ds_put_char
        - ds_put_cstr
        - ds_put_format
        - ds_steal_cstr
        - flowmap_are_set
        - log_netdev_flow_change
        - netdev_flow_key_init_masked
        - netdev_flow_mask_init
        - odp_to_u32
        - offload_flow_put
        - ovs_ignore
        - ovs_refcount_init
        - xmalloc
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/dpif-netdev.c:3114,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/dpif-netdev.c:3083,5'
          Dst:             ovs_ignore
        - Src:             'lib/dpif-netdev.c:3095,5'
          Dst:             netdev_flow_mask_init
        - Src:             'lib/dpif-netdev.c:3099,17'
          Dst:             flowmap_are_set
        - Src:             'lib/dpif-netdev.c:3100,20'
          Dst:             flowmap_are_set
        - Src:             'lib/dpif-netdev.c:3099,5'
          Dst:             ovs_ignore
        - Src:             'lib/dpif-netdev.c:3103,12'
          Dst:             xmalloc
        - Src:             'lib/dpif-netdev.c:3113,5'
          Dst:             ovs_refcount_init
        - Src:             'lib/dpif-netdev.c:3114,5'
          Dst:             dp_netdev_actions_create
        - Src:             'lib/dpif-netdev.c:3116,5'
          Dst:             dp_netdev_get_mega_ufid
        - Src:             'lib/dpif-netdev.c:3117,5'
          Dst:             netdev_flow_key_init_masked
        - Src:             'lib/dpif-netdev.c:3120,11'
          Dst:             dp_netdev_pmd_find_dpcls
        - Src:             'lib/dpif-netdev.c:3121,5'
          Dst:             dpcls_insert
        - Src:             'lib/dpif-netdev.c:3123,5'
          Dst:             ds_put_cstr
        - Src:             'lib/dpif-netdev.c:3126,13'
          Dst:             ds_put_char
        - Src:             'lib/dpif-netdev.c:3129,23'
          Dst:             count_1bits
        - Src:             'lib/dpif-netdev.c:3128,9'
          Dst:             ds_put_format
        - Src:             'lib/dpif-netdev.c:3131,5'
          Dst:             ds_put_char
        - Src:             'lib/dpif-netdev.c:3132,27'
          Dst:             ds_steal_cstr
        - Src:             'lib/dpif-netdev.c:3133,5'
          Dst:             ds_destroy
        - Src:             'lib/dpif-netdev.c:3136,17'
          Dst:             dp_netdev_flow_hash
        - Src:             'lib/dpif-netdev.c:3135,5'
          Dst:             cmap_insert
        - Src:             'lib/dpif-netdev.c:3137,30'
          Dst:             odp_to_u32
        - Src:             'lib/dpif-netdev.c:3137,5'
          Dst:             ccmap_inc
        - Src:             'lib/dpif-netdev.c:3139,9'
          Dst:             dp_netdev_flow_is_simple_match
        - Src:             'lib/dpif-netdev.c:3140,9'
          Dst:             dp_netdev_simple_match_insert
        - Src:             'lib/dpif-netdev.c:3143,5'
          Dst:             offload_flow_put
        - Src:             'lib/dpif-netdev.c:3144,5'
          Dst:             log_netdev_flow_change
    - functionName:    dp_netdev_actions_create
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4254
      functionLinenumberEnd: 4263
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - xmalloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:4257,22'
          Dst:             xmalloc
    - functionName:    offload_flow_put
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3037
      functionLinenumberEnd: 3067
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          116
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - dp_netdev_flow_ref
        - dpif_offload_datapath_flow_put
        - dpif_offload_enabled
        - offload_flow_put_resume
        - offload_queue_inc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:3056,10'
          Dst:             dpif_offload_enabled
        - Src:             'lib/dpif-netdev.c:3056,51'
          Dst:             offload_queue_inc
        - Src:             'lib/dpif-netdev.c:3060,5'
          Dst:             dp_netdev_flow_ref
        - Src:             'lib/dpif-netdev.c:3062,13'
          Dst:             dpif_offload_datapath_flow_put
        - Src:             'lib/dpif-netdev.c:3064,5'
          Dst:             offload_flow_put_resume
    - functionName:    log_netdev_flow_change
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1908
      functionLinenumberEnd: 1965
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          184
      EdgeCount:       27
      CyclomaticComplexity: 7
      functionsReached:
        - ds_clear
        - ds_cstr
        - ds_destroy
        - ds_put_cstr
        - format_odp_actions
        - match_format
        - miniflow_expand
        - odp_flow_format
        - odp_flow_key_from_flow
        - odp_flow_key_from_mask
        - odp_format_ufid
        - ofpbuf_init
        - ofpbuf_uninit
        - vlog
        - vlog_should_drop
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:1917,9'
          Dst:             vlog_should_drop
        - Src:             'lib/dpif-netdev.c:1921,5'
          Dst:             ofpbuf_init
        - Src:             'lib/dpif-netdev.c:1922,5'
          Dst:             ofpbuf_init
        - Src:             'lib/dpif-netdev.c:1924,5'
          Dst:             odp_flow_key_from_flow
        - Src:             'lib/dpif-netdev.c:1926,5'
          Dst:             odp_flow_key_from_mask
        - Src:             'lib/dpif-netdev.c:1929,9'
          Dst:             ds_put_cstr
        - Src:             'lib/dpif-netdev.c:1931,9'
          Dst:             ds_put_cstr
        - Src:             'lib/dpif-netdev.c:1933,5'
          Dst:             odp_format_ufid
        - Src:             'lib/dpif-netdev.c:1934,5'
          Dst:             ds_put_cstr
        - Src:             'lib/dpif-netdev.c:1935,5'
          Dst:             odp_format_ufid
        - Src:             'lib/dpif-netdev.c:1936,5'
          Dst:             ds_put_cstr
        - Src:             'lib/dpif-netdev.c:1937,5'
          Dst:             odp_flow_format
        - Src:             'lib/dpif-netdev.c:1941,9'
          Dst:             ds_put_cstr
        - Src:             'lib/dpif-netdev.c:1942,9'
          Dst:             format_odp_actions
        - Src:             'lib/dpif-netdev.c:1945,5'
          Dst:             ds_put_cstr
        - Src:             'lib/dpif-netdev.c:1946,5'
          Dst:             format_odp_actions
        - Src:             'lib/dpif-netdev.c:1948,5'
          Dst:             ds_cstr
        - Src:             'lib/dpif-netdev.c:1948,5'
          Dst:             vlog
        - Src:             'lib/dpif-netdev.c:1950,5'
          Dst:             ofpbuf_uninit
        - Src:             'lib/dpif-netdev.c:1951,5'
          Dst:             ofpbuf_uninit
        - Src:             'lib/dpif-netdev.c:1955,5'
          Dst:             ds_clear
        - Src:             'lib/dpif-netdev.c:1956,5'
          Dst:             ds_put_cstr
        - Src:             'lib/dpif-netdev.c:1957,5'
          Dst:             miniflow_expand
        - Src:             'lib/dpif-netdev.c:1958,5'
          Dst:             miniflow_expand
        - Src:             'lib/dpif-netdev.c:1960,5'
          Dst:             match_format
        - Src:             'lib/dpif-netdev.c:1962,5'
          Dst:             ds_cstr
        - Src:             'lib/dpif-netdev.c:1962,5'
          Dst:             vlog
        - Src:             'lib/dpif-netdev.c:1964,5'
          Dst:             ds_destroy
    - functionName:    offload_flow_put_resume_cb
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3024
      functionLinenumberEnd: 3031
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          38
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - offload_flow_put_resume
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:3029,5'
          Dst:             offload_flow_put_resume
    - functionName:    offload_queue_inc
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1978
      functionLinenumberEnd: 1996
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          62
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    offload_flow_put_resume
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2980
      functionLinenumberEnd: 3017
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          114
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - dp_netdev_flow_unref
        - offload_flow_del
        - offload_queue_dec
        - vlog
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:3000,9'
          Dst:             dp_netdev_flow_unref
        - Src:             'lib/dpif-netdev.c:3003,9'
          Dst:             offload_queue_dec
        - Src:             'lib/dpif-netdev.c:3008,9'
          Dst:             offload_flow_del
        - Src:             'lib/dpif-netdev.c:3012,9'
          Dst:             dp_netdev_flow_unref
        - Src:             'lib/dpif-netdev.c:3014,13'
          Dst:             vlog
    - functionName:    offload_queue_dec
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2000
      functionLinenumberEnd: 2011
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:2004,5'
          Dst:             ovs_ignore
    - functionName:    netdev_flow_mask_init
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2280
      functionLinenumberEnd: 2310
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          138
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - flow_u64_value
        - flow_wc_map
        - flowmap_init
        - flowmap_next_index
        - flowmap_set
        - hash_add64
        - hash_finish
        - miniflow_get_values
        - miniflow_values
        - netdev_flow_key_size
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:2281,21'
          Dst:             miniflow_values
        - Src:             'lib/dpif-netdev.c:2287,5'
          Dst:             flow_wc_map
        - Src:             'lib/dpif-netdev.c:2288,5'
          Dst:             flowmap_init
        - Src:             'lib/dpif-netdev.c:2290,5'
          Dst:             flowmap_next_index
        - Src:             'lib/dpif-netdev.c:2291,29'
          Dst:             flow_u64_value
        - Src:             'lib/dpif-netdev.c:2294,13'
          Dst:             flowmap_set
        - Src:             'lib/dpif-netdev.c:2296,20'
          Dst:             hash_add64
        - Src:             'lib/dpif-netdev.c:2303,16'
          Dst:             hash_add64
        - Src:             'lib/dpif-netdev.c:2306,22'
          Dst:             miniflow_get_values
        - Src:             'lib/dpif-netdev.c:2308,18'
          Dst:             hash_finish
        - Src:             'lib/dpif-netdev.c:2309,17'
          Dst:             netdev_flow_key_size
    - functionName:    flowmap_are_set
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 363
      functionLinenumberEnd: 379
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          82
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_refcount_init
      functionSourceFile: '/src/openvswitch/lib/ovs-atomic.h'
      linkageType:     InternalLinkage
      functionLinenumber: 529
      functionLinenumberEnd: 531
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_netdev_get_mega_ufid
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2788
      functionLinenumberEnd: 2803
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          64
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - odp_flow_key_hash
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:2802,5'
          Dst:             odp_flow_key_hash
    - functionName:    netdev_flow_key_init_masked
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2317
      functionLinenumberEnd: 2332
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          93
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - flow_values_get_next_in_maps
        - hash_add64
        - hash_finish
        - miniflow_get_values
        - miniflow_values
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:2318,25'
          Dst:             miniflow_values
        - Src:             'lib/dpif-netdev.c:2319,32'
          Dst:             miniflow_get_values
        - Src:             'lib/dpif-netdev.c:2326,5'
          Dst:             flow_values_get_next_in_maps
        - Src:             'lib/dpif-netdev.c:2328,16'
          Dst:             hash_add64
        - Src:             'lib/dpif-netdev.c:2331,40'
          Dst:             miniflow_get_values
        - Src:             'lib/dpif-netdev.c:2330,17'
          Dst:             hash_finish
    - functionName:    dp_netdev_pmd_find_dpcls
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1886
      functionLinenumberEnd: 1899
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          71
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - cmap_insert
        - dp_netdev_pmd_lookup_dpcls
        - dpcls_init
        - hash_port_no
        - vlog
        - xmalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:1887,25'
          Dst:             dp_netdev_pmd_lookup_dpcls
        - Src:             'lib/dpif-netdev.c:1890,25'
          Dst:             hash_port_no
        - Src:             'lib/dpif-netdev.c:1893,15'
          Dst:             xmalloc
        - Src:             'lib/dpif-netdev.c:1894,9'
          Dst:             dpcls_init
        - Src:             'lib/dpif-netdev.c:1896,9'
          Dst:             cmap_insert
        - Src:             'lib/dpif-netdev.c:1897,9'
          Dst:             vlog
    - functionName:    dpcls_insert
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9228
      functionLinenumberEnd: 9234
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - cmap_insert
        - dpcls_find_subtable
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:9229,39'
          Dst:             dpcls_find_subtable
        - Src:             'lib/dpif-netdev.c:9233,5'
          Dst:             cmap_insert
    - functionName:    ds_put_char
      functionSourceFile: '/src/openvswitch/./include/openvswitch/dynamic-string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_char__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/dynamic-string.h:99,9'
          Dst:             ds_put_char__
    - functionName:    count_1bits
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 332
      functionLinenumberEnd: 347
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          37
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_netdev_flow_is_simple_match
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2936
      functionLinenumberEnd: 2974
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          125
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - flow_wildcards_has_extra
        - flow_wildcards_init_catchall
        - htonl
        - htons
        - xmalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:2940,49'
          Dst:             htonl
        - Src:             'lib/dpif-netdev.c:2947,38'
          Dst:             xmalloc
        - Src:             'lib/dpif-netdev.c:2948,30'
          Dst:             htons
        - Src:             'lib/dpif-netdev.c:2950,5'
          Dst:             flow_wildcards_init_catchall
        - Src:             'lib/dpif-netdev.c:2966,9'
          Dst:             flow_wildcards_has_extra
    - functionName:    dp_netdev_simple_match_insert
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2878
      functionLinenumberEnd: 2904
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          101
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ccmap_inc
        - cmap_insert
        - dp_netdev_flow_ref
        - dp_netdev_simple_match_mark
        - dp_netdev_simple_match_remove
        - hash_uint64
        - odp_to_u32
        - vlog
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:2884,10'
          Dst:             dp_netdev_flow_ref
        - Src:             'lib/dpif-netdev.c:2889,5'
          Dst:             dp_netdev_simple_match_remove
        - Src:             'lib/dpif-netdev.c:2891,21'
          Dst:             dp_netdev_simple_match_mark
        - Src:             'lib/dpif-netdev.c:2893,21'
          Dst:             hash_uint64
        - Src:             'lib/dpif-netdev.c:2896,5'
          Dst:             cmap_insert
        - Src:             'lib/dpif-netdev.c:2899,37'
          Dst:             odp_to_u32
        - Src:             'lib/dpif-netdev.c:2899,5'
          Dst:             ccmap_inc
        - Src:             'lib/dpif-netdev.c:2901,5'
          Dst:             vlog
    - functionName:    dpcls_find_subtable
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9092
      functionLinenumberEnd: 9102
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          73
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - cmap_find
        - cmap_node_next
        - dpcls_create_subtable
        - netdev_flow_key_equal
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:9095,5'
          Dst:             cmap_find
        - Src:             'lib/dpif-netdev.c:9097,13'
          Dst:             netdev_flow_key_equal
        - Src:             'lib/dpif-netdev.c:9095,5'
          Dst:             cmap_node_next
        - Src:             'lib/dpif-netdev.c:9101,12'
          Dst:             dpcls_create_subtable
    - functionName:    netdev_flow_key_equal
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2263
      functionLinenumberEnd: 2265
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - memcmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:2265,35'
          Dst:             memcmp
    - functionName:    dpcls_create_subtable
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9055
      functionLinenumberEnd: 9087
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          128
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - cmap_count
        - cmap_init
        - cmap_insert
        - count_1bits
        - dpcls_flow_key_gen_masks
        - dpcls_subtable_lookup_probe
        - netdev_flow_key_clone
        - pvector_insert
        - pvector_publish
        - vlog
        - xmalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:9059,16'
          Dst:             xmalloc
        - Src:             'lib/dpif-netdev.c:9061,5'
          Dst:             cmap_init
        - Src:             'lib/dpif-netdev.c:9063,5'
          Dst:             netdev_flow_key_clone
        - Src:             'lib/dpif-netdev.c:9068,22'
          Dst:             count_1bits
        - Src:             'lib/dpif-netdev.c:9069,22'
          Dst:             count_1bits
        - Src:             'lib/dpif-netdev.c:9072,26'
          Dst:             xmalloc
        - Src:             'lib/dpif-netdev.c:9073,5'
          Dst:             dpcls_flow_key_gen_masks
        - Src:             'lib/dpif-netdev.c:9078,29'
          Dst:             dpcls_subtable_lookup_probe
        - Src:             'lib/dpif-netdev.c:9080,5'
          Dst:             cmap_insert
        - Src:             'lib/dpif-netdev.c:9082,5'
          Dst:             pvector_insert
        - Src:             'lib/dpif-netdev.c:9083,5'
          Dst:             cmap_count
        - Src:             'lib/dpif-netdev.c:9083,5'
          Dst:             vlog
        - Src:             'lib/dpif-netdev.c:9085,5'
          Dst:             pvector_publish
    - functionName:    netdev_flow_key_clone
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2271
      functionLinenumberEnd: 2274
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpcls_flow_key_gen_masks
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9282
      functionLinenumberEnd: 9288
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          49
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dpcls_flow_key_gen_mask_unit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:9286,5'
          Dst:             dpcls_flow_key_gen_mask_unit
        - Src:             'lib/dpif-netdev.c:9287,5'
          Dst:             dpcls_flow_key_gen_mask_unit
    - functionName:    dpcls_flow_key_gen_mask_unit
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9258
      functionLinenumberEnd: 9267
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          59
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:9266,5'
          Dst:             ovs_ignore
    - functionName:    dpcls_init
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9020
      functionLinenumberEnd: 9023
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - cmap_init
        - pvector_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:9021,5'
          Dst:             cmap_init
        - Src:             'lib/dpif-netdev.c:9022,5'
          Dst:             pvector_init
    - functionName:    miniflow_values
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 530
      functionLinenumberEnd: 531
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    miniflow_get_values
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 535
      functionLinenumberEnd: 536
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    flow_values_get_next_in_maps
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 580
      functionLinenumberEnd: 588
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - flow_u64_value
        - flowmap_next_index
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:583,9'
          Dst:             flowmap_next_index
        - Src:             'lib/flow.h:584,18'
          Dst:             flow_u64_value
    - functionName:    flowmap_next_index
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 479
      functionLinenumberEnd: 491
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          69
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - raw_ctz
        - zero_rightmost_1bit
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:483,45'
          Dst:             raw_ctz
        - Src:             'lib/flow.h:484,20'
          Dst:             zero_rightmost_1bit
    - functionName:    flow_u64_value
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 557
      functionLinenumberEnd: 558
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    raw_ctz
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 261
      functionLinenumberEnd: 267
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          36
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    zero_rightmost_1bit
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 390
      functionLinenumberEnd: 391
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    flowmap_init
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 343
      functionLinenumberEnd: 345
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    flowmap_set
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 385
      functionLinenumberEnd: 399
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          69
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_flow_key_size
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev-flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 134
      functionLinenumberEnd: 135
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    flowmap_is_set
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 355
      functionLinenumberEnd: 356
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          20
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    miniflow_get__
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 678
      functionLinenumberEnd: 686
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - count_1bits
        - miniflow_get_values
        - miniflow_values_get__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:679,30'
          Dst:             miniflow_get_values
        - Src:             'lib/flow.h:684,19'
          Dst:             count_1bits
        - Src:             'lib/flow.h:686,12'
          Dst:             miniflow_values_get__
    - functionName:    u32_to_odp
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 220
      functionLinenumberEnd: 221
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpcls_lookup
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9322
      functionLinenumberEnd: 9371
      functionDepth:   0
      returnType:      bool
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          131
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - count_1bits
        - pvector_cursor_init
        - pvector_cursor_next
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:9347,5'
          Dst:             pvector_cursor_init
        - Src:             'lib/dpif-netdev.c:9347,5'
          Dst:             pvector_cursor_next
        - Src:             'lib/dpif-netdev.c:9353,33'
          Dst:             count_1bits
    - functionName:    dp_netdev_flow_cast
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2239
      functionLinenumberEnd: 2240
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          20
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pvector_cursor_init
      functionSourceFile: '/src/openvswitch/lib/pvector.h'
      linkageType:     InternalLinkage
      functionLinenumber: 183
      functionLinenumberEnd: 204
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          82
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_prefetch_range
        - pvector_cursor_lookahead
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/pvector.h:194,5'
          Dst:             ovs_prefetch_range
        - Src:             'lib/pvector.h:202,9'
          Dst:             pvector_cursor_lookahead
    - functionName:    pvector_cursor_next
      functionSourceFile: '/src/openvswitch/lib/pvector.h'
      linkageType:     InternalLinkage
      functionLinenumber: 210
      functionLinenumberEnd: 219
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          83
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - pvector_cursor_lookahead
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/pvector.h:214,13'
          Dst:             pvector_cursor_lookahead
    - functionName:    miniflow_values_get__
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 670
      functionLinenumberEnd: 671
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - count_1bits
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:671,21'
          Dst:             count_1bits
    - functionName:    netdev_flow_key_init
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2338
      functionLinenumberEnd: 2353
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          71
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - flow_values_get_next_in_maps
        - hash_add64
        - hash_finish
        - miniflow_init
        - miniflow_map_init
        - miniflow_n_values
        - netdev_flow_key_size
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:2342,5'
          Dst:             miniflow_map_init
        - Src:             'lib/dpif-netdev.c:2343,5'
          Dst:             miniflow_init
        - Src:             'lib/dpif-netdev.c:2345,16'
          Dst:             miniflow_n_values
        - Src:             'lib/dpif-netdev.c:2347,5'
          Dst:             flow_values_get_next_in_maps
        - Src:             'lib/dpif-netdev.c:2348,16'
          Dst:             hash_add64
        - Src:             'lib/dpif-netdev.c:2351,17'
          Dst:             hash_finish
        - Src:             'lib/dpif-netdev.c:2352,16'
          Dst:             netdev_flow_key_size
    - functionName:    miniflow_n_values
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 568
      functionLinenumberEnd: 569
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - flowmap_n_1bits
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:569,12'
          Dst:             flowmap_n_1bits
    - functionName:    flowmap_n_1bits
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 462
      functionLinenumberEnd: 469
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          45
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - count_1bits
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:467,20'
          Dst:             count_1bits
    - functionName:    dpif_netdev_mask_from_nlattrs
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2673
      functionLinenumberEnd: 2701
      functionDepth:   0
      returnType:      int
      argCount:        7
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          97
      EdgeCount:       21
      CyclomaticComplexity: 6
      functionsReached:
        - ds_cstr
        - ds_destroy
        - ds_init
        - odp_flow_format
        - odp_flow_key_to_mask
        - odp_key_fitness_to_string
        - vlog
        - vlog_should_drop
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:2676,15'
          Dst:             odp_flow_key_to_mask
        - Src:             'lib/dpif-netdev.c:2685,18'
          Dst:             vlog_should_drop
        - Src:             'lib/dpif-netdev.c:2688,17'
          Dst:             ds_init
        - Src:             'lib/dpif-netdev.c:2689,17'
          Dst:             odp_flow_format
        - Src:             'lib/dpif-netdev.c:2691,17'
          Dst:             ds_cstr
        - Src:             'lib/dpif-netdev.c:2691,17'
          Dst:             odp_key_fitness_to_string
        - Src:             'lib/dpif-netdev.c:2691,17'
          Dst:             vlog
        - Src:             'lib/dpif-netdev.c:2693,17'
          Dst:             ds_destroy
    - functionName:    dpif_netdev_flow_get
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2737
      functionLinenumberEnd: 2783
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         40
      ICount:          241
      EdgeCount:       52
      CyclomaticComplexity: 14
      functionsReached:
        - cmap_cursor_advance
        - cmap_cursor_start
        - dp_netdev_flow_to_dpif_flow
        - dp_netdev_get_pmd
        - dp_netdev_pmd_find_flow
        - dp_netdev_pmd_try_ref
        - dp_netdev_pmd_unref
        - get_dp_netdev
        - hmap_first
        - hmap_next
        - hmapx_add
        - hmapx_count
        - hmapx_destroy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:2738,28'
          Dst:             get_dp_netdev
        - Src:             'lib/dpif-netdev.c:2746,9'
          Dst:             cmap_cursor_start
        - Src:             'lib/dpif-netdev.c:2746,9'
          Dst:             cmap_cursor_advance
        - Src:             'lib/dpif-netdev.c:2747,17'
          Dst:             dp_netdev_pmd_try_ref
        - Src:             'lib/dpif-netdev.c:2747,48'
          Dst:             hmapx_add
        - Src:             'lib/dpif-netdev.c:2748,17'
          Dst:             dp_netdev_pmd_unref
        - Src:             'lib/dpif-netdev.c:2752,15'
          Dst:             dp_netdev_get_pmd
        - Src:             'lib/dpif-netdev.c:2756,9'
          Dst:             hmapx_add
        - Src:             'lib/dpif-netdev.c:2759,10'
          Dst:             hmapx_count
        - Src:             'lib/dpif-netdev.c:2763,5'
          Dst:             hmap_first
        - Src:             'lib/dpif-netdev.c:2765,23'
          Dst:             dp_netdev_pmd_find_flow
        - Src:             'lib/dpif-netdev.c:2768,13'
          Dst:             dp_netdev_flow_to_dpif_flow
        - Src:             'lib/dpif-netdev.c:2763,5'
          Dst:             hmap_next
        - Src:             'lib/dpif-netdev.c:2777,5'
          Dst:             hmap_first
        - Src:             'lib/dpif-netdev.c:2779,9'
          Dst:             dp_netdev_pmd_unref
        - Src:             'lib/dpif-netdev.c:2777,5'
          Dst:             hmap_next
        - Src:             'lib/dpif-netdev.c:2782,5'
          Dst:             hmapx_destroy
    - functionName:    get_dp_netdev
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 621
      functionLinenumberEnd: 622
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dpif_netdev_cast
      functionUses:    49
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:622,12'
          Dst:             dpif_netdev_cast
    - functionName:    dp_netdev_pmd_try_ref
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6649
      functionLinenumberEnd: 6650
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_refcount_try_ref_rcu
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:6650,12'
          Dst:             ovs_refcount_try_ref_rcu
    - functionName:    dp_netdev_pmd_unref
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6655
      functionLinenumberEnd: 6659
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          36
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - dp_netdev_destroy_pmd
        - ovs_refcount_unref
        - ovsrcu_postpone__
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:6656,16'
          Dst:             ovs_refcount_unref
        - Src:             'lib/dpif-netdev.c:6657,9'
          Dst:             ovsrcu_postpone__
        - Src:             'lib/dpif-netdev.c:6657,9'
          Dst:             dp_netdev_destroy_pmd
    - functionName:    dp_netdev_get_pmd
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6622
      functionLinenumberEnd: 6633
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          80
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - cmap_find
        - cmap_node_next
        - dp_netdev_pmd_try_ref
        - hash_int
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:6625,5'
          Dst:             hash_int
        - Src:             'lib/dpif-netdev.c:6625,5'
          Dst:             cmap_find
        - Src:             'lib/dpif-netdev.c:6628,20'
          Dst:             dp_netdev_pmd_try_ref
        - Src:             'lib/dpif-netdev.c:6625,5'
          Dst:             cmap_node_next
    - functionName:    hmap_first
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 416
      functionLinenumberEnd: 417
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next__
      functionUses:    38
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:417,12'
          Dst:             hmap_next__
    - functionName:    dp_netdev_flow_to_dpif_flow
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2623
      functionLinenumberEnd: 2666
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          155
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_netdev_flow_get_actions
        - get_dpif_flow_status
        - miniflow_expand
        - odp_flow_key_from_flow
        - odp_flow_key_from_mask
        - ofpbuf_tail
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:2636,9'
          Dst:             miniflow_expand
        - Src:             'lib/dpif-netdev.c:2643,21'
          Dst:             ofpbuf_tail
        - Src:             'lib/dpif-netdev.c:2644,9'
          Dst:             odp_flow_key_from_flow
        - Src:             'lib/dpif-netdev.c:2649,22'
          Dst:             ofpbuf_tail
        - Src:             'lib/dpif-netdev.c:2651,9'
          Dst:             odp_flow_key_from_mask
        - Src:             'lib/dpif-netdev.c:2655,19'
          Dst:             dp_netdev_flow_get_actions
        - Src:             'lib/dpif-netdev.c:2664,5'
          Dst:             get_dpif_flow_status
    - functionName:    hmap_next
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 429
      functionLinenumberEnd: 432
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_next__
      functionUses:    38
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:432,15'
          Dst:             hmap_next__
    - functionName:    ofpbuf_tail
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 203
      functionLinenumberEnd: 205
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          56
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:204,5'
          Dst:             ovs_ignore
    - functionName:    ovs_refcount_unref
      functionSourceFile: '/src/openvswitch/lib/ovs-atomic.h'
      linkageType:     InternalLinkage
      functionLinenumber: 562
      functionLinenumberEnd: 576
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-atomic.h:567,5'
          Dst:             ovs_ignore
    - functionName:    dp_netdev_destroy_pmd
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6735
      functionLinenumberEnd: 6760
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          103
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ccmap_destroy
        - cmap_cursor_advance
        - cmap_cursor_start
        - cmap_destroy
        - dp_netdev_pmd_flow_flush
        - dpcls_destroy
        - hmap_destroy
        - ovs_mutex_destroy
        - ovsrcu_postpone__
        - seq_destroy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:6738,5'
          Dst:             dp_netdev_pmd_flow_flush
        - Src:             'lib/dpif-netdev.c:6739,5'
          Dst:             hmap_destroy
        - Src:             'lib/dpif-netdev.c:6740,5'
          Dst:             hmap_destroy
        - Src:             'lib/dpif-netdev.c:6741,5'
          Dst:             hmap_destroy
        - Src:             'lib/dpif-netdev.c:6742,5'
          Dst:             cmap_destroy
        - Src:             'lib/dpif-netdev.c:6743,5'
          Dst:             hmap_destroy
        - Src:             'lib/dpif-netdev.c:6746,5'
          Dst:             cmap_cursor_start
        - Src:             'lib/dpif-netdev.c:6746,5'
          Dst:             cmap_cursor_advance
        - Src:             'lib/dpif-netdev.c:6747,9'
          Dst:             dpcls_destroy
        - Src:             'lib/dpif-netdev.c:6748,9'
          Dst:             ovsrcu_postpone__
        - Src:             'lib/dpif-netdev.c:6750,5'
          Dst:             cmap_destroy
        - Src:             'lib/dpif-netdev.c:6751,5'
          Dst:             cmap_destroy
        - Src:             'lib/dpif-netdev.c:6752,5'
          Dst:             cmap_destroy
        - Src:             'lib/dpif-netdev.c:6753,5'
          Dst:             ccmap_destroy
        - Src:             'lib/dpif-netdev.c:6754,5'
          Dst:             ccmap_destroy
        - Src:             'lib/dpif-netdev.c:6755,5'
          Dst:             ovs_mutex_destroy
        - Src:             'lib/dpif-netdev.c:6756,5'
          Dst:             seq_destroy
        - Src:             'lib/dpif-netdev.c:6757,5'
          Dst:             ovs_mutex_destroy
        - Src:             'lib/dpif-netdev.c:6758,5'
          Dst:             ovs_mutex_destroy
    - functionName:    dp_netdev_pmd_flow_flush
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2136
      functionLinenumberEnd: 2144
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          57
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - cmap_cursor_advance
        - cmap_cursor_start
        - dp_netdev_pmd_remove_flow
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:2139,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-netdev.c:2140,5'
          Dst:             cmap_cursor_start
        - Src:             'lib/dpif-netdev.c:2140,5'
          Dst:             cmap_cursor_advance
        - Src:             'lib/dpif-netdev.c:2141,9'
          Dst:             dp_netdev_pmd_remove_flow
        - Src:             'lib/dpif-netdev.c:2143,5'
          Dst:             ovs_mutex_unlock
    - functionName:    dpcls_destroy
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9040
      functionLinenumberEnd: 9051
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          71
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - cmap_count
        - cmap_cursor_advance
        - cmap_cursor_start
        - cmap_destroy
        - dpcls_destroy_subtable
        - ovs_ignore
        - pvector_destroy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:9044,9'
          Dst:             cmap_cursor_start
        - Src:             'lib/dpif-netdev.c:9044,9'
          Dst:             cmap_cursor_advance
        - Src:             'lib/dpif-netdev.c:9045,24'
          Dst:             cmap_count
        - Src:             'lib/dpif-netdev.c:9045,13'
          Dst:             ovs_ignore
        - Src:             'lib/dpif-netdev.c:9046,13'
          Dst:             dpcls_destroy_subtable
        - Src:             'lib/dpif-netdev.c:9048,9'
          Dst:             cmap_destroy
        - Src:             'lib/dpif-netdev.c:9049,9'
          Dst:             pvector_destroy
    - functionName:    dpif_netdev_cast
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 614
      functionLinenumberEnd: 616
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dpif_is_netdev
        - ovs_ignore
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:615,16'
          Dst:             dpif_is_netdev
        - Src:             'lib/dpif-netdev.c:615,5'
          Dst:             ovs_ignore
    - functionName:    dpif_is_netdev
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 608
      functionLinenumberEnd: 609
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_netdev_open
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1370
      functionLinenumberEnd: 1388
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          85
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - create_dp_netdev
        - create_dpif_netdev
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - shash_find_data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:1374,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-netdev.c:1375,10'
          Dst:             shash_find_data
        - Src:             'lib/dpif-netdev.c:1377,26'
          Dst:             create_dp_netdev
        - Src:             'lib/dpif-netdev.c:1384,18'
          Dst:             create_dpif_netdev
        - Src:             'lib/dpif-netdev.c:1386,5'
          Dst:             ovs_mutex_unlock
    - functionName:    create_dp_netdev
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1275
      functionLinenumberEnd: 1353
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          208
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - atomic_flag_clear
        - cmap_init
        - conntrack_init
        - do_add_port
        - dp_netdev_disable_upcall
        - dp_netdev_free
        - dp_netdev_set_nonpmd
        - dpif_netdev_class_is_dummy
        - dpif_netdev_port_open_type
        - fat_rwlock_init
        - hmap_init
        - id_pool_create
        - ovs_mutex_init
        - ovs_mutex_init_recursive
        - ovs_numa_get_n_cores
        - ovs_refcount_init
        - ovs_rwlock_init
        - ovs_rwlock_unlock
        - ovs_rwlock_wrlock_at
        - ovsthread_key_create
        - ovsthread_once_done
        - ovsthread_once_start
        - pmd_perf_estimate_tsc_frequency
        - seq_create
        - seq_read
        - shash_add
        - xasprintf
        - xstrdup
        - xzalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:1282,10'
          Dst:             dpif_netdev_class_is_dummy
        - Src:             'lib/dpif-netdev.c:1283,12'
          Dst:             ovsthread_once_start
        - Src:             'lib/dpif-netdev.c:1284,9'
          Dst:             pmd_perf_estimate_tsc_frequency
        - Src:             'lib/dpif-netdev.c:1285,9'
          Dst:             ovsthread_once_done
        - Src:             'lib/dpif-netdev.c:1288,10'
          Dst:             xzalloc
        - Src:             'lib/dpif-netdev.c:1289,5'
          Dst:             shash_add
        - Src:             'lib/dpif-netdev.c:1292,45'
          Dst:             xstrdup
        - Src:             'lib/dpif-netdev.c:1293,50'
          Dst:             xasprintf
        - Src:             'lib/dpif-netdev.c:1295,5'
          Dst:             ovs_refcount_init
        - Src:             'lib/dpif-netdev.c:1296,5'
          Dst:             atomic_flag_clear
        - Src:             'lib/dpif-netdev.c:1298,5'
          Dst:             ovs_rwlock_init
        - Src:             'lib/dpif-netdev.c:1299,5'
          Dst:             hmap_init
        - Src:             'lib/dpif-netdev.c:1300,20'
          Dst:             seq_create
        - Src:             'lib/dpif-netdev.c:1301,5'
          Dst:             ovs_mutex_init
        - Src:             'lib/dpif-netdev.c:1302,5'
          Dst:             cmap_init
        - Src:             'lib/dpif-netdev.c:1304,5'
          Dst:             fat_rwlock_init
        - Src:             'lib/dpif-netdev.c:1306,27'
          Dst:             seq_create
        - Src:             'lib/dpif-netdev.c:1307,32'
          Dst:             seq_read
        - Src:             'lib/dpif-netdev.c:1311,5'
          Dst:             cmap_init
        - Src:             'lib/dpif-netdev.c:1312,5'
          Dst:             ovs_mutex_init
        - Src:             'lib/dpif-netdev.c:1315,5'
          Dst:             dp_netdev_disable_upcall
        - Src:             'lib/dpif-netdev.c:1319,21'
          Dst:             conntrack_init
        - Src:             'lib/dpif-netdev.c:1324,5'
          Dst:             cmap_init
        - Src:             'lib/dpif-netdev.c:1327,5'
          Dst:             ovs_mutex_init
        - Src:             'lib/dpif-netdev.c:1329,41'
          Dst:             ovs_numa_get_n_cores
        - Src:             'lib/dpif-netdev.c:1329,23'
          Dst:             id_pool_create
        - Src:             'lib/dpif-netdev.c:1331,5'
          Dst:             ovs_mutex_init_recursive
        - Src:             'lib/dpif-netdev.c:1332,5'
          Dst:             ovsthread_key_create
        - Src:             'lib/dpif-netdev.c:1334,5'
          Dst:             ovs_rwlock_wrlock_at
        - Src:             'lib/dpif-netdev.c:1337,5'
          Dst:             dp_netdev_set_nonpmd
        - Src:             'lib/dpif-netdev.c:1339,35'
          Dst:             dpif_netdev_port_open_type
        - Src:             'lib/dpif-netdev.c:1339,13'
          Dst:             do_add_port
        - Src:             'lib/dpif-netdev.c:1342,5'
          Dst:             ovs_rwlock_unlock
        - Src:             'lib/dpif-netdev.c:1344,9'
          Dst:             dp_netdev_free
        - Src:             'lib/dpif-netdev.c:1350,29'
          Dst:             seq_read
    - functionName:    create_dpif_netdev
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1157
      functionLinenumberEnd: 1168
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          54
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dpif_init
        - hash_string
        - ovs_refcount_ref
        - seq_read
        - xmalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:1158,27'
          Dst:             hash_string
        - Src:             'lib/dpif-netdev.c:1161,5'
          Dst:             ovs_refcount_ref
        - Src:             'lib/dpif-netdev.c:1163,12'
          Dst:             xmalloc
        - Src:             'lib/dpif-netdev.c:1164,5'
          Dst:             dpif_init
        - Src:             'lib/dpif-netdev.c:1166,27'
          Dst:             seq_read
    - functionName:    hash_string
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 403
      functionLinenumberEnd: 404
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_bytes
        - strlen
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:404,26'
          Dst:             strlen
        - Src:             'lib/hash.h:404,12'
          Dst:             hash_bytes
    - functionName:    ovs_refcount_ref
      functionSourceFile: '/src/openvswitch/lib/ovs-atomic.h'
      linkageType:     InternalLinkage
      functionLinenumber: 539
      functionLinenumberEnd: 545
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-atomic.h:544,5'
          Dst:             ovs_ignore
    - functionName:    dpif_netdev_class_is_dummy
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1143
      functionLinenumberEnd: 1144
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    atomic_flag_clear
      functionSourceFile: '/src/openvswitch/lib/ovs-atomic-flag-gcc4.7+.h'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - atomic_flag_clear_explicit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-atomic-flag-gcc4.7+.h:51,5'
          Dst:             atomic_flag_clear_explicit
    - functionName:    dp_netdev_disable_upcall
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6262
      functionLinenumberEnd: 6264
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - fat_rwlock_wrlock
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:6263,5'
          Dst:             fat_rwlock_wrlock
    - functionName:    dp_netdev_set_nonpmd
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6639
      functionLinenumberEnd: 6644
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_netdev_configure_pmd
        - xzalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:6642,15'
          Dst:             xzalloc
        - Src:             'lib/dpif-netdev.c:6643,5'
          Dst:             dp_netdev_configure_pmd
    - functionName:    dpif_netdev_port_open_type
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1149
      functionLinenumberEnd: 1151
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dpif_netdev_class_is_dummy
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:1150,12'
          Dst:             strcmp
        - Src:             'lib/dpif-netdev.c:1151,21'
          Dst:             dpif_netdev_class_is_dummy
    - functionName:    do_add_port
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1615
      functionLinenumberEnd: 1654
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          121
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - do_del_port
        - dp_netdev_lookup_port
        - get_port_by_name
        - hash_port_no
        - hmap_insert_at
        - netdev_turn_flags_on
        - port_create
        - reconfigure_datapath
        - seq_change
        - vlog
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:1621,10'
          Dst:             get_port_by_name
        - Src:             'lib/dpif-netdev.c:1625,13'
          Dst:             port_create
        - Src:             'lib/dpif-netdev.c:1630,5'
          Dst:             hash_port_no
        - Src:             'lib/dpif-netdev.c:1630,5'
          Dst:             hmap_insert_at
        - Src:             'lib/dpif-netdev.c:1631,5'
          Dst:             seq_change
        - Src:             'lib/dpif-netdev.c:1633,5'
          Dst:             reconfigure_datapath
        - Src:             'lib/dpif-netdev.c:1636,10'
          Dst:             dp_netdev_lookup_port
        - Src:             'lib/dpif-netdev.c:1645,13'
          Dst:             netdev_turn_flags_on
        - Src:             'lib/dpif-netdev.c:1647,9'
          Dst:             vlog
        - Src:             'lib/dpif-netdev.c:1648,9'
          Dst:             do_del_port
    - functionName:    dp_netdev_free
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1414
      functionLinenumberEnd: 1465
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         16
      ICount:          186
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - cmap_cursor_advance
        - cmap_cursor_start
        - cmap_destroy
        - cmap_remove
        - conntrack_destroy
        - do_del_port
        - dp_netdev_destroy_all_pmds
        - dp_netdev_destroy_upcall_lock
        - dp_netdev_meter_destroy
        - hash_bond_id
        - hmap_destroy
        - hmap_first
        - hmap_next
        - id_pool_destroy
        - ovs_mutex_destroy
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovs_rwlock_destroy
        - ovs_rwlock_unlock
        - ovs_rwlock_wrlock_at
        - ovsrcu_postpone__
        - ovsthread_key_delete
        - ovsthread_once_destroy
        - seq_destroy
        - shash_find_and_delete
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:1418,5'
          Dst:             shash_find_and_delete
        - Src:             'lib/dpif-netdev.c:1420,5'
          Dst:             ovs_rwlock_wrlock_at
        - Src:             'lib/dpif-netdev.c:1421,5'
          Dst:             hmap_first
        - Src:             'lib/dpif-netdev.c:1421,5'
          Dst:             hmap_next
        - Src:             'lib/dpif-netdev.c:1422,9'
          Dst:             do_del_port
        - Src:             'lib/dpif-netdev.c:1424,5'
          Dst:             ovs_rwlock_unlock
        - Src:             'lib/dpif-netdev.c:1426,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-netdev.c:1427,5'
          Dst:             cmap_cursor_start
        - Src:             'lib/dpif-netdev.c:1427,5'
          Dst:             cmap_cursor_advance
        - Src:             'lib/dpif-netdev.c:1428,49'
          Dst:             hash_bond_id
        - Src:             'lib/dpif-netdev.c:1428,9'
          Dst:             cmap_remove
        - Src:             'lib/dpif-netdev.c:1429,9'
          Dst:             ovsrcu_postpone__
        - Src:             'lib/dpif-netdev.c:1431,5'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/dpif-netdev.c:1433,5'
          Dst:             dp_netdev_destroy_all_pmds
        - Src:             'lib/dpif-netdev.c:1434,5'
          Dst:             cmap_destroy
        - Src:             'lib/dpif-netdev.c:1436,5'
          Dst:             ovs_mutex_destroy
        - Src:             'lib/dpif-netdev.c:1437,5'
          Dst:             id_pool_destroy
        - Src:             'lib/dpif-netdev.c:1439,5'
          Dst:             ovs_mutex_destroy
        - Src:             'lib/dpif-netdev.c:1440,5'
          Dst:             ovsthread_key_delete
        - Src:             'lib/dpif-netdev.c:1442,5'
          Dst:             conntrack_destroy
        - Src:             'lib/dpif-netdev.c:1445,5'
          Dst:             seq_destroy
        - Src:             'lib/dpif-netdev.c:1446,5'
          Dst:             ovsthread_once_destroy
        - Src:             'lib/dpif-netdev.c:1448,5'
          Dst:             seq_destroy
        - Src:             'lib/dpif-netdev.c:1449,5'
          Dst:             hmap_destroy
        - Src:             'lib/dpif-netdev.c:1450,5'
          Dst:             ovs_rwlock_destroy
        - Src:             'lib/dpif-netdev.c:1452,5'
          Dst:             cmap_destroy
        - Src:             'lib/dpif-netdev.c:1453,5'
          Dst:             ovs_mutex_destroy
        - Src:             'lib/dpif-netdev.c:1456,5'
          Dst:             dp_netdev_destroy_upcall_lock
        - Src:             'lib/dpif-netdev.c:1458,5'
          Dst:             dp_netdev_meter_destroy
    - functionName:    do_del_port
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1799
      functionLinenumberEnd: 1805
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_remove
        - port_destroy
        - reconfigure_datapath
        - seq_change
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:1800,5'
          Dst:             hmap_remove
        - Src:             'lib/dpif-netdev.c:1801,5'
          Dst:             seq_change
        - Src:             'lib/dpif-netdev.c:1803,5'
          Dst:             reconfigure_datapath
        - Src:             'lib/dpif-netdev.c:1804,5'
          Dst:             port_destroy
    - functionName:    dp_netdev_destroy_all_pmds
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6796
      functionLinenumberEnd: 6819
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          116
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - cmap_count
        - cmap_cursor_advance
        - cmap_cursor_start
        - dp_netdev_del_pmd
        - ovs_ignore
        - xcalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:6801,14'
          Dst:             cmap_count
        - Src:             'lib/dpif-netdev.c:6802,16'
          Dst:             xcalloc
        - Src:             'lib/dpif-netdev.c:6804,5'
          Dst:             cmap_cursor_start
        - Src:             'lib/dpif-netdev.c:6804,5'
          Dst:             cmap_cursor_advance
        - Src:             'lib/dpif-netdev.c:6811,9'
          Dst:             ovs_ignore
        - Src:             'lib/dpif-netdev.c:6816,9'
          Dst:             dp_netdev_del_pmd
    - functionName:    ovsthread_once_destroy
      functionSourceFile: '/src/openvswitch/./include/openvswitch/thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 166
      functionLinenumberEnd: 168
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_mutex_destroy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/thread.h:167,5'
          Dst:             ovs_mutex_destroy
    - functionName:    dp_netdev_destroy_upcall_lock
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1394
      functionLinenumberEnd: 1401
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - fat_rwlock_destroy
        - fat_rwlock_tryrdlock
        - fat_rwlock_unlock
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:1396,16'
          Dst:             fat_rwlock_tryrdlock
        - Src:             'lib/dpif-netdev.c:1396,5'
          Dst:             ovs_ignore
        - Src:             'lib/dpif-netdev.c:1399,5'
          Dst:             fat_rwlock_unlock
        - Src:             'lib/dpif-netdev.c:1400,5'
          Dst:             fat_rwlock_destroy
    - functionName:    dp_netdev_meter_destroy
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1225
      functionLinenumberEnd: 1237
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          71
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - cmap_cursor_advance
        - cmap_cursor_start
        - cmap_destroy
        - cmap_remove
        - dp_meter_hash
        - ovs_mutex_destroy
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovsrcu_postpone__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:1228,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-netdev.c:1229,5'
          Dst:             cmap_cursor_start
        - Src:             'lib/dpif-netdev.c:1229,5'
          Dst:             cmap_cursor_advance
        - Src:             'lib/dpif-netdev.c:1230,44'
          Dst:             dp_meter_hash
        - Src:             'lib/dpif-netdev.c:1230,9'
          Dst:             cmap_remove
        - Src:             'lib/dpif-netdev.c:1231,9'
          Dst:             ovsrcu_postpone__
        - Src:             'lib/dpif-netdev.c:1234,5'
          Dst:             cmap_destroy
        - Src:             'lib/dpif-netdev.c:1235,5'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/dpif-netdev.c:1236,5'
          Dst:             ovs_mutex_destroy
    - functionName:    dp_netdev_del_pmd
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6766
      functionLinenumberEnd: 6790
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          94
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - cmap_remove
        - dfc_cache_uninit
        - dp_netdev_pmd_clear_ports
        - dp_netdev_pmd_unref
        - dp_netdev_reload_pmd__
        - hash_int
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - pmd_free_cached_ports
        - pmd_free_static_tx_qid
        - xpthread_join
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:6770,9'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-netdev.c:6771,9'
          Dst:             dfc_cache_uninit
        - Src:             'lib/dpif-netdev.c:6772,9'
          Dst:             pmd_free_cached_ports
        - Src:             'lib/dpif-netdev.c:6773,9'
          Dst:             pmd_free_static_tx_qid
        - Src:             'lib/dpif-netdev.c:6774,9'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/dpif-netdev.c:6777,9'
          Dst:             dp_netdev_reload_pmd__
        - Src:             'lib/dpif-netdev.c:6778,9'
          Dst:             xpthread_join
        - Src:             'lib/dpif-netdev.c:6781,5'
          Dst:             dp_netdev_pmd_clear_ports
        - Src:             'lib/dpif-netdev.c:6788,53'
          Dst:             hash_int
        - Src:             'lib/dpif-netdev.c:6788,5'
          Dst:             cmap_remove
        - Src:             'lib/dpif-netdev.c:6789,5'
          Dst:             dp_netdev_pmd_unref
    - functionName:    pmd_free_cached_ports
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5954
      functionLinenumberEnd: 5968
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          85
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - dp_netdev_pmd_flush_output_packets
        - dpif_netdev_xps_revalidate_pmd
        - hmap_pop_helper__
        - tx_port_destroy
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:5958,5'
          Dst:             dp_netdev_pmd_flush_output_packets
        - Src:             'lib/dpif-netdev.c:5960,5'
          Dst:             dpif_netdev_xps_revalidate_pmd
        - Src:             'lib/dpif-netdev.c:5962,5'
          Dst:             hmap_pop_helper__
        - Src:             'lib/dpif-netdev.c:5963,9'
          Dst:             tx_port_destroy
        - Src:             'lib/dpif-netdev.c:5965,5'
          Dst:             hmap_pop_helper__
        - Src:             'lib/dpif-netdev.c:5966,9'
          Dst:             tx_port_destroy
    - functionName:    pmd_free_static_tx_qid
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6015
      functionLinenumberEnd: 6019
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          32
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - id_pool_free_id
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:6016,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-netdev.c:6017,5'
          Dst:             id_pool_free_id
        - Src:             'lib/dpif-netdev.c:6018,5'
          Dst:             ovs_mutex_unlock
    - functionName:    dp_netdev_reload_pmd__
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1548
      functionLinenumberEnd: 1560
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          55
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - pmd_load_cached_ports
        - seq_change
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:1550,9'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-netdev.c:1551,9'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-netdev.c:1552,9'
          Dst:             pmd_load_cached_ports
        - Src:             'lib/dpif-netdev.c:1553,9'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/dpif-netdev.c:1554,9'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/dpif-netdev.c:1558,5'
          Dst:             seq_change
    - functionName:    dp_netdev_pmd_clear_ports
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6825
      functionLinenumberEnd: 6845
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         21
      ICount:          137
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - cmap_cursor_advance
        - cmap_cursor_start
        - cmap_remove
        - hash_bond_id
        - hmap_pop_helper__
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovsrcu_postpone__
        - tx_port_destroy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:6830,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-netdev.c:6831,5'
          Dst:             hmap_pop_helper__
        - Src:             'lib/dpif-netdev.c:6834,5'
          Dst:             hmap_pop_helper__
        - Src:             'lib/dpif-netdev.c:6835,9'
          Dst:             tx_port_destroy
        - Src:             'lib/dpif-netdev.c:6837,5'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/dpif-netdev.c:6839,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-netdev.c:6840,5'
          Dst:             cmap_cursor_start
        - Src:             'lib/dpif-netdev.c:6840,5'
          Dst:             cmap_cursor_advance
        - Src:             'lib/dpif-netdev.c:6841,48'
          Dst:             hash_bond_id
        - Src:             'lib/dpif-netdev.c:6841,9'
          Dst:             cmap_remove
        - Src:             'lib/dpif-netdev.c:6842,9'
          Dst:             ovsrcu_postpone__
        - Src:             'lib/dpif-netdev.c:6844,5'
          Dst:             ovs_mutex_unlock
    - functionName:    hmap_pop_helper__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 226
      functionLinenumberEnd: 238
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          66
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - hmap_remove
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:232,13'
          Dst:             hmap_remove
    - functionName:    tx_port_destroy
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4555
      functionLinenumberEnd: 4567
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          70
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - dp_packet_batch_destroy
        - netdev_n_txq
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:4557,21'
          Dst:             netdev_n_txq
        - Src:             'lib/dpif-netdev.c:4560,13'
          Dst:             dp_packet_batch_destroy
        - Src:             'lib/dpif-netdev.c:4564,5'
          Dst:             dp_packet_batch_destroy
    - functionName:    dp_packet_batch_destroy
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 999
      functionLinenumberEnd: 1004
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    15
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_remove
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 317
      functionLinenumberEnd: 324
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          48
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pmd_load_cached_ports
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5977
      functionLinenumberEnd: 5997
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         16
      ICount:          123
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - hash_port_no
        - hmap_first
        - hmap_insert_at
        - hmap_next
        - hmap_shrink_at
        - netdev_has_tunnel_push_pop
        - netdev_n_txq
        - pmd_free_cached_ports
        - tx_port_clone
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:5980,5'
          Dst:             pmd_free_cached_ports
        - Src:             'lib/dpif-netdev.c:5981,5'
          Dst:             hmap_shrink_at
        - Src:             'lib/dpif-netdev.c:5982,5'
          Dst:             hmap_shrink_at
        - Src:             'lib/dpif-netdev.c:5984,5'
          Dst:             hmap_first
        - Src:             'lib/dpif-netdev.c:5985,13'
          Dst:             netdev_has_tunnel_push_pop
        - Src:             'lib/dpif-netdev.c:5986,30'
          Dst:             tx_port_clone
        - Src:             'lib/dpif-netdev.c:5987,13'
          Dst:             hash_port_no
        - Src:             'lib/dpif-netdev.c:5987,13'
          Dst:             hmap_insert_at
        - Src:             'lib/dpif-netdev.c:5991,13'
          Dst:             netdev_n_txq
        - Src:             'lib/dpif-netdev.c:5992,30'
          Dst:             tx_port_clone
        - Src:             'lib/dpif-netdev.c:5993,13'
          Dst:             hash_port_no
        - Src:             'lib/dpif-netdev.c:5993,13'
          Dst:             hmap_insert_at
        - Src:             'lib/dpif-netdev.c:5984,5'
          Dst:             hmap_next
    - functionName:    tx_port_clone
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4546
      functionLinenumberEnd: 4550
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - tx_port_create
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:4547,29'
          Dst:             tx_port_create
    - functionName:    hmap_insert_at
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 306
      functionLinenumberEnd: 311
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_expand_at
        - hmap_insert_fast
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:307,5'
          Dst:             hmap_insert_fast
        - Src:             './include/openvswitch/hmap.h:309,9'
          Dst:             hmap_expand_at
    - functionName:    hmap_insert_fast
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 289
      functionLinenumberEnd: 295
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          38
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    tx_port_create
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4522
      functionLinenumberEnd: 4541
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          91
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - dp_packet_batch_capacity
        - dp_packet_batch_init
        - netdev_n_txq
        - xcalloc
        - xzalloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:4523,26'
          Dst:             xzalloc
        - Src:             'lib/dpif-netdev.c:4528,5'
          Dst:             dp_packet_batch_init
        - Src:             'lib/dpif-netdev.c:4529,36'
          Dst:             dp_packet_batch_capacity
        - Src:             'lib/dpif-netdev.c:4529,28'
          Dst:             xcalloc
        - Src:             'lib/dpif-netdev.c:4533,21'
          Dst:             netdev_n_txq
        - Src:             'lib/dpif-netdev.c:4535,24'
          Dst:             xzalloc
        - Src:             'lib/dpif-netdev.c:4537,13'
          Dst:             dp_packet_batch_init
    - functionName:    dp_packet_batch_init
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 879
      functionLinenumberEnd: 883
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_batch_reset
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:880,5'
          Dst:             dp_packet_batch_reset
    - functionName:    dp_packet_batch_capacity
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 916
      functionLinenumberEnd: 917
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_batch_reset
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 872
      functionLinenumberEnd: 875
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_netdev_pmd_flush_output_packets
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4420
      functionLinenumberEnd: 4435
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          113
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - dp_netdev_pmd_flush_output_on_port
        - dp_packet_batch_is_empty
        - hmap_first
        - hmap_next
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:4428,5'
          Dst:             hmap_first
        - Src:             'lib/dpif-netdev.c:4429,14'
          Dst:             dp_packet_batch_is_empty
        - Src:             'lib/dpif-netdev.c:4431,27'
          Dst:             dp_netdev_pmd_flush_output_on_port
        - Src:             'lib/dpif-netdev.c:4428,5'
          Dst:             hmap_next
    - functionName:    dpif_netdev_xps_revalidate_pmd
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7768
      functionLinenumberEnd: 7786
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         20
      ICount:          129
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - hmap_first
        - hmap_next
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:7773,5'
          Dst:             hmap_first
        - Src:             'lib/dpif-netdev.c:7780,13'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-netdev.c:7782,13'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/dpif-netdev.c:7773,5'
          Dst:             hmap_next
    - functionName:    dp_packet_batch_is_empty
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 937
      functionLinenumberEnd: 938
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_batch_size
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:938,13'
          Dst:             dp_packet_batch_size
    - functionName:    dp_netdev_pmd_flush_output_on_port
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4341
      functionLinenumberEnd: 4414
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         32
      ICount:          300
      EdgeCount:       41
      CyclomaticComplexity: 11
      functionsReached:
        - cycle_timer_start
        - cycle_timer_stop
        - dp_netdev_rxq_add_cycles
        - dp_packet_batch_add
        - dp_packet_batch_is_empty
        - dp_packet_batch_reset
        - dp_packet_batch_size
        - dp_packet_get_rss_hash
        - dp_packet_rss_valid
        - dpif_netdev_xps_get_tx_qid
        - flow_extract
        - flow_hash_5tuple
        - netdev_n_txq
        - netdev_send
        - ovs_ignore
        - pmd_perf_update_counter
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:4350,5'
          Dst:             cycle_timer_start
        - Src:             'lib/dpif-netdev.c:4352,18'
          Dst:             dp_packet_batch_size
        - Src:             'lib/dpif-netdev.c:4353,5'
          Dst:             ovs_ignore
        - Src:             'lib/dpif-netdev.c:4356,21'
          Dst:             netdev_n_txq
        - Src:             'lib/dpif-netdev.c:4360,9'
          Dst:             dp_packet_batch_size
        - Src:             'lib/dpif-netdev.c:4363,17'
          Dst:             dp_packet_rss_valid
        - Src:             'lib/dpif-netdev.c:4364,24'
          Dst:             dp_packet_get_rss_hash
        - Src:             'lib/dpif-netdev.c:4368,17'
          Dst:             flow_extract
        - Src:             'lib/dpif-netdev.c:4369,24'
          Dst:             flow_hash_5tuple
        - Src:             'lib/dpif-netdev.c:4371,13'
          Dst:             dp_packet_batch_add
        - Src:             'lib/dpif-netdev.c:4376,17'
          Dst:             dp_packet_batch_is_empty
        - Src:             'lib/dpif-netdev.c:4379,13'
          Dst:             netdev_send
        - Src:             'lib/dpif-netdev.c:4380,13'
          Dst:             dp_packet_batch_reset
        - Src:             'lib/dpif-netdev.c:4384,22'
          Dst:             dpif_netdev_xps_get_tx_qid
        - Src:             'lib/dpif-netdev.c:4390,9'
          Dst:             netdev_send
        - Src:             'lib/dpif-netdev.c:4392,5'
          Dst:             dp_packet_batch_reset
        - Src:             'lib/dpif-netdev.c:4398,5'
          Dst:             ovs_ignore
        - Src:             'lib/dpif-netdev.c:4401,5'
          Dst:             pmd_perf_update_counter
        - Src:             'lib/dpif-netdev.c:4402,5'
          Dst:             pmd_perf_update_counter
        - Src:             'lib/dpif-netdev.c:4406,14'
          Dst:             cycle_timer_stop
        - Src:             'lib/dpif-netdev.c:4409,13'
          Dst:             dp_netdev_rxq_add_cycles
    - functionName:    cycle_timer_start
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev-perf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 272
      functionLinenumberEnd: 283
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - cycles_counter_update
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev-perf.h:274,20'
          Dst:             cycles_counter_update
    - functionName:    dp_packet_batch_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 910
      functionLinenumberEnd: 911
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    37
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_rss_valid
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1063
      functionLinenumberEnd: 1064
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_get_rss_hash
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1050
      functionLinenumberEnd: 1051
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_rss_ptr
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:1051,13'
          Dst:             dp_packet_rss_ptr
    - functionName:    dp_packet_batch_add
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 889
      functionLinenumberEnd: 894
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_batch_grow
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:891,9'
          Dst:             dp_packet_batch_grow
    - functionName:    dpif_netdev_xps_get_tx_qid
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7791
      functionLinenumberEnd: 7830
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         27
      ICount:          219
      EdgeCount:       34
      CyclomaticComplexity: 9
      functionsReached:
        - dpif_netdev_xps_revalidate_pmd
        - netdev_get_name
        - netdev_n_txq
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - vlog
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:7805,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-netdev.c:7813,21'
          Dst:             netdev_n_txq
        - Src:             'lib/dpif-netdev.c:7823,5'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/dpif-netdev.c:7825,5'
          Dst:             dpif_netdev_xps_revalidate_pmd
        - Src:             'lib/dpif-netdev.c:7827,5'
          Dst:             netdev_get_name
        - Src:             'lib/dpif-netdev.c:7827,5'
          Dst:             vlog
    - functionName:    pmd_perf_update_counter
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev-perf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 326
      functionLinenumberEnd: 331
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          38
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    11
      BranchProfiles:  []
      Callsites:       []
    - functionName:    cycle_timer_stop
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev-perf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 288
      functionLinenumberEnd: 300
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          60
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - cycles_counter_update
        - ovs_ignore
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev-perf.h:290,5'
          Dst:             ovs_ignore
        - Src:             'lib/dpif-netdev-perf.h:291,20'
          Dst:             cycles_counter_update
    - functionName:    dp_netdev_rxq_add_cycles
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4290
      functionLinenumberEnd: 4292
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - non_atomic_ullong_add
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:4291,5'
          Dst:             non_atomic_ullong_add
    - functionName:    non_atomic_ullong_add
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1512
      functionLinenumberEnd: 1518
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          25
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    cycles_counter_update
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev-perf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 219
      functionLinenumberEnd: 226
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_rss_ptr
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 645
      functionLinenumberEnd: 646
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    reconfigure_datapath
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5594
      functionLinenumberEnd: 5777
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         148
      ICount:          885
      EdgeCount:       194
      CyclomaticComplexity: 48
      functionsReached:
        - cmap_count
        - cmap_cursor_advance
        - cmap_cursor_start
        - dp_netdev_add_bond_tx_to_pmd
        - dp_netdev_add_port_tx_to_pmd
        - dp_netdev_add_rxq_to_pmd
        - dp_netdev_del_rxq_from_pmd
        - hmap_count
        - hmap_first
        - hmap_next
        - hmap_remove
        - hmapx_add
        - hmapx_contains
        - hmapx_destroy
        - netdev_is_pmd
        - netdev_is_reconf_required
        - netdev_n_txq
        - netdev_set_tx_multiq
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - pmd_remove_stale_ports
        - port_destroy
        - port_reconfigure
        - reconfigure_pmd_threads
        - reload_affected_pmds
        - rxq_scheduling
        - seq_change
        - seq_read
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:5600,32'
          Dst:             seq_read
        - Src:             'lib/dpif-netdev.c:5604,5'
          Dst:             reconfigure_pmd_threads
        - Src:             'lib/dpif-netdev.c:5606,19'
          Dst:             cmap_count
        - Src:             'lib/dpif-netdev.c:5610,5'
          Dst:             hmap_first
        - Src:             'lib/dpif-netdev.c:5611,9'
          Dst:             netdev_set_tx_multiq
        - Src:             'lib/dpif-netdev.c:5610,5'
          Dst:             hmap_next
        - Src:             'lib/dpif-netdev.c:5626,5'
          Dst:             hmap_first
        - Src:             'lib/dpif-netdev.c:5627,13'
          Dst:             netdev_is_reconf_required
        - Src:             'lib/dpif-netdev.c:5629,21'
          Dst:             netdev_n_txq
        - Src:             'lib/dpif-netdev.c:5632,24'
          Dst:             netdev_n_txq
        - Src:             'lib/dpif-netdev.c:5626,5'
          Dst:             hmap_next
        - Src:             'lib/dpif-netdev.c:5639,5'
          Dst:             cmap_cursor_start
        - Src:             'lib/dpif-netdev.c:5639,5'
          Dst:             cmap_cursor_advance
        - Src:             'lib/dpif-netdev.c:5640,9'
          Dst:             pmd_remove_stale_ports
        - Src:             'lib/dpif-netdev.c:5646,5'
          Dst:             reload_affected_pmds
        - Src:             'lib/dpif-netdev.c:5653,5'
          Dst:             hmap_first
        - Src:             'lib/dpif-netdev.c:5653,5'
          Dst:             hmap_next
        - Src:             'lib/dpif-netdev.c:5660,15'
          Dst:             port_reconfigure
        - Src:             'lib/dpif-netdev.c:5662,13'
          Dst:             hmap_remove
        - Src:             'lib/dpif-netdev.c:5663,13'
          Dst:             seq_change
        - Src:             'lib/dpif-netdev.c:5664,13'
          Dst:             port_destroy
        - Src:             'lib/dpif-netdev.c:5668,17'
          Dst:             netdev_n_txq
        - Src:             'lib/dpif-netdev.c:5670,24'
          Dst:             netdev_n_txq
        - Src:             'lib/dpif-netdev.c:5683,5'
          Dst:             cmap_cursor_start
        - Src:             'lib/dpif-netdev.c:5683,5'
          Dst:             cmap_cursor_advance
        - Src:             'lib/dpif-netdev.c:5688,5'
          Dst:             hmap_first
        - Src:             'lib/dpif-netdev.c:5688,5'
          Dst:             hmap_next
        - Src:             'lib/dpif-netdev.c:5693,5'
          Dst:             rxq_scheduling
        - Src:             'lib/dpif-netdev.c:5698,5'
          Dst:             hmap_first
        - Src:             'lib/dpif-netdev.c:5703,17'
          Dst:             hmapx_add
        - Src:             'lib/dpif-netdev.c:5698,5'
          Dst:             hmap_next
        - Src:             'lib/dpif-netdev.c:5708,5'
          Dst:             cmap_cursor_start
        - Src:             'lib/dpif-netdev.c:5708,5'
          Dst:             cmap_cursor_advance
        - Src:             'lib/dpif-netdev.c:5711,9'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-netdev.c:5712,9'
          Dst:             hmap_first
        - Src:             'lib/dpif-netdev.c:5712,9'
          Dst:             hmap_next
        - Src:             'lib/dpif-netdev.c:5714,17'
          Dst:             dp_netdev_del_rxq_from_pmd
        - Src:             'lib/dpif-netdev.c:5719,21'
          Dst:             hmap_count
        - Src:             'lib/dpif-netdev.c:5720,21'
          Dst:             hmapx_contains
        - Src:             'lib/dpif-netdev.c:5725,9'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/dpif-netdev.c:5728,5'
          Dst:             hmapx_destroy
        - Src:             'lib/dpif-netdev.c:5733,5'
          Dst:             reload_affected_pmds
        - Src:             'lib/dpif-netdev.c:5736,5'
          Dst:             hmap_first
        - Src:             'lib/dpif-netdev.c:5737,14'
          Dst:             netdev_is_pmd
        - Src:             'lib/dpif-netdev.c:5745,17'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-netdev.c:5746,17'
          Dst:             dp_netdev_add_rxq_to_pmd
        - Src:             'lib/dpif-netdev.c:5747,17'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/dpif-netdev.c:5736,5'
          Dst:             hmap_next
        - Src:             'lib/dpif-netdev.c:5756,5'
          Dst:             cmap_cursor_start
        - Src:             'lib/dpif-netdev.c:5756,5'
          Dst:             cmap_cursor_advance
        - Src:             'lib/dpif-netdev.c:5757,9'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-netdev.c:5758,13'
          Dst:             hmap_count
        - Src:             'lib/dpif-netdev.c:5761,13'
          Dst:             hmap_first
        - Src:             'lib/dpif-netdev.c:5762,17'
          Dst:             dp_netdev_add_port_tx_to_pmd
        - Src:             'lib/dpif-netdev.c:5761,13'
          Dst:             hmap_next
        - Src:             'lib/dpif-netdev.c:5765,13'
          Dst:             cmap_cursor_start
        - Src:             'lib/dpif-netdev.c:5765,13'
          Dst:             cmap_cursor_advance
        - Src:             'lib/dpif-netdev.c:5766,17'
          Dst:             dp_netdev_add_bond_tx_to_pmd
        - Src:             'lib/dpif-netdev.c:5769,9'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/dpif-netdev.c:5773,5'
          Dst:             reload_affected_pmds
    - functionName:    port_destroy
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1742
      functionLinenumberEnd: 1759
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          80
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - netdev_close
        - netdev_restore_flags
        - netdev_rxq_close
        - ovs_mutex_destroy
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:1747,5'
          Dst:             netdev_close
        - Src:             'lib/dpif-netdev.c:1748,5'
          Dst:             netdev_restore_flags
        - Src:             'lib/dpif-netdev.c:1751,9'
          Dst:             netdev_rxq_close
        - Src:             'lib/dpif-netdev.c:1753,5'
          Dst:             ovs_mutex_destroy
    - functionName:    reconfigure_pmd_threads
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5466
      functionLinenumberEnd: 5557
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         74
      ICount:          428
      EdgeCount:       95
      CyclomaticComplexity: 23
      functionsReached:
        - cmap_count
        - cmap_cursor_advance
        - cmap_cursor_start
        - dp_netdev_configure_pmd
        - dp_netdev_del_pmd
        - dp_netdev_get_pmd
        - dp_netdev_pmd_unref
        - ds_cstr
        - ds_destroy
        - ds_put_format
        - has_pmd_port
        - hmap_first
        - hmap_next
        - hmapx_add
        - hmapx_destroy
        - hmapx_is_empty
        - ovs_numa_dump_contains_core
        - ovs_numa_dump_cores_with_cmask
        - ovs_numa_dump_count
        - ovs_numa_dump_destroy
        - ovs_numa_dump_n_cores_per_numa
        - ovs_thread_create
        - pmd_thread_main
        - reload_affected_pmds
        - vlog
        - xzalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:5478,10'
          Dst:             has_pmd_port
        - Src:             'lib/dpif-netdev.c:5479,21'
          Dst:             ovs_numa_dump_n_cores_per_numa
        - Src:             'lib/dpif-netdev.c:5481,21'
          Dst:             ovs_numa_dump_cores_with_cmask
        - Src:             'lib/dpif-netdev.c:5483,21'
          Dst:             ovs_numa_dump_n_cores_per_numa
        - Src:             'lib/dpif-netdev.c:5488,9'
          Dst:             ovs_numa_dump_count
        - Src:             'lib/dpif-netdev.c:5488,42'
          Dst:             cmap_count
        - Src:             'lib/dpif-netdev.c:5496,5'
          Dst:             cmap_cursor_start
        - Src:             'lib/dpif-netdev.c:5496,5'
          Dst:             cmap_cursor_advance
        - Src:             'lib/dpif-netdev.c:5500,14'
          Dst:             ovs_numa_dump_contains_core
        - Src:             'lib/dpif-netdev.c:5502,13'
          Dst:             hmapx_add
        - Src:             'lib/dpif-netdev.c:5509,5'
          Dst:             hmap_first
        - Src:             'lib/dpif-netdev.c:5511,9'
          Dst:             vlog
        - Src:             'lib/dpif-netdev.c:5513,9'
          Dst:             dp_netdev_del_pmd
        - Src:             'lib/dpif-netdev.c:5509,5'
          Dst:             hmap_next
        - Src:             'lib/dpif-netdev.c:5515,16'
          Dst:             hmapx_is_empty
        - Src:             'lib/dpif-netdev.c:5516,5'
          Dst:             hmapx_destroy
        - Src:             'lib/dpif-netdev.c:5521,9'
          Dst:             reload_affected_pmds
        - Src:             'lib/dpif-netdev.c:5525,5'
          Dst:             hmap_first
        - Src:             'lib/dpif-netdev.c:5526,15'
          Dst:             dp_netdev_get_pmd
        - Src:             'lib/dpif-netdev.c:5530,19'
          Dst:             xzalloc
        - Src:             'lib/dpif-netdev.c:5531,13'
          Dst:             dp_netdev_configure_pmd
        - Src:             'lib/dpif-netdev.c:5533,13'
          Dst:             ds_put_format
        - Src:             'lib/dpif-netdev.c:5534,45'
          Dst:             ds_cstr
        - Src:             'lib/dpif-netdev.c:5534,27'
          Dst:             ovs_thread_create
        - Src:             'lib/dpif-netdev.c:5534,27'
          Dst:             pmd_thread_main
        - Src:             'lib/dpif-netdev.c:5536,13'
          Dst:             ds_destroy
        - Src:             'lib/dpif-netdev.c:5538,13'
          Dst:             vlog
        - Src:             'lib/dpif-netdev.c:5542,13'
          Dst:             dp_netdev_pmd_unref
        - Src:             'lib/dpif-netdev.c:5525,5'
          Dst:             hmap_next
        - Src:             'lib/dpif-netdev.c:5550,9'
          Dst:             hmap_first
        - Src:             'lib/dpif-netdev.c:5551,13'
          Dst:             vlog
        - Src:             'lib/dpif-netdev.c:5550,9'
          Dst:             hmap_next
        - Src:             'lib/dpif-netdev.c:5556,5'
          Dst:             ovs_numa_dump_destroy
    - functionName:    pmd_remove_stale_ports
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5564
      functionLinenumberEnd: 5586
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         29
      ICount:          170
      EdgeCount:       37
      CyclomaticComplexity: 10
      functionsReached:
        - dp_netdev_del_port_tx_from_pmd
        - dp_netdev_del_rxq_from_pmd
        - hmap_contains
        - hmap_first
        - hmap_next
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:5568,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-netdev.c:5569,5'
          Dst:             hmap_first
        - Src:             'lib/dpif-netdev.c:5569,5'
          Dst:             hmap_next
        - Src:             'lib/dpif-netdev.c:5573,17'
          Dst:             hmap_contains
        - Src:             'lib/dpif-netdev.c:5574,13'
          Dst:             dp_netdev_del_rxq_from_pmd
        - Src:             'lib/dpif-netdev.c:5577,5'
          Dst:             hmap_first
        - Src:             'lib/dpif-netdev.c:5577,5'
          Dst:             hmap_next
        - Src:             'lib/dpif-netdev.c:5581,17'
          Dst:             hmap_contains
        - Src:             'lib/dpif-netdev.c:5582,13'
          Dst:             dp_netdev_del_port_tx_from_pmd
        - Src:             'lib/dpif-netdev.c:5585,5'
          Dst:             ovs_mutex_unlock
    - functionName:    reload_affected_pmds
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5439
      functionLinenumberEnd: 5461
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         28
      ICount:          136
      EdgeCount:       36
      CyclomaticComplexity: 10
      functionsReached:
        - cmap_cursor_advance
        - cmap_cursor_start
        - dp_netdev_reload_pmd__
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:5442,5'
          Dst:             cmap_cursor_start
        - Src:             'lib/dpif-netdev.c:5442,5'
          Dst:             cmap_cursor_advance
        - Src:             'lib/dpif-netdev.c:5444,13'
          Dst:             dp_netdev_reload_pmd__
        - Src:             'lib/dpif-netdev.c:5448,5'
          Dst:             cmap_cursor_start
        - Src:             'lib/dpif-netdev.c:5448,5'
          Dst:             cmap_cursor_advance
    - functionName:    port_reconfigure
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4585
      functionLinenumberEnd: 4636
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         33
      ICount:          258
      EdgeCount:       42
      CyclomaticComplexity: 11
      functionsReached:
        - dpif_netdev_port_set_rxq_affinity
        - netdev_get_name
        - netdev_is_reconf_required
        - netdev_n_rxq
        - netdev_n_txq
        - netdev_reconfigure
        - netdev_rxq_close
        - netdev_rxq_open
        - strncmp
        - vlog
        - xcalloc
        - xrealloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:4591,9'
          Dst:             netdev_rxq_close
        - Src:             'lib/dpif-netdev.c:4598,9'
          Dst:             netdev_is_reconf_required
        - Src:             'lib/dpif-netdev.c:4599,15'
          Dst:             netdev_reconfigure
        - Src:             'lib/dpif-netdev.c:4601,13'
          Dst:             netdev_get_name
        - Src:             'lib/dpif-netdev.c:4601,13'
          Dst:             vlog
        - Src:             'lib/dpif-netdev.c:4608,48'
          Dst:             netdev_n_rxq
        - Src:             'lib/dpif-netdev.c:4607,18'
          Dst:             xrealloc
        - Src:             'lib/dpif-netdev.c:4611,30'
          Dst:             netdev_n_txq
        - Src:             'lib/dpif-netdev.c:4611,22'
          Dst:             xcalloc
        - Src:             'lib/dpif-netdev.c:4613,21'
          Dst:             netdev_n_rxq
        - Src:             'lib/dpif-netdev.c:4620,35'
          Dst:             strncmp
        - Src:             'lib/dpif-netdev.c:4622,15'
          Dst:             netdev_rxq_open
        - Src:             'lib/dpif-netdev.c:4630,5'
          Dst:             dpif_netdev_port_set_rxq_affinity
    - functionName:    rxq_scheduling
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5268
      functionLinenumberEnd: 5277
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sched_numa_list_free_entries
        - sched_numa_list_populate
        - sched_numa_list_put_in_place
        - sched_numa_list_schedule
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:5272,5'
          Dst:             sched_numa_list_populate
        - Src:             'lib/dpif-netdev.c:5273,5'
          Dst:             sched_numa_list_schedule
        - Src:             'lib/dpif-netdev.c:5274,5'
          Dst:             sched_numa_list_put_in_place
        - Src:             'lib/dpif-netdev.c:5276,5'
          Dst:             sched_numa_list_free_entries
    - functionName:    dp_netdev_del_rxq_from_pmd
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6876
      functionLinenumberEnd: 6881
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_remove
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:6877,5'
          Dst:             hmap_remove
    - functionName:    hmap_count
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 263
      functionLinenumberEnd: 264
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_netdev_add_rxq_to_pmd
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6852
      functionLinenumberEnd: 6869
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          97
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hash_2words
        - hmap_first_with_hash
        - hmap_insert_at
        - hmap_next_with_hash
        - netdev_rxq_get_queue_id
        - odp_to_u32
        - xmalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:6853,15'
          Dst:             netdev_rxq_get_queue_id
        - Src:             'lib/dpif-netdev.c:6854,33'
          Dst:             odp_to_u32
        - Src:             'lib/dpif-netdev.c:6854,21'
          Dst:             hash_2words
        - Src:             'lib/dpif-netdev.c:6857,5'
          Dst:             hmap_first_with_hash
        - Src:             'lib/dpif-netdev.c:6857,5'
          Dst:             hmap_next_with_hash
        - Src:             'lib/dpif-netdev.c:6864,12'
          Dst:             xmalloc
        - Src:             'lib/dpif-netdev.c:6866,5'
          Dst:             hmap_insert_at
    - functionName:    dp_netdev_add_port_tx_to_pmd
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6889
      functionLinenumberEnd: 6901
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hash_port_no
        - hmap_insert_at
        - tx_port_create
        - tx_port_lookup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:6892,10'
          Dst:             tx_port_lookup
        - Src:             'lib/dpif-netdev.c:6898,10'
          Dst:             tx_port_create
        - Src:             'lib/dpif-netdev.c:6899,5'
          Dst:             hash_port_no
        - Src:             'lib/dpif-netdev.c:6899,5'
          Dst:             hmap_insert_at
    - functionName:    dp_netdev_add_bond_tx_to_pmd
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6920
      functionLinenumberEnd: 6952
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          146
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - cmap_insert
        - cmap_replace
        - hash_bond_id
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovsrcu_postpone__
        - tx_bond_lookup
        - xmemdup
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:6923,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-netdev.c:6924,10'
          Dst:             tx_bond_lookup
        - Src:             'lib/dpif-netdev.c:6932,34'
          Dst:             xmemdup
        - Src:             'lib/dpif-netdev.c:6944,22'
          Dst:             hash_bond_id
        - Src:             'lib/dpif-netdev.c:6943,9'
          Dst:             cmap_replace
        - Src:             'lib/dpif-netdev.c:6945,9'
          Dst:             ovsrcu_postpone__
        - Src:             'lib/dpif-netdev.c:6947,14'
          Dst:             xmemdup
        - Src:             'lib/dpif-netdev.c:6948,48'
          Dst:             hash_bond_id
        - Src:             'lib/dpif-netdev.c:6948,9'
          Dst:             cmap_insert
        - Src:             'lib/dpif-netdev.c:6951,5'
          Dst:             ovs_mutex_unlock
    - functionName:    tx_port_lookup
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4508
      functionLinenumberEnd: 4518
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          73
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hash_port_no
        - hmap_first_in_bucket
        - hmap_next_in_bucket
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:4511,5'
          Dst:             hash_port_no
        - Src:             'lib/dpif-netdev.c:4511,5'
          Dst:             hmap_first_in_bucket
        - Src:             'lib/dpif-netdev.c:4511,5'
          Dst:             hmap_next_in_bucket
    - functionName:    hmap_first_in_bucket
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 367
      functionLinenumberEnd: 368
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_next_in_bucket
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 381
      functionLinenumberEnd: 382
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_first_with_hash
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 360
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next_with_hash__
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:360,12'
          Dst:             hmap_next_with_hash__
    - functionName:    hmap_next_with_hash
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 395
      functionLinenumberEnd: 396
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next_with_hash__
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:396,12'
          Dst:             hmap_next_with_hash__
    - functionName:    hmap_next_with_hash__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 348
      functionLinenumberEnd: 352
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          40
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sched_numa_list_populate
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4730
      functionLinenumberEnd: 4765
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          142
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - cmap_cursor_advance
        - cmap_cursor_start
        - hash_int
        - hmap_init
        - hmap_insert_at
        - sched_numa_list_lookup
        - sort_numa_list_pmds
        - xrealloc
        - xzalloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:4733,5'
          Dst:             hmap_init
        - Src:             'lib/dpif-netdev.c:4736,5'
          Dst:             cmap_cursor_start
        - Src:             'lib/dpif-netdev.c:4736,5'
          Dst:             cmap_cursor_advance
        - Src:             'lib/dpif-netdev.c:4744,16'
          Dst:             sched_numa_list_lookup
        - Src:             'lib/dpif-netdev.c:4747,20'
          Dst:             xzalloc
        - Src:             'lib/dpif-netdev.c:4749,13'
          Dst:             hash_int
        - Src:             'lib/dpif-netdev.c:4749,13'
          Dst:             hmap_insert_at
        - Src:             'lib/dpif-netdev.c:4755,22'
          Dst:             xrealloc
        - Src:             'lib/dpif-netdev.c:4764,5'
          Dst:             sort_numa_list_pmds
    - functionName:    sched_numa_list_schedule
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5099
      functionLinenumberEnd: 5263
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         103
      ICount:          685
      EdgeCount:       132
      CyclomaticComplexity: 31
      functionsReached:
        - compare_rxq_cycles
        - dp_netdev_get_pmd
        - dp_netdev_pmd_unref
        - dp_netdev_rxq_get_cycles
        - dp_netdev_rxq_get_intrvl_cycles
        - dp_netdev_rxq_set_cycles
        - get_assignment_type_string
        - get_rxq_cyc_log
        - hmap_first
        - hmap_next
        - netdev_get_numa_id
        - netdev_is_pmd
        - netdev_rxq_get_name
        - netdev_rxq_get_queue_id
        - qsort
        - sched_numa_list_count
        - sched_numa_list_lookup
        - sched_numa_list_next
        - sched_numa_noniso_pmd_count
        - sched_pmd_add_rxq
        - sched_pmd_find_by_pmd
        - sched_pmd_next
        - vlog
        - xrealloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:5108,5'
          Dst:             hmap_first
        - Src:             'lib/dpif-netdev.c:5109,14'
          Dst:             netdev_is_pmd
        - Src:             'lib/dpif-netdev.c:5122,35'
          Dst:             dp_netdev_rxq_get_intrvl_cycles
        - Src:             'lib/dpif-netdev.c:5124,17'
          Dst:             dp_netdev_rxq_set_cycles
        - Src:             'lib/dpif-netdev.c:5138,23'
          Dst:             dp_netdev_get_pmd
        - Src:             'lib/dpif-netdev.c:5139,29'
          Dst:             sched_pmd_find_by_pmd
        - Src:             'lib/dpif-netdev.c:5140,17'
          Dst:             dp_netdev_pmd_unref
        - Src:             'lib/dpif-netdev.c:5143,21'
          Dst:             netdev_rxq_get_name
        - Src:             'lib/dpif-netdev.c:5143,21'
          Dst:             netdev_rxq_get_queue_id
        - Src:             'lib/dpif-netdev.c:5143,21'
          Dst:             vlog
        - Src:             'lib/dpif-netdev.c:5152,28'
          Dst:             xrealloc
        - Src:             'lib/dpif-netdev.c:5164,31'
          Dst:             dp_netdev_rxq_get_cycles
        - Src:             'lib/dpif-netdev.c:5166,17'
          Dst:             netdev_rxq_get_name
        - Src:             'lib/dpif-netdev.c:5166,17'
          Dst:             netdev_rxq_get_queue_id
        - Src:             'lib/dpif-netdev.c:5166,17'
          Dst:             get_rxq_cyc_log
        - Src:             'lib/dpif-netdev.c:5166,17'
          Dst:             vlog
        - Src:             'lib/dpif-netdev.c:5172,17'
          Dst:             sched_pmd_add_rxq
        - Src:             'lib/dpif-netdev.c:5174,24'
          Dst:             xrealloc
        - Src:             'lib/dpif-netdev.c:5108,5'
          Dst:             hmap_next
        - Src:             'lib/dpif-netdev.c:5183,9'
          Dst:             qsort
        - Src:             'lib/dpif-netdev.c:5183,9'
          Dst:             compare_rxq_cycles
        - Src:             'lib/dpif-netdev.c:5187,14'
          Dst:             sched_numa_list_count
        - Src:             'lib/dpif-netdev.c:5197,13'
          Dst:             get_assignment_type_string
        - Src:             'lib/dpif-netdev.c:5197,13'
          Dst:             vlog
        - Src:             'lib/dpif-netdev.c:5203,23'
          Dst:             dp_netdev_rxq_get_cycles
        - Src:             'lib/dpif-netdev.c:5205,24'
          Dst:             netdev_get_numa_id
        - Src:             'lib/dpif-netdev.c:5208,16'
          Dst:             sched_numa_list_lookup
        - Src:             'lib/dpif-netdev.c:5211,23'
          Dst:             sched_numa_noniso_pmd_count
        - Src:             'lib/dpif-netdev.c:5216,24'
          Dst:             sched_numa_list_next
        - Src:             'lib/dpif-netdev.c:5218,21'
          Dst:             sched_numa_noniso_pmd_count
        - Src:             'lib/dpif-netdev.c:5227,25'
          Dst:             sched_pmd_next
        - Src:             'lib/dpif-netdev.c:5238,17'
          Dst:             netdev_rxq_get_name
        - Src:             'lib/dpif-netdev.c:5238,17'
          Dst:             netdev_rxq_get_queue_id
        - Src:             'lib/dpif-netdev.c:5238,17'
          Dst:             vlog
        - Src:             'lib/dpif-netdev.c:5245,13'
          Dst:             netdev_rxq_get_name
        - Src:             'lib/dpif-netdev.c:5245,13'
          Dst:             netdev_rxq_get_queue_id
        - Src:             'lib/dpif-netdev.c:5245,13'
          Dst:             get_rxq_cyc_log
        - Src:             'lib/dpif-netdev.c:5245,13'
          Dst:             vlog
        - Src:             'lib/dpif-netdev.c:5251,13'
          Dst:             sched_pmd_add_rxq
        - Src:             'lib/dpif-netdev.c:5253,13'
          Dst:             netdev_rxq_get_name
        - Src:             'lib/dpif-netdev.c:5253,13'
          Dst:             netdev_rxq_get_queue_id
        - Src:             'lib/dpif-netdev.c:5253,13'
          Dst:             get_rxq_cyc_log
        - Src:             'lib/dpif-netdev.c:5253,13'
          Dst:             vlog
    - functionName:    sched_numa_list_put_in_place
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4858
      functionLinenumberEnd: 4877
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         18
      ICount:          118
      EdgeCount:       22
      CyclomaticComplexity: 6
      functionsReached:
        - hmap_first
        - hmap_next
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:4862,5'
          Dst:             hmap_first
        - Src:             'lib/dpif-netdev.c:4862,5'
          Dst:             hmap_next
    - functionName:    sched_numa_list_free_entries
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4769
      functionLinenumberEnd: 4785
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          92
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_destroy
        - hmap_pop_helper__
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:4772,5'
          Dst:             hmap_pop_helper__
        - Src:             'lib/dpif-netdev.c:4784,5'
          Dst:             hmap_destroy
    - functionName:    dp_netdev_rxq_get_intrvl_cycles
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4313
      functionLinenumberEnd: 4316
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          20
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_netdev_rxq_set_cycles
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4282
      functionLinenumberEnd: 4284
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          20
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sched_pmd_find_by_pmd
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4790
      functionLinenumberEnd: 4804
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          96
      EdgeCount:       21
      CyclomaticComplexity: 6
      functionsReached:
        - hmap_first
        - hmap_next
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:4793,5'
          Dst:             hmap_first
        - Src:             'lib/dpif-netdev.c:4793,5'
          Dst:             hmap_next
    - functionName:    dp_netdev_rxq_get_cycles
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4297
      functionLinenumberEnd: 4300
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          20
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_rxq_cyc_log
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5079
      functionLinenumberEnd: 5090
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          60
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - snprintf
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:5083,15'
          Dst:             snprintf
    - functionName:    sched_pmd_add_rxq
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4809
      functionLinenumberEnd: 4821
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          66
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - xmalloc
        - xrealloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:4813,27'
          Dst:             xmalloc
        - Src:             'lib/dpif-netdev.c:4815,27'
          Dst:             xrealloc
    - functionName:    compare_rxq_cycles
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4923
      functionLinenumberEnd: 4949
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          95
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - dp_netdev_rxq_get_cycles
        - netdev_rxq_get_queue_id
        - odp_to_u32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:4931,17'
          Dst:             dp_netdev_rxq_get_cycles
        - Src:             'lib/dpif-netdev.c:4932,17'
          Dst:             dp_netdev_rxq_get_cycles
        - Src:             'lib/dpif-netdev.c:4940,28'
          Dst:             odp_to_u32
        - Src:             'lib/dpif-netdev.c:4941,28'
          Dst:             odp_to_u32
        - Src:             'lib/dpif-netdev.c:4945,20'
          Dst:             netdev_rxq_get_queue_id
        - Src:             'lib/dpif-netdev.c:4946,23'
          Dst:             netdev_rxq_get_queue_id
    - functionName:    sched_numa_list_count
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4668
      functionLinenumberEnd: 4669
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_count
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:4669,12'
          Dst:             hmap_count
    - functionName:    get_assignment_type_string
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5065
      functionLinenumberEnd: 5072
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          32
      EdgeCount:       10
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/dpif-netdev.c:5066,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    sched_numa_list_lookup
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4690
      functionLinenumberEnd: 4700
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          72
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hash_int
        - hmap_first_with_hash
        - hmap_next_with_hash
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:4693,5'
          Dst:             hash_int
        - Src:             'lib/dpif-netdev.c:4693,5'
          Dst:             hmap_first_with_hash
        - Src:             'lib/dpif-netdev.c:4693,5'
          Dst:             hmap_next_with_hash
    - functionName:    sched_numa_noniso_pmd_count
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4913
      functionLinenumberEnd: 4918
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          34
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sched_numa_list_next
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4675
      functionLinenumberEnd: 4685
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          63
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_first
        - hmap_next
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:4679,16'
          Dst:             hmap_next
        - Src:             'lib/dpif-netdev.c:4682,16'
          Dst:             hmap_first
    - functionName:    sched_pmd_next
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5054
      functionLinenumberEnd: 5061
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - sched_pmd_get_lowest
        - sched_pmd_next_noniso_rr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:5056,16'
          Dst:             sched_pmd_get_lowest
        - Src:             'lib/dpif-netdev.c:5060,12'
          Dst:             sched_pmd_next_noniso_rr
    - functionName:    sched_pmd_get_lowest
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4977
      functionLinenumberEnd: 4991
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          70
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - sched_pmd_new_lowest
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:4987,13'
          Dst:             sched_pmd_new_lowest
    - functionName:    sched_pmd_next_noniso_rr
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5035
      functionLinenumberEnd: 5048
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          57
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - sched_pmd_next_rr
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:5042,21'
          Dst:             sched_pmd_next_rr
    - functionName:    sched_pmd_next_rr
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5006
      functionLinenumberEnd: 5030
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          89
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sched_pmd_new_lowest
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4954
      functionLinenumberEnd: 4973
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          67
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    sort_numa_list_pmds
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4715
      functionLinenumberEnd: 4724
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          74
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - compare_sched_pmd_list
        - hmap_first
        - hmap_next
        - qsort
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:4718,5'
          Dst:             hmap_first
        - Src:             'lib/dpif-netdev.c:4720,13'
          Dst:             qsort
        - Src:             'lib/dpif-netdev.c:4720,13'
          Dst:             compare_sched_pmd_list
        - Src:             'lib/dpif-netdev.c:4718,5'
          Dst:             hmap_next
    - functionName:    compare_sched_pmd_list
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4704
      functionLinenumberEnd: 4710
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - compare_poll_thread_list
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:4710,12'
          Dst:             compare_poll_thread_list
    - functionName:    dpif_netdev_port_set_rxq_affinity
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4115
      functionLinenumberEnd: 4131
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          77
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - parse_affinity_list
        - xmalloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:4119,16'
          Dst:             xmalloc
        - Src:             'lib/dpif-netdev.c:4120,9'
          Dst:             parse_affinity_list
    - functionName:    parse_affinity_list
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4078
      functionLinenumberEnd: 4109
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          124
      EdgeCount:       34
      CyclomaticComplexity: 10
      functionsReached:
        - ofputil_parse_key_value
        - str_to_int
        - xstrdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:4091,19'
          Dst:             xstrdup
        - Src:             'lib/dpif-netdev.c:4093,12'
          Dst:             ofputil_parse_key_value
        - Src:             'lib/dpif-netdev.c:4096,14'
          Dst:             str_to_int
        - Src:             'lib/dpif-netdev.c:4097,17'
          Dst:             str_to_int
    - functionName:    dp_netdev_del_port_tx_from_pmd
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6909
      functionLinenumberEnd: 6913
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_remove
        - tx_port_destroy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:6910,5'
          Dst:             hmap_remove
        - Src:             'lib/dpif-netdev.c:6911,5'
          Dst:             tx_port_destroy
    - functionName:    has_pmd_port
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1784
      functionLinenumberEnd: 1794
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          66
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_first
        - hmap_next
        - netdev_is_pmd
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:1787,5'
          Dst:             hmap_first
        - Src:             'lib/dpif-netdev.c:1788,13'
          Dst:             netdev_is_pmd
        - Src:             'lib/dpif-netdev.c:1787,5'
          Dst:             hmap_next
    - functionName:    dp_netdev_configure_pmd
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6686
      functionLinenumberEnd: 6730
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          160
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ccmap_init
        - cmap_init
        - cmap_insert
        - dfc_cache_init
        - hash_int
        - hmap_init
        - ovs_mutex_init
        - ovs_refcount_init
        - pmd_alloc_static_tx_qid
        - pmd_init_max_sleep
        - pmd_perf_stats_init
        - pmd_thread_ctx_time_update
        - seq_create
        - seq_read
        - xzalloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:6693,5'
          Dst:             ovs_refcount_init
        - Src:             'lib/dpif-netdev.c:6695,23'
          Dst:             seq_create
        - Src:             'lib/dpif-netdev.c:6696,28'
          Dst:             seq_read
        - Src:             'lib/dpif-netdev.c:6698,5'
          Dst:             ovs_mutex_init
        - Src:             'lib/dpif-netdev.c:6699,5'
          Dst:             ovs_mutex_init
        - Src:             'lib/dpif-netdev.c:6700,5'
          Dst:             ovs_mutex_init
        - Src:             'lib/dpif-netdev.c:6701,5'
          Dst:             cmap_init
        - Src:             'lib/dpif-netdev.c:6702,5'
          Dst:             cmap_init
        - Src:             'lib/dpif-netdev.c:6703,5'
          Dst:             cmap_init
        - Src:             'lib/dpif-netdev.c:6704,5'
          Dst:             ccmap_init
        - Src:             'lib/dpif-netdev.c:6705,5'
          Dst:             ccmap_init
        - Src:             'lib/dpif-netdev.c:6707,5'
          Dst:             pmd_thread_ctx_time_update
        - Src:             'lib/dpif-netdev.c:6711,31'
          Dst:             xzalloc
        - Src:             'lib/dpif-netdev.c:6713,5'
          Dst:             hmap_init
        - Src:             'lib/dpif-netdev.c:6714,5'
          Dst:             hmap_init
        - Src:             'lib/dpif-netdev.c:6715,5'
          Dst:             hmap_init
        - Src:             'lib/dpif-netdev.c:6716,5'
          Dst:             hmap_init
        - Src:             'lib/dpif-netdev.c:6717,5'
          Dst:             cmap_init
        - Src:             'lib/dpif-netdev.c:6719,5'
          Dst:             pmd_init_max_sleep
        - Src:             'lib/dpif-netdev.c:6724,9'
          Dst:             dfc_cache_init
        - Src:             'lib/dpif-netdev.c:6725,9'
          Dst:             pmd_alloc_static_tx_qid
        - Src:             'lib/dpif-netdev.c:6727,5'
          Dst:             pmd_perf_stats_init
        - Src:             'lib/dpif-netdev.c:6729,17'
          Dst:             hash_int
        - Src:             'lib/dpif-netdev.c:6728,5'
          Dst:             cmap_insert
    - functionName:    pmd_thread_main
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6054
      functionLinenumberEnd: 6256
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         95
      ICount:          744
      EdgeCount:       123
      CyclomaticComplexity: 30
      functionsReached:
        - atomic_count_init
        - atomic_count_set
        - coverage_try_clear
        - cycle_timer_start
        - cycle_timer_stop
        - cycles_counter_update
        - dfc_cache_init
        - dfc_cache_uninit
        - dp_netdev_pmd_flush_output_packets
        - dp_netdev_pmd_reload_done
        - dp_netdev_pmd_try_optimize
        - dp_netdev_process_rxq_port
        - dp_netdev_rxq_set_cycles
        - dp_netdev_rxq_set_intrvl_cycles
        - dpdk_attach_thread
        - dpdk_detach_thread
        - emc_cache_slow_sweep
        - netdev_get_change_seq
        - netdev_rxq_enabled
        - netdev_rxq_get_name
        - netdev_rxq_get_queue_id
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovs_numa_thread_setaffinity_core
        - ovsrcu_try_quiesce
        - ovsthread_setspecific
        - pmd_alloc_static_tx_qid
        - pmd_free_cached_ports
        - pmd_free_static_tx_qid
        - pmd_load_queues_and_ports
        - pmd_perf_end_iteration
        - pmd_perf_metrics_enabled
        - pmd_perf_start_iteration
        - pmd_thread_ctx_time_update
        - poll_block
        - seq_read
        - seq_wait_at
        - set_timer_resolution
        - vlog
        - xnanosleep_no_quiesce
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:6072,5'
          Dst:             ovsthread_setspecific
        - Src:             'lib/dpif-netdev.c:6073,5'
          Dst:             ovs_numa_thread_setaffinity_core
        - Src:             'lib/dpif-netdev.c:6074,21'
          Dst:             dpdk_attach_thread
        - Src:             'lib/dpif-netdev.c:6075,16'
          Dst:             pmd_load_queues_and_ports
        - Src:             'lib/dpif-netdev.c:6076,5'
          Dst:             dfc_cache_init
        - Src:             'lib/dpif-netdev.c:6077,5'
          Dst:             pmd_alloc_static_tx_qid
        - Src:             'lib/dpif-netdev.c:6078,5'
          Dst:             set_timer_resolution
        - Src:             'lib/dpif-netdev.c:6081,5'
          Dst:             atomic_count_init
        - Src:             'lib/dpif-netdev.c:6087,25'
          Dst:             dpdk_attach_thread
        - Src:             'lib/dpif-netdev.c:6092,8'
          Dst:             netdev_rxq_get_name
        - Src:             'lib/dpif-netdev.c:6092,8'
          Dst:             netdev_rxq_get_queue_id
        - Src:             'lib/dpif-netdev.c:6092,8'
          Dst:             vlog
        - Src:             'lib/dpif-netdev.c:6096,8'
          Dst:             dp_netdev_rxq_set_cycles
        - Src:             'lib/dpif-netdev.c:6098,12'
          Dst:             dp_netdev_rxq_set_intrvl_cycles
        - Src:             'lib/dpif-netdev.c:6110,20'
          Dst:             seq_read
        - Src:             'lib/dpif-netdev.c:6111,17'
          Dst:             seq_wait_at
        - Src:             'lib/dpif-netdev.c:6112,17'
          Dst:             poll_block
        - Src:             'lib/dpif-netdev.c:6120,5'
          Dst:             atomic_count_set
        - Src:             'lib/dpif-netdev.c:6121,5'
          Dst:             cycles_counter_update
        - Src:             'lib/dpif-netdev.c:6126,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-netdev.c:6132,9'
          Dst:             pmd_perf_start_iteration
        - Src:             'lib/dpif-netdev.c:6151,17'
          Dst:             dp_netdev_process_rxq_port
        - Src:             'lib/dpif-netdev.c:6163,13'
          Dst:             pmd_thread_ctx_time_update
        - Src:             'lib/dpif-netdev.c:6164,26'
          Dst:             dp_netdev_pmd_flush_output_packets
        - Src:             'lib/dpif-netdev.c:6174,17'
          Dst:             cycle_timer_start
        - Src:             'lib/dpif-netdev.c:6175,17'
          Dst:             xnanosleep_no_quiesce
        - Src:             'lib/dpif-netdev.c:6176,30'
          Dst:             cycle_timer_stop
        - Src:             'lib/dpif-netdev.c:6177,17'
          Dst:             pmd_thread_ctx_time_update
        - Src:             'lib/dpif-netdev.c:6194,18'
          Dst:             ovsrcu_try_quiesce
        - Src:             'lib/dpif-netdev.c:6203,13'
          Dst:             coverage_try_clear
        - Src:             'lib/dpif-netdev.c:6204,13'
          Dst:             dp_netdev_pmd_try_optimize
        - Src:             'lib/dpif-netdev.c:6205,18'
          Dst:             ovsrcu_try_quiesce
        - Src:             'lib/dpif-netdev.c:6206,17'
          Dst:             emc_cache_slow_sweep
        - Src:             'lib/dpif-netdev.c:6213,26'
          Dst:             netdev_get_change_seq
        - Src:             'lib/dpif-netdev.c:6217,34'
          Dst:             netdev_rxq_enabled
        - Src:             'lib/dpif-netdev.c:6228,32'
          Dst:             pmd_perf_metrics_enabled
        - Src:             'lib/dpif-netdev.c:6227,9'
          Dst:             pmd_perf_end_iteration
        - Src:             'lib/dpif-netdev.c:6230,5'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/dpif-netdev.c:6232,16'
          Dst:             pmd_load_queues_and_ports
        - Src:             'lib/dpif-netdev.c:6238,5'
          Dst:             dp_netdev_pmd_reload_done
        - Src:             'lib/dpif-netdev.c:6241,9'
          Dst:             pmd_free_static_tx_qid
        - Src:             'lib/dpif-netdev.c:6242,9'
          Dst:             pmd_alloc_static_tx_qid
        - Src:             'lib/dpif-netdev.c:6249,5'
          Dst:             pmd_free_static_tx_qid
        - Src:             'lib/dpif-netdev.c:6250,5'
          Dst:             dfc_cache_uninit
        - Src:             'lib/dpif-netdev.c:6252,5'
          Dst:             pmd_free_cached_ports
        - Src:             'lib/dpif-netdev.c:6254,9'
          Dst:             dpdk_detach_thread
    - functionName:    pmd_load_queues_and_ports
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6024
      functionLinenumberEnd: 6049
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          146
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - hmap_count
        - hmap_first
        - hmap_next
        - netdev_get_change_seq
        - netdev_rxq_enabled
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - pmd_load_cached_ports
        - xrealloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:6029,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-netdev.c:6030,37'
          Dst:             hmap_count
        - Src:             'lib/dpif-netdev.c:6030,17'
          Dst:             xrealloc
        - Src:             'lib/dpif-netdev.c:6034,5'
          Dst:             hmap_first
        - Src:             'lib/dpif-netdev.c:6038,36'
          Dst:             netdev_rxq_enabled
        - Src:             'lib/dpif-netdev.c:6040,22'
          Dst:             netdev_get_change_seq
        - Src:             'lib/dpif-netdev.c:6034,5'
          Dst:             hmap_next
        - Src:             'lib/dpif-netdev.c:6044,5'
          Dst:             pmd_load_cached_ports
        - Src:             'lib/dpif-netdev.c:6046,5'
          Dst:             ovs_mutex_unlock
    - functionName:    pmd_alloc_static_tx_qid
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6001
      functionLinenumberEnd: 6011
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          74
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - id_pool_alloc_id
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - vlog
        - vlog_abort
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:6002,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-netdev.c:6003,10'
          Dst:             id_pool_alloc_id
        - Src:             'lib/dpif-netdev.c:6004,9'
          Dst:             vlog_abort
        - Src:             'lib/dpif-netdev.c:6007,5'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/dpif-netdev.c:6009,5'
          Dst:             vlog
    - functionName:    atomic_count_init
      functionSourceFile: '/src/openvswitch/lib/ovs-atomic.h'
      linkageType:     InternalLinkage
      functionLinenumber: 445
      functionLinenumberEnd: 447
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_netdev_rxq_set_intrvl_cycles
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4306
      functionLinenumberEnd: 4309
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - atomic_count_inc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:4307,24'
          Dst:             atomic_count_inc
    - functionName:    atomic_count_set
      functionSourceFile: '/src/openvswitch/lib/ovs-atomic.h'
      linkageType:     InternalLinkage
      functionLinenumber: 481
      functionLinenumberEnd: 483
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_netdev_process_rxq_port
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4441
      functionLinenumberEnd: 4503
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         32
      ICount:          208
      EdgeCount:       42
      CyclomaticComplexity: 12
      functionsReached:
        - cycle_timer_start
        - cycle_timer_stop
        - dp_netdev_input
        - dp_netdev_pmd_flush_output_packets
        - dp_netdev_rxq_add_cycles
        - dp_packet_batch_destroy
        - dp_packet_batch_init
        - dp_packet_batch_size
        - histogram_add_sample
        - netdev_rxq_get_name
        - netdev_rxq_recv
        - ovs_strerror
        - pmd_perf_metrics_enabled
        - pmd_thread_ctx_time_update
        - recirc_depth_get
        - vlog_rate_limit
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:4451,5'
          Dst:             cycle_timer_start
        - Src:             'lib/dpif-netdev.c:4454,5'
          Dst:             dp_packet_batch_init
        - Src:             'lib/dpif-netdev.c:4457,9'
          Dst:             pmd_perf_metrics_enabled
        - Src:             'lib/dpif-netdev.c:4461,13'
          Dst:             netdev_rxq_recv
        - Src:             'lib/dpif-netdev.c:4464,10'
          Dst:             recirc_depth_get
        - Src:             'lib/dpif-netdev.c:4465,9'
          Dst:             pmd_thread_ctx_time_update
        - Src:             'lib/dpif-netdev.c:4466,21'
          Dst:             dp_packet_batch_size
        - Src:             'lib/dpif-netdev.c:4467,13'
          Dst:             pmd_perf_metrics_enabled
        - Src:             'lib/dpif-netdev.c:4470,13'
          Dst:             histogram_add_sample
        - Src:             'lib/dpif-netdev.c:4481,9'
          Dst:             dp_netdev_input
        - Src:             'lib/dpif-netdev.c:4484,18'
          Dst:             cycle_timer_stop
        - Src:             'lib/dpif-netdev.c:4485,9'
          Dst:             dp_netdev_rxq_add_cycles
        - Src:             'lib/dpif-netdev.c:4487,9'
          Dst:             dp_netdev_pmd_flush_output_packets
        - Src:             'lib/dpif-netdev.c:4490,9'
          Dst:             cycle_timer_stop
        - Src:             'lib/dpif-netdev.c:4494,13'
          Dst:             netdev_rxq_get_name
        - Src:             'lib/dpif-netdev.c:4494,13'
          Dst:             ovs_strerror
        - Src:             'lib/dpif-netdev.c:4494,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-netdev.c:4499,5'
          Dst:             dp_packet_batch_destroy
    - functionName:    pmd_thread_ctx_time_update
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 601
      functionLinenumberEnd: 603
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - time_usec
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:602,20'
          Dst:             time_usec
    - functionName:    dp_netdev_pmd_try_optimize
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9121
      functionLinenumberEnd: 9201
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         41
      ICount:          389
      EdgeCount:       54
      CyclomaticComplexity: 15
      functionsReached:
        - atomic_count_inc
        - atomic_count_set
        - cmap_cursor_advance
        - cmap_cursor_start
        - cycles_counter_update
        - dp_netdev_rxq_get_cycles
        - dp_netdev_rxq_set_cycles
        - dp_netdev_rxq_set_intrvl_cycles
        - dpcls_sort_subtable_vector
        - ovs_mutex_trylock_at
        - ovs_mutex_unlock
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:9152,21'
          Dst:             atomic_count_inc
        - Src:             'lib/dpif-netdev.c:9154,21'
          Dst:             atomic_count_set
        - Src:             'lib/dpif-netdev.c:9168,37'
          Dst:             dp_netdev_rxq_get_cycles
        - Src:             'lib/dpif-netdev.c:9170,13'
          Dst:             dp_netdev_rxq_set_intrvl_cycles
        - Src:             'lib/dpif-netdev.c:9171,13'
          Dst:             dp_netdev_rxq_set_cycles
        - Src:             'lib/dpif-netdev.c:9174,20'
          Dst:             cycles_counter_update
        - Src:             'lib/dpif-netdev.c:9180,15'
          Dst:             atomic_count_inc
        - Src:             'lib/dpif-netdev.c:9190,14'
          Dst:             ovs_mutex_trylock_at
        - Src:             'lib/dpif-netdev.c:9192,13'
          Dst:             cmap_cursor_start
        - Src:             'lib/dpif-netdev.c:9192,13'
          Dst:             cmap_cursor_advance
        - Src:             'lib/dpif-netdev.c:9193,17'
          Dst:             dpcls_sort_subtable_vector
        - Src:             'lib/dpif-netdev.c:9195,13'
          Dst:             ovs_mutex_unlock
    - functionName:    pmd_perf_metrics_enabled
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4322
      functionLinenumberEnd: 4325
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          20
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_netdev_pmd_reload_done
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6608
      functionLinenumberEnd: 6613
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          38
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - seq_read
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:6611,28'
          Dst:             seq_read
    - functionName:    atomic_count_inc
      functionSourceFile: '/src/openvswitch/lib/ovs-atomic.h'
      linkageType:     InternalLinkage
      functionLinenumber: 451
      functionLinenumberEnd: 456
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpcls_sort_subtable_vector
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9107
      functionLinenumberEnd: 9116
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - pvector_change_priority
        - pvector_cursor_init
        - pvector_cursor_next
        - pvector_publish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:9111,5'
          Dst:             pvector_cursor_init
        - Src:             'lib/dpif-netdev.c:9111,5'
          Dst:             pvector_cursor_next
        - Src:             'lib/dpif-netdev.c:9112,9'
          Dst:             pvector_change_priority
        - Src:             'lib/dpif-netdev.c:9115,5'
          Dst:             pvector_publish
    - functionName:    recirc_depth_get
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 103
      functionLinenumberEnd: 103
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - recirc_depth_get_unsafe
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:103,1'
          Dst:             recirc_depth_get_unsafe
    - functionName:    histogram_add_sample
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev-perf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 337
      functionLinenumberEnd: 346
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          55
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_netdev_input
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7706
      functionLinenumberEnd: 7708
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_netdev_input__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:7707,5'
          Dst:             dp_netdev_input__
    - functionName:    dp_netdev_input__
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7649
      functionLinenumberEnd: 7700
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          162
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - dfc_processing
        - dp_netdev_queue_batches
        - dp_packet_batch_destroy
        - dp_packet_batch_is_empty
        - fast_path_processing
        - packet_batch_per_flow_execute
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:7662,5'
          Dst:             dfc_processing
        - Src:             'lib/dpif-netdev.c:7665,10'
          Dst:             dp_packet_batch_is_empty
        - Src:             'lib/dpif-netdev.c:7668,9'
          Dst:             fast_path_processing
        - Src:             'lib/dpif-netdev.c:7679,9'
          Dst:             dp_netdev_queue_batches
        - Src:             'lib/dpif-netdev.c:7697,9'
          Dst:             packet_batch_per_flow_execute
        - Src:             'lib/dpif-netdev.c:7698,9'
          Dst:             dp_packet_batch_destroy
    - functionName:    dfc_processing
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7317
      functionLinenumberEnd: 7447
      functionDepth:   0
      returnType:      size_t
      argCount:        11
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         55
      ICount:          514
      EdgeCount:       74
      CyclomaticComplexity: 21
      functionsReached:
        - datapath_drop_rx_invalid_packet_add
        - dfc_processing_enqueue_classified_packet
        - dp_netdev_hw_flow
        - dp_netdev_simple_match_enabled
        - dp_netdev_simple_match_lookup
        - dp_packet_batch_add
        - dp_packet_batch_refill_init
        - dp_packet_batch_size
        - dp_packet_data
        - dp_packet_delete
        - dp_packet_size
        - dpif_netdev_packet_get_rss_hash
        - dpif_netdev_packet_get_rss_hash_orig_pkt
        - dpif_offload_enabled
        - emc_lookup
        - miniflow_extract
        - miniflow_get_tcp_flags
        - parse_tcp_flags
        - pkt_metadata_init
        - pkt_metadata_prefetch_init
        - pmd_perf_update_counter
        - recirc_depth_get
        - smc_lookup_batch
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:7319,34'
          Dst:             dpif_offload_enabled
        - Src:             'lib/dpif-netdev.c:7320,36'
          Dst:             recirc_depth_get
        - Src:             'lib/dpif-netdev.c:7321,24'
          Dst:             dp_packet_batch_size
        - Src:             'lib/dpif-netdev.c:7329,25'
          Dst:             dp_netdev_simple_match_enabled
        - Src:             'lib/dpif-netdev.c:7336,5'
          Dst:             pmd_perf_update_counter
        - Src:             'lib/dpif-netdev.c:7340,5'
          Dst:             dp_packet_batch_refill_init
        - Src:             'lib/dpif-netdev.c:7344,13'
          Dst:             dp_packet_size
        - Src:             'lib/dpif-netdev.c:7345,13'
          Dst:             dp_packet_delete
        - Src:             'lib/dpif-netdev.c:7346,13'
          Dst:             datapath_drop_rx_invalid_packet_add
        - Src:             'lib/dpif-netdev.c:7353,13'
          Dst:             dp_packet_data
        - Src:             'lib/dpif-netdev.c:7354,13'
          Dst:             pkt_metadata_prefetch_init
        - Src:             'lib/dpif-netdev.c:7358,13'
          Dst:             pkt_metadata_init
        - Src:             'lib/dpif-netdev.c:7362,17'
          Dst:             dp_netdev_hw_flow
        - Src:             'lib/dpif-netdev.c:7369,29'
          Dst:             parse_tcp_flags
        - Src:             'lib/dpif-netdev.c:7371,17'
          Dst:             dfc_processing_enqueue_classified_packet
        - Src:             'lib/dpif-netdev.c:7382,25'
          Dst:             parse_tcp_flags
        - Src:             'lib/dpif-netdev.c:7383,20'
          Dst:             dp_netdev_simple_match_lookup
        - Src:             'lib/dpif-netdev.c:7387,17'
          Dst:             dfc_processing_enqueue_classified_packet
        - Src:             'lib/dpif-netdev.c:7394,9'
          Dst:             miniflow_extract
        - Src:             'lib/dpif-netdev.c:7398,19'
          Dst:             dpif_netdev_packet_get_rss_hash_orig_pkt
        - Src:             'lib/dpif-netdev.c:7399,19'
          Dst:             dpif_netdev_packet_get_rss_hash
        - Src:             'lib/dpif-netdev.c:7402,33'
          Dst:             emc_lookup
        - Src:             'lib/dpif-netdev.c:7404,25'
          Dst:             miniflow_get_tcp_flags
        - Src:             'lib/dpif-netdev.c:7406,13'
          Dst:             dfc_processing_enqueue_classified_packet
        - Src:             'lib/dpif-netdev.c:7412,13'
          Dst:             dp_packet_batch_add
        - Src:             'lib/dpif-netdev.c:7433,5'
          Dst:             pmd_perf_update_counter
        - Src:             'lib/dpif-netdev.c:7434,5'
          Dst:             pmd_perf_update_counter
        - Src:             'lib/dpif-netdev.c:7436,5'
          Dst:             pmd_perf_update_counter
        - Src:             'lib/dpif-netdev.c:7439,16'
          Dst:             dp_packet_batch_size
        - Src:             'lib/dpif-netdev.c:7443,5'
          Dst:             smc_lookup_batch
        - Src:             'lib/dpif-netdev.c:7446,12'
          Dst:             dp_packet_batch_size
    - functionName:    fast_path_processing
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7537
      functionLinenumberEnd: 7639
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         52
      ICount:          437
      EdgeCount:       68
      CyclomaticComplexity: 18
      functionsReached:
        - datapath_drop_lock_error_add
        - dp_netdev_flow_cast
        - dp_netdev_flow_hash
        - dp_netdev_pmd_lookup_dpcls
        - dp_netdev_pmd_lookup_flow
        - dp_packet_batch_size
        - dp_packet_delete
        - dpcls_lookup
        - emc_probabilistic_insert
        - fat_rwlock_tryrdlock
        - fat_rwlock_unlock
        - handle_packet_upcall
        - miniflow_get_tcp_flags
        - miniflow_n_values
        - netdev_flow_key_size
        - ofpbuf_uninit
        - ofpbuf_use_stub
        - packet_enqueue_to_flow_map
        - pmd_perf_update_counter
        - smc_insert
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:7538,24'
          Dst:             dp_packet_batch_size
        - Src:             'lib/dpif-netdev.c:7549,45'
          Dst:             miniflow_n_values
        - Src:             'lib/dpif-netdev.c:7549,24'
          Dst:             netdev_flow_key_size
        - Src:             'lib/dpif-netdev.c:7552,11'
          Dst:             dp_netdev_pmd_lookup_dpcls
        - Src:             'lib/dpif-netdev.c:7554,21'
          Dst:             dpcls_lookup
        - Src:             'lib/dpif-netdev.c:7560,36'
          Dst:             fat_rwlock_tryrdlock
        - Src:             'lib/dpif-netdev.c:7564,9'
          Dst:             ofpbuf_use_stub
        - Src:             'lib/dpif-netdev.c:7565,9'
          Dst:             ofpbuf_use_stub
        - Src:             'lib/dpif-netdev.c:7567,9'
          Dst:             dp_packet_batch_size
        - Src:             'lib/dpif-netdev.c:7577,27'
          Dst:             dp_netdev_pmd_lookup_flow
        - Src:             'lib/dpif-netdev.c:7585,25'
          Dst:             handle_packet_upcall
        - Src:             'lib/dpif-netdev.c:7595,9'
          Dst:             ofpbuf_uninit
        - Src:             'lib/dpif-netdev.c:7596,9'
          Dst:             ofpbuf_uninit
        - Src:             'lib/dpif-netdev.c:7597,9'
          Dst:             fat_rwlock_unlock
        - Src:             'lib/dpif-netdev.c:7599,9'
          Dst:             dp_packet_batch_size
        - Src:             'lib/dpif-netdev.c:7601,17'
          Dst:             dp_packet_delete
        - Src:             'lib/dpif-netdev.c:7602,17'
          Dst:             datapath_drop_lock_error_add
        - Src:             'lib/dpif-netdev.c:7608,5'
          Dst:             dp_packet_batch_size
        - Src:             'lib/dpif-netdev.c:7618,16'
          Dst:             dp_netdev_flow_cast
        - Src:             'lib/dpif-netdev.c:7619,26'
          Dst:             dp_netdev_flow_hash
        - Src:             'lib/dpif-netdev.c:7620,9'
          Dst:             smc_insert
        - Src:             'lib/dpif-netdev.c:7622,9'
          Dst:             emc_probabilistic_insert
        - Src:             'lib/dpif-netdev.c:7626,21'
          Dst:             miniflow_get_tcp_flags
        - Src:             'lib/dpif-netdev.c:7627,9'
          Dst:             packet_enqueue_to_flow_map
        - Src:             'lib/dpif-netdev.c:7631,5'
          Dst:             pmd_perf_update_counter
        - Src:             'lib/dpif-netdev.c:7633,5'
          Dst:             pmd_perf_update_counter
        - Src:             'lib/dpif-netdev.c:7635,5'
          Dst:             pmd_perf_update_counter
        - Src:             'lib/dpif-netdev.c:7637,5'
          Dst:             pmd_perf_update_counter
    - functionName:    dp_netdev_queue_batches
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7110
      functionLinenumberEnd: 7119
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - short
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          58
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - packet_batch_per_flow_init
        - packet_batch_per_flow_update
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:7115,9'
          Dst:             packet_batch_per_flow_init
        - Src:             'lib/dpif-netdev.c:7118,5'
          Dst:             packet_batch_per_flow_update
    - functionName:    packet_batch_per_flow_execute
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7091
      functionLinenumberEnd: 7103
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          54
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_netdev_execute_actions
        - dp_netdev_flow_get_actions
        - dp_netdev_flow_used
        - dp_packet_batch_size
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:7095,31'
          Dst:             dp_packet_batch_size
        - Src:             'lib/dpif-netdev.c:7095,5'
          Dst:             dp_netdev_flow_used
        - Src:             'lib/dpif-netdev.c:7099,15'
          Dst:             dp_netdev_flow_get_actions
        - Src:             'lib/dpif-netdev.c:7101,5'
          Dst:             dp_netdev_execute_actions
    - functionName:    dp_netdev_flow_used
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6980
      functionLinenumberEnd: 6989
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - short
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          65
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - non_atomic_ullong_add
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:6984,5'
          Dst:             non_atomic_ullong_add
        - Src:             'lib/dpif-netdev.c:6985,5'
          Dst:             non_atomic_ullong_add
    - functionName:    dp_netdev_execute_actions
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8354
      functionLinenumberEnd: 8359
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_execute_cb
        - odp_execute_actions
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:8357,5'
          Dst:             odp_execute_actions
        - Src:             'lib/dpif-netdev.c:8357,5'
          Dst:             dp_execute_cb
    - functionName:    dp_execute_cb
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8012
      functionLinenumberEnd: 8347
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         184
      ICount:          1075
      EdgeCount:       216
      CyclomaticComplexity: 34
      functionsReached:
        - abort
        - conntrack_execute
        - datapath_drop_invalid_tnl_port_add
        - datapath_drop_lock_error_add
        - datapath_drop_recirc_error_add
        - datapath_drop_tunnel_pop_error_add
        - datapath_drop_tunnel_push_error_add
        - dp_execute_lb_output_action
        - dp_execute_output_action
        - dp_execute_userspace_action
        - dp_netdev_recirculate
        - dp_netdev_run_meter
        - dp_packet_batch_apply_cutlen
        - dp_packet_batch_clone
        - dp_packet_batch_destroy
        - dp_packet_batch_is_empty
        - dp_packet_batch_reset_cutlen
        - dp_packet_batch_size
        - dp_packet_delete_batch
        - fat_rwlock_tryrdlock
        - fat_rwlock_unlock
        - flow_extract
        - netdev_pop_header
        - nl_attr_find_nested
        - nl_attr_get
        - nl_attr_get_odp_port
        - nl_attr_get_size
        - nl_attr_get_string
        - nl_attr_get_u16
        - nl_attr_get_u32
        - nl_attr_len_pad
        - nl_attr_next
        - nl_attr_type
        - odp_flow_key_hash
        - ofpbuf_init
        - ofpbuf_uninit
        - pmd_tnl_port_cache_lookup
        - push_tnl_action
        - recirc_depth_get
        - str_to_uint
        - vlog
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/dpif-netdev.c:8021,5'
          Branch Sides:    []
        - Branch String:   'lib/dpif-netdev.c:8195,13'
          Branch Sides:    []
        - Branch String:   'lib/dpif-netdev.c:8238,21'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/dpif-netdev.c:8014,23'
          Dst:             recirc_depth_get
        - Src:             'lib/dpif-netdev.c:8017,16'
          Dst:             nl_attr_type
        - Src:             'lib/dpif-netdev.c:8024,34'
          Dst:             nl_attr_get_odp_port
        - Src:             'lib/dpif-netdev.c:8023,9'
          Dst:             dp_execute_output_action
        - Src:             'lib/dpif-netdev.c:8029,37'
          Dst:             nl_attr_get_u32
        - Src:             'lib/dpif-netdev.c:8028,9'
          Dst:             dp_execute_lb_output_action
        - Src:             'lib/dpif-netdev.c:8040,9'
          Dst:             dp_packet_batch_apply_cutlen
        - Src:             'lib/dpif-netdev.c:8041,24'
          Dst:             dp_packet_batch_size
        - Src:             'lib/dpif-netdev.c:8042,13'
          Dst:             push_tnl_action
        - Src:             'lib/dpif-netdev.c:8043,13'
          Dst:             datapath_drop_tunnel_push_error_add
        - Src:             'lib/dpif-netdev.c:8051,33'
          Dst:             nl_attr_get_odp_port
        - Src:             'lib/dpif-netdev.c:8053,17'
          Dst:             pmd_tnl_port_cache_lookup
        - Src:             'lib/dpif-netdev.c:8058,21'
          Dst:             dp_packet_batch_clone
        - Src:             'lib/dpif-netdev.c:8060,21'
          Dst:             dp_packet_batch_reset_cutlen
        - Src:             'lib/dpif-netdev.c:8063,17'
          Dst:             dp_packet_batch_apply_cutlen
        - Src:             'lib/dpif-netdev.c:8065,32'
          Dst:             dp_packet_batch_size
        - Src:             'lib/dpif-netdev.c:8066,17'
          Dst:             netdev_pop_header
        - Src:             'lib/dpif-netdev.c:8068,35'
          Dst:             dp_packet_batch_size
        - Src:             'lib/dpif-netdev.c:8070,21'
          Dst:             datapath_drop_tunnel_pop_error_add
        - Src:             'lib/dpif-netdev.c:8073,21'
          Dst:             dp_packet_batch_is_empty
        - Src:             'lib/dpif-netdev.c:8075,25'
          Dst:             dp_packet_batch_destroy
        - Src:             'lib/dpif-netdev.c:8081,17'
          Dst:             dp_packet_batch_size
        - Src:             'lib/dpif-netdev.c:8086,17'
          Dst:             dp_netdev_recirculate
        - Src:             'lib/dpif-netdev.c:8090,21'
          Dst:             dp_packet_batch_destroy
        - Src:             'lib/dpif-netdev.c:8094,13'
          Dst:             dp_packet_batch_size
        - Src:             'lib/dpif-netdev.c:8094,13'
          Dst:             datapath_drop_invalid_tnl_port_add
        - Src:             'lib/dpif-netdev.c:8097,13'
          Dst:             dp_packet_batch_size
        - Src:             'lib/dpif-netdev.c:8097,13'
          Dst:             datapath_drop_recirc_error_add
        - Src:             'lib/dpif-netdev.c:8103,14'
          Dst:             fat_rwlock_tryrdlock
        - Src:             'lib/dpif-netdev.c:8112,24'
          Dst:             nl_attr_find_nested
        - Src:             'lib/dpif-netdev.c:8113,13'
          Dst:             ofpbuf_init
        - Src:             'lib/dpif-netdev.c:8117,21'
          Dst:             dp_packet_batch_clone
        - Src:             'lib/dpif-netdev.c:8120,21'
          Dst:             dp_packet_batch_reset_cutlen
        - Src:             'lib/dpif-netdev.c:8123,17'
          Dst:             dp_packet_batch_apply_cutlen
        - Src:             'lib/dpif-netdev.c:8127,13'
          Dst:             dp_packet_batch_size
        - Src:             'lib/dpif-netdev.c:8128,17'
          Dst:             flow_extract
        - Src:             'lib/dpif-netdev.c:8129,17'
          Dst:             odp_flow_key_hash
        - Src:             'lib/dpif-netdev.c:8130,17'
          Dst:             dp_execute_userspace_action
        - Src:             'lib/dpif-netdev.c:8135,17'
          Dst:             dp_packet_delete_batch
        - Src:             'lib/dpif-netdev.c:8136,17'
          Dst:             dp_packet_batch_destroy
        - Src:             'lib/dpif-netdev.c:8139,13'
          Dst:             ofpbuf_uninit
        - Src:             'lib/dpif-netdev.c:8140,13'
          Dst:             fat_rwlock_unlock
        - Src:             'lib/dpif-netdev.c:8144,9'
          Dst:             dp_packet_batch_size
        - Src:             'lib/dpif-netdev.c:8144,9'
          Dst:             datapath_drop_lock_error_add
        - Src:             'lib/dpif-netdev.c:8153,16'
          Dst:             dp_packet_batch_clone
        - Src:             'lib/dpif-netdev.c:8158,13'
          Dst:             dp_packet_batch_size
        - Src:             'lib/dpif-netdev.c:8159,40'
          Dst:             nl_attr_get_u32
        - Src:             'lib/dpif-netdev.c:8163,13'
          Dst:             dp_netdev_recirculate
        - Src:             'lib/dpif-netdev.c:8167,17'
          Dst:             dp_packet_batch_destroy
        - Src:             'lib/dpif-netdev.c:8172,9'
          Dst:             dp_packet_batch_size
        - Src:             'lib/dpif-netdev.c:8172,9'
          Dst:             datapath_drop_recirc_error_add
        - Src:             'lib/dpif-netdev.c:8174,9'
          Dst:             vlog
        - Src:             'lib/dpif-netdev.c:8191,9'
          Dst:             nl_attr_get
        - Src:             'lib/dpif-netdev.c:8191,9'
          Dst:             nl_attr_get_size
        - Src:             'lib/dpif-netdev.c:8193,41'
          Dst:             nl_attr_type
        - Src:             'lib/dpif-netdev.c:8203,24'
          Dst:             nl_attr_get_u16
        - Src:             'lib/dpif-netdev.c:8206,26'
          Dst:             nl_attr_get_string
        - Src:             'lib/dpif-netdev.c:8209,27'
          Dst:             nl_attr_get
        - Src:             'lib/dpif-netdev.c:8212,28'
          Dst:             nl_attr_get
        - Src:             'lib/dpif-netdev.c:8219,34'
          Dst:             nl_attr_get_string
        - Src:             'lib/dpif-netdev.c:8219,22'
          Dst:             str_to_uint
        - Src:             'lib/dpif-netdev.c:8220,21'
          Dst:             nl_attr_get_string
        - Src:             'lib/dpif-netdev.c:8220,21'
          Dst:             vlog
        - Src:             'lib/dpif-netdev.c:8235,17'
          Dst:             nl_attr_get
        - Src:             'lib/dpif-netdev.c:8235,17'
          Dst:             nl_attr_get_size
        - Src:             'lib/dpif-netdev.c:8236,55'
          Dst:             nl_attr_type
        - Src:             'lib/dpif-netdev.c:8248,32'
          Dst:             nl_attr_get
        - Src:             'lib/dpif-netdev.c:8249,32'
          Dst:             nl_attr_get_size
        - Src:             'lib/dpif-netdev.c:8254,32'
          Dst:             nl_attr_get
        - Src:             'lib/dpif-netdev.c:8255,32'
          Dst:             nl_attr_get_size
        - Src:             'lib/dpif-netdev.c:8260,29'
          Dst:             nl_attr_get_u16
        - Src:             'lib/dpif-netdev.c:8265,29'
          Dst:             nl_attr_get_u16
        - Src:             'lib/dpif-netdev.c:8278,25'
          Dst:             abort
        - Src:             'lib/dpif-netdev.c:8235,17'
          Dst:             nl_attr_len_pad
        - Src:             'lib/dpif-netdev.c:8235,17'
          Dst:             nl_attr_next
        - Src:             'lib/dpif-netdev.c:8299,17'
          Dst:             abort
        - Src:             'lib/dpif-netdev.c:8191,9'
          Dst:             nl_attr_len_pad
        - Src:             'lib/dpif-netdev.c:8191,9'
          Dst:             nl_attr_next
        - Src:             'lib/dpif-netdev.c:8307,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-netdev.c:8310,9'
          Dst:             conntrack_execute
        - Src:             'lib/dpif-netdev.c:8317,48'
          Dst:             nl_attr_get_u32
        - Src:             'lib/dpif-netdev.c:8317,9'
          Dst:             dp_netdev_run_meter
        - Src:             'lib/dpif-netdev.c:8343,9'
          Dst:             abort
        - Src:             'lib/dpif-netdev.c:8346,5'
          Dst:             dp_packet_delete_batch
    - functionName:    dp_execute_output_action
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7915
      functionLinenumberEnd: 7958
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          182
      EdgeCount:       28
      CyclomaticComplexity: 8
      functionsReached:
        - datapath_drop_invalid_port_add
        - dp_packet_batch_add_array
        - dp_packet_batch_apply_cutlen
        - dp_packet_batch_capacity
        - dp_packet_batch_clone
        - dp_packet_batch_destroy
        - dp_packet_batch_reset_cutlen
        - dp_packet_batch_size
        - dp_packet_delete_batch
        - dpif_netdev_output_grow_queues_add
        - pmd_send_port_cache_lookup
        - xrealloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:7916,25'
          Dst:             pmd_send_port_cache_lookup
        - Src:             'lib/dpif-netdev.c:7917,24'
          Dst:             dp_packet_batch_size
        - Src:             'lib/dpif-netdev.c:7923,9'
          Dst:             datapath_drop_invalid_port_add
        - Src:             'lib/dpif-netdev.c:7924,9'
          Dst:             dp_packet_delete_batch
        - Src:             'lib/dpif-netdev.c:7928,9'
          Dst:             dp_packet_batch_clone
        - Src:             'lib/dpif-netdev.c:7929,9'
          Dst:             dp_packet_batch_reset_cutlen
        - Src:             'lib/dpif-netdev.c:7932,5'
          Dst:             dp_packet_batch_apply_cutlen
        - Src:             'lib/dpif-netdev.c:7934,29'
          Dst:             dp_packet_batch_capacity
        - Src:             'lib/dpif-netdev.c:7935,25'
          Dst:             dp_packet_batch_size
        - Src:             'lib/dpif-netdev.c:7940,5'
          Dst:             dp_packet_batch_add_array
        - Src:             'lib/dpif-netdev.c:7941,9'
          Dst:             dp_packet_batch_capacity
        - Src:             'lib/dpif-netdev.c:7943,9'
          Dst:             dpif_netdev_output_grow_queues_add
        - Src:             'lib/dpif-netdev.c:7946,22'
          Dst:             dp_packet_batch_capacity
        - Src:             'lib/dpif-netdev.c:7945,13'
          Dst:             xrealloc
        - Src:             'lib/dpif-netdev.c:7955,9'
          Dst:             dp_packet_batch_destroy
    - functionName:    dp_execute_lb_output_action
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7964
      functionLinenumberEnd: 8006
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          154
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - datapath_drop_invalid_bond_add
        - dp_execute_output_action
        - dp_packet_batch_apply_cutlen
        - dp_packet_batch_clone
        - dp_packet_batch_destroy
        - dp_packet_batch_init_packet
        - dp_packet_batch_reset_cutlen
        - dp_packet_batch_size
        - dp_packet_delete_batch
        - dp_packet_get_rss_hash
        - dp_packet_size
        - non_atomic_ullong_add
        - tx_bond_lookup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:7965,30'
          Dst:             tx_bond_lookup
        - Src:             'lib/dpif-netdev.c:7970,9'
          Dst:             dp_packet_batch_size
        - Src:             'lib/dpif-netdev.c:7970,9'
          Dst:             datapath_drop_invalid_bond_add
        - Src:             'lib/dpif-netdev.c:7972,9'
          Dst:             dp_packet_delete_batch
        - Src:             'lib/dpif-netdev.c:7976,9'
          Dst:             dp_packet_batch_clone
        - Src:             'lib/dpif-netdev.c:7977,9'
          Dst:             dp_packet_batch_reset_cutlen
        - Src:             'lib/dpif-netdev.c:7980,5'
          Dst:             dp_packet_batch_apply_cutlen
        - Src:             'lib/dpif-netdev.c:7982,5'
          Dst:             dp_packet_batch_size
        - Src:             'lib/dpif-netdev.c:7986,25'
          Dst:             dp_packet_get_rss_hash
        - Src:             'lib/dpif-netdev.c:7990,25'
          Dst:             dp_packet_size
        - Src:             'lib/dpif-netdev.c:7993,9'
          Dst:             dp_packet_batch_init_packet
        - Src:             'lib/dpif-netdev.c:7994,13'
          Dst:             dp_execute_output_action
        - Src:             'lib/dpif-netdev.c:7997,13'
          Dst:             non_atomic_ullong_add
        - Src:             'lib/dpif-netdev.c:7998,13'
          Dst:             non_atomic_ullong_add
        - Src:             'lib/dpif-netdev.c:8000,9'
          Dst:             dp_packet_batch_destroy
        - Src:             'lib/dpif-netdev.c:8004,9'
          Dst:             dp_packet_batch_destroy
    - functionName:    dp_packet_batch_apply_cutlen
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1021
      functionLinenumberEnd: 1031
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          69
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - dp_packet_batch_size
        - dp_packet_get_send_len
        - dp_packet_reset_cutlen
        - dp_packet_set_size
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:1025,9'
          Dst:             dp_packet_batch_size
        - Src:             'lib/dp-packet.h:1026,40'
          Dst:             dp_packet_get_send_len
        - Src:             'lib/dp-packet.h:1026,13'
          Dst:             dp_packet_set_size
        - Src:             'lib/dp-packet.h:1027,13'
          Dst:             dp_packet_reset_cutlen
    - functionName:    push_tnl_action
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7850
      functionLinenumberEnd: 7883
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          113
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - dp_packet_batch_is_empty
        - dp_packet_delete_batch
        - dpif_offload_enabled
        - netdev_push_header
        - nl_attr_get
        - pmd_send_port_cache_lookup
        - pmd_tnl_port_cache_lookup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:7856,12'
          Dst:             nl_attr_get
        - Src:             'lib/dpif-netdev.c:7858,16'
          Dst:             pmd_tnl_port_cache_lookup
        - Src:             'lib/dpif-netdev.c:7864,9'
          Dst:             dpif_offload_enabled
        - Src:             'lib/dpif-netdev.c:7864,36'
          Dst:             dp_packet_batch_is_empty
        - Src:             'lib/dpif-netdev.c:7868,35'
          Dst:             pmd_send_port_cache_lookup
        - Src:             'lib/dpif-netdev.c:7875,11'
          Dst:             netdev_push_header
        - Src:             'lib/dpif-netdev.c:7881,5'
          Dst:             dp_packet_delete_batch
    - functionName:    datapath_drop_tunnel_push_error_add
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 116
      functionLinenumberEnd: 116
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_datapath_drop_tunnel_push_error_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:116,1'
          Dst:             counter_datapath_drop_tunnel_push_error_get
    - functionName:    pmd_tnl_port_cache_lookup
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7835
      functionLinenumberEnd: 7836
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - tx_port_lookup
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:7836,12'
          Dst:             tx_port_lookup
    - functionName:    dp_packet_batch_clone
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 963
      functionLinenumberEnd: 979
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          96
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - dp_packet_batch_add
        - dp_packet_batch_init
        - dp_packet_batch_size
        - dp_packet_clone_with_headroom
        - dp_packet_headroom
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:966,5'
          Dst:             dp_packet_batch_init
        - Src:             'lib/dp-packet.h:967,5'
          Dst:             dp_packet_batch_size
        - Src:             'lib/dp-packet.h:968,21'
          Dst:             dp_packet_batch_size
        - Src:             'lib/dp-packet.h:972,29'
          Dst:             dp_packet_headroom
        - Src:             'lib/dp-packet.h:975,22'
          Dst:             dp_packet_clone_with_headroom
        - Src:             'lib/dp-packet.h:976,9'
          Dst:             dp_packet_batch_add
    - functionName:    dp_packet_batch_reset_cutlen
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1035
      functionLinenumberEnd: 1044
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          65
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - dp_packet_batch_size
        - dp_packet_reset_cutlen
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:1039,9'
          Dst:             dp_packet_batch_size
        - Src:             'lib/dp-packet.h:1040,13'
          Dst:             dp_packet_reset_cutlen
    - functionName:    datapath_drop_tunnel_pop_error_add
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 117
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_datapath_drop_tunnel_pop_error_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:117,1'
          Dst:             counter_datapath_drop_tunnel_pop_error_get
    - functionName:    dp_netdev_recirculate
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7713
      functionLinenumberEnd: 7740
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          92
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - dp_netdev_input__
        - dp_packet_batch_add_array
        - dp_packet_batch_destroy
        - dp_packet_batch_init
        - dp_packet_batch_reset
        - dp_packet_batch_size
        - dpif_netdev_recirc_big_batch_add
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:7714,9'
          Dst:             dp_packet_batch_size
        - Src:             'lib/dpif-netdev.c:7719,9'
          Dst:             dpif_netdev_recirc_big_batch_add
        - Src:             'lib/dpif-netdev.c:7720,21'
          Dst:             dp_packet_batch_size
        - Src:             'lib/dpif-netdev.c:7721,9'
          Dst:             dp_packet_batch_init
        - Src:             'lib/dpif-netdev.c:7726,13'
          Dst:             dp_packet_batch_reset
        - Src:             'lib/dpif-netdev.c:7728,13'
          Dst:             dp_packet_batch_add_array
        - Src:             'lib/dpif-netdev.c:7730,13'
          Dst:             dp_netdev_input__
        - Src:             'lib/dpif-netdev.c:7735,9'
          Dst:             dp_packet_batch_destroy
        - Src:             'lib/dpif-netdev.c:7739,5'
          Dst:             dp_netdev_input__
    - functionName:    datapath_drop_invalid_tnl_port_add
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 121
      functionLinenumberEnd: 121
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_datapath_drop_invalid_tnl_port_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:121,1'
          Dst:             counter_datapath_drop_invalid_tnl_port_get
    - functionName:    datapath_drop_recirc_error_add
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 118
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_datapath_drop_recirc_error_get
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:118,1'
          Dst:             counter_datapath_drop_recirc_error_get
    - functionName:    dp_execute_userspace_action
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7891
      functionLinenumberEnd: 7909
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          85
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - datapath_drop_userspace_action_error_add
        - dp_netdev_execute_actions
        - dp_netdev_upcall
        - dp_packet_batch_destroy
        - dp_packet_batch_init_packet
        - dp_packet_delete
        - ofpbuf_clear
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:7895,5'
          Dst:             ofpbuf_clear
        - Src:             'lib/dpif-netdev.c:7897,13'
          Dst:             dp_netdev_upcall
        - Src:             'lib/dpif-netdev.c:7901,9'
          Dst:             dp_packet_batch_init_packet
        - Src:             'lib/dpif-netdev.c:7902,9'
          Dst:             dp_netdev_execute_actions
        - Src:             'lib/dpif-netdev.c:7904,9'
          Dst:             dp_packet_batch_destroy
        - Src:             'lib/dpif-netdev.c:7906,9'
          Dst:             dp_packet_delete
        - Src:             'lib/dpif-netdev.c:7907,9'
          Dst:             datapath_drop_userspace_action_error_add
    - functionName:    dp_packet_delete_batch
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1008
      functionLinenumberEnd: 1017
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          65
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - dp_packet_batch_reset
        - dp_packet_batch_size
        - dp_packet_delete
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:1012,9'
          Dst:             dp_packet_batch_size
        - Src:             'lib/dp-packet.h:1013,13'
          Dst:             dp_packet_delete
        - Src:             'lib/dp-packet.h:1015,9'
          Dst:             dp_packet_batch_reset
    - functionName:    datapath_drop_lock_error_add
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 114
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_datapath_drop_lock_error_get
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:114,1'
          Dst:             counter_datapath_drop_lock_error_get
    - functionName:    nl_attr_len_pad
      functionSourceFile: '/src/openvswitch/lib/netlink.h'
      linkageType:     InternalLinkage
      functionLinenumber: 179
      functionLinenumberEnd: 182
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          37
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    nl_attr_next
      functionSourceFile: '/src/openvswitch/lib/netlink.h'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 165
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_netdev_run_meter
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6318
      functionLinenumberEnd: 6451
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         75
      ICount:          562
      EdgeCount:       98
      CyclomaticComplexity: 25
      functionsReached:
        - atomic_bound_sub
        - atomic_sat_add
        - bitmap_is_all_zeros
        - bitmap_scan
        - bitmap_set1
        - datapath_drop_meter_add
        - dp_meter_lookup
        - dp_packet_batch_add
        - dp_packet_batch_refill_init
        - dp_packet_batch_size
        - dp_packet_delete
        - dp_packet_size
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:6320,24'
          Dst:             dp_packet_batch_size
        - Src:             'lib/dpif-netdev.c:6332,13'
          Dst:             dp_meter_lookup
        - Src:             'lib/dpif-netdev.c:6361,13'
          Dst:             atomic_sat_add
        - Src:             'lib/dpif-netdev.c:6369,5'
          Dst:             dp_packet_batch_size
        - Src:             'lib/dpif-netdev.c:6370,18'
          Dst:             dp_packet_size
        - Src:             'lib/dpif-netdev.c:6392,13'
          Dst:             atomic_bound_sub
        - Src:             'lib/dpif-netdev.c:6396,9'
          Dst:             bitmap_set1
        - Src:             'lib/dpif-netdev.c:6400,9'
          Dst:             bitmap_is_all_zeros
        - Src:             'lib/dpif-netdev.c:6411,5'
          Dst:             dp_packet_batch_refill_init
        - Src:             'lib/dpif-netdev.c:6413,44'
          Dst:             dp_packet_size
        - Src:             'lib/dpif-netdev.c:6418,9'
          Dst:             bitmap_scan
        - Src:             'lib/dpif-netdev.c:6420,18'
          Dst:             atomic_bound_sub
        - Src:             'lib/dpif-netdev.c:6418,9'
          Dst:             bitmap_scan
        - Src:             'lib/dpif-netdev.c:6434,30'
          Dst:             dp_packet_size
        - Src:             'lib/dpif-netdev.c:6435,13'
          Dst:             dp_packet_delete
        - Src:             'lib/dpif-netdev.c:6438,13'
          Dst:             dp_packet_batch_add
        - Src:             'lib/dpif-netdev.c:6449,9'
          Dst:             datapath_drop_meter_add
    - functionName:    atomic_sat_add
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6284
      functionLinenumberEnd: 6293
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          74
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 762
      functionLinenumberEnd: 763
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    atomic_bound_sub
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6300
      functionLinenumberEnd: 6311
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          70
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    bitmap_set1
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 96
      functionLinenumberEnd: 98
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - bitmap_bit__
        - bitmap_unit__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/bitmap.h:97,39'
          Dst:             bitmap_bit__
        - Src:             'lib/bitmap.h:97,6'
          Dst:             bitmap_unit__
    - functionName:    bitmap_is_all_zeros
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 273
      functionLinenumberEnd: 274
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - bitmap_scan
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/bitmap.h:274,12'
          Dst:             bitmap_scan
    - functionName:    dp_packet_batch_refill_init
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 923
      functionLinenumberEnd: 925
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    bitmap_scan
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 227
      functionLinenumberEnd: 252
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - bool
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          160
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - bitmap_unit__
        - raw_ctz
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/bitmap.h:231,13'
          Dst:             bitmap_unit__
        - Src:             'lib/bitmap.h:246,18'
          Dst:             raw_ctz
    - functionName:    dp_packet_delete
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 271
      functionLinenumberEnd: 290
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          54
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - dp_packet_uninit
        - free_afxdp_buf
        - free_dpdk_buf
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:274,13'
          Dst:             free_dpdk_buf
        - Src:             'lib/dp-packet.h:279,13'
          Dst:             free_afxdp_buf
        - Src:             'lib/dp-packet.h:283,9'
          Dst:             dp_packet_uninit
    - functionName:    datapath_drop_meter_add
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 112
      functionLinenumberEnd: 112
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_datapath_drop_meter_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:112,1'
          Dst:             counter_datapath_drop_meter_get
    - functionName:    free_dpdk_buf
      functionSourceFile: '/src/openvswitch/lib/netdev-dpdk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 76
      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:    free_afxdp_buf
      functionSourceFile: '/src/openvswitch/lib/netdev-afxdp.h'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 84
      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:    bitmap_unit__
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 26
      functionLinenumberEnd: 27
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    bitmap_bit__
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 32
      functionLinenumberEnd: 33
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofpbuf_clear
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 250
      functionLinenumberEnd: 253
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_netdev_upcall
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6996
      functionLinenumberEnd: 7034
      functionDepth:   0
      returnType:      int
      argCount:        9
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          179
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - dp_packet_ol_send_prepare
        - dpif_upcall_type_to_string
        - ds_cstr
        - ds_destroy
        - odp_flow_key_format
        - odp_flow_key_from_flow
        - ofp_dp_packet_to_string
        - ofpbuf_init
        - ofpbuf_uninit
        - vlog
        - vlog_should_drop
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:7003,9'
          Dst:             vlog_should_drop
        - Src:             'lib/dpif-netdev.c:7013,9'
          Dst:             ofpbuf_init
        - Src:             'lib/dpif-netdev.c:7014,9'
          Dst:             odp_flow_key_from_flow
        - Src:             'lib/dpif-netdev.c:7015,22'
          Dst:             ofp_dp_packet_to_string
        - Src:             'lib/dpif-netdev.c:7017,9'
          Dst:             odp_flow_key_format
        - Src:             'lib/dpif-netdev.c:7019,9'
          Dst:             dpif_upcall_type_to_string
        - Src:             'lib/dpif-netdev.c:7019,9'
          Dst:             ds_cstr
        - Src:             'lib/dpif-netdev.c:7019,9'
          Dst:             vlog
        - Src:             'lib/dpif-netdev.c:7022,9'
          Dst:             ofpbuf_uninit
        - Src:             'lib/dpif-netdev.c:7025,9'
          Dst:             ds_destroy
        - Src:             'lib/dpif-netdev.c:7029,9'
          Dst:             dp_packet_ol_send_prepare
    - functionName:    dp_packet_batch_init_packet
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 929
      functionLinenumberEnd: 933
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_batch_init
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:930,5'
          Dst:             dp_packet_batch_init
    - functionName:    datapath_drop_userspace_action_error_add
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 115
      functionLinenumberEnd: 115
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_datapath_drop_userspace_action_error_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:115,1'
          Dst:             counter_datapath_drop_userspace_action_error_get
    - functionName:    dpif_netdev_recirc_big_batch_add
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 127
      functionLinenumberEnd: 127
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_dpif_netdev_recirc_big_batch_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:127,1'
          Dst:             counter_dpif_netdev_recirc_big_batch_get
    - functionName:    dp_packet_batch_add_array
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 899
      functionLinenumberEnd: 906
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          76
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_batch_grow
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:902,9'
          Dst:             dp_packet_batch_grow
    - functionName:    dp_packet_reset_cutlen
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 811
      functionLinenumberEnd: 813
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_headroom
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 344
      functionLinenumberEnd: 345
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_base
        - dp_packet_data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:345,21'
          Dst:             dp_packet_data
        - Src:             'lib/dp-packet.h:345,50'
          Dst:             dp_packet_base
    - functionName:    dp_packet_data
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 845
      functionLinenumberEnd: 847
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __packet_data
        - dp_packet_base
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:846,12'
          Dst:             __packet_data
        - Src:             'lib/dp-packet.h:847,23'
          Dst:             dp_packet_base
        - Src:             'lib/dp-packet.h:847,43'
          Dst:             __packet_data
    - functionName:    dp_packet_base
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 750
      functionLinenumberEnd: 751
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __packet_data
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 774
      functionLinenumberEnd: 775
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pmd_send_port_cache_lookup
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7842
      functionLinenumberEnd: 7843
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - tx_port_lookup
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:7843,12'
          Dst:             tx_port_lookup
    - functionName:    dp_packet_get_send_len
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 839
      functionLinenumberEnd: 840
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_get_cutlen
        - dp_packet_size
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:840,12'
          Dst:             dp_packet_size
        - Src:             'lib/dp-packet.h:840,32'
          Dst:             dp_packet_get_cutlen
    - functionName:    dp_packet_set_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 768
      functionLinenumberEnd: 770
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_get_cutlen
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 832
      functionLinenumberEnd: 834
      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:    datapath_drop_invalid_bond_add
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 120
      functionLinenumberEnd: 120
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_datapath_drop_invalid_bond_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:120,1'
          Dst:             counter_datapath_drop_invalid_bond_get
    - functionName:    datapath_drop_invalid_port_add
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 119
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_datapath_drop_invalid_port_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:119,1'
          Dst:             counter_datapath_drop_invalid_port_get
    - functionName:    dpif_netdev_output_grow_queues_add
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 126
      functionLinenumberEnd: 126
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_dpif_netdev_output_grow_queues_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:126,1'
          Dst:             counter_dpif_netdev_output_grow_queues_get
    - functionName:    packet_batch_per_flow_init
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7079
      functionLinenumberEnd: 7086
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          32
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_batch_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:7083,5'
          Dst:             dp_packet_batch_init
    - functionName:    packet_batch_per_flow_update
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7070
      functionLinenumberEnd: 7074
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_batch_add
        - dp_packet_size
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:7071,26'
          Dst:             dp_packet_size
        - Src:             'lib/dpif-netdev.c:7073,5'
          Dst:             dp_packet_batch_add
    - functionName:    handle_packet_upcall
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7454
      functionLinenumberEnd: 7528
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          262
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - cycles_counter_update
        - datapath_drop_upcall_error_add
        - dp_netdev_execute_actions
        - dp_netdev_flow_add
        - dp_netdev_flow_hash
        - dp_netdev_pmd_lookup_flow
        - dp_netdev_upcall
        - dp_packet_batch_destroy
        - dp_packet_batch_init_packet
        - dp_packet_delete
        - emc_probabilistic_insert
        - histogram_add_sample
        - htons
        - miniflow_expand
        - odp_flow_key_hash
        - ofpbuf_clear
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - pmd_perf_metrics_enabled
        - smc_insert
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:7460,23'
          Dst:             cycles_counter_update
        - Src:             'lib/dpif-netdev.c:7464,5'
          Dst:             miniflow_expand
        - Src:             'lib/dpif-netdev.c:7467,5'
          Dst:             ofpbuf_clear
        - Src:             'lib/dpif-netdev.c:7468,5'
          Dst:             ofpbuf_clear
        - Src:             'lib/dpif-netdev.c:7470,5'
          Dst:             odp_flow_key_hash
        - Src:             'lib/dpif-netdev.c:7471,13'
          Dst:             dp_netdev_upcall
        - Src:             'lib/dpif-netdev.c:7475,9'
          Dst:             dp_packet_delete
        - Src:             'lib/dpif-netdev.c:7476,9'
          Dst:             datapath_drop_upcall_error_add
        - Src:             'lib/dpif-netdev.c:7487,39'
          Dst:             htons
        - Src:             'lib/dpif-netdev.c:7493,5'
          Dst:             dp_packet_batch_init_packet
        - Src:             'lib/dpif-netdev.c:7494,5'
          Dst:             dp_netdev_execute_actions
        - Src:             'lib/dpif-netdev.c:7496,5'
          Dst:             dp_packet_batch_destroy
        - Src:             'lib/dpif-netdev.c:7507,9'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-netdev.c:7508,23'
          Dst:             dp_netdev_pmd_lookup_flow
        - Src:             'lib/dpif-netdev.c:7510,27'
          Dst:             dp_netdev_flow_add
        - Src:             'lib/dpif-netdev.c:7514,9'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/dpif-netdev.c:7515,25'
          Dst:             dp_netdev_flow_hash
        - Src:             'lib/dpif-netdev.c:7516,9'
          Dst:             smc_insert
        - Src:             'lib/dpif-netdev.c:7517,9'
          Dst:             emc_probabilistic_insert
        - Src:             'lib/dpif-netdev.c:7519,9'
          Dst:             pmd_perf_metrics_enabled
        - Src:             'lib/dpif-netdev.c:7521,18'
          Dst:             cycles_counter_update
        - Src:             'lib/dpif-netdev.c:7525,9'
          Dst:             histogram_add_sample
    - functionName:    smc_insert
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2450
      functionLinenumberEnd: 2490
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          184
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - cmap_find_index
        - random_uint32
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:2461,18'
          Dst:             cmap_find_index
        - Src:             'lib/dpif-netdev.c:2487,9'
          Dst:             random_uint32
    - functionName:    emc_probabilistic_insert
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2408
      functionLinenumberEnd: 2418
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          50
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - emc_insert
        - random_uint32
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:2415,16'
          Dst:             random_uint32
        - Src:             'lib/dpif-netdev.c:2416,9'
          Dst:             emc_insert
    - functionName:    miniflow_get_tcp_flags
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 861
      functionLinenumberEnd: 862
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - flowmap_is_set
        - miniflow_get__
        - ntohs
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:862,18'
          Dst:             flowmap_is_set
        - Src:             'lib/flow.h:862,18'
          Dst:             miniflow_get__
        - Src:             'lib/flow.h:862,12'
          Dst:             ntohs
    - functionName:    packet_enqueue_to_flow_map
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7127
      functionLinenumberEnd: 7132
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - short
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          31
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    emc_insert
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2378
      functionLinenumberEnd: 2402
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          117
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - emc_change_entry
        - emc_entry_alive
        - netdev_flow_key_equal
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:2383,13'
          Dst:             netdev_flow_key_equal
        - Src:             'lib/dpif-netdev.c:2385,13'
          Dst:             emc_change_entry
        - Src:             'lib/dpif-netdev.c:2392,17'
          Dst:             emc_entry_alive
        - Src:             'lib/dpif-netdev.c:2393,21'
          Dst:             emc_entry_alive
        - Src:             'lib/dpif-netdev.c:2401,5'
          Dst:             emc_change_entry
    - functionName:    emc_change_entry
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2358
      functionLinenumberEnd: 2373
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          78
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - dp_netdev_flow_ref
        - dp_netdev_flow_unref
        - netdev_flow_key_clone
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:2361,13'
          Dst:             dp_netdev_flow_unref
        - Src:             'lib/dpif-netdev.c:2364,13'
          Dst:             dp_netdev_flow_ref
        - Src:             'lib/dpif-netdev.c:2371,9'
          Dst:             netdev_flow_key_clone
    - functionName:    emc_entry_alive
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev-dfc.h'
      linkageType:     InternalLinkage
      functionLinenumber: 136
      functionLinenumberEnd: 137
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          27
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    datapath_drop_upcall_error_add
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 113
      functionLinenumberEnd: 113
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_datapath_drop_upcall_error_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:113,1'
          Dst:             counter_datapath_drop_upcall_error_get
    - functionName:    dp_netdev_simple_match_enabled
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2869
      functionLinenumberEnd: 2871
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ccmap_find
        - odp_to_u32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:2870,38'
          Dst:             odp_to_u32
        - Src:             'lib/dpif-netdev.c:2870,12'
          Dst:             ccmap_find
        - Src:             'lib/dpif-netdev.c:2871,48'
          Dst:             odp_to_u32
        - Src:             'lib/dpif-netdev.c:2871,15'
          Dst:             ccmap_find
    - functionName:    datapath_drop_rx_invalid_packet_add
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 122
      functionLinenumberEnd: 122
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_datapath_drop_rx_invalid_packet_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:122,1'
          Dst:             counter_datapath_drop_rx_invalid_packet_get
    - functionName:    pkt_metadata_prefetch_init
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 190
      functionLinenumberEnd: 201
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pkt_metadata_init
      functionSourceFile: '/src/openvswitch/lib/packets.h'
      linkageType:     InternalLinkage
      functionLinenumber: 165
      functionLinenumberEnd: 183
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          34
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_netdev_hw_flow
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7237
      functionLinenumberEnd: 7264
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          101
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - datapath_drop_hw_post_process_add
        - datapath_drop_hw_post_process_consumed_add
        - dpif_offload_netdev_hw_post_process
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:7251,11'
          Dst:             dpif_offload_netdev_hw_post_process
        - Src:             'lib/dpif-netdev.c:7255,13'
          Dst:             datapath_drop_hw_post_process_add
        - Src:             'lib/dpif-netdev.c:7257,13'
          Dst:             datapath_drop_hw_post_process_consumed_add
    - functionName:    dfc_processing_enqueue_classified_packet
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7278
      functionLinenumberEnd: 7291
      functionDepth:   0
      returnType:      void
      argCount:        8
      argTypes:
        - 'N/A'
        - 'N/A'
        - short
        - bool
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          60
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_netdev_queue_batches
        - packet_enqueue_to_flow_map
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:7280,9'
          Dst:             dp_netdev_queue_batches
        - Src:             'lib/dpif-netdev.c:7287,9'
          Dst:             packet_enqueue_to_flow_map
    - functionName:    dpif_netdev_packet_get_rss_hash_orig_pkt
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev-dpcls.h'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 128
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_get_rss_hash
        - dp_packet_rss_valid
        - dp_packet_set_rss_hash
        - miniflow_hash_5tuple
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev-dpcls.h:121,9'
          Dst:             dp_packet_rss_valid
        - Src:             'lib/dpif-netdev-dpcls.h:122,16'
          Dst:             dp_packet_get_rss_hash
        - Src:             'lib/dpif-netdev-dpcls.h:124,16'
          Dst:             miniflow_hash_5tuple
        - Src:             'lib/dpif-netdev-dpcls.h:125,9'
          Dst:             dp_packet_set_rss_hash
    - functionName:    dpif_netdev_packet_get_rss_hash
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7039
      functionLinenumberEnd: 7055
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          69
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - dp_packet_get_rss_hash
        - dp_packet_rss_valid
        - dp_packet_set_rss_hash
        - hash_finish
        - miniflow_hash_5tuple
        - recirc_depth_get_unsafe
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:7042,9'
          Dst:             dp_packet_rss_valid
        - Src:             'lib/dpif-netdev.c:7043,16'
          Dst:             dp_packet_get_rss_hash
        - Src:             'lib/dpif-netdev.c:7045,16'
          Dst:             miniflow_hash_5tuple
        - Src:             'lib/dpif-netdev.c:7046,9'
          Dst:             dp_packet_set_rss_hash
        - Src:             'lib/dpif-netdev.c:7051,21'
          Dst:             recirc_depth_get_unsafe
        - Src:             'lib/dpif-netdev.c:7053,16'
          Dst:             hash_finish
    - functionName:    emc_lookup
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev-dfc.h'
      linkageType:     InternalLinkage
      functionLinenumber: 152
      functionLinenumberEnd: 166
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          92
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - emc_entry_alive
        - emc_flow_key_equal_mf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev-dfc.h:157,16'
          Dst:             emc_entry_alive
        - Src:             'lib/dpif-netdev-dfc.h:158,16'
          Dst:             emc_flow_key_equal_mf
    - functionName:    smc_lookup_batch
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7146
      functionLinenumberEnd: 7207
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         32
      ICount:          281
      EdgeCount:       41
      CyclomaticComplexity: 11
      functionsReached:
        - cmap_node_next
        - dp_packet_batch_add
        - dp_packet_batch_refill_init
        - dpcls_rule_matches_key
        - emc_probabilistic_insert
        - miniflow_get_tcp_flags
        - miniflow_n_values
        - netdev_flow_key_size
        - packet_enqueue_to_flow_map
        - pmd_perf_update_counter
        - smc_entry_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:7161,5'
          Dst:             dp_packet_batch_refill_init
        - Src:             'lib/dpif-netdev.c:7163,21'
          Dst:             smc_entry_get
        - Src:             'lib/dpif-netdev.c:7172,21'
          Dst:             dpcls_rule_matches_key
        - Src:             'lib/dpif-netdev.c:7174,33'
          Dst:             miniflow_get_tcp_flags
        - Src:             'lib/dpif-netdev.c:7178,46'
          Dst:             miniflow_n_values
        - Src:             'lib/dpif-netdev.c:7178,25'
          Dst:             netdev_flow_key_size
        - Src:             'lib/dpif-netdev.c:7179,21'
          Dst:             emc_probabilistic_insert
        - Src:             'lib/dpif-netdev.c:7183,21'
          Dst:             packet_enqueue_to_flow_map
        - Src:             'lib/dpif-netdev.c:7169,13'
          Dst:             cmap_node_next
        - Src:             'lib/dpif-netdev.c:7197,9'
          Dst:             dp_packet_batch_add
        - Src:             'lib/dpif-netdev.c:7206,5'
          Dst:             pmd_perf_update_counter
    - functionName:    smc_entry_get
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2422
      functionLinenumberEnd: 2438
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          99
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - cmap_find_by_index
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:2435,16'
          Dst:             cmap_find_by_index
    - functionName:    dpcls_rule_matches_key
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9295
      functionLinenumberEnd: 9306
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          85
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - mf_get_next_in_map
        - miniflow_get_values
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:9296,28'
          Dst:             miniflow_get_values
        - Src:             'lib/dpif-netdev.c:9297,29'
          Dst:             miniflow_get_values
        - Src:             'lib/dpif-netdev.c:9300,5'
          Dst:             miniflow_get_values
        - Src:             'lib/dpif-netdev.c:9300,5'
          Dst:             mf_get_next_in_map
    - functionName:    mf_get_next_in_map
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 621
      functionLinenumberEnd: 659
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          148
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - count_1bits
        - rightmost_1bit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/flow.h:629,24'
          Dst:             count_1bits
        - Src:             'lib/flow.h:635,14'
          Dst:             rightmost_1bit
        - Src:             'lib/flow.h:651,28'
          Dst:             count_1bits
    - functionName:    emc_flow_key_equal_mf
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev-dfc.h'
      linkageType:     InternalLinkage
      functionLinenumber: 146
      functionLinenumberEnd: 147
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev-dfc.h:147,13'
          Dst:             memcmp
    - functionName:    dp_packet_set_rss_hash
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1056
      functionLinenumberEnd: 1059
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_rss_ptr
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:1057,6'
          Dst:             dp_packet_rss_ptr
    - functionName:    recirc_depth_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 103
      functionLinenumberEnd: 103
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    datapath_drop_hw_post_process_add
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 123
      functionLinenumberEnd: 123
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_datapath_drop_hw_post_process_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:123,1'
          Dst:             counter_datapath_drop_hw_post_process_get
    - functionName:    datapath_drop_hw_post_process_consumed_add
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 124
      functionLinenumberEnd: 124
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_datapath_drop_hw_post_process_consumed_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:124,1'
          Dst:             counter_datapath_drop_hw_post_process_consumed_get
    - functionName:    pmd_init_max_sleep
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3758
      functionLinenumberEnd: 3775
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          85
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - log_pmd_sleep
        - parse_pmd_sleep_list
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:3763,16'
          Dst:             parse_pmd_sleep_list
        - Src:             'lib/dpif-netdev.c:3773,5'
          Dst:             log_pmd_sleep
    - functionName:    get_port_by_name
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1765
      functionLinenumberEnd: 1778
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          77
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_first
        - hmap_next
        - netdev_get_name
        - strcmp
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:1768,5'
          Dst:             hmap_first
        - Src:             'lib/dpif-netdev.c:1769,21'
          Dst:             netdev_get_name
        - Src:             'lib/dpif-netdev.c:1769,14'
          Dst:             strcmp
        - Src:             'lib/dpif-netdev.c:1768,5'
          Dst:             hmap_next
    - functionName:    port_create
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1571
      functionLinenumberEnd: 1609
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          113
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - netdev_close
        - netdev_get_flags
        - netdev_open
        - ovs_mutex_init
        - vlog
        - xstrdup
        - xzalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:1580,13'
          Dst:             netdev_open
        - Src:             'lib/dpif-netdev.c:1586,5'
          Dst:             netdev_get_flags
        - Src:             'lib/dpif-netdev.c:1588,9'
          Dst:             vlog
        - Src:             'lib/dpif-netdev.c:1593,12'
          Dst:             xzalloc
        - Src:             'lib/dpif-netdev.c:1596,18'
          Dst:             xstrdup
        - Src:             'lib/dpif-netdev.c:1600,5'
          Dst:             ovs_mutex_init
        - Src:             'lib/dpif-netdev.c:1607,5'
          Dst:             netdev_close
    - functionName:    dp_netdev_lookup_port
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1715
      functionLinenumberEnd: 1724
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          72
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hash_port_no
        - hmap_first_with_hash
        - hmap_next_with_hash
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:1718,5'
          Dst:             hash_port_no
        - Src:             'lib/dpif-netdev.c:1718,5'
          Dst:             hmap_first_with_hash
        - Src:             'lib/dpif-netdev.c:1718,5'
          Dst:             hmap_next_with_hash
    - functionName:    atomic_flag_clear_explicit
      functionSourceFile: '/src/openvswitch/lib/ovs-atomic-flag-gcc4.7+.h'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 46
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         5
      ICount:          28
      EdgeCount:       8
      CyclomaticComplexity: 5
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ovs-atomic-flag-gcc4.7+.h:45,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    dpif_netdev_init
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1081
      functionLinenumberEnd: 1117
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dpif_netdev_bond_show
        - dpif_netdev_pmd_info
        - dpif_netdev_pmd_rebalance
        - pmd_perf_log_set_cmd
        - pmd_perf_show_cmd
        - unixctl_command_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:1086,5'
          Dst:             unixctl_command_register
        - Src:             'lib/dpif-netdev.c:1086,5'
          Dst:             dpif_netdev_pmd_info
        - Src:             'lib/dpif-netdev.c:1089,5'
          Dst:             unixctl_command_register
        - Src:             'lib/dpif-netdev.c:1089,5'
          Dst:             dpif_netdev_pmd_info
        - Src:             'lib/dpif-netdev.c:1093,5'
          Dst:             unixctl_command_register
        - Src:             'lib/dpif-netdev.c:1093,5'
          Dst:             dpif_netdev_pmd_info
        - Src:             'lib/dpif-netdev.c:1096,5'
          Dst:             unixctl_command_register
        - Src:             'lib/dpif-netdev.c:1096,5'
          Dst:             pmd_perf_show_cmd
        - Src:             'lib/dpif-netdev.c:1104,5'
          Dst:             unixctl_command_register
        - Src:             'lib/dpif-netdev.c:1104,5'
          Dst:             pmd_perf_show_cmd
        - Src:             'lib/dpif-netdev.c:1106,5'
          Dst:             unixctl_command_register
        - Src:             'lib/dpif-netdev.c:1106,5'
          Dst:             dpif_netdev_pmd_rebalance
        - Src:             'lib/dpif-netdev.c:1109,5'
          Dst:             unixctl_command_register
        - Src:             'lib/dpif-netdev.c:1109,5'
          Dst:             pmd_perf_log_set_cmd
        - Src:             'lib/dpif-netdev.c:1114,5'
          Dst:             unixctl_command_register
        - Src:             'lib/dpif-netdev.c:1114,5'
          Dst:             dpif_netdev_bond_show
    - functionName:    dpif_netdev_enumerate
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1123
      functionLinenumberEnd: 1138
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          72
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_first
        - hmap_next
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - sset_add
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:1126,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-netdev.c:1127,5'
          Dst:             hmap_first
        - Src:             'lib/dpif-netdev.c:1134,9'
          Dst:             sset_add
        - Src:             'lib/dpif-netdev.c:1127,5'
          Dst:             hmap_next
        - Src:             'lib/dpif-netdev.c:1136,5'
          Dst:             ovs_mutex_unlock
    - functionName:    dpif_netdev_close
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1483
      functionLinenumberEnd: 1488
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_netdev_unref
        - get_dp_netdev
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:1484,28'
          Dst:             get_dp_netdev
        - Src:             'lib/dpif-netdev.c:1486,5'
          Dst:             dp_netdev_unref
    - functionName:    dpif_netdev_destroy
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1492
      functionLinenumberEnd: 1502
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          40
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - abort
        - atomic_flag_test_and_set
        - get_dp_netdev
        - ovs_refcount_unref_relaxed
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:1493,28'
          Dst:             get_dp_netdev
        - Src:             'lib/dpif-netdev.c:1495,10'
          Dst:             atomic_flag_test_and_set
        - Src:             'lib/dpif-netdev.c:1496,13'
          Dst:             ovs_refcount_unref_relaxed
        - Src:             'lib/dpif-netdev.c:1498,13'
          Dst:             abort
    - functionName:    dpif_netdev_run
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5830
      functionLinenumberEnd: 5927
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         74
      ICount:          413
      EdgeCount:       98
      CyclomaticComplexity: 26
      functionsReached:
        - atomic_count_get
        - cmap_cursor_advance
        - cmap_cursor_start
        - dp_netdev_get_pmd
        - dp_netdev_is_reconf_required
        - dp_netdev_pmd_flush_output_packets
        - dp_netdev_pmd_unref
        - dp_netdev_process_rxq_port
        - dp_netdev_request_reconfigure
        - dpif_netdev_xps_revalidate_pmd
        - get_dp_netdev
        - hmap_first
        - hmap_next
        - netdev_is_pmd
        - netdev_rxq_enabled
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovs_rwlock_rdlock_at
        - ovs_rwlock_unlock
        - pmd_rebalance_dry_run
        - pmd_rebalance_dry_run_needed
        - pmd_thread_ctx_time_update
        - ports_require_restart
        - reconfigure_datapath
        - seq_read
        - time_msec
        - tnl_neigh_cache_run
        - tnl_port_map_run
        - vlog
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:5832,28'
          Dst:             get_dp_netdev
        - Src:             'lib/dpif-netdev.c:5837,25'
          Dst:             time_msec
        - Src:             'lib/dpif-netdev.c:5840,5'
          Dst:             ovs_rwlock_rdlock_at
        - Src:             'lib/dpif-netdev.c:5841,15'
          Dst:             dp_netdev_get_pmd
        - Src:             'lib/dpif-netdev.c:5843,9'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-netdev.c:5847,9'
          Dst:             hmap_first
        - Src:             'lib/dpif-netdev.c:5848,18'
          Dst:             netdev_is_pmd
        - Src:             'lib/dpif-netdev.c:5860,26'
          Dst:             netdev_rxq_enabled
        - Src:             'lib/dpif-netdev.c:5864,25'
          Dst:             dp_netdev_process_rxq_port
        - Src:             'lib/dpif-netdev.c:5847,9'
          Dst:             hmap_next
        - Src:             'lib/dpif-netdev.c:5876,13'
          Dst:             pmd_thread_ctx_time_update
        - Src:             'lib/dpif-netdev.c:5877,13'
          Dst:             dp_netdev_pmd_flush_output_packets
        - Src:             'lib/dpif-netdev.c:5880,9'
          Dst:             dpif_netdev_xps_revalidate_pmd
        - Src:             'lib/dpif-netdev.c:5881,9'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/dpif-netdev.c:5883,9'
          Dst:             dp_netdev_pmd_unref
        - Src:             'lib/dpif-netdev.c:5893,13'
          Dst:             cmap_cursor_start
        - Src:             'lib/dpif-netdev.c:5893,13'
          Dst:             cmap_cursor_advance
        - Src:             'lib/dpif-netdev.c:5894,21'
          Dst:             atomic_count_get
        - Src:             'lib/dpif-netdev.c:5902,18'
          Dst:             dp_netdev_is_reconf_required
        - Src:             'lib/dpif-netdev.c:5903,18'
          Dst:             ports_require_restart
        - Src:             'lib/dpif-netdev.c:5904,17'
          Dst:             pmd_rebalance_dry_run_needed
        - Src:             'lib/dpif-netdev.c:5905,17'
          Dst:             pmd_rebalance_dry_run
        - Src:             'lib/dpif-netdev.c:5906,17'
          Dst:             vlog
        - Src:             'lib/dpif-netdev.c:5908,17'
          Dst:             dp_netdev_request_reconfigure
        - Src:             'lib/dpif-netdev.c:5913,9'
          Dst:             dp_netdev_is_reconf_required
        - Src:             'lib/dpif-netdev.c:5913,45'
          Dst:             ports_require_restart
        - Src:             'lib/dpif-netdev.c:5914,9'
          Dst:             reconfigure_datapath
        - Src:             'lib/dpif-netdev.c:5916,5'
          Dst:             ovs_rwlock_unlock
        - Src:             'lib/dpif-netdev.c:5918,5'
          Dst:             tnl_neigh_cache_run
        - Src:             'lib/dpif-netdev.c:5919,5'
          Dst:             tnl_port_map_run
        - Src:             'lib/dpif-netdev.c:5920,19'
          Dst:             seq_read
    - functionName:    dpif_netdev_wait
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5931
      functionLinenumberEnd: 5950
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         17
      ICount:          113
      EdgeCount:       21
      CyclomaticComplexity: 6
      functionsReached:
        - get_dp_netdev
        - hmap_first
        - hmap_next
        - netdev_is_pmd
        - netdev_rxq_wait
        - netdev_wait_reconf_required
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovs_rwlock_rdlock_at
        - ovs_rwlock_unlock
        - seq_wait_at
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:5933,28'
          Dst:             get_dp_netdev
        - Src:             'lib/dpif-netdev.c:5935,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-netdev.c:5936,5'
          Dst:             ovs_rwlock_rdlock_at
        - Src:             'lib/dpif-netdev.c:5937,5'
          Dst:             hmap_first
        - Src:             'lib/dpif-netdev.c:5938,9'
          Dst:             netdev_wait_reconf_required
        - Src:             'lib/dpif-netdev.c:5939,14'
          Dst:             netdev_is_pmd
        - Src:             'lib/dpif-netdev.c:5943,17'
          Dst:             netdev_rxq_wait
        - Src:             'lib/dpif-netdev.c:5937,5'
          Dst:             hmap_next
        - Src:             'lib/dpif-netdev.c:5947,5'
          Dst:             ovs_rwlock_unlock
        - Src:             'lib/dpif-netdev.c:5948,5'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/dpif-netdev.c:5949,5'
          Dst:             seq_wait_at
    - functionName:    dpif_netdev_get_stats
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1522
      functionLinenumberEnd: 1543
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          137
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - cmap_count
        - cmap_cursor_advance
        - cmap_cursor_start
        - get_dp_netdev
        - pmd_perf_read_counters
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:1523,28'
          Dst:             get_dp_netdev
        - Src:             'lib/dpif-netdev.c:1528,5'
          Dst:             cmap_cursor_start
        - Src:             'lib/dpif-netdev.c:1528,5'
          Dst:             cmap_cursor_advance
        - Src:             'lib/dpif-netdev.c:1529,27'
          Dst:             cmap_count
        - Src:             'lib/dpif-netdev.c:1530,9'
          Dst:             pmd_perf_read_counters
    - functionName:    dpif_netdev_port_add
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1659
      functionLinenumberEnd: 1681
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          92
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - choose_port
        - do_add_port
        - dp_netdev_lookup_port
        - get_dp_netdev
        - netdev_get_type
        - netdev_vport_get_dpif_port
        - ovs_rwlock_unlock
        - ovs_rwlock_wrlock_at
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:1660,28'
          Dst:             get_dp_netdev
        - Src:             'lib/dpif-netdev.c:1666,5'
          Dst:             ovs_rwlock_wrlock_at
        - Src:             'lib/dpif-netdev.c:1667,17'
          Dst:             netdev_vport_get_dpif_port
        - Src:             'lib/dpif-netdev.c:1670,17'
          Dst:             dp_netdev_lookup_port
        - Src:             'lib/dpif-netdev.c:1672,19'
          Dst:             choose_port
        - Src:             'lib/dpif-netdev.c:1677,44'
          Dst:             netdev_get_type
        - Src:             'lib/dpif-netdev.c:1677,17'
          Dst:             do_add_port
        - Src:             'lib/dpif-netdev.c:1679,5'
          Dst:             ovs_rwlock_unlock
    - functionName:    dpif_netdev_port_del
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1686
      functionLinenumberEnd: 1703
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          57
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - do_del_port
        - get_dp_netdev
        - get_port_by_number
        - ovs_rwlock_unlock
        - ovs_rwlock_wrlock_at
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:1687,28'
          Dst:             get_dp_netdev
        - Src:             'lib/dpif-netdev.c:1690,5'
          Dst:             ovs_rwlock_wrlock_at
        - Src:             'lib/dpif-netdev.c:1696,17'
          Dst:             get_port_by_number
        - Src:             'lib/dpif-netdev.c:1698,13'
          Dst:             do_del_port
        - Src:             'lib/dpif-netdev.c:1701,5'
          Dst:             ovs_rwlock_unlock
    - functionName:    dpif_netdev_port_set_config
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4160
      functionLinenumberEnd: 4238
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         47
      ICount:          310
      EdgeCount:       61
      CyclomaticComplexity: 16
      functionsReached:
        - cmap_cursor_advance
        - cmap_cursor_start
        - dp_netdev_request_reconfigure
        - dpif_netdev_pmd_polls_port
        - dpif_netdev_port_set_rxq_affinity
        - ds_cstr
        - ds_destroy
        - ds_put_cstr
        - ds_put_format
        - get_dp_netdev
        - get_port_by_number
        - netdev_get_name
        - netdev_is_pmd
        - nullable_string_is_equal
        - nullable_xstrdup
        - ovs_rwlock_unlock
        - ovs_rwlock_wrlock_at
        - smap_get
        - smap_get_bool
        - vlog
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:4161,28'
          Dst:             get_dp_netdev
        - Src:             'lib/dpif-netdev.c:4164,33'
          Dst:             smap_get
        - Src:             'lib/dpif-netdev.c:4165,24'
          Dst:             smap_get_bool
        - Src:             'lib/dpif-netdev.c:4166,36'
          Dst:             smap_get
        - Src:             'lib/dpif-netdev.c:4169,5'
          Dst:             ovs_rwlock_wrlock_at
        - Src:             'lib/dpif-netdev.c:4170,13'
          Dst:             get_port_by_number
        - Src:             'lib/dpif-netdev.c:4183,9'
          Dst:             cmap_cursor_start
        - Src:             'lib/dpif-netdev.c:4183,9'
          Dst:             cmap_cursor_advance
        - Src:             'lib/dpif-netdev.c:4184,17'
          Dst:             dpif_netdev_pmd_polls_port
        - Src:             'lib/dpif-netdev.c:4188,9'
          Dst:             dp_netdev_request_reconfigure
        - Src:             'lib/dpif-netdev.c:4191,23'
          Dst:             netdev_get_name
        - Src:             'lib/dpif-netdev.c:4190,9'
          Dst:             ds_put_format
        - Src:             'lib/dpif-netdev.c:4194,13'
          Dst:             ds_put_cstr
        - Src:             'lib/dpif-netdev.c:4197,17'
          Dst:             ds_put_cstr
        - Src:             'lib/dpif-netdev.c:4200,17'
          Dst:             ds_put_format
        - Src:             'lib/dpif-netdev.c:4204,9'
          Dst:             ds_cstr
        - Src:             'lib/dpif-netdev.c:4204,9'
          Dst:             vlog
        - Src:             'lib/dpif-netdev.c:4205,9'
          Dst:             ds_destroy
        - Src:             'lib/dpif-netdev.c:4209,9'
          Dst:             netdev_is_pmd
        - Src:             'lib/dpif-netdev.c:4210,13'
          Dst:             nullable_string_is_equal
        - Src:             'lib/dpif-netdev.c:4212,17'
          Dst:             dpif_netdev_port_set_rxq_affinity
        - Src:             'lib/dpif-netdev.c:4217,35'
          Dst:             nullable_xstrdup
        - Src:             'lib/dpif-netdev.c:4219,9'
          Dst:             dp_netdev_request_reconfigure
        - Src:             'lib/dpif-netdev.c:4222,9'
          Dst:             nullable_string_is_equal
        - Src:             'lib/dpif-netdev.c:4230,9'
          Dst:             netdev_get_name
        - Src:             'lib/dpif-netdev.c:4230,9'
          Dst:             vlog
        - Src:             'lib/dpif-netdev.c:4233,9'
          Dst:             dp_netdev_request_reconfigure
        - Src:             'lib/dpif-netdev.c:4237,5'
          Dst:             ovs_rwlock_unlock
    - functionName:    dpif_netdev_port_query_by_number
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1819
      functionLinenumberEnd: 1831
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          56
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - answer_port_query
        - get_dp_netdev
        - get_port_by_number
        - ovs_rwlock_rdlock_at
        - ovs_rwlock_unlock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:1820,28'
          Dst:             get_dp_netdev
        - Src:             'lib/dpif-netdev.c:1824,5'
          Dst:             ovs_rwlock_rdlock_at
        - Src:             'lib/dpif-netdev.c:1825,13'
          Dst:             get_port_by_number
        - Src:             'lib/dpif-netdev.c:1827,9'
          Dst:             answer_port_query
        - Src:             'lib/dpif-netdev.c:1829,5'
          Dst:             ovs_rwlock_unlock
    - functionName:    dpif_netdev_port_query_by_name
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1837
      functionLinenumberEnd: 1849
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         8
      ICount:          56
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - answer_port_query
        - get_dp_netdev
        - get_port_by_name
        - ovs_rwlock_rdlock_at
        - ovs_rwlock_unlock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:1838,28'
          Dst:             get_dp_netdev
        - Src:             'lib/dpif-netdev.c:1842,5'
          Dst:             ovs_rwlock_rdlock_at
        - Src:             'lib/dpif-netdev.c:1843,13'
          Dst:             get_port_by_name
        - Src:             'lib/dpif-netdev.c:1845,9'
          Dst:             answer_port_query
        - Src:             'lib/dpif-netdev.c:1847,5'
          Dst:             ovs_rwlock_unlock
    - functionName:    dpif_netdev_port_dump_start
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2166
      functionLinenumberEnd: 2168
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - xzalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:2167,15'
          Dst:             xzalloc
    - functionName:    dpif_netdev_port_dump_next
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2174
      functionLinenumberEnd: 2199
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          86
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - get_dp_netdev
        - hmap_at_position
        - netdev_get_name
        - ovs_rwlock_rdlock_at
        - ovs_rwlock_unlock
        - xstrdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:2176,28'
          Dst:             get_dp_netdev
        - Src:             'lib/dpif-netdev.c:2180,5'
          Dst:             ovs_rwlock_rdlock_at
        - Src:             'lib/dpif-netdev.c:2181,12'
          Dst:             hmap_at_position
        - Src:             'lib/dpif-netdev.c:2188,31'
          Dst:             netdev_get_name
        - Src:             'lib/dpif-netdev.c:2188,23'
          Dst:             xstrdup
        - Src:             'lib/dpif-netdev.c:2197,5'
          Dst:             ovs_rwlock_unlock
    - functionName:    dpif_netdev_port_dump_done
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2204
      functionLinenumberEnd: 2208
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_netdev_port_poll
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2213
      functionLinenumberEnd: 2226
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dpif_netdev_cast
        - seq_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:2214,32'
          Dst:             dpif_netdev_cast
        - Src:             'lib/dpif-netdev.c:2218,20'
          Dst:             seq_read
    - functionName:    dpif_netdev_port_poll_wait
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2231
      functionLinenumberEnd: 2235
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dpif_netdev_cast
        - seq_wait_at
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:2232,32'
          Dst:             dpif_netdev_cast
        - Src:             'lib/dpif-netdev.c:2234,5'
          Dst:             seq_wait_at
    - functionName:    dpif_netdev_flow_flush
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2148
      functionLinenumberEnd: 2156
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          54
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - cmap_cursor_advance
        - cmap_cursor_start
        - dp_netdev_pmd_flow_flush
        - get_dp_netdev
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:2149,28'
          Dst:             get_dp_netdev
        - Src:             'lib/dpif-netdev.c:2152,5'
          Dst:             cmap_cursor_start
        - Src:             'lib/dpif-netdev.c:2152,5'
          Dst:             cmap_cursor_advance
        - Src:             'lib/dpif-netdev.c:2153,9'
          Dst:             dp_netdev_pmd_flow_flush
    - functionName:    dpif_netdev_flow_dump_create
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3407
      functionLinenumberEnd: 3414
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dpif_flow_dump_init
        - ovs_mutex_init
        - xzalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:3410,12'
          Dst:             xzalloc
        - Src:             'lib/dpif-netdev.c:3411,5'
          Dst:             dpif_flow_dump_init
        - Src:             'lib/dpif-netdev.c:3412,5'
          Dst:             ovs_mutex_init
    - functionName:    dpif_netdev_flow_dump_destroy
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3419
      functionLinenumberEnd: 3424
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dpif_netdev_flow_dump_cast
        - ovs_mutex_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:3420,42'
          Dst:             dpif_netdev_flow_dump_cast
        - Src:             'lib/dpif-netdev.c:3422,5'
          Dst:             ovs_mutex_destroy
    - functionName:    dpif_netdev_flow_dump_thread_create
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3442
      functionLinenumberEnd: 3449
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          31
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dpif_flow_dump_thread_init
        - dpif_netdev_flow_dump_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:3443,42'
          Dst:             dpif_netdev_flow_dump_cast
        - Src:             'lib/dpif-netdev.c:3446,14'
          Dst:             xmalloc
        - Src:             'lib/dpif-netdev.c:3447,5'
          Dst:             dpif_flow_dump_thread_init
    - functionName:    dpif_netdev_flow_dump_thread_destroy
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3454
      functionLinenumberEnd: 3459
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dpif_netdev_flow_dump_thread_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:3456,11'
          Dst:             dpif_netdev_flow_dump_thread_cast
    - functionName:    dpif_netdev_flow_dump_next
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3464
      functionLinenumberEnd: 3537
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         36
      ICount:          265
      EdgeCount:       46
      CyclomaticComplexity: 12
      functionsReached:
        - cmap_next_position
        - dp_netdev_flow_to_dpif_flow
        - dp_netdev_pmd_get_next
        - dp_netdev_pmd_unref
        - dpif_netdev_cast
        - dpif_netdev_flow_dump_thread_cast
        - get_dp_netdev
        - ofpbuf_use_stack
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:3466,11'
          Dst:             dpif_netdev_flow_dump_thread_cast
        - Src:             'lib/dpif-netdev.c:3469,32'
          Dst:             dpif_netdev_cast
        - Src:             'lib/dpif-netdev.c:3470,28'
          Dst:             get_dp_netdev
        - Src:             'lib/dpif-netdev.c:3474,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-netdev.c:3482,19'
          Dst:             dp_netdev_pmd_get_next
        - Src:             'lib/dpif-netdev.c:3484,17'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/dpif-netdev.c:3494,24'
          Dst:             cmap_next_position
        - Src:             'lib/dpif-netdev.c:3506,17'
          Dst:             dp_netdev_pmd_unref
        - Src:             'lib/dpif-netdev.c:3507,23'
          Dst:             dp_netdev_pmd_get_next
        - Src:             'lib/dpif-netdev.c:3521,5'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/dpif-netdev.c:3530,9'
          Dst:             ofpbuf_use_stack
        - Src:             'lib/dpif-netdev.c:3531,9'
          Dst:             ofpbuf_use_stack
        - Src:             'lib/dpif-netdev.c:3532,9'
          Dst:             dp_netdev_flow_to_dpif_flow
    - functionName:    dpif_netdev_operate
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3630
      functionLinenumberEnd: 3654
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          96
      EdgeCount:       13
      CyclomaticComplexity: 2
      functionsReached:
        - dpif_netdev_execute
        - dpif_netdev_flow_del
        - dpif_netdev_flow_get
        - dpif_netdev_flow_put
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib/dpif-netdev.c:3636,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/dpif-netdev.c:3638,25'
          Dst:             dpif_netdev_flow_put
        - Src:             'lib/dpif-netdev.c:3642,25'
          Dst:             dpif_netdev_flow_del
        - Src:             'lib/dpif-netdev.c:3646,25'
          Dst:             dpif_netdev_execute
        - Src:             'lib/dpif-netdev.c:3650,25'
          Dst:             dpif_netdev_flow_get
    - functionName:    dpif_netdev_number_handlers_required
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4070
      functionLinenumberEnd: 4072
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_netdev_set_config
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3890
      functionLinenumberEnd: 4064
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         158
      ICount:          863
      EdgeCount:       200
      CyclomaticComplexity: 44
      functionsReached:
        - dp_netdev_request_reconfigure
        - dpif_offload_datapath_register_flow_unreference_cb
        - get_dp_netdev
        - log_all_pmd_sleeps
        - nullable_string_is_equal
        - nullable_xstrdup
        - offload_flow_reference_unreference_cb
        - ovsthread_once_done
        - ovsthread_once_start
        - set_all_pmd_max_sleeps
        - set_pmd_auto_lb
        - smap_get
        - smap_get_bool
        - smap_get_def
        - smap_get_int
        - smap_get_uint
        - smap_get_ullong
        - strcmp
        - vlog
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:3891,28'
          Dst:             get_dp_netdev
        - Src:             'lib/dpif-netdev.c:3892,25'
          Dst:             smap_get
        - Src:             'lib/dpif-netdev.c:3893,34'
          Dst:             smap_get_def
        - Src:             'lib/dpif-netdev.c:3896,9'
          Dst:             smap_get_ullong
        - Src:             'lib/dpif-netdev.c:3906,25'
          Dst:             smap_get_int
        - Src:             'lib/dpif-netdev.c:3911,9'
          Dst:             vlog
        - Src:             'lib/dpif-netdev.c:3915,10'
          Dst:             nullable_string_is_equal
        - Src:             'lib/dpif-netdev.c:3917,25'
          Dst:             nullable_xstrdup
        - Src:             'lib/dpif-netdev.c:3918,9'
          Dst:             dp_netdev_request_reconfigure
        - Src:             'lib/dpif-netdev.c:3932,13'
          Dst:             vlog
        - Src:             'lib/dpif-netdev.c:3934,13'
          Dst:             vlog
        - Src:             'lib/dpif-netdev.c:3939,25'
          Dst:             smap_get_bool
        - Src:             'lib/dpif-netdev.c:3945,13'
          Dst:             vlog
        - Src:             'lib/dpif-netdev.c:3947,13'
          Dst:             vlog
        - Src:             'lib/dpif-netdev.c:3951,23'
          Dst:             smap_get_bool
        - Src:             'lib/dpif-netdev.c:3957,13'
          Dst:             vlog
        - Src:             'lib/dpif-netdev.c:3959,13'
          Dst:             vlog
        - Src:             'lib/dpif-netdev.c:3963,10'
          Dst:             strcmp
        - Src:             'lib/dpif-netdev.c:3965,17'
          Dst:             strcmp
        - Src:             'lib/dpif-netdev.c:3967,17'
          Dst:             strcmp
        - Src:             'lib/dpif-netdev.c:3971,9'
          Dst:             vlog
        - Src:             'lib/dpif-netdev.c:3978,9'
          Dst:             vlog
        - Src:             'lib/dpif-netdev.c:3980,9'
          Dst:             dp_netdev_request_reconfigure
        - Src:             'lib/dpif-netdev.c:3983,20'
          Dst:             smap_get_bool
        - Src:             'lib/dpif-netdev.c:3987,9'
          Dst:             vlog
        - Src:             'lib/dpif-netdev.c:3994,13'
          Dst:             vlog
        - Src:             'lib/dpif-netdev.c:3996,13'
          Dst:             vlog
        - Src:             'lib/dpif-netdev.c:3998,9'
          Dst:             dp_netdev_request_reconfigure
        - Src:             'lib/dpif-netdev.c:4003,23'
          Dst:             smap_get_ullong
        - Src:             'lib/dpif-netdev.c:4016,9'
          Dst:             vlog
        - Src:             'lib/dpif-netdev.c:4021,25'
          Dst:             smap_get_uint
        - Src:             'lib/dpif-netdev.c:4029,9'
          Dst:             vlog
        - Src:             'lib/dpif-netdev.c:4034,22'
          Dst:             smap_get_uint
        - Src:             'lib/dpif-netdev.c:4043,9'
          Dst:             vlog
        - Src:             'lib/dpif-netdev.c:4048,25'
          Dst:             smap_get_bool
        - Src:             'lib/dpif-netdev.c:4050,5'
          Dst:             set_pmd_auto_lb
        - Src:             'lib/dpif-netdev.c:4052,26'
          Dst:             set_all_pmd_max_sleeps
        - Src:             'lib/dpif-netdev.c:4054,9'
          Dst:             ovsthread_once_start
        - Src:             'lib/dpif-netdev.c:4055,9'
          Dst:             log_all_pmd_sleeps
        - Src:             'lib/dpif-netdev.c:4056,9'
          Dst:             dpif_offload_datapath_register_flow_unreference_cb
        - Src:             'lib/dpif-netdev.c:4056,9'
          Dst:             offload_flow_reference_unreference_cb
        - Src:             'lib/dpif-netdev.c:4059,9'
          Dst:             ovsthread_once_done
        - Src:             'lib/dpif-netdev.c:4061,9'
          Dst:             log_all_pmd_sleeps
    - functionName:    dpif_netdev_queue_to_priority
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4244
      functionLinenumberEnd: 4246
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_netdev_register_dp_purge_cb
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7750
      functionLinenumberEnd: 7754
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_dp_netdev
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:7751,28'
          Dst:             get_dp_netdev
    - functionName:    dpif_netdev_register_upcall_cb
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7759
      functionLinenumberEnd: 7763
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_dp_netdev
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:7760,28'
          Dst:             get_dp_netdev
    - functionName:    dpif_netdev_enable_upcall
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6601
      functionLinenumberEnd: 6604
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_netdev_enable_upcall
        - get_dp_netdev
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:6602,28'
          Dst:             get_dp_netdev
        - Src:             'lib/dpif-netdev.c:6603,5'
          Dst:             dp_netdev_enable_upcall
    - functionName:    dpif_netdev_disable_upcall
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6586
      functionLinenumberEnd: 6589
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_netdev_disable_upcall
        - get_dp_netdev
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:6587,28'
          Dst:             get_dp_netdev
        - Src:             'lib/dpif-netdev.c:6588,5'
          Dst:             dp_netdev_disable_upcall
    - functionName:    dpif_netdev_get_datapath_version
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6973
      functionLinenumberEnd: 6974
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - xstrdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:6974,13'
          Dst:             xstrdup
    - functionName:    dpif_netdev_ct_dump_start
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8371
      functionLinenumberEnd: 8383
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          48
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - conntrack_dump_start
        - get_dp_netdev
        - xzalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:8372,28'
          Dst:             get_dp_netdev
        - Src:             'lib/dpif-netdev.c:8375,12'
          Dst:             xzalloc
        - Src:             'lib/dpif-netdev.c:8379,5'
          Dst:             conntrack_dump_start
    - functionName:    dpif_netdev_ct_dump_next
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8390
      functionLinenumberEnd: 8395
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - conntrack_dump_next
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:8395,12'
          Dst:             conntrack_dump_next
    - functionName:    dpif_netdev_ct_dump_done
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8401
      functionLinenumberEnd: 8411
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - conntrack_dump_done
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:8407,11'
          Dst:             conntrack_dump_done
    - functionName:    dpif_netdev_ct_exp_dump_start
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8418
      functionLinenumberEnd: 8430
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          45
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - conntrack_exp_dump_start
        - get_dp_netdev
        - xzalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:8419,28'
          Dst:             get_dp_netdev
        - Src:             'lib/dpif-netdev.c:8422,12'
          Dst:             xzalloc
        - Src:             'lib/dpif-netdev.c:8426,5'
          Dst:             conntrack_exp_dump_start
    - functionName:    dpif_netdev_ct_exp_dump_next
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8437
      functionLinenumberEnd: 8442
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - conntrack_exp_dump_next
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:8442,12'
          Dst:             conntrack_exp_dump_next
    - functionName:    dpif_netdev_ct_exp_dump_done
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8448
      functionLinenumberEnd: 8458
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - conntrack_exp_dump_done
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:8454,11'
          Dst:             conntrack_exp_dump_done
    - functionName:    dpif_netdev_ct_flush
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8464
      functionLinenumberEnd: 8471
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          59
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - conntrack_flush
        - conntrack_flush_tuple
        - get_dp_netdev
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:8465,28'
          Dst:             get_dp_netdev
        - Src:             'lib/dpif-netdev.c:8468,16'
          Dst:             conntrack_flush_tuple
        - Src:             'lib/dpif-netdev.c:8470,12'
          Dst:             conntrack_flush
    - functionName:    dpif_netdev_ct_set_maxconns
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8475
      functionLinenumberEnd: 8478
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - conntrack_set_maxconns
        - get_dp_netdev
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:8476,28'
          Dst:             get_dp_netdev
        - Src:             'lib/dpif-netdev.c:8478,12'
          Dst:             conntrack_set_maxconns
    - functionName:    dpif_netdev_ct_get_maxconns
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8483
      functionLinenumberEnd: 8486
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - conntrack_get_maxconns
        - get_dp_netdev
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:8484,28'
          Dst:             get_dp_netdev
        - Src:             'lib/dpif-netdev.c:8486,12'
          Dst:             conntrack_get_maxconns
    - functionName:    dpif_netdev_ct_get_nconns
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8491
      functionLinenumberEnd: 8494
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - conntrack_get_nconns
        - get_dp_netdev
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:8492,28'
          Dst:             get_dp_netdev
        - Src:             'lib/dpif-netdev.c:8494,12'
          Dst:             conntrack_get_nconns
    - functionName:    dpif_netdev_ct_set_tcp_seq_chk
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8499
      functionLinenumberEnd: 8502
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - conntrack_set_tcp_seq_chk
        - get_dp_netdev
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:8500,28'
          Dst:             get_dp_netdev
        - Src:             'lib/dpif-netdev.c:8502,12'
          Dst:             conntrack_set_tcp_seq_chk
    - functionName:    dpif_netdev_ct_get_tcp_seq_chk
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8507
      functionLinenumberEnd: 8510
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - conntrack_get_tcp_seq_chk
        - get_dp_netdev
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:8508,28'
          Dst:             get_dp_netdev
        - Src:             'lib/dpif-netdev.c:8509,16'
          Dst:             conntrack_get_tcp_seq_chk
    - functionName:    dpif_netdev_ct_set_sweep_interval
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8515
      functionLinenumberEnd: 8517
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - conntrack_set_sweep_interval
        - get_dp_netdev
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:8516,28'
          Dst:             get_dp_netdev
        - Src:             'lib/dpif-netdev.c:8517,12'
          Dst:             conntrack_set_sweep_interval
    - functionName:    dpif_netdev_ct_get_sweep_interval
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8522
      functionLinenumberEnd: 8525
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - conntrack_get_sweep_interval
        - get_dp_netdev
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:8523,28'
          Dst:             get_dp_netdev
        - Src:             'lib/dpif-netdev.c:8524,11'
          Dst:             conntrack_get_sweep_interval
    - functionName:    dpif_netdev_ct_set_limits
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8531
      functionLinenumberEnd: 8543
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          81
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - get_dp_netdev
        - zone_limit_update
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:8533,28'
          Dst:             get_dp_netdev
        - Src:             'lib/dpif-netdev.c:8537,15'
          Dst:             zone_limit_update
    - functionName:    dpif_netdev_ct_get_limits
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8550
      functionLinenumberEnd: 8583
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          193
      EdgeCount:       38
      CyclomaticComplexity: 10
      functionsReached:
        - ct_dpif_push_zone_limit
        - get_dp_netdev
        - ovs_list_is_empty
        - zone_limit_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:8551,28'
          Dst:             get_dp_netdev
        - Src:             'lib/dpif-netdev.c:8554,10'
          Dst:             ovs_list_is_empty
        - Src:             'lib/dpif-netdev.c:8557,19'
          Dst:             zone_limit_get
        - Src:             'lib/dpif-netdev.c:8559,17'
          Dst:             ct_dpif_push_zone_limit
        - Src:             'lib/dpif-netdev.c:8567,15'
          Dst:             zone_limit_get
        - Src:             'lib/dpif-netdev.c:8569,13'
          Dst:             ct_dpif_push_zone_limit
        - Src:             'lib/dpif-netdev.c:8574,19'
          Dst:             zone_limit_get
        - Src:             'lib/dpif-netdev.c:8576,17'
          Dst:             ct_dpif_push_zone_limit
    - functionName:    dpif_netdev_ct_del_limits
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8588
      functionLinenumberEnd: 8599
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          78
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - get_dp_netdev
        - zone_limit_delete
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:8590,28'
          Dst:             get_dp_netdev
        - Src:             'lib/dpif-netdev.c:8593,15'
          Dst:             zone_limit_delete
    - functionName:    dpif_netdev_ct_set_timeout_policy
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8615
      functionLinenumberEnd: 8621
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_dp_netdev
        - timeout_policy_update
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:8619,10'
          Dst:             get_dp_netdev
        - Src:             'lib/dpif-netdev.c:8621,12'
          Dst:             timeout_policy_update
    - functionName:    dpif_netdev_ct_get_timeout_policy
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8627
      functionLinenumberEnd: 8639
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - get_dp_netdev
        - timeout_policy_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:8632,10'
          Dst:             get_dp_netdev
        - Src:             'lib/dpif-netdev.c:8633,10'
          Dst:             timeout_policy_get
    - functionName:    dpif_netdev_ct_del_timeout_policy
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8644
      functionLinenumberEnd: 8650
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - get_dp_netdev
        - timeout_policy_delete
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:8648,10'
          Dst:             get_dp_netdev
        - Src:             'lib/dpif-netdev.c:8649,11'
          Dst:             timeout_policy_delete
    - functionName:    dpif_netdev_ct_get_timeout_policy_name
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8659
      functionLinenumberEnd: 8665
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - int
        - short
        - char
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          32
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_format
        - ds_steal_cstr
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:8662,5'
          Dst:             ds_put_format
        - Src:             'lib/dpif-netdev.c:8663,16'
          Dst:             ds_steal_cstr
    - functionName:    dpif_netdev_ct_get_features
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8605
      functionLinenumberEnd: 8609
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          21
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_netdev_ipf_set_enabled
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8670
      functionLinenumberEnd: 8672
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - bool
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          32
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - conntrack_ipf_ctx
        - get_dp_netdev
        - ipf_set_enabled
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:8671,28'
          Dst:             get_dp_netdev
        - Src:             'lib/dpif-netdev.c:8672,28'
          Dst:             conntrack_ipf_ctx
        - Src:             'lib/dpif-netdev.c:8672,12'
          Dst:             ipf_set_enabled
    - functionName:    dpif_netdev_ipf_set_min_frag
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8677
      functionLinenumberEnd: 8679
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - bool
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - conntrack_ipf_ctx
        - get_dp_netdev
        - ipf_set_min_frag
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:8678,28'
          Dst:             get_dp_netdev
        - Src:             'lib/dpif-netdev.c:8679,29'
          Dst:             conntrack_ipf_ctx
        - Src:             'lib/dpif-netdev.c:8679,12'
          Dst:             ipf_set_min_frag
    - functionName:    dpif_netdev_ipf_set_max_nfrags
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8684
      functionLinenumberEnd: 8686
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - conntrack_ipf_ctx
        - get_dp_netdev
        - ipf_set_max_nfrags
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:8685,28'
          Dst:             get_dp_netdev
        - Src:             'lib/dpif-netdev.c:8686,31'
          Dst:             conntrack_ipf_ctx
        - Src:             'lib/dpif-netdev.c:8686,12'
          Dst:             ipf_set_max_nfrags
    - functionName:    dpif_netdev_ipf_get_status
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8694
      functionLinenumberEnd: 8698
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - conntrack_ipf_ctx
        - get_dp_netdev
        - ipf_get_status
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:8695,28'
          Dst:             get_dp_netdev
        - Src:             'lib/dpif-netdev.c:8696,20'
          Dst:             conntrack_ipf_ctx
        - Src:             'lib/dpif-netdev.c:8696,5'
          Dst:             ipf_get_status
    - functionName:    dpif_netdev_ipf_dump_start
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8704
      functionLinenumberEnd: 8705
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ipf_dump_start
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:8705,12'
          Dst:             ipf_dump_start
    - functionName:    dpif_netdev_ipf_dump_next
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8710
      functionLinenumberEnd: 8713
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - conntrack_ipf_ctx
        - get_dp_netdev
        - ipf_dump_next
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:8711,28'
          Dst:             get_dp_netdev
        - Src:             'lib/dpif-netdev.c:8712,26'
          Dst:             conntrack_ipf_ctx
        - Src:             'lib/dpif-netdev.c:8712,12'
          Dst:             ipf_dump_next
    - functionName:    dpif_netdev_ipf_dump_done
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8718
      functionLinenumberEnd: 8719
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ipf_dump_done
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:8719,12'
          Dst:             ipf_dump_done
    - functionName:    dpif_netdev_meter_get_features
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6271
      functionLinenumberEnd: 6277
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          23
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_netdev_meter_set
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6457
      functionLinenumberEnd: 6525
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         27
      ICount:          284
      EdgeCount:       33
      CyclomaticComplexity: 8
      functionsReached:
        - dp_meter_attach
        - dp_meter_detach_free
        - get_dp_netdev
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - time_msec
        - xzalloc
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib/dpif-netdev.c:6476,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/dpif-netdev.c:6458,28'
          Dst:             get_dp_netdev
        - Src:             'lib/dpif-netdev.c:6485,13'
          Dst:             xzalloc
        - Src:             'lib/dpif-netdev.c:6492,5'
          Dst:             time_msec
        - Src:             'lib/dpif-netdev.c:6517,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-netdev.c:6519,5'
          Dst:             dp_meter_detach_free
        - Src:             'lib/dpif-netdev.c:6520,5'
          Dst:             dp_meter_attach
        - Src:             'lib/dpif-netdev.c:6522,5'
          Dst:             ovs_mutex_unlock
    - functionName:    dpif_netdev_meter_get
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6531
      functionLinenumberEnd: 6561
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          160
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - dp_meter_lookup
        - get_dp_netdev
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:6532,28'
          Dst:             get_dp_netdev
        - Src:             'lib/dpif-netdev.c:6540,13'
          Dst:             dp_meter_lookup
    - functionName:    dpif_netdev_meter_del
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6567
      functionLinenumberEnd: 6579
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          59
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_meter_detach_free
        - dpif_netdev_meter_get
        - get_dp_netdev
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:6568,28'
          Dst:             get_dp_netdev
        - Src:             'lib/dpif-netdev.c:6571,13'
          Dst:             dpif_netdev_meter_get
        - Src:             'lib/dpif-netdev.c:6575,9'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-netdev.c:6576,9'
          Dst:             dp_meter_detach_free
        - Src:             'lib/dpif-netdev.c:6577,9'
          Dst:             ovs_mutex_unlock
    - functionName:    dpif_netdev_bond_add
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8726
      functionLinenumberEnd: 8753
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          134
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - cmap_cursor_advance
        - cmap_cursor_start
        - cmap_insert
        - cmap_replace
        - dp_netdev_add_bond_tx_to_pmd
        - get_dp_netdev
        - hash_bond_id
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovsrcu_postpone__
        - tx_bond_lookup
        - xzalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:8727,30'
          Dst:             xzalloc
        - Src:             'lib/dpif-netdev.c:8728,28'
          Dst:             get_dp_netdev
        - Src:             'lib/dpif-netdev.c:8737,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-netdev.c:8739,30'
          Dst:             tx_bond_lookup
        - Src:             'lib/dpif-netdev.c:8742,22'
          Dst:             hash_bond_id
        - Src:             'lib/dpif-netdev.c:8741,9'
          Dst:             cmap_replace
        - Src:             'lib/dpif-netdev.c:8743,9'
          Dst:             ovsrcu_postpone__
        - Src:             'lib/dpif-netdev.c:8745,51'
          Dst:             hash_bond_id
        - Src:             'lib/dpif-netdev.c:8745,9'
          Dst:             cmap_insert
        - Src:             'lib/dpif-netdev.c:8747,5'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/dpif-netdev.c:8750,5'
          Dst:             cmap_cursor_start
        - Src:             'lib/dpif-netdev.c:8750,5'
          Dst:             cmap_cursor_advance
        - Src:             'lib/dpif-netdev.c:8751,9'
          Dst:             dp_netdev_add_bond_tx_to_pmd
    - functionName:    dpif_netdev_bond_del
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8758
      functionLinenumberEnd: 8781
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          94
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - cmap_cursor_advance
        - cmap_cursor_start
        - cmap_remove
        - dp_netdev_del_bond_tx_from_pmd
        - get_dp_netdev
        - hash_bond_id
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovsrcu_postpone__
        - tx_bond_lookup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:8759,28'
          Dst:             get_dp_netdev
        - Src:             'lib/dpif-netdev.c:8763,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-netdev.c:8765,10'
          Dst:             tx_bond_lookup
        - Src:             'lib/dpif-netdev.c:8767,47'
          Dst:             hash_bond_id
        - Src:             'lib/dpif-netdev.c:8767,9'
          Dst:             cmap_remove
        - Src:             'lib/dpif-netdev.c:8768,9'
          Dst:             ovsrcu_postpone__
        - Src:             'lib/dpif-netdev.c:8771,9'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/dpif-netdev.c:8774,5'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/dpif-netdev.c:8777,5'
          Dst:             cmap_cursor_start
        - Src:             'lib/dpif-netdev.c:8777,5'
          Dst:             cmap_cursor_advance
        - Src:             'lib/dpif-netdev.c:8778,9'
          Dst:             dp_netdev_del_bond_tx_from_pmd
    - functionName:    dpif_netdev_bond_stats_get
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8786
      functionLinenumberEnd: 8813
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          119
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - cmap_cursor_advance
        - cmap_cursor_start
        - get_dp_netdev
        - tx_bond_lookup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:8787,28'
          Dst:             get_dp_netdev
        - Src:             'lib/dpif-netdev.c:8790,10'
          Dst:             tx_bond_lookup
        - Src:             'lib/dpif-netdev.c:8795,5'
          Dst:             cmap_cursor_start
        - Src:             'lib/dpif-netdev.c:8795,5'
          Dst:             cmap_cursor_advance
        - Src:             'lib/dpif-netdev.c:8797,15'
          Dst:             tx_bond_lookup
    - functionName:    dp_netdev_request_reconfigure
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1357
      functionLinenumberEnd: 1359
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - seq_change
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:1358,5'
          Dst:             seq_change
    - functionName:    dpif_netdev_flow_put
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3234
      functionLinenumberEnd: 3321
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         49
      ICount:          369
      EdgeCount:       65
      CyclomaticComplexity: 18
      functionsReached:
        - cmap_count
        - cmap_cursor_advance
        - cmap_cursor_start
        - dp_netdev_get_pmd
        - dp_netdev_pmd_unref
        - dpif_netdev_flow_from_nlattrs
        - dpif_netdev_mask_from_nlattrs
        - flow_put_on_pmd
        - get_dp_netdev
        - htons
        - netdev_flow_key_init
        - odp_flow_key_hash
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:3235,28'
          Dst:             get_dp_netdev
        - Src:             'lib/dpif-netdev.c:3246,13'
          Dst:             dpif_netdev_flow_from_nlattrs
        - Src:             'lib/dpif-netdev.c:3251,13'
          Dst:             dpif_netdev_mask_from_nlattrs
        - Src:             'lib/dpif-netdev.c:3261,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-netdev.c:3270,9'
          Dst:             odp_flow_key_hash
        - Src:             'lib/dpif-netdev.c:3280,39'
          Dst:             htons
        - Src:             'lib/dpif-netdev.c:3290,5'
          Dst:             netdev_flow_key_init
        - Src:             'lib/dpif-netdev.c:3293,13'
          Dst:             cmap_count
        - Src:             'lib/dpif-netdev.c:3296,9'
          Dst:             cmap_cursor_start
        - Src:             'lib/dpif-netdev.c:3296,9'
          Dst:             cmap_cursor_advance
        - Src:             'lib/dpif-netdev.c:3300,25'
          Dst:             flow_put_on_pmd
        - Src:             'lib/dpif-netdev.c:3312,15'
          Dst:             dp_netdev_get_pmd
        - Src:             'lib/dpif-netdev.c:3316,17'
          Dst:             flow_put_on_pmd
        - Src:             'lib/dpif-netdev.c:3317,9'
          Dst:             dp_netdev_pmd_unref
    - functionName:    dpif_netdev_flow_del
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3349
      functionLinenumberEnd: 3387
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         29
      ICount:          209
      EdgeCount:       38
      CyclomaticComplexity: 11
      functionsReached:
        - cmap_count
        - cmap_cursor_advance
        - cmap_cursor_start
        - dp_netdev_get_pmd
        - dp_netdev_pmd_unref
        - flow_del_on_pmd
        - get_dp_netdev
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:3350,28'
          Dst:             get_dp_netdev
        - Src:             'lib/dpif-netdev.c:3359,13'
          Dst:             cmap_count
        - Src:             'lib/dpif-netdev.c:3362,9'
          Dst:             cmap_cursor_start
        - Src:             'lib/dpif-netdev.c:3362,9'
          Dst:             cmap_cursor_advance
        - Src:             'lib/dpif-netdev.c:3366,25'
          Dst:             flow_del_on_pmd
        - Src:             'lib/dpif-netdev.c:3377,15'
          Dst:             dp_netdev_get_pmd
        - Src:             'lib/dpif-netdev.c:3381,17'
          Dst:             flow_del_on_pmd
        - Src:             'lib/dpif-netdev.c:3382,9'
          Dst:             dp_netdev_pmd_unref
    - functionName:    dpif_netdev_execute
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3542
      functionLinenumberEnd: 3626
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         34
      ICount:          211
      EdgeCount:       45
      CyclomaticComplexity: 13
      functionsReached:
        - dp_netdev_execute_actions
        - dp_netdev_get_pmd
        - dp_netdev_pmd_flush_output_packets
        - dp_netdev_pmd_unref
        - dp_packet_batch_destroy
        - dp_packet_batch_init_packet
        - dp_packet_batch_size
        - dp_packet_clone
        - dp_packet_delete_batch
        - dp_packet_rss_valid
        - dp_packet_set_rss_hash
        - dp_packet_size
        - dp_packet_swap
        - flow_hash_5tuple
        - get_dp_netdev
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovsthread_getspecific
        - pmd_thread_ctx_time_update
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:3543,28'
          Dst:             get_dp_netdev
        - Src:             'lib/dpif-netdev.c:3547,9'
          Dst:             dp_packet_size
        - Src:             'lib/dpif-netdev.c:3548,9'
          Dst:             dp_packet_size
        - Src:             'lib/dpif-netdev.c:3555,11'
          Dst:             ovsthread_getspecific
        - Src:             'lib/dpif-netdev.c:3557,15'
          Dst:             dp_netdev_get_pmd
        - Src:             'lib/dpif-netdev.c:3568,13'
          Dst:             dp_netdev_pmd_unref
        - Src:             'lib/dpif-netdev.c:3576,9'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-netdev.c:3581,5'
          Dst:             pmd_thread_ctx_time_update
        - Src:             'lib/dpif-netdev.c:3588,10'
          Dst:             dp_packet_rss_valid
        - Src:             'lib/dpif-netdev.c:3590,32'
          Dst:             flow_hash_5tuple
        - Src:             'lib/dpif-netdev.c:3589,9'
          Dst:             dp_packet_set_rss_hash
        - Src:             'lib/dpif-netdev.c:3595,38'
          Dst:             dp_packet_clone
        - Src:             'lib/dpif-netdev.c:3596,5'
          Dst:             dp_packet_batch_init_packet
        - Src:             'lib/dpif-netdev.c:3597,5'
          Dst:             dp_netdev_execute_actions
        - Src:             'lib/dpif-netdev.c:3599,5'
          Dst:             dp_netdev_pmd_flush_output_packets
        - Src:             'lib/dpif-netdev.c:3602,9'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/dpif-netdev.c:3603,9'
          Dst:             dp_netdev_pmd_unref
        - Src:             'lib/dpif-netdev.c:3606,9'
          Dst:             dp_packet_batch_size
        - Src:             'lib/dpif-netdev.c:3612,9'
          Dst:             dp_packet_swap
        - Src:             'lib/dpif-netdev.c:3613,9'
          Dst:             dp_packet_delete_batch
        - Src:             'lib/dpif-netdev.c:3614,16'
          Dst:             dp_packet_batch_size
        - Src:             'lib/dpif-netdev.c:3621,9'
          Dst:             dp_packet_delete_batch
        - Src:             'lib/dpif-netdev.c:3623,5'
          Dst:             dp_packet_batch_destroy
    - functionName:    dpif_netdev_flow_dump_thread_cast
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3436
      functionLinenumberEnd: 3437
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_netdev_pmd_get_next
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6667
      functionLinenumberEnd: 6678
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          63
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - cmap_next_position
        - dp_netdev_pmd_try_ref
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:6673,16'
          Dst:             cmap_next_position
        - Src:             'lib/dpif-netdev.c:6676,23'
          Dst:             dp_netdev_pmd_try_ref
    - functionName:    dpif_netdev_flow_dump_cast
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3400
      functionLinenumberEnd: 3401
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_flow_dump_thread_init
      functionSourceFile: '/src/openvswitch/lib/dpif-provider.h'
      linkageType:     InternalLinkage
      functionLinenumber: 108
      functionLinenumberEnd: 115
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dpif_offload_flow_dump_thread_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-provider.h:114,5'
          Dst:             dpif_offload_flow_dump_thread_create
    - functionName:    dpif_flow_dump_init
      functionSourceFile: '/src/openvswitch/lib/dpif-provider.h'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 94
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          68
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - dpif_offload_flow_dump_create
        - ovs_mutex_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-provider.h:90,5'
          Dst:             ovs_mutex_init
        - Src:             'lib/dpif-provider.h:92,9'
          Dst:             dpif_offload_flow_dump_create
    - functionName:    answer_port_query
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1810
      functionLinenumberEnd: 1814
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - netdev_get_name
        - xstrdup
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:1811,31'
          Dst:             netdev_get_name
        - Src:             'lib/dpif-netdev.c:1811,23'
          Dst:             xstrdup
        - Src:             'lib/dpif-netdev.c:1812,23'
          Dst:             xstrdup
    - functionName:    get_port_by_number
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1730
      functionLinenumberEnd: 1738
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_netdev_lookup_port
        - is_valid_port_number
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:1731,10'
          Dst:             is_valid_port_number
        - Src:             'lib/dpif-netdev.c:1735,18'
          Dst:             dp_netdev_lookup_port
    - functionName:    is_valid_port_number
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1708
      functionLinenumberEnd: 1709
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpif_netdev_pmd_polls_port
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4140
      functionLinenumberEnd: 4152
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          78
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_first
        - hmap_next
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:4144,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-netdev.c:4145,5'
          Dst:             hmap_first
        - Src:             'lib/dpif-netdev.c:4145,5'
          Dst:             hmap_next
        - Src:             'lib/dpif-netdev.c:4151,5'
          Dst:             ovs_mutex_unlock
    - functionName:    choose_port
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1176
      functionLinenumberEnd: 1211
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         30
      ICount:          153
      EdgeCount:       39
      CyclomaticComplexity: 11
      functionsReached:
        - __ctype_b_loc
        - dp_netdev_lookup_port
        - odp_to_u32
        - strncmp
        - strtol
        - u32_to_odp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:1185,14'
          Dst:             strncmp
        - Src:             'lib/dpif-netdev.c:1193,17'
          Dst:             __ctype_b_loc
        - Src:             'lib/dpif-netdev.c:1194,38'
          Dst:             strtol
        - Src:             'lib/dpif-netdev.c:1195,47'
          Dst:             odp_to_u32
        - Src:             'lib/dpif-netdev.c:1196,51'
          Dst:             u32_to_odp
        - Src:             'lib/dpif-netdev.c:1196,25'
          Dst:             dp_netdev_lookup_port
        - Src:             'lib/dpif-netdev.c:1197,28'
          Dst:             u32_to_odp
        - Src:             'lib/dpif-netdev.c:1205,40'
          Dst:             u32_to_odp
        - Src:             'lib/dpif-netdev.c:1205,14'
          Dst:             dp_netdev_lookup_port
        - Src:             'lib/dpif-netdev.c:1206,20'
          Dst:             u32_to_odp
    - functionName:    atomic_count_get
      functionSourceFile: '/src/openvswitch/lib/ovs-atomic.h'
      linkageType:     InternalLinkage
      functionLinenumber: 471
      functionLinenumberEnd: 476
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_netdev_is_reconf_required
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1363
      functionLinenumberEnd: 1364
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - seq_read
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:1364,12'
          Dst:             seq_read
    - functionName:    ports_require_restart
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5783
      functionLinenumberEnd: 5793
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          66
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_first
        - hmap_next
        - netdev_is_reconf_required
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:5786,5'
          Dst:             hmap_first
        - Src:             'lib/dpif-netdev.c:5787,13'
          Dst:             netdev_is_reconf_required
        - Src:             'lib/dpif-netdev.c:5786,5'
          Dst:             hmap_next
    - functionName:    pmd_rebalance_dry_run_needed
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5329
      functionLinenumberEnd: 5372
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         44
      ICount:          216
      EdgeCount:       57
      CyclomaticComplexity: 15
      functionsReached:
        - cmap_cursor_advance
        - cmap_cursor_start
        - hmap_count
        - vlog
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:5338,13'
          Dst:             vlog
        - Src:             'lib/dpif-netdev.c:5348,9'
          Dst:             vlog
        - Src:             'lib/dpif-netdev.c:5355,5'
          Dst:             cmap_cursor_start
        - Src:             'lib/dpif-netdev.c:5355,5'
          Dst:             cmap_cursor_advance
        - Src:             'lib/dpif-netdev.c:5360,13'
          Dst:             hmap_count
        - Src:             'lib/dpif-netdev.c:5369,5'
          Dst:             vlog
    - functionName:    pmd_rebalance_dry_run
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5377
      functionLinenumberEnd: 5434
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         44
      ICount:          237
      EdgeCount:       55
      CyclomaticComplexity: 13
      functionsReached:
        - hmap_first
        - hmap_next
        - sched_numa_list_assignments
        - sched_numa_list_count
        - sched_numa_list_cross_numa_polling
        - sched_numa_list_free_entries
        - sched_numa_list_lookup
        - sched_numa_list_populate
        - sched_numa_list_schedule
        - sched_numa_variance
        - vlog
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:5382,5'
          Dst:             vlog
        - Src:             'lib/dpif-netdev.c:5385,5'
          Dst:             sched_numa_list_populate
        - Src:             'lib/dpif-netdev.c:5386,5'
          Dst:             sched_numa_list_assignments
        - Src:             'lib/dpif-netdev.c:5389,5'
          Dst:             sched_numa_list_populate
        - Src:             'lib/dpif-netdev.c:5390,5'
          Dst:             sched_numa_list_schedule
        - Src:             'lib/dpif-netdev.c:5394,10'
          Dst:             sched_numa_list_cross_numa_polling
        - Src:             'lib/dpif-netdev.c:5395,13'
          Dst:             sched_numa_list_count
        - Src:             'lib/dpif-netdev.c:5399,9'
          Dst:             hmap_first
        - Src:             'lib/dpif-netdev.c:5404,24'
          Dst:             sched_numa_list_lookup
        - Src:             'lib/dpif-netdev.c:5409,27'
          Dst:             sched_numa_variance
        - Src:             'lib/dpif-netdev.c:5410,28'
          Dst:             sched_numa_variance
        - Src:             'lib/dpif-netdev.c:5415,13'
          Dst:             vlog
        - Src:             'lib/dpif-netdev.c:5399,9'
          Dst:             hmap_next
        - Src:             'lib/dpif-netdev.c:5423,9'
          Dst:             vlog
        - Src:             'lib/dpif-netdev.c:5427,9'
          Dst:             vlog
        - Src:             'lib/dpif-netdev.c:5431,5'
          Dst:             sched_numa_list_free_entries
        - Src:             'lib/dpif-netdev.c:5432,5'
          Dst:             sched_numa_list_free_entries
    - functionName:    sched_numa_list_assignments
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4827
      functionLinenumberEnd: 4854
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         28
      ICount:          157
      EdgeCount:       36
      CyclomaticComplexity: 10
      functionsReached:
        - dp_netdev_rxq_get_intrvl_cycles
        - hmap_first
        - hmap_next
        - netdev_is_pmd
        - sched_pmd_add_rxq
        - sched_pmd_find_by_pmd
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:4831,5'
          Dst:             hmap_first
        - Src:             'lib/dpif-netdev.c:4832,14'
          Dst:             netdev_is_pmd
        - Src:             'lib/dpif-netdev.c:4842,33'
          Dst:             dp_netdev_rxq_get_intrvl_cycles
        - Src:             'lib/dpif-netdev.c:4845,25'
          Dst:             sched_pmd_find_by_pmd
        - Src:             'lib/dpif-netdev.c:4850,17'
          Dst:             sched_pmd_add_rxq
        - Src:             'lib/dpif-netdev.c:4831,5'
          Dst:             hmap_next
    - functionName:    sched_numa_list_cross_numa_polling
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4883
      functionLinenumberEnd: 4909
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         26
      ICount:          151
      EdgeCount:       33
      CyclomaticComplexity: 9
      functionsReached:
        - hmap_first
        - hmap_next
        - netdev_get_numa_id
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:4886,5'
          Dst:             hmap_first
        - Src:             'lib/dpif-netdev.c:4902,25'
          Dst:             netdev_get_numa_id
        - Src:             'lib/dpif-netdev.c:4886,5'
          Dst:             hmap_next
    - functionName:    sched_numa_variance
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5283
      functionLinenumberEnd: 5313
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          116
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - variance
        - xmalloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:5288,20'
          Dst:             xmalloc
        - Src:             'lib/dpif-netdev.c:5311,11'
          Dst:             variance
    - functionName:    variance
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5802
      functionLinenumberEnd: 5825
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          119
      EdgeCount:       22
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    atomic_flag_test_and_set
      functionSourceFile: '/src/openvswitch/lib/ovs-atomic-flag-gcc4.7+.h'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - atomic_flag_test_and_set_explicit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-atomic-flag-gcc4.7+.h:39,12'
          Dst:             atomic_flag_test_and_set_explicit
    - functionName:    atomic_flag_test_and_set_explicit
      functionSourceFile: '/src/openvswitch/lib/ovs-atomic-flag-gcc4.7+.h'
      linkageType:     InternalLinkage
      functionLinenumber: 32
      functionLinenumberEnd: 33
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          62
      EdgeCount:       16
      CyclomaticComplexity: 9
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ovs-atomic-flag-gcc4.7+.h:33,12'
          Branch Sides:    []
      Callsites:       []
    - functionName:    dp_netdev_unref
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1469
      functionLinenumberEnd: 1479
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          39
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - dp_netdev_free
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovs_refcount_unref_relaxed
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:1473,9'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-netdev.c:1474,13'
          Dst:             ovs_refcount_unref_relaxed
        - Src:             'lib/dpif-netdev.c:1475,13'
          Dst:             dp_netdev_free
        - Src:             'lib/dpif-netdev.c:1477,9'
          Dst:             ovs_mutex_unlock
    - functionName:    dpif_netdev_pmd_info
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 899
      functionLinenumberEnd: 992
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         69
      ICount:          355
      EdgeCount:       91
      CyclomaticComplexity: 24
      functionsReached:
        - ds_cstr
        - ds_destroy
        - ds_put_format
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - pmd_info_show_perf
        - pmd_info_show_rxq
        - pmd_info_show_sleep
        - pmd_perf_stats_clear
        - shash_count
        - shash_find_data
        - shash_first
        - sorted_poll_thread_list
        - str_to_uint
        - strcmp
        - unixctl_command_reply
        - unixctl_command_reply_error
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:913,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-netdev.c:916,14'
          Dst:             strcmp
        - Src:             'lib/dpif-netdev.c:917,17'
          Dst:             str_to_uint
        - Src:             'lib/dpif-netdev.c:923,25'
          Dst:             strcmp
        - Src:             'lib/dpif-netdev.c:925,18'
          Dst:             str_to_uint
        - Src:             'lib/dpif-netdev.c:931,18'
          Dst:             shash_find_data
        - Src:             'lib/dpif-netdev.c:938,13'
          Dst:             shash_count
        - Src:             'lib/dpif-netdev.c:940,18'
          Dst:             shash_first
        - Src:             'lib/dpif-netdev.c:942,13'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/dpif-netdev.c:943,13'
          Dst:             unixctl_command_reply_error
        - Src:             'lib/dpif-netdev.c:949,5'
          Dst:             sorted_poll_thread_list
        - Src:             'lib/dpif-netdev.c:966,17'
          Dst:             ds_put_format
        - Src:             'lib/dpif-netdev.c:970,13'
          Dst:             pmd_info_show_rxq
        - Src:             'lib/dpif-netdev.c:972,13'
          Dst:             pmd_perf_stats_clear
        - Src:             'lib/dpif-netdev.c:974,13'
          Dst:             pmd_info_show_perf
        - Src:             'lib/dpif-netdev.c:977,17'
          Dst:             ds_put_format
        - Src:             'lib/dpif-netdev.c:982,13'
          Dst:             pmd_info_show_sleep
        - Src:             'lib/dpif-netdev.c:988,5'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/dpif-netdev.c:990,33'
          Dst:             ds_cstr
        - Src:             'lib/dpif-netdev.c:990,5'
          Dst:             unixctl_command_reply
        - Src:             'lib/dpif-netdev.c:991,5'
          Dst:             ds_destroy
    - functionName:    pmd_perf_show_cmd
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 998
      functionLinenumberEnd: 1034
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         34
      ICount:          181
      EdgeCount:       44
      CyclomaticComplexity: 12
      functionsReached:
        - dpif_netdev_pmd_info
        - strcmp
        - strtol
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:1004,14'
          Dst:             strcmp
        - Src:             'lib/dpif-netdev.c:1008,21'
          Dst:             strcmp
        - Src:             'lib/dpif-netdev.c:1009,23'
          Dst:             strtol
        - Src:             'lib/dpif-netdev.c:1017,21'
          Dst:             strcmp
        - Src:             'lib/dpif-netdev.c:1018,23'
          Dst:             strtol
        - Src:             'lib/dpif-netdev.c:1033,5'
          Dst:             dpif_netdev_pmd_info
    - functionName:    dpif_netdev_pmd_rebalance
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 856
      functionLinenumberEnd: 881
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          76
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - dp_netdev_request_reconfigure
        - ds_cstr
        - ds_destroy
        - ds_put_cstr
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - shash_count
        - shash_find_data
        - shash_first
        - unixctl_command_reply
        - unixctl_command_reply_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:860,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-netdev.c:863,14'
          Dst:             shash_find_data
        - Src:             'lib/dpif-netdev.c:864,16'
          Dst:             shash_count
        - Src:             'lib/dpif-netdev.c:866,14'
          Dst:             shash_first
        - Src:             'lib/dpif-netdev.c:870,9'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/dpif-netdev.c:871,9'
          Dst:             unixctl_command_reply_error
        - Src:             'lib/dpif-netdev.c:876,5'
          Dst:             dp_netdev_request_reconfigure
        - Src:             'lib/dpif-netdev.c:877,5'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/dpif-netdev.c:878,5'
          Dst:             ds_put_cstr
        - Src:             'lib/dpif-netdev.c:879,33'
          Dst:             ds_cstr
        - Src:             'lib/dpif-netdev.c:879,5'
          Dst:             unixctl_command_reply
        - Src:             'lib/dpif-netdev.c:880,5'
          Dst:             ds_destroy
    - functionName:    dpif_netdev_bond_show
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1039
      functionLinenumberEnd: 1076
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          149
      EdgeCount:       32
      CyclomaticComplexity: 9
      functionsReached:
        - cmap_count
        - cmap_cursor_advance
        - cmap_cursor_start
        - ds_cstr
        - ds_destroy
        - ds_put_cstr
        - ds_put_format
        - odp_to_u32
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - shash_count
        - shash_find_data
        - shash_first
        - unixctl_command_reply
        - unixctl_command_reply_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:1043,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-netdev.c:1045,14'
          Dst:             shash_find_data
        - Src:             'lib/dpif-netdev.c:1046,16'
          Dst:             shash_count
        - Src:             'lib/dpif-netdev.c:1048,14'
          Dst:             shash_first
        - Src:             'lib/dpif-netdev.c:1051,9'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/dpif-netdev.c:1052,9'
          Dst:             unixctl_command_reply_error
        - Src:             'lib/dpif-netdev.c:1057,9'
          Dst:             cmap_count
        - Src:             'lib/dpif-netdev.c:1060,9'
          Dst:             ds_put_cstr
        - Src:             'lib/dpif-netdev.c:1061,9'
          Dst:             cmap_cursor_start
        - Src:             'lib/dpif-netdev.c:1061,9'
          Dst:             cmap_cursor_advance
        - Src:             'lib/dpif-netdev.c:1062,13'
          Dst:             ds_put_format
        - Src:             'lib/dpif-netdev.c:1065,38'
          Dst:             odp_to_u32
        - Src:             'lib/dpif-netdev.c:1067,17'
          Dst:             ds_put_format
        - Src:             'lib/dpif-netdev.c:1073,5'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/dpif-netdev.c:1074,33'
          Dst:             ds_cstr
        - Src:             'lib/dpif-netdev.c:1074,5'
          Dst:             unixctl_command_reply
        - Src:             'lib/dpif-netdev.c:1075,5'
          Dst:             ds_destroy
    - functionName:    pmd_info_show_rxq
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 731
      functionLinenumberEnd: 807
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          249
      EdgeCount:       32
      CyclomaticComplexity: 9
      functionsReached:
        - ds_put_cstr
        - ds_put_format
        - get_interval_values
        - netdev_rxq_enabled
        - netdev_rxq_get_name
        - netdev_rxq_get_queue_id
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - sorted_poll_list
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:740,9'
          Dst:             ds_put_format
        - Src:             'lib/dpif-netdev.c:745,9'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-netdev.c:746,9'
          Dst:             sorted_poll_list
        - Src:             'lib/dpif-netdev.c:755,27'
          Dst:             get_interval_values
        - Src:             'lib/dpif-netdev.c:764,32'
          Dst:             netdev_rxq_get_name
        - Src:             'lib/dpif-netdev.c:767,31'
          Dst:             get_interval_values
        - Src:             'lib/dpif-netdev.c:772,27'
          Dst:             netdev_rxq_get_queue_id
        - Src:             'lib/dpif-netdev.c:771,13'
          Dst:             ds_put_format
        - Src:             'lib/dpif-netdev.c:773,41'
          Dst:             netdev_rxq_enabled
        - Src:             'lib/dpif-netdev.c:773,13'
          Dst:             ds_put_format
        - Src:             'lib/dpif-netdev.c:775,13'
          Dst:             ds_put_format
        - Src:             'lib/dpif-netdev.c:777,17'
          Dst:             ds_put_format
        - Src:             'lib/dpif-netdev.c:781,17'
          Dst:             ds_put_format
        - Src:             'lib/dpif-netdev.c:783,13'
          Dst:             ds_put_cstr
        - Src:             'lib/dpif-netdev.c:787,13'
          Dst:             ds_put_cstr
        - Src:             'lib/dpif-netdev.c:795,17'
          Dst:             ds_put_format
        - Src:             'lib/dpif-netdev.c:799,17'
          Dst:             ds_put_cstr
        - Src:             'lib/dpif-netdev.c:801,13'
          Dst:             ds_put_cstr
        - Src:             'lib/dpif-netdev.c:804,9'
          Dst:             ovs_mutex_unlock
    - functionName:    pmd_info_show_perf
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 650
      functionLinenumberEnd: 683
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          154
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - ds_put_cstr
        - ds_put_format
        - format_pmd_thread
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - pmd_perf_format_histograms
        - pmd_perf_format_iteration_history
        - pmd_perf_format_ms_history
        - pmd_perf_format_overall_stats
        - pmd_perf_metrics_enabled
        - time_msec
        - time_wall_msec
        - xastrftime_msec
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:651,54'
          Dst:             time_wall_msec
        - Src:             'lib/dpif-netdev.c:651,22'
          Dst:             xastrftime_msec
        - Src:             'lib/dpif-netdev.c:652,21'
          Dst:             time_msec
        - Src:             'lib/dpif-netdev.c:655,5'
          Dst:             ds_put_cstr
        - Src:             'lib/dpif-netdev.c:656,5'
          Dst:             ds_put_format
        - Src:             'lib/dpif-netdev.c:657,5'
          Dst:             ds_put_format
        - Src:             'lib/dpif-netdev.c:658,5'
          Dst:             ds_put_cstr
        - Src:             'lib/dpif-netdev.c:659,5'
          Dst:             format_pmd_thread
        - Src:             'lib/dpif-netdev.c:660,5'
          Dst:             ds_put_cstr
        - Src:             'lib/dpif-netdev.c:661,5'
          Dst:             pmd_perf_format_overall_stats
        - Src:             'lib/dpif-netdev.c:663,9'
          Dst:             pmd_perf_metrics_enabled
        - Src:             'lib/dpif-netdev.c:665,9'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-netdev.c:667,13'
          Dst:             ds_put_cstr
        - Src:             'lib/dpif-netdev.c:668,13'
          Dst:             pmd_perf_format_histograms
        - Src:             'lib/dpif-netdev.c:671,13'
          Dst:             ds_put_cstr
        - Src:             'lib/dpif-netdev.c:672,13'
          Dst:             pmd_perf_format_iteration_history
        - Src:             'lib/dpif-netdev.c:676,13'
          Dst:             ds_put_cstr
        - Src:             'lib/dpif-netdev.c:677,13'
          Dst:             pmd_perf_format_ms_history
        - Src:             'lib/dpif-netdev.c:680,9'
          Dst:             ovs_mutex_unlock
    - functionName:    pmd_info_show_sleep
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 886
      functionLinenumberEnd: 894
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_format
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:890,5'
          Dst:             ds_put_format
    - functionName:    format_pmd_thread
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 634
      functionLinenumberEnd: 644
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          74
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - ds_put_cstr
        - ds_put_format
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:635,5'
          Dst:             ds_put_cstr
        - Src:             'lib/dpif-netdev.c:638,9'
          Dst:             ds_put_format
        - Src:             'lib/dpif-netdev.c:641,9'
          Dst:             ds_put_format
        - Src:             'lib/dpif-netdev.c:643,5'
          Dst:             ds_put_cstr
    - functionName:    sorted_poll_list
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 707
      functionLinenumberEnd: 726
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          100
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - compare_poll_list
        - hmap_count
        - hmap_first
        - hmap_next
        - ovs_ignore
        - qsort
        - xcalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:711,10'
          Dst:             hmap_count
        - Src:             'lib/dpif-netdev.c:715,15'
          Dst:             xcalloc
        - Src:             'lib/dpif-netdev.c:717,9'
          Dst:             hmap_first
        - Src:             'lib/dpif-netdev.c:717,9'
          Dst:             hmap_next
        - Src:             'lib/dpif-netdev.c:721,9'
          Dst:             ovs_ignore
        - Src:             'lib/dpif-netdev.c:722,9'
          Dst:             qsort
        - Src:             'lib/dpif-netdev.c:722,9'
          Dst:             compare_poll_list
    - functionName:    get_interval_values
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9209
      functionLinenumberEnd: 9221
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          74
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - atomic_count_get
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:9213,9'
          Dst:             atomic_count_get
    - functionName:    compare_poll_list
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 687
      functionLinenumberEnd: 701
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          72
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - netdev_rxq_get_name
        - netdev_rxq_get_queue_id
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:691,25'
          Dst:             netdev_rxq_get_name
        - Src:             'lib/dpif-netdev.c:692,25'
          Dst:             netdev_rxq_get_name
        - Src:             'lib/dpif-netdev.c:694,15'
          Dst:             strcmp
        - Src:             'lib/dpif-netdev.c:696,16'
          Dst:             netdev_rxq_get_queue_id
        - Src:             'lib/dpif-netdev.c:697,18'
          Dst:             netdev_rxq_get_queue_id
    - functionName:    dpif_dummy_change_port_number
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8908
      functionLinenumberEnd: 8954
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          142
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - atoi
        - dp_netdev_lookup_port
        - dp_netdev_unref
        - dpif_netdev_class_is_dummy
        - get_port_by_name
        - hash_port_no
        - hmap_insert_at
        - hmap_remove
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovs_refcount_ref
        - ovs_rwlock_unlock
        - ovs_rwlock_wrlock_at
        - reconfigure_datapath
        - seq_change
        - shash_find_data
        - u32_to_odp
        - unixctl_command_reply
        - unixctl_command_reply_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:8913,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-netdev.c:8914,10'
          Dst:             shash_find_data
        - Src:             'lib/dpif-netdev.c:8915,17'
          Dst:             dpif_netdev_class_is_dummy
        - Src:             'lib/dpif-netdev.c:8916,9'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/dpif-netdev.c:8917,9'
          Dst:             unixctl_command_reply_error
        - Src:             'lib/dpif-netdev.c:8920,5'
          Dst:             ovs_refcount_ref
        - Src:             'lib/dpif-netdev.c:8921,5'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/dpif-netdev.c:8923,5'
          Dst:             ovs_rwlock_wrlock_at
        - Src:             'lib/dpif-netdev.c:8924,9'
          Dst:             get_port_by_name
        - Src:             'lib/dpif-netdev.c:8925,9'
          Dst:             unixctl_command_reply_error
        - Src:             'lib/dpif-netdev.c:8929,26'
          Dst:             atoi
        - Src:             'lib/dpif-netdev.c:8929,15'
          Dst:             u32_to_odp
        - Src:             'lib/dpif-netdev.c:8931,9'
          Dst:             unixctl_command_reply_error
        - Src:             'lib/dpif-netdev.c:8934,9'
          Dst:             dp_netdev_lookup_port
        - Src:             'lib/dpif-netdev.c:8935,9'
          Dst:             unixctl_command_reply_error
        - Src:             'lib/dpif-netdev.c:8940,5'
          Dst:             hmap_remove
        - Src:             'lib/dpif-netdev.c:8941,5'
          Dst:             reconfigure_datapath
        - Src:             'lib/dpif-netdev.c:8945,5'
          Dst:             hash_port_no
        - Src:             'lib/dpif-netdev.c:8945,5'
          Dst:             hmap_insert_at
        - Src:             'lib/dpif-netdev.c:8946,5'
          Dst:             reconfigure_datapath
        - Src:             'lib/dpif-netdev.c:8948,5'
          Dst:             seq_change
        - Src:             'lib/dpif-netdev.c:8949,5'
          Dst:             unixctl_command_reply
        - Src:             'lib/dpif-netdev.c:8952,5'
          Dst:             ovs_rwlock_unlock
        - Src:             'lib/dpif-netdev.c:8953,5'
          Dst:             dp_netdev_unref
    - functionName:    dpif_dummy_register__
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8958
      functionLinenumberEnd: 8965
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_register_provider
        - xmalloc
        - xstrdup
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:8961,13'
          Dst:             xmalloc
        - Src:             'lib/dpif-netdev.c:8963,19'
          Dst:             xstrdup
        - Src:             'lib/dpif-netdev.c:8964,5'
          Dst:             dp_register_provider
    - functionName:    dpif_dummy_override
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8969
      functionLinenumberEnd: 8980
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          40
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - dp_unregister_provider
        - dpif_dummy_register__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:8976,13'
          Dst:             dp_unregister_provider
        - Src:             'lib/dpif-netdev.c:8978,9'
          Dst:             dpif_dummy_register__
    - functionName:    dpif_dummy_register
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8984
      functionLinenumberEnd: 9004
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         19
      ICount:          94
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - dp_enumerate_types
        - dpif_dummy_change_port_number
        - dpif_dummy_override
        - dpif_dummy_register__
        - hmap_first
        - hmap_next
        - sset_destroy
        - sset_init
        - unixctl_command_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:8989,9'
          Dst:             sset_init
        - Src:             'lib/dpif-netdev.c:8990,9'
          Dst:             dp_enumerate_types
        - Src:             'lib/dpif-netdev.c:8991,9'
          Dst:             hmap_first
        - Src:             'lib/dpif-netdev.c:8991,9'
          Dst:             hmap_first
        - Src:             'lib/dpif-netdev.c:8992,13'
          Dst:             dpif_dummy_override
        - Src:             'lib/dpif-netdev.c:8991,9'
          Dst:             hmap_next
        - Src:             'lib/dpif-netdev.c:8991,9'
          Dst:             hmap_next
        - Src:             'lib/dpif-netdev.c:8994,9'
          Dst:             sset_destroy
        - Src:             'lib/dpif-netdev.c:8996,9'
          Dst:             dpif_dummy_override
        - Src:             'lib/dpif-netdev.c:8999,5'
          Dst:             dpif_dummy_register__
        - Src:             'lib/dpif-netdev.c:9001,5'
          Dst:             unixctl_command_register
        - Src:             'lib/dpif-netdev.c:9001,5'
          Dst:             dpif_dummy_change_port_number
    - functionName:    smc_lookup_single
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7213
      functionLinenumberEnd: 7231
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          116
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - cmap_node_next
        - dpcls_rule_matches_key
        - smc_entry_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:7214,41'
          Dst:             smc_entry_get
        - Src:             'lib/dpif-netdev.c:7222,17'
          Dst:             dpcls_rule_matches_key
        - Src:             'lib/dpif-netdev.c:7219,9'
          Dst:             cmap_node_next
    - functionName:    smc_insert_batch
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2513
      functionLinenumberEnd: 2523
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          60
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_netdev_flow_cast
        - dp_netdev_flow_hash
        - raw_ctz
        - smc_insert
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:2515,22'
          Dst:             raw_ctz
        - Src:             'lib/dpif-netdev.c:2518,39'
          Dst:             dp_netdev_flow_cast
        - Src:             'lib/dpif-netdev.c:2519,25'
          Dst:             dp_netdev_flow_hash
        - Src:             'lib/dpif-netdev.c:2521,9'
          Dst:             smc_insert
    - functionName:    emc_probabilistic_insert_batch
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2497
      functionLinenumberEnd: 2506
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          55
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_netdev_flow_cast
        - emc_probabilistic_insert
        - raw_ctz
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev.c:2499,22'
          Dst:             raw_ctz
        - Src:             'lib/dpif-netdev.c:2502,39'
          Dst:             dp_netdev_flow_cast
        - Src:             'lib/dpif-netdev.c:2504,9'
          Dst:             emc_probabilistic_insert
    - functionName:    ovs_list_insert
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 169
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_list_push_back
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 204
      functionLinenumberEnd: 206
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_list_insert
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/list.h:205,5'
          Dst:             ovs_list_insert
    - functionName:    ovs_list_remove
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 251
      functionLinenumberEnd: 254
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          25
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    fat_rwlock_unlock
      functionSourceFile: '/src/openvswitch/lib/fat-rwlock.c'
      linkageType:     InternalLinkage
      functionLinenumber: 255
      functionLinenumberEnd: 280
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         16
      ICount:          99
      EdgeCount:       16
      CyclomaticComplexity: 2
      functionsReached:
        - abort
        - fat_rwlock_get_slot__
        - ovs_mutex_unlock
      functionUses:    14
      BranchProfiles:
        - Branch String:   'lib/fat-rwlock.c:260,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/fat-rwlock.c:257,36'
          Dst:             fat_rwlock_get_slot__
        - Src:             'lib/fat-rwlock.c:263,13'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/fat-rwlock.c:265,9'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/fat-rwlock.c:271,9'
          Dst:             abort
        - Src:             'lib/fat-rwlock.c:274,9'
          Dst:             ovs_mutex_unlock
    - functionName:    fat_rwlock_get_slot__
      functionSourceFile: '/src/openvswitch/lib/fat-rwlock.c'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 140
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          64
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_list_push_back
        - ovs_mutex_init
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovsthread_getspecific
        - ovsthread_setspecific
        - xmalloc_cacheline
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/fat-rwlock.c:121,12'
          Dst:             ovsthread_getspecific
        - Src:             'lib/fat-rwlock.c:128,12'
          Dst:             xmalloc_cacheline
        - Src:             'lib/fat-rwlock.c:130,5'
          Dst:             ovs_mutex_init
        - Src:             'lib/fat-rwlock.c:133,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/fat-rwlock.c:134,5'
          Dst:             ovs_list_push_back
        - Src:             'lib/fat-rwlock.c:135,5'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/fat-rwlock.c:137,5'
          Dst:             ovsthread_setspecific
    - functionName:    fat_rwlock_wrlock
      functionSourceFile: '/src/openvswitch/lib/fat-rwlock.c'
      linkageType:     InternalLinkage
      functionLinenumber: 234
      functionLinenumberEnd: 246
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          77
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - fat_rwlock_get_slot__
        - ovs_ignore
        - ovs_mutex_lock_at
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/fat-rwlock.c:236,36'
          Dst:             fat_rwlock_get_slot__
        - Src:             'lib/fat-rwlock.c:239,5'
          Dst:             ovs_ignore
        - Src:             'lib/fat-rwlock.c:242,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/fat-rwlock.c:244,9'
          Dst:             ovs_mutex_lock_at
    - functionName:    fat_rwlock_try_get_slot__
      functionSourceFile: '/src/openvswitch/lib/fat-rwlock.c'
      linkageType:     InternalLinkage
      functionLinenumber: 169
      functionLinenumberEnd: 192
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          72
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ovs_list_push_back
        - ovs_mutex_init
        - ovs_mutex_trylock_at
        - ovs_mutex_unlock
        - ovsthread_getspecific
        - ovsthread_setspecific
        - xmalloc_cacheline
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/fat-rwlock.c:173,12'
          Dst:             ovsthread_getspecific
        - Src:             'lib/fat-rwlock.c:180,10'
          Dst:             ovs_mutex_trylock_at
        - Src:             'lib/fat-rwlock.c:181,16'
          Dst:             xmalloc_cacheline
        - Src:             'lib/fat-rwlock.c:183,9'
          Dst:             ovs_mutex_init
        - Src:             'lib/fat-rwlock.c:186,9'
          Dst:             ovs_list_push_back
        - Src:             'lib/fat-rwlock.c:187,9'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/fat-rwlock.c:188,9'
          Dst:             ovsthread_setspecific
    - functionName:    fat_rwlock_tryrdlock
      functionSourceFile: '/src/openvswitch/lib/fat-rwlock.c'
      linkageType:     InternalLinkage
      functionLinenumber: 200
      functionLinenumberEnd: 225
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          75
      EdgeCount:       14
      CyclomaticComplexity: 3
      functionsReached:
        - fat_rwlock_try_get_slot__
        - ovs_mutex_trylock_at
      functionUses:    3
      BranchProfiles:
        - Branch String:   'lib/fat-rwlock.c:209,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/fat-rwlock.c:202,36'
          Dst:             fat_rwlock_try_get_slot__
        - Src:             'lib/fat-rwlock.c:214,17'
          Dst:             ovs_mutex_trylock_at
    - functionName:    fat_rwlock_rdlock
      functionSourceFile: '/src/openvswitch/lib/fat-rwlock.c'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 165
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          51
      EdgeCount:       14
      CyclomaticComplexity: 8
      functionsReached:
        - abort
        - fat_rwlock_get_slot__
        - ovs_mutex_lock_at
      functionUses:    3
      BranchProfiles:
        - Branch String:   'lib/fat-rwlock.c:153,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/fat-rwlock.c:151,36'
          Dst:             fat_rwlock_get_slot__
        - Src:             'lib/fat-rwlock.c:156,9'
          Dst:             abort
        - Src:             'lib/fat-rwlock.c:159,9'
          Dst:             ovs_mutex_lock_at
    - functionName:    free_slot
      functionSourceFile: '/src/openvswitch/lib/fat-rwlock.c'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 71
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         5
      ICount:          32
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - abort
        - free_cacheline
        - ovs_list_remove
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/fat-rwlock.c:66,9'
          Dst:             abort
        - Src:             'lib/fat-rwlock.c:69,5'
          Dst:             ovs_list_remove
        - Src:             'lib/fat-rwlock.c:70,5'
          Dst:             free_cacheline
    - functionName:    fat_rwlock_destroy
      functionSourceFile: '/src/openvswitch/lib/fat-rwlock.c'
      linkageType:     InternalLinkage
      functionLinenumber: 99
      functionLinenumberEnd: 113
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          73
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - free_slot
        - ovs_mutex_destroy
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovsthread_key_delete
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/fat-rwlock.c:105,5'
          Dst:             ovsthread_key_delete
        - Src:             'lib/fat-rwlock.c:107,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/fat-rwlock.c:109,9'
          Dst:             free_slot
        - Src:             'lib/fat-rwlock.c:111,5'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/fat-rwlock.c:112,5'
          Dst:             ovs_mutex_destroy
    - functionName:    ovs_list_init
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    slot_destructor
      functionSourceFile: '/src/openvswitch/lib/fat-rwlock.c'
      linkageType:     InternalLinkage
      functionLinenumber: 75
      functionLinenumberEnd: 82
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - free_slot
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/fat-rwlock.c:79,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/fat-rwlock.c:80,5'
          Dst:             free_slot
        - Src:             'lib/fat-rwlock.c:81,5'
          Dst:             ovs_mutex_unlock
    - functionName:    fat_rwlock_init
      functionSourceFile: '/src/openvswitch/lib/fat-rwlock.c'
      linkageType:     InternalLinkage
      functionLinenumber: 87
      functionLinenumberEnd: 93
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_list_init
        - ovs_mutex_init
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovsthread_key_create
        - slot_destructor
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/fat-rwlock.c:88,5'
          Dst:             ovsthread_key_create
        - Src:             'lib/fat-rwlock.c:88,5'
          Dst:             slot_destructor
        - Src:             'lib/fat-rwlock.c:89,5'
          Dst:             ovs_mutex_init
        - Src:             'lib/fat-rwlock.c:90,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/fat-rwlock.c:91,5'
          Dst:             ovs_list_init
        - Src:             'lib/fat-rwlock.c:92,5'
          Dst:             ovs_mutex_unlock
    - functionName:    hindex_pathological_init_coverage
      functionSourceFile: '/src/openvswitch/lib/hindex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26
      functionLinenumberEnd: 26
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hindex.c:26,1'
          Dst:             coverage_counter_register
    - functionName:    hindex_expand_init_coverage
      functionSourceFile: '/src/openvswitch/lib/hindex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27
      functionLinenumberEnd: 27
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hindex.c:27,1'
          Dst:             coverage_counter_register
    - functionName:    hindex_shrink_init_coverage
      functionSourceFile: '/src/openvswitch/lib/hindex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28
      functionLinenumberEnd: 28
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hindex.c:28,1'
          Dst:             coverage_counter_register
    - functionName:    hindex_reserve_init_coverage
      functionSourceFile: '/src/openvswitch/lib/hindex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 29
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hindex.c:29,1'
          Dst:             coverage_counter_register
    - functionName:    hindex_reserve_count
      functionSourceFile: '/src/openvswitch/lib/hindex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 29
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_hindex_reserve_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hindex.c:29,1'
          Dst:             counter_hindex_reserve_get
    - functionName:    counter_hindex_reserve_get
      functionSourceFile: '/src/openvswitch/lib/hindex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 29
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_hindex_reserve_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hindex.c:29,1'
          Dst:             counter_hindex_reserve_get_unsafe
    - functionName:    counter_hindex_reserve_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/hindex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 29
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hindex_shrink_count
      functionSourceFile: '/src/openvswitch/lib/hindex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28
      functionLinenumberEnd: 28
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_hindex_shrink_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hindex.c:28,1'
          Dst:             counter_hindex_shrink_get
    - functionName:    counter_hindex_shrink_get
      functionSourceFile: '/src/openvswitch/lib/hindex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28
      functionLinenumberEnd: 28
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_hindex_shrink_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hindex.c:28,1'
          Dst:             counter_hindex_shrink_get_unsafe
    - functionName:    counter_hindex_shrink_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/hindex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28
      functionLinenumberEnd: 28
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hindex_expand_count
      functionSourceFile: '/src/openvswitch/lib/hindex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27
      functionLinenumberEnd: 27
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_hindex_expand_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hindex.c:27,1'
          Dst:             counter_hindex_expand_get
    - functionName:    counter_hindex_expand_get
      functionSourceFile: '/src/openvswitch/lib/hindex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27
      functionLinenumberEnd: 27
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_hindex_expand_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hindex.c:27,1'
          Dst:             counter_hindex_expand_get_unsafe
    - functionName:    counter_hindex_expand_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/hindex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27
      functionLinenumberEnd: 27
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hindex_pathological_count
      functionSourceFile: '/src/openvswitch/lib/hindex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26
      functionLinenumberEnd: 26
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_hindex_pathological_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hindex.c:26,1'
          Dst:             counter_hindex_pathological_get
    - functionName:    counter_hindex_pathological_get
      functionSourceFile: '/src/openvswitch/lib/hindex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26
      functionLinenumberEnd: 26
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_hindex_pathological_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hindex.c:26,1'
          Dst:             counter_hindex_pathological_get_unsafe
    - functionName:    counter_hindex_pathological_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/hindex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26
      functionLinenumberEnd: 26
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hindex_pathological_add
      functionSourceFile: '/src/openvswitch/lib/hindex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26
      functionLinenumberEnd: 26
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_hindex_pathological_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hindex.c:26,1'
          Dst:             counter_hindex_pathological_get
    - functionName:    is_pow2
      functionSourceFile: '/src/openvswitch/./include/openvswitch/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 399
      functionLinenumberEnd: 400
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          26
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hindex_node_is_body
      functionSourceFile: '/src/openvswitch/lib/hindex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 201
      functionLinenumberEnd: 202
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          30
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hindex_head_node
      functionSourceFile: '/src/openvswitch/lib/hindex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 281
      functionLinenumberEnd: 287
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          39
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hindex_next
      functionSourceFile: '/src/openvswitch/lib/hindex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 318
      functionLinenumberEnd: 334
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          65
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - hindex_head_node
        - hindex_next__
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hindex.c:327,12'
          Dst:             hindex_head_node
        - Src:             'lib/hindex.c:333,12'
          Dst:             hindex_next__
    - functionName:    hindex_next__
      functionSourceFile: '/src/openvswitch/lib/hindex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 292
      functionLinenumberEnd: 301
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          51
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hindex_first
      functionSourceFile: '/src/openvswitch/lib/hindex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 307
      functionLinenumberEnd: 308
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hindex_next__
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hindex.c:308,12'
          Dst:             hindex_next__
    - functionName:    hindex_node_is_head
      functionSourceFile: '/src/openvswitch/lib/hindex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 211
      functionLinenumberEnd: 212
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hindex_node_is_body
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hindex.c:212,13'
          Dst:             hindex_node_is_body
    - functionName:    hindex_remove
      functionSourceFile: '/src/openvswitch/lib/hindex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 168
      functionLinenumberEnd: 192
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          118
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - hindex_node_is_head
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hindex.c:169,10'
          Dst:             hindex_node_is_head
    - functionName:    hindex_insert
      functionSourceFile: '/src/openvswitch/lib/hindex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 157
      functionLinenumberEnd: 162
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hindex_expand
        - hindex_insert_fast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hindex.c:158,5'
          Dst:             hindex_insert_fast
        - Src:             'lib/hindex.c:160,9'
          Dst:             hindex_expand
    - functionName:    hindex_insert_fast
      functionSourceFile: '/src/openvswitch/lib/hindex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 130
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          94
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - hindex_node_with_hash
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hindex.c:131,32'
          Dst:             hindex_node_with_hash
    - functionName:    hindex_expand
      functionSourceFile: '/src/openvswitch/lib/hindex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 92
      functionLinenumberEnd: 98
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hindex_calc_mask
        - hindex_expand_add
        - hindex_resize
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hindex.c:93,23'
          Dst:             hindex_calc_mask
        - Src:             'lib/hindex.c:95,9'
          Dst:             hindex_expand_add
        - Src:             'lib/hindex.c:96,9'
          Dst:             hindex_resize
    - functionName:    hindex_calc_mask
      functionSourceFile: '/src/openvswitch/lib/hindex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 259
      functionLinenumberEnd: 274
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          47
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hindex_expand_add
      functionSourceFile: '/src/openvswitch/lib/hindex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27
      functionLinenumberEnd: 27
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_hindex_expand_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hindex.c:27,1'
          Dst:             counter_hindex_expand_get
    - functionName:    hindex_resize
      functionSourceFile: '/src/openvswitch/lib/hindex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 218
      functionLinenumberEnd: 253
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          157
      EdgeCount:       26
      CyclomaticComplexity: 7
      functionsReached:
        - hindex_destroy
        - hindex_init
        - hindex_pathological_add
        - hindex_swap
        - is_pow2
        - ovs_ignore
        - xmalloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hindex.c:222,16'
          Dst:             is_pow2
        - Src:             'lib/hindex.c:222,5'
          Dst:             ovs_ignore
        - Src:             'lib/hindex.c:223,5'
          Dst:             ovs_ignore
        - Src:             'lib/hindex.c:225,5'
          Dst:             hindex_init
        - Src:             'lib/hindex.c:227,23'
          Dst:             xmalloc
        - Src:             'lib/hindex.c:247,13'
          Dst:             hindex_pathological_add
        - Src:             'lib/hindex.c:251,5'
          Dst:             hindex_swap
        - Src:             'lib/hindex.c:252,5'
          Dst:             hindex_destroy
    - functionName:    hindex_init
      functionSourceFile: '/src/openvswitch/lib/hindex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          20
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hindex_swap
      functionSourceFile: '/src/openvswitch/lib/hindex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 71
      functionLinenumberEnd: 77
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hindex_moved
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hindex.c:75,5'
          Dst:             hindex_moved
        - Src:             'lib/hindex.c:76,5'
          Dst:             hindex_moved
    - functionName:    hindex_destroy
      functionSourceFile: '/src/openvswitch/lib/hindex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45
      functionLinenumberEnd: 49
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          39
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hindex_moved
      functionSourceFile: '/src/openvswitch/lib/hindex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 83
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          25
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hindex_node_with_hash
      functionSourceFile: '/src/openvswitch/lib/hindex.h'
      linkageType:     InternalLinkage
      functionLinenumber: 168
      functionLinenumberEnd: 174
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          52
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hindex_reserve_add
      functionSourceFile: '/src/openvswitch/lib/hindex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 29
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_hindex_reserve_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hindex.c:29,1'
          Dst:             counter_hindex_reserve_get
    - functionName:    hindex_reserve
      functionSourceFile: '/src/openvswitch/lib/hindex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 117
      functionLinenumberEnd: 123
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hindex_calc_mask
        - hindex_reserve_add
        - hindex_resize
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hindex.c:118,23'
          Dst:             hindex_calc_mask
        - Src:             'lib/hindex.c:120,9'
          Dst:             hindex_reserve_add
        - Src:             'lib/hindex.c:121,9'
          Dst:             hindex_resize
    - functionName:    hindex_shrink_add
      functionSourceFile: '/src/openvswitch/lib/hindex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28
      functionLinenumberEnd: 28
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_hindex_shrink_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hindex.c:28,1'
          Dst:             counter_hindex_shrink_get
    - functionName:    hindex_shrink
      functionSourceFile: '/src/openvswitch/lib/hindex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 103
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hindex_calc_mask
        - hindex_resize
        - hindex_shrink_add
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hindex.c:104,23'
          Dst:             hindex_calc_mask
        - Src:             'lib/hindex.c:106,9'
          Dst:             hindex_shrink_add
        - Src:             'lib/hindex.c:107,9'
          Dst:             hindex_resize
    - functionName:    hindex_clear
      functionSourceFile: '/src/openvswitch/lib/hindex.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          32
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_next_with_hash__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 348
      functionLinenumberEnd: 352
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          40
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_next_with_hash
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 395
      functionLinenumberEnd: 396
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next_with_hash__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:396,12'
          Dst:             hmap_next_with_hash__
    - functionName:    hmap_first_with_hash
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 360
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next_with_hash__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:360,12'
          Dst:             hmap_next_with_hash__
    - functionName:    hmap_insert_fast
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 289
      functionLinenumberEnd: 295
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          38
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_rot
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 32
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhash_add__
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hash_rot
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:71,12'
          Dst:             hash_rot
    - functionName:    mhash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_rot
        - mhash_add__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:78,12'
          Dst:             mhash_add__
        - Src:             'lib/hash.h:79,12'
          Dst:             hash_rot
    - functionName:    mhash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 108
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_add
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:109,12'
          Dst:             mhash_add
    - functionName:    hash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:119,12'
          Dst:             mhash_finish
    - functionName:    hash_2words
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 153
      functionLinenumberEnd: 154
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_add
        - hash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:154,33'
          Dst:             hash_add
        - Src:             'lib/hash.h:154,24'
          Dst:             hash_add
        - Src:             'lib/hash.h:154,12'
          Dst:             hash_finish
    - functionName:    hmap_pop_helper__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 226
      functionLinenumberEnd: 238
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          66
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - hmap_remove
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:232,13'
          Dst:             hmap_remove
    - functionName:    hmap_remove
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 317
      functionLinenumberEnd: 324
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          48
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    id_pool_free_id
      functionSourceFile: '/src/openvswitch/lib/id-pool.c'
      linkageType:     InternalLinkage
      functionLinenumber: 147
      functionLinenumberEnd: 159
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          81
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - hmap_remove
        - id_pool_find
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/id-pool.c:150,19'
          Dst:             id_pool_find
        - Src:             'lib/id-pool.c:152,13'
          Dst:             hmap_remove
    - functionName:    id_pool_find
      functionSourceFile: '/src/openvswitch/lib/id-pool.c'
      linkageType:     InternalLinkage
      functionLinenumber: 85
      functionLinenumberEnd: 96
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          75
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hash_int
        - hmap_first_with_hash
        - hmap_next_with_hash
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/id-pool.c:89,12'
          Dst:             hash_int
        - Src:             'lib/id-pool.c:90,5'
          Dst:             hmap_first_with_hash
        - Src:             'lib/id-pool.c:90,5'
          Dst:             hmap_next_with_hash
    - functionName:    hash_int
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 408
      functionLinenumberEnd: 409
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_2words
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:409,12'
          Dst:             hash_2words
    - functionName:    id_pool_alloc_id
      functionSourceFile: '/src/openvswitch/lib/id-pool.c'
      linkageType:     InternalLinkage
      functionLinenumber: 111
      functionLinenumberEnd: 143
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          121
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - id_pool_add
        - id_pool_find
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/id-pool.c:118,11'
          Dst:             id_pool_find
        - Src:             'lib/id-pool.c:124,14'
          Dst:             id_pool_find
        - Src:             'lib/id-pool.c:133,5'
          Dst:             id_pool_add
    - functionName:    id_pool_add
      functionSourceFile: '/src/openvswitch/lib/id-pool.c'
      linkageType:     InternalLinkage
      functionLinenumber: 100
      functionLinenumberEnd: 107
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_int
        - hmap_insert_at
        - xmalloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/id-pool.c:101,31'
          Dst:             xmalloc
        - Src:             'lib/id-pool.c:105,12'
          Dst:             hash_int
        - Src:             'lib/id-pool.c:106,5'
          Dst:             hmap_insert_at
    - functionName:    hmap_insert_at
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 306
      functionLinenumberEnd: 311
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_expand_at
        - hmap_insert_fast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:307,5'
          Dst:             hmap_insert_fast
        - Src:             './include/openvswitch/hmap.h:309,9'
          Dst:             hmap_expand_at
    - functionName:    id_pool_uninit
      functionSourceFile: '/src/openvswitch/lib/id-pool.c'
      linkageType:     InternalLinkage
      functionLinenumber: 73
      functionLinenumberEnd: 81
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          52
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - hmap_destroy
        - hmap_pop_helper__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/id-pool.c:76,5'
          Dst:             hmap_pop_helper__
        - Src:             'lib/id-pool.c:80,5'
          Dst:             hmap_destroy
    - functionName:    id_pool_destroy
      functionSourceFile: '/src/openvswitch/lib/id-pool.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 58
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          28
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - id_pool_uninit
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/id-pool.c:55,9'
          Dst:             id_pool_uninit
    - functionName:    id_pool_init
      functionSourceFile: '/src/openvswitch/lib/id-pool.c'
      linkageType:     InternalLinkage
      functionLinenumber: 62
      functionLinenumberEnd: 69
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          38
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_init
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/id-pool.c:63,5'
          Dst:             ovs_ignore
        - Src:             'lib/id-pool.c:68,5'
          Dst:             hmap_init
    - functionName:    id_pool_create
      functionSourceFile: '/src/openvswitch/lib/id-pool.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42
      functionLinenumberEnd: 48
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - id_pool_init
        - xmalloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/id-pool.c:45,12'
          Dst:             xmalloc
        - Src:             'lib/id-pool.c:46,5'
          Dst:             id_pool_init
    - functionName:    init_this_module_ipf
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 38
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ipf.c:38,1'
          Dst:             vlog_insert_module
    - functionName:    ipf_stuck_frag_list_expired_init_coverage
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ipf.c:39,1'
          Dst:             coverage_counter_register
    - functionName:    ipf_stuck_frag_list_purged_init_coverage
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40
      functionLinenumberEnd: 40
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ipf.c:40,1'
          Dst:             coverage_counter_register
    - functionName:    ipf_l3csum_checked_init_coverage
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41
      functionLinenumberEnd: 41
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ipf.c:41,1'
          Dst:             coverage_counter_register
    - functionName:    ipf_l3csum_err_init_coverage
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42
      functionLinenumberEnd: 42
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ipf.c:42,1'
          Dst:             coverage_counter_register
    - functionName:    ipf_l3csum_err_count
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42
      functionLinenumberEnd: 42
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_ipf_l3csum_err_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ipf.c:42,1'
          Dst:             counter_ipf_l3csum_err_get
    - functionName:    counter_ipf_l3csum_err_get
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42
      functionLinenumberEnd: 42
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_ipf_l3csum_err_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ipf.c:42,1'
          Dst:             counter_ipf_l3csum_err_get_unsafe
    - functionName:    counter_ipf_l3csum_err_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42
      functionLinenumberEnd: 42
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ipf_l3csum_checked_count
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41
      functionLinenumberEnd: 41
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_ipf_l3csum_checked_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ipf.c:41,1'
          Dst:             counter_ipf_l3csum_checked_get
    - functionName:    counter_ipf_l3csum_checked_get
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41
      functionLinenumberEnd: 41
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_ipf_l3csum_checked_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ipf.c:41,1'
          Dst:             counter_ipf_l3csum_checked_get_unsafe
    - functionName:    counter_ipf_l3csum_checked_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41
      functionLinenumberEnd: 41
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ipf_stuck_frag_list_purged_count
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40
      functionLinenumberEnd: 40
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_ipf_stuck_frag_list_purged_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ipf.c:40,1'
          Dst:             counter_ipf_stuck_frag_list_purged_get
    - functionName:    counter_ipf_stuck_frag_list_purged_get
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40
      functionLinenumberEnd: 40
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_ipf_stuck_frag_list_purged_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ipf.c:40,1'
          Dst:             counter_ipf_stuck_frag_list_purged_get_unsafe
    - functionName:    counter_ipf_stuck_frag_list_purged_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40
      functionLinenumberEnd: 40
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ipf_stuck_frag_list_expired_count
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_ipf_stuck_frag_list_expired_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ipf.c:39,1'
          Dst:             counter_ipf_stuck_frag_list_expired_get
    - functionName:    counter_ipf_stuck_frag_list_expired_get
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_ipf_stuck_frag_list_expired_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ipf.c:39,1'
          Dst:             counter_ipf_stuck_frag_list_expired_get_unsafe
    - functionName:    counter_ipf_stuck_frag_list_expired_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    free_afxdp_buf
      functionSourceFile: '/src/openvswitch/lib/netdev-afxdp.h'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 84
      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:    free_dpdk_buf
      functionSourceFile: '/src/openvswitch/lib/netdev-dpdk.h'
      linkageType:     InternalLinkage
      functionLinenumber: 74
      functionLinenumberEnd: 76
      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:    ipf_expiry_list_clean
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 277
      functionLinenumberEnd: 279
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ipf_list_clean
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ipf.c:278,5'
          Dst:             ipf_list_clean
    - functionName:    ipf_list_clean
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 264
      functionLinenumberEnd: 269
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_remove
        - ovs_list_remove
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ipf.c:265,5'
          Dst:             ovs_list_remove
        - Src:             'lib/ipf.c:266,5'
          Dst:             hmap_remove
    - functionName:    ovs_list_remove
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 251
      functionLinenumberEnd: 254
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          25
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_remove
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 317
      functionLinenumberEnd: 324
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          48
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ipf_stuck_frag_list_expired_add
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_ipf_stuck_frag_list_expired_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ipf.c:39,1'
          Dst:             counter_ipf_stuck_frag_list_expired_get
    - functionName:    ipf_stuck_frag_list_purged_add
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40
      functionLinenumberEnd: 40
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_ipf_stuck_frag_list_purged_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ipf.c:40,1'
          Dst:             counter_ipf_stuck_frag_list_purged_get
    - functionName:    ipf_purge_list_check
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 997
      functionLinenumberEnd: 1018
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          85
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - atomic_count_dec
        - dp_packet_delete
        - htons
        - ipf_count
        - ipf_stuck_frag_list_purged_add
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ipf.c:1009,9'
          Dst:             dp_packet_delete
        - Src:             'lib/ipf.c:1010,9'
          Dst:             atomic_count_dec
        - Src:             'lib/ipf.c:1011,9'
          Dst:             ipf_stuck_frag_list_purged_add
        - Src:             'lib/ipf.c:1012,49'
          Dst:             htons
        - Src:             'lib/ipf.c:1012,9'
          Dst:             ipf_count
    - functionName:    dp_packet_delete
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 271
      functionLinenumberEnd: 290
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          54
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - dp_packet_uninit
        - free_afxdp_buf
        - free_dpdk_buf
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:274,13'
          Dst:             free_dpdk_buf
        - Src:             'lib/dp-packet.h:279,13'
          Dst:             free_afxdp_buf
        - Src:             'lib/dp-packet.h:283,9'
          Dst:             dp_packet_uninit
    - functionName:    atomic_count_dec
      functionSourceFile: '/src/openvswitch/lib/ovs-atomic.h'
      linkageType:     InternalLinkage
      functionLinenumber: 461
      functionLinenumberEnd: 466
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ipf_count
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 190
      functionLinenumberEnd: 192
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - bool
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - atomic_count_inc64
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ipf.c:191,5'
          Dst:             atomic_count_inc64
    - functionName:    atomic_count_inc64
      functionSourceFile: '/src/openvswitch/lib/ovs-atomic.h'
      linkageType:     InternalLinkage
      functionLinenumber: 487
      functionLinenumberEnd: 492
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          17
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ipf_completed_list_clean
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 287
      functionLinenumberEnd: 289
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ipf_list_clean
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ipf.c:288,5'
          Dst:             ipf_list_clean
    - functionName:    ipf_send_frags_in_list
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1026
      functionLinenumberEnd: 1039
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          76
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - atomic_count_dec
        - dp_packet_batch_add
        - ipf_count
        - ipf_purge_list_check
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ipf.c:1027,9'
          Dst:             ipf_purge_list_check
        - Src:             'lib/ipf.c:1034,9'
          Dst:             dp_packet_batch_add
        - Src:             'lib/ipf.c:1035,9'
          Dst:             atomic_count_dec
        - Src:             'lib/ipf.c:1036,9'
          Dst:             ipf_count
    - functionName:    dp_packet_batch_add
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 889
      functionLinenumberEnd: 894
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_batch_grow
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:891,9'
          Dst:             dp_packet_batch_grow
    - functionName:    ipf_reassembled_list_remove
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 301
      functionLinenumberEnd: 303
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_list_remove
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ipf.c:302,5'
          Dst:             ovs_list_remove
    - functionName:    ipf_completed_list_add
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 244
      functionLinenumberEnd: 246
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_list_push_back
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ipf.c:245,5'
          Dst:             ovs_list_push_back
    - functionName:    ovs_list_push_back
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 204
      functionLinenumberEnd: 206
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_list_insert
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/list.h:205,5'
          Dst:             ovs_list_insert
    - functionName:    ovs_list_insert
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 169
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ipf_list_is_empty_unsafe
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 317
      functionLinenumberEnd: 318
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_list_is_empty
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ipf.c:318,12'
          Dst:             ovs_list_is_empty
    - functionName:    ovs_list_is_empty
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 320
      functionLinenumberEnd: 321
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_ip_checksum_set_partial
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1173
      functionLinenumberEnd: 1175
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_ip_checksum_valid
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1191
      functionLinenumberEnd: 1192
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_set_l2_pad_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 438
      functionLinenumberEnd: 441
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_size
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:439,28'
          Dst:             dp_packet_size
        - Src:             'lib/dp-packet.h:439,5'
          Dst:             ovs_ignore
    - functionName:    dp_packet_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 762
      functionLinenumberEnd: 763
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ipf_print_reass_packet
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 178
      functionLinenumberEnd: 186
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          51
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - ds_cstr
        - ds_destroy
        - ds_put_hex_dump
        - vlog
        - vlog_should_drop
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ipf.c:180,10'
          Dst:             vlog_should_drop
        - Src:             'lib/ipf.c:182,9'
          Dst:             ds_put_hex_dump
        - Src:             'lib/ipf.c:183,9'
          Dst:             ds_cstr
        - Src:             'lib/ipf.c:183,9'
          Dst:             vlog
        - Src:             'lib/ipf.c:184,9'
          Dst:             ds_destroy
    - functionName:    dp_packet_set_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 768
      functionLinenumberEnd: 770
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ipf_expiry_list_remove
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 294
      functionLinenumberEnd: 296
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_list_remove
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ipf.c:295,5'
          Dst:             ovs_list_remove
    - functionName:    ipf_reassembled_list_add
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 254
      functionLinenumberEnd: 256
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_list_push_back
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ipf.c:255,5'
          Dst:             ovs_list_push_back
    - functionName:    ipf_reassemble_v4_frags
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 426
      functionLinenumberEnd: 468
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          207
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - dp_packet_clone
        - dp_packet_delete
        - dp_packet_ip_checksum_set_partial
        - dp_packet_ip_checksum_valid
        - dp_packet_l2_pad_size
        - dp_packet_l3
        - dp_packet_l4
        - dp_packet_prealloc_tailroom
        - dp_packet_put
        - dp_packet_set_l2_pad_size
        - dp_packet_set_size
        - dp_packet_size
        - htons
        - ipf_print_reass_packet
        - ntohs
        - recalc_csum16
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ipf.c:428,29'
          Dst:             dp_packet_clone
        - Src:             'lib/ipf.c:429,29'
          Dst:             dp_packet_size
        - Src:             'lib/ipf.c:429,51'
          Dst:             dp_packet_l2_pad_size
        - Src:             'lib/ipf.c:429,5'
          Dst:             dp_packet_set_size
        - Src:             'lib/ipf.c:430,28'
          Dst:             dp_packet_l3
        - Src:             'lib/ipf.c:431,15'
          Dst:             ntohs
        - Src:             'lib/ipf.c:432,20'
          Dst:             dp_packet_size
        - Src:             'lib/ipf.c:438,9'
          Dst:             ipf_print_reass_packet
        - Src:             'lib/ipf.c:440,9'
          Dst:             dp_packet_delete
        - Src:             'lib/ipf.c:444,5'
          Dst:             dp_packet_prealloc_tailroom
        - Src:             'lib/ipf.c:449,26'
          Dst:             dp_packet_l4
        - Src:             'lib/ipf.c:450,9'
          Dst:             dp_packet_put
        - Src:             'lib/ipf.c:454,10'
          Dst:             dp_packet_l3
        - Src:             'lib/ipf.c:455,51'
          Dst:             htons
        - Src:             'lib/ipf.c:456,9'
          Dst:             dp_packet_ip_checksum_valid
        - Src:             'lib/ipf.c:457,9'
          Dst:             dp_packet_ip_checksum_set_partial
        - Src:             'lib/ipf.c:459,23'
          Dst:             recalc_csum16
        - Src:             'lib/ipf.c:461,66'
          Dst:             htons
        - Src:             'lib/ipf.c:461,23'
          Dst:             recalc_csum16
        - Src:             'lib/ipf.c:463,22'
          Dst:             htons
        - Src:             'lib/ipf.c:465,5'
          Dst:             dp_packet_set_l2_pad_size
    - functionName:    dp_packet_l2_pad_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 432
      functionLinenumberEnd: 433
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_l3
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 461
      functionLinenumberEnd: 463
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_data
      functionUses:    15
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:463,23'
          Dst:             dp_packet_data
    - functionName:    dp_packet_l4
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 475
      functionLinenumberEnd: 477
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_data
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:477,23'
          Dst:             dp_packet_data
    - functionName:    dp_packet_data
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 845
      functionLinenumberEnd: 847
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __packet_data
        - dp_packet_base
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:846,12'
          Dst:             __packet_data
        - Src:             'lib/dp-packet.h:847,23'
          Dst:             dp_packet_base
        - Src:             'lib/dp-packet.h:847,43'
          Dst:             __packet_data
    - functionName:    __packet_data
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 774
      functionLinenumberEnd: 775
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_base
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 750
      functionLinenumberEnd: 751
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ipf_reassemble_v6_frags
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 476
      functionLinenumberEnd: 527
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         17
      ICount:          217
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - dp_packet_clone
        - dp_packet_delete
        - dp_packet_l2_pad_size
        - dp_packet_l3
        - dp_packet_l4
        - dp_packet_prealloc_tailroom
        - dp_packet_put
        - dp_packet_set_l2_pad_size
        - dp_packet_set_size
        - dp_packet_size
        - htons
        - ipf_print_reass_packet
        - ntohs
        - parse_ipv6_ext_hdrs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ipf.c:478,29'
          Dst:             dp_packet_clone
        - Src:             'lib/ipf.c:479,29'
          Dst:             dp_packet_size
        - Src:             'lib/ipf.c:479,51'
          Dst:             dp_packet_l2_pad_size
        - Src:             'lib/ipf.c:479,5'
          Dst:             dp_packet_set_size
        - Src:             'lib/ipf.c:480,41'
          Dst:             dp_packet_l3
        - Src:             'lib/ipf.c:481,14'
          Dst:             ntohs
        - Src:             'lib/ipf.c:482,20'
          Dst:             dp_packet_size
        - Src:             'lib/ipf.c:488,9'
          Dst:             ipf_print_reass_packet
        - Src:             'lib/ipf.c:490,9'
          Dst:             dp_packet_delete
        - Src:             'lib/ipf.c:494,5'
          Dst:             dp_packet_prealloc_tailroom
        - Src:             'lib/ipf.c:499,26'
          Dst:             dp_packet_l4
        - Src:             'lib/ipf.c:500,9'
          Dst:             dp_packet_put
        - Src:             'lib/ipf.c:504,10'
          Dst:             dp_packet_l3
        - Src:             'lib/ipf.c:512,10'
          Dst:             parse_ipv6_ext_hdrs
        - Src:             'lib/ipf.c:515,9'
          Dst:             ipf_print_reass_packet
        - Src:             'lib/ipf.c:516,9'
          Dst:             dp_packet_delete
        - Src:             'lib/ipf.c:523,20'
          Dst:             htons
        - Src:             'lib/ipf.c:525,5'
          Dst:             dp_packet_set_l2_pad_size
    - functionName:    ipf_list_complete
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 393
      functionLinenumberEnd: 401
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          59
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ipf_sort
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 407
      functionLinenumberEnd: 418
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          88
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ipf_list_state_transition
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 536
      functionLinenumberEnd: 596
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - bool
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         40
      ICount:          201
      EdgeCount:       46
      CyclomaticComplexity: 8
      functionsReached:
        - abort
        - ipf_expiry_list_remove
        - ipf_list_complete
        - ipf_reassemble_v4_frags
        - ipf_reassemble_v6_frags
        - ipf_reassembled_list_add
        - ipf_sort
        - xzalloc
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ipf.c:540,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ipf.c:572,9'
          Dst:             abort
        - Src:             'lib/ipf.c:576,9'
          Dst:             ipf_sort
        - Src:             'lib/ipf.c:577,13'
          Dst:             ipf_list_complete
        - Src:             'lib/ipf.c:579,19'
          Dst:             ipf_reassemble_v6_frags
        - Src:             'lib/ipf.c:580,19'
          Dst:             ipf_reassemble_v4_frags
        - Src:             'lib/ipf.c:582,46'
          Dst:             xzalloc
        - Src:             'lib/ipf.c:585,17'
          Dst:             ipf_reassembled_list_add
        - Src:             'lib/ipf.c:586,17'
          Dst:             ipf_expiry_list_remove
    - functionName:    atomic_count_inc
      functionSourceFile: '/src/openvswitch/lib/ovs-atomic.h'
      linkageType:     InternalLinkage
      functionLinenumber: 451
      functionLinenumberEnd: 456
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ipf_is_frag_duped
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 813
      functionLinenumberEnd: 823
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          105
      EdgeCount:       21
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_insert_fast
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 289
      functionLinenumberEnd: 295
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          38
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_next_with_hash__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 348
      functionLinenumberEnd: 352
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          40
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_next_with_hash
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 395
      functionLinenumberEnd: 396
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next_with_hash__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:396,12'
          Dst:             hmap_next_with_hash__
    - functionName:    ipf_list_key_eq
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 782
      functionLinenumberEnd: 793
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          119
      EdgeCount:       26
      CyclomaticComplexity: 9
      functionsReached:
        - memcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ipf.c:783,10'
          Dst:             memcmp
        - Src:             'lib/ipf.c:784,10'
          Dst:             memcmp
    - functionName:    hmap_first_with_hash
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 360
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next_with_hash__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:360,12'
          Dst:             hmap_next_with_hash__
    - functionName:    mhash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:119,12'
          Dst:             mhash_finish
    - functionName:    hash_words_inline
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 129
      functionLinenumberEnd: 130
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_add_words
        - hash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:130,24'
          Dst:             hash_add_words
        - Src:             'lib/hash.h:130,12'
          Dst:             hash_finish
    - functionName:    hash_add_words
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 428
      functionLinenumberEnd: 432
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          44
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - hash_add
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:430,16'
          Dst:             hash_add
    - functionName:    hash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 108
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_add
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:109,12'
          Dst:             mhash_add
    - functionName:    mhash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_rot
        - mhash_add__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:78,12'
          Dst:             mhash_add__
        - Src:             'lib/hash.h:79,12'
          Dst:             hash_rot
    - functionName:    mhash_add__
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hash_rot
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:71,12'
          Dst:             hash_rot
    - functionName:    hash_rot
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 32
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_add_bytes32
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 446
      functionLinenumberEnd: 447
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_add_words
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:447,12'
          Dst:             hash_add_words
    - functionName:    hash_words
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 357
      functionLinenumberEnd: 363
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hash_words__
        - hash_words_inline
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:359,16'
          Dst:             hash_words_inline
        - Src:             'lib/hash.h:361,16'
          Dst:             hash_words__
    - functionName:    ipf_addr_hash_add
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 218
      functionLinenumberEnd: 220
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_add_bytes32
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ipf.c:220,12'
          Dst:             hash_add_bytes32
    - functionName:    be16_to_be32
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 130
      functionLinenumberEnd: 130
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ipf_is_first_v4_frag
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 340
      functionLinenumberEnd: 347
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          54
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - dp_packet_l3
        - htons
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ipf.c:341,34'
          Dst:             dp_packet_l3
        - Src:             'lib/ipf.c:342,29'
          Dst:             htons
        - Src:             'lib/ipf.c:343,27'
          Dst:             htons
    - functionName:    get_16aligned_be32
      functionSourceFile: '/src/openvswitch/lib/unaligned.h'
      linkageType:     InternalLinkage
      functionLinenumber: 246
      functionLinenumberEnd: 250
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ipf_is_first_v6_frag
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 371
      functionLinenumberEnd: 377
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          35
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_l4_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 502
      functionLinenumberEnd: 505
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_l2_pad_size
        - dp_packet_l4
        - dp_packet_tail
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:504,25'
          Dst:             dp_packet_tail
        - Src:             'lib/dp-packet.h:504,59'
          Dst:             dp_packet_l4
        - Src:             'lib/dp-packet.h:505,11'
          Dst:             dp_packet_l2_pad_size
    - functionName:    dp_packet_tail
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 326
      functionLinenumberEnd: 327
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_data
        - dp_packet_size
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:327,21'
          Dst:             dp_packet_data
        - Src:             'lib/dp-packet.h:327,41'
          Dst:             dp_packet_size
    - functionName:    ipf_process_frag
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 835
      functionLinenumberEnd: 859
      functionDepth:   0
      returnType:      bool
      argCount:        9
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - short
        - short
        - bool
        - bool
        - bool
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          134
      EdgeCount:       11
      CyclomaticComplexity: 3
      functionsReached:
        - abort
        - atomic_count_inc
        - ipf_count
        - ipf_is_frag_duped
        - ipf_list_state_transition
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ipf.c:836,23'
          Dst:             ipf_is_frag_duped
        - Src:             'lib/ipf.c:847,13'
          Dst:             atomic_count_inc
        - Src:             'lib/ipf.c:848,13'
          Dst:             ipf_count
        - Src:             'lib/ipf.c:849,19'
          Dst:             ipf_list_state_transition
        - Src:             'lib/ipf.c:851,13'
          Dst:             abort
        - Src:             'lib/ipf.c:854,9'
          Dst:             ipf_count
    - functionName:    ipf_expiry_list_add
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 229
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_list_push_back
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ipf.c:235,5'
          Dst:             ovs_list_push_back
    - functionName:    hmap_insert_at
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 306
      functionLinenumberEnd: 311
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_expand_at
        - hmap_insert_fast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:307,5'
          Dst:             hmap_insert_fast
        - Src:             './include/openvswitch/hmap.h:309,9'
          Dst:             hmap_expand_at
    - functionName:    ipf_list_init
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 864
      functionLinenumberEnd: 873
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - xzalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ipf.c:872,11'
          Dst:             xzalloc
    - functionName:    ipf_list_key_lookup
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 799
      functionLinenumberEnd: 807
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          71
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_first_with_hash
        - hmap_next_with_hash
        - ipf_list_key_eq
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ipf.c:801,5'
          Dst:             hmap_first_with_hash
        - Src:             'lib/ipf.c:802,13'
          Dst:             ipf_list_key_eq
        - Src:             'lib/ipf.c:801,5'
          Dst:             hmap_next_with_hash
    - functionName:    ipf_list_key_hash
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 324
      functionLinenumberEnd: 335
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          49
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_words
        - ipf_addr_hash_add
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ipf.c:327,12'
          Dst:             ipf_addr_hash_add
        - Src:             'lib/ipf.c:328,12'
          Dst:             ipf_addr_hash_add
        - Src:             'lib/ipf.c:332,12'
          Dst:             hash_words
    - functionName:    ipf_v4_key_extract
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 667
      functionLinenumberEnd: 684
      functionDepth:   0
      returnType:      bool
      argCount:        8
      argTypes:
        - 'N/A'
        - short
        - short
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          126
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - be16_to_be32
        - dp_packet_l3
        - get_16aligned_be32
        - htons
        - ipf_is_first_v4_frag
        - ipf_is_last_v4_frag
        - ntohs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ipf.c:668,34'
          Dst:             dp_packet_l3
        - Src:             'lib/ipf.c:669,27'
          Dst:             ntohs
        - Src:             'lib/ipf.c:672,48'
          Dst:             htons
        - Src:             'lib/ipf.c:672,24'
          Dst:             ntohs
        - Src:             'lib/ipf.c:674,11'
          Dst:             ipf_is_first_v4_frag
        - Src:             'lib/ipf.c:675,11'
          Dst:             ipf_is_last_v4_frag
        - Src:             'lib/ipf.c:677,18'
          Dst:             be16_to_be32
        - Src:             'lib/ipf.c:679,26'
          Dst:             get_16aligned_be32
        - Src:             'lib/ipf.c:680,26'
          Dst:             get_16aligned_be32
    - functionName:    ipf_is_last_v4_frag
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 351
      functionLinenumberEnd: 358
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          54
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - dp_packet_l3
        - htons
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ipf.c:352,34'
          Dst:             dp_packet_l3
        - Src:             'lib/ipf.c:353,27'
          Dst:             htons
        - Src:             'lib/ipf.c:354,29'
          Dst:             htons
    - functionName:    ipf_v6_key_extract
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 749
      functionLinenumberEnd: 776
      functionDepth:   0
      returnType:      void
      argCount:        8
      argTypes:
        - 'N/A'
        - short
        - short
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          139
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_l3
        - dp_packet_l3_size
        - dp_packet_l4_size
        - get_16aligned_be32
        - ipf_is_first_v6_frag
        - ipf_is_last_v6_frag
        - ntohs
        - ovs_ignore
        - parse_ipv6_ext_hdrs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ipf.c:750,46'
          Dst:             dp_packet_l3
        - Src:             'lib/ipf.c:754,23'
          Dst:             dp_packet_l3_size
        - Src:             'lib/ipf.c:757,5'
          Dst:             parse_ipv6_ext_hdrs
        - Src:             'lib/ipf.c:759,5'
          Dst:             ovs_ignore
        - Src:             'lib/ipf.c:761,24'
          Dst:             ntohs
        - Src:             'lib/ipf.c:763,41'
          Dst:             dp_packet_l4_size
        - Src:             'lib/ipf.c:764,11'
          Dst:             ipf_is_first_v6_frag
        - Src:             'lib/ipf.c:765,11'
          Dst:             ipf_is_last_v6_frag
        - Src:             'lib/ipf.c:767,18'
          Dst:             get_16aligned_be32
    - functionName:    dp_packet_l3_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 491
      functionLinenumberEnd: 494
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_l2_pad_size
        - dp_packet_l3
        - dp_packet_tail
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:493,25'
          Dst:             dp_packet_tail
        - Src:             'lib/dp-packet.h:493,59'
          Dst:             dp_packet_l3
        - Src:             'lib/dp-packet.h:494,11'
          Dst:             dp_packet_l2_pad_size
    - functionName:    ipf_is_last_v6_frag
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 381
      functionLinenumberEnd: 387
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          35
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ipf_is_v6_frag
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 362
      functionLinenumberEnd: 367
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          24
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_is_eth
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 397
      functionLinenumberEnd: 398
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - htonl
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:398,30'
          Dst:             htonl
    - functionName:    ipf_l3csum_err_add
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42
      functionLinenumberEnd: 42
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_ipf_l3csum_err_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ipf.c:42,1'
          Dst:             counter_ipf_l3csum_err_get
    - functionName:    dp_packet_ip_checksum_set_good
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1142
      functionLinenumberEnd: 1145
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_ip_checksum_set_bad
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1156
      functionLinenumberEnd: 1159
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ipf_l3csum_checked_add
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41
      functionLinenumberEnd: 41
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_ipf_l3csum_checked_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ipf.c:41,1'
          Dst:             counter_ipf_l3csum_checked_get
    - functionName:    dp_packet_ip_checksum_unknown
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1179
      functionLinenumberEnd: 1180
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_ip_checksum_bad
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1149
      functionLinenumberEnd: 1151
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_eth
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 405
      functionLinenumberEnd: 407
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          39
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - dp_packet_data
        - dp_packet_is_eth
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:406,13'
          Dst:             dp_packet_is_eth
        - Src:             'lib/dp-packet.h:407,15'
          Dst:             dp_packet_data
    - functionName:    ipf_handle_frag
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 885
      functionLinenumberEnd: 953
      functionDepth:   0
      returnType:      bool
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - short
        - short
        - size_t
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         42
      ICount:          288
      EdgeCount:       55
      CyclomaticComplexity: 15
      functionsReached:
        - atomic_count_get
        - hmap_insert_at
        - htons
        - ipf_expiry_list_add
        - ipf_get_v4_enabled
        - ipf_get_v6_enabled
        - ipf_list_init
        - ipf_list_key_hash
        - ipf_list_key_lookup
        - ipf_process_frag
        - ipf_v4_key_extract
        - ipf_v6_key_extract
        - xmalloc
        - xrealloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ipf.c:892,26'
          Dst:             htons
        - Src:             'lib/ipf.c:894,15'
          Dst:             ipf_get_v6_enabled
        - Src:             'lib/ipf.c:895,9'
          Dst:             ipf_v6_key_extract
        - Src:             'lib/ipf.c:897,23'
          Dst:             ipf_get_v4_enabled
        - Src:             'lib/ipf.c:898,9'
          Dst:             ipf_v4_key_extract
        - Src:             'lib/ipf.c:906,9'
          Dst:             atomic_count_get
        - Src:             'lib/ipf.c:910,21'
          Dst:             ipf_list_key_hash
        - Src:             'lib/ipf.c:911,33'
          Dst:             ipf_list_key_lookup
        - Src:             'lib/ipf.c:928,20'
          Dst:             xmalloc
        - Src:             'lib/ipf.c:929,9'
          Dst:             ipf_list_init
        - Src:             'lib/ipf.c:931,9'
          Dst:             hmap_insert_at
        - Src:             'lib/ipf.c:932,9'
          Dst:             ipf_expiry_list_add
        - Src:             'lib/ipf.c:943,17'
          Dst:             xrealloc
        - Src:             'lib/ipf.c:951,12'
          Dst:             ipf_process_frag
    - functionName:    ipf_get_v6_enabled
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 204
      functionLinenumberEnd: 207
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ipf_get_v4_enabled
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 196
      functionLinenumberEnd: 199
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    atomic_count_get
      functionSourceFile: '/src/openvswitch/lib/ovs-atomic.h'
      linkageType:     InternalLinkage
      functionLinenumber: 471
      functionLinenumberEnd: 476
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ipf_is_valid_v6_frag
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 692
      functionLinenumberEnd: 743
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         30
      ICount:          226
      EdgeCount:       41
      CyclomaticComplexity: 13
      functionsReached:
        - dp_packet_eth
        - dp_packet_l3
        - dp_packet_l3_size
        - dp_packet_l4
        - ipf_count
        - ipf_is_last_v6_frag
        - ipf_is_v6_frag
        - ntohs
        - parse_ipv6_ext_hdrs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ipf.c:693,35'
          Dst:             dp_packet_eth
        - Src:             'lib/ipf.c:694,47'
          Dst:             dp_packet_l3
        - Src:             'lib/ipf.c:695,22'
          Dst:             dp_packet_l4
        - Src:             'lib/ipf.c:701,22'
          Dst:             dp_packet_l3_size
        - Src:             'lib/ipf.c:713,10'
          Dst:             parse_ipv6_ext_hdrs
        - Src:             'lib/ipf.c:718,14'
          Dst:             ntohs
        - Src:             'lib/ipf.c:724,9'
          Dst:             ipf_is_v6_frag
        - Src:             'lib/ipf.c:730,15'
          Dst:             ipf_is_last_v6_frag
        - Src:             'lib/ipf.c:732,9'
          Dst:             dp_packet_l3_size
        - Src:             'lib/ipf.c:733,9'
          Dst:             ipf_count
    - functionName:    ipf_is_valid_v4_frag
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 604
      functionLinenumberEnd: 661
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         36
      ICount:          265
      EdgeCount:       49
      CyclomaticComplexity: 15
      functionsReached:
        - csum
        - dp_packet_eth
        - dp_packet_ip_checksum_bad
        - dp_packet_ip_checksum_set_bad
        - dp_packet_ip_checksum_set_good
        - dp_packet_ip_checksum_unknown
        - dp_packet_l3
        - dp_packet_l3_size
        - htons
        - ipf_count
        - ipf_is_last_v4_frag
        - ipf_l3csum_checked_add
        - ipf_l3csum_err_add
        - ntohs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ipf.c:605,35'
          Dst:             dp_packet_eth
        - Src:             'lib/ipf.c:606,34'
          Dst:             dp_packet_l3
        - Src:             'lib/ipf.c:612,22'
          Dst:             dp_packet_l3_size
        - Src:             'lib/ipf.c:617,10'
          Dst:             htons
        - Src:             'lib/ipf.c:621,27'
          Dst:             ntohs
        - Src:             'lib/ipf.c:634,21'
          Dst:             dp_packet_ip_checksum_bad
        - Src:             'lib/ipf.c:635,9'
          Dst:             dp_packet_ip_checksum_unknown
        - Src:             'lib/ipf.c:636,9'
          Dst:             ipf_l3csum_checked_add
        - Src:             'lib/ipf.c:637,13'
          Dst:             csum
        - Src:             'lib/ipf.c:638,13'
          Dst:             dp_packet_ip_checksum_set_bad
        - Src:             'lib/ipf.c:641,13'
          Dst:             dp_packet_ip_checksum_set_good
        - Src:             'lib/ipf.c:645,9'
          Dst:             ipf_l3csum_err_add
        - Src:             'lib/ipf.c:651,15'
          Dst:             ipf_is_last_v4_frag
        - Src:             'lib/ipf.c:652,9'
          Dst:             dp_packet_l3_size
        - Src:             'lib/ipf.c:653,9'
          Dst:             ipf_count
    - functionName:    dp_packet_batch_refill_init
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 923
      functionLinenumberEnd: 925
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_batch_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 910
      functionLinenumberEnd: 911
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ipf_dump_done
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1537
      functionLinenumberEnd: 1539
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ipf_dump_create
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1482
      functionLinenumberEnd: 1506
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          146
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_cstr
        - ds_put_format
        - htons
        - ipv6_format_addr
        - ntohl
        - ntohs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ipf.c:1483,5'
          Dst:             ds_put_cstr
        - Src:             'lib/ipf.c:1484,34'
          Dst:             htons
        - Src:             'lib/ipf.c:1486,23'
          Dst:             ntohl
        - Src:             'lib/ipf.c:1486,23'
          Dst:             ntohl
        - Src:             'lib/ipf.c:1486,23'
          Dst:             ntohl
        - Src:             'lib/ipf.c:1486,23'
          Dst:             ntohl
        - Src:             'lib/ipf.c:1487,23'
          Dst:             ntohl
        - Src:             'lib/ipf.c:1487,23'
          Dst:             ntohl
        - Src:             'lib/ipf.c:1487,23'
          Dst:             ntohl
        - Src:             'lib/ipf.c:1487,23'
          Dst:             ntohl
        - Src:             'lib/ipf.c:1485,9'
          Dst:             ds_put_format
        - Src:             'lib/ipf.c:1489,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ipf.c:1490,9'
          Dst:             ipv6_format_addr
        - Src:             'lib/ipf.c:1491,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ipf.c:1492,9'
          Dst:             ipv6_format_addr
        - Src:             'lib/ipf.c:1493,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ipf.c:1497,44'
          Dst:             ntohl
        - Src:             'lib/ipf.c:1498,19'
          Dst:             ntohs
        - Src:             'lib/ipf.c:1496,5'
          Dst:             ds_put_format
        - Src:             'lib/ipf.c:1501,5'
          Dst:             ds_put_format
        - Src:             'lib/ipf.c:1505,5'
          Dst:             ds_put_cstr
    - functionName:    ipf_dump_next
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1514
      functionLinenumberEnd: 1532
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          62
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_steal_cstr
        - hmap_at_position
        - ipf_dump_create
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ipf.c:1515,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/ipf.c:1517,30'
          Dst:             hmap_at_position
        - Src:             'lib/ipf.c:1520,9'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/ipf.c:1526,9'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/ipf.c:1528,9'
          Dst:             ipf_dump_create
        - Src:             'lib/ipf.c:1529,17'
          Dst:             ds_steal_cstr
    - functionName:    ipf_dump_start
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1473
      functionLinenumberEnd: 1475
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - xzalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ipf.c:1474,21'
          Dst:             xzalloc
    - functionName:    ipf_get_status
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1427
      functionLinenumberEnd: 1462
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          206
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - atomic_count_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ipf.c:1428,25'
          Dst:             atomic_count_get
    - functionName:    ipf_set_max_nfrags
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1417
      functionLinenumberEnd: 1423
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          31
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ipf_set_min_frag
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1395
      functionLinenumberEnd: 1413
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - bool
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          80
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ipf.c:1402,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/ipf.c:1411,5'
          Dst:             ovs_mutex_unlock
    - functionName:    ipf_set_enabled
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1387
      functionLinenumberEnd: 1390
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - bool
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          35
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_list_poison
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 157
      functionLinenumberEnd: 159
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_list_pop_front
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 261
      functionLinenumberEnd: 265
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_list_remove
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/list.h:264,5'
          Dst:             ovs_list_remove
    - functionName:    hmap_pop_helper__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 226
      functionLinenumberEnd: 238
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          66
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - hmap_remove
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:232,13'
          Dst:             hmap_remove
    - functionName:    ipf_destroy
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1346
      functionLinenumberEnd: 1383
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         26
      ICount:          190
      EdgeCount:       33
      CyclomaticComplexity: 9
      functionsReached:
        - atomic_count_dec
        - atomic_count_get
        - dp_packet_delete
        - hmap_destroy
        - hmap_pop_helper__
        - latch_destroy
        - latch_set
        - ovs_list_is_empty
        - ovs_list_poison
        - ovs_list_pop_front
        - ovs_mutex_destroy
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - pthread_join
        - vlog
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ipf.c:1347,5'
          Dst:             latch_set
        - Src:             'lib/ipf.c:1348,5'
          Dst:             pthread_join
        - Src:             'lib/ipf.c:1349,5'
          Dst:             latch_destroy
        - Src:             'lib/ipf.c:1351,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/ipf.c:1354,5'
          Dst:             hmap_pop_helper__
        - Src:             'lib/ipf.c:1358,13'
          Dst:             dp_packet_delete
        - Src:             'lib/ipf.c:1359,13'
          Dst:             atomic_count_dec
        - Src:             'lib/ipf.c:1366,9'
          Dst:             atomic_count_get
        - Src:             'lib/ipf.c:1367,9'
          Dst:             vlog
        - Src:             'lib/ipf.c:1371,5'
          Dst:             ovs_list_is_empty
        - Src:             'lib/ipf.c:1371,5'
          Dst:             ovs_list_pop_front
        - Src:             'lib/ipf.c:1372,9'
          Dst:             dp_packet_delete
        - Src:             'lib/ipf.c:1376,5'
          Dst:             hmap_destroy
        - Src:             'lib/ipf.c:1377,5'
          Dst:             ovs_list_poison
        - Src:             'lib/ipf.c:1378,5'
          Dst:             ovs_list_poison
        - Src:             'lib/ipf.c:1379,5'
          Dst:             ovs_list_poison
        - Src:             'lib/ipf.c:1380,5'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/ipf.c:1381,5'
          Dst:             ovs_mutex_destroy
    - functionName:    ipf_clean_thread_main
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1270
      functionLinenumberEnd: 1309
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         32
      ICount:          183
      EdgeCount:       41
      CyclomaticComplexity: 11
      functionsReached:
        - ipf_completed_list_clean
        - ipf_expiry_list_clean
        - ipf_list_is_empty_unsafe
        - ipf_purge_list_check
        - latch_is_set
        - latch_wait_at
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - poll_block
        - poll_timer_wait_until_at
        - time_msec
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ipf.c:1277,13'
          Dst:             latch_is_set
        - Src:             'lib/ipf.c:1279,25'
          Dst:             time_msec
        - Src:             'lib/ipf.c:1281,14'
          Dst:             ipf_list_is_empty_unsafe
        - Src:             'lib/ipf.c:1282,14'
          Dst:             ipf_list_is_empty_unsafe
        - Src:             'lib/ipf.c:1284,13'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/ipf.c:1289,21'
          Dst:             ipf_purge_list_check
        - Src:             'lib/ipf.c:1290,21'
          Dst:             ipf_expiry_list_clean
        - Src:             'lib/ipf.c:1296,21'
          Dst:             ipf_purge_list_check
        - Src:             'lib/ipf.c:1297,21'
          Dst:             ipf_completed_list_clean
        - Src:             'lib/ipf.c:1301,13'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/ipf.c:1304,9'
          Dst:             poll_timer_wait_until_at
        - Src:             'lib/ipf.c:1305,9'
          Dst:             latch_wait_at
        - Src:             'lib/ipf.c:1306,9'
          Dst:             poll_block
    - functionName:    atomic_count_init
      functionSourceFile: '/src/openvswitch/lib/ovs-atomic.h'
      linkageType:     InternalLinkage
      functionLinenumber: 445
      functionLinenumberEnd: 447
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_list_init
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ipf_init
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1314
      functionLinenumberEnd: 1341
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         7
      ICount:          104
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - atomic_count_init
        - hmap_init
        - ipf_clean_thread_main
        - latch_init
        - ovs_list_init
        - ovs_mutex_init_adaptive
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovs_thread_create
        - xzalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ipf.c:1315,23'
          Dst:             xzalloc
        - Src:             'lib/ipf.c:1317,5'
          Dst:             ovs_mutex_init_adaptive
        - Src:             'lib/ipf.c:1318,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/ipf.c:1319,5'
          Dst:             hmap_init
        - Src:             'lib/ipf.c:1320,5'
          Dst:             ovs_list_init
        - Src:             'lib/ipf.c:1321,5'
          Dst:             ovs_list_init
        - Src:             'lib/ipf.c:1322,5'
          Dst:             ovs_list_init
        - Src:             'lib/ipf.c:1328,5'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/ipf.c:1329,5'
          Dst:             atomic_count_init
        - Src:             'lib/ipf.c:1337,5'
          Dst:             latch_init
        - Src:             'lib/ipf.c:1338,29'
          Dst:             ovs_thread_create
        - Src:             'lib/ipf.c:1338,29'
          Dst:             ipf_clean_thread_main
    - functionName:    ipf_delete_expired_frags
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1082
      functionLinenumberEnd: 1118
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         22
      ICount:          153
      EdgeCount:       28
      CyclomaticComplexity: 8
      functionsReached:
        - atomic_count_dec
        - dp_packet_delete
        - htons
        - ipf_count
        - ipf_expiry_list_clean
        - ipf_list_is_empty_unsafe
        - ipf_stuck_frag_list_expired_add
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ipf.c:1089,9'
          Dst:             ipf_list_is_empty_unsafe
        - Src:             'lib/ipf.c:1093,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/ipf.c:1106,13'
          Dst:             dp_packet_delete
        - Src:             'lib/ipf.c:1107,13'
          Dst:             atomic_count_dec
        - Src:             'lib/ipf.c:1108,13'
          Dst:             ipf_stuck_frag_list_expired_add
        - Src:             'lib/ipf.c:1109,53'
          Dst:             htons
        - Src:             'lib/ipf.c:1109,13'
          Dst:             ipf_count
        - Src:             'lib/ipf.c:1113,9'
          Dst:             ipf_expiry_list_clean
        - Src:             'lib/ipf.c:1117,5'
          Dst:             ovs_mutex_unlock
    - functionName:    ipf_send_completed_frags
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1048
      functionLinenumberEnd: 1077
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - bool
        - short
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          155
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - htons
        - ipf_completed_list_clean
        - ipf_list_is_empty_unsafe
        - ipf_send_frags_in_list
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ipf.c:1049,9'
          Dst:             ipf_list_is_empty_unsafe
        - Src:             'lib/ipf.c:1053,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/ipf.c:1058,39'
          Dst:             htons
        - Src:             'lib/ipf.c:1072,9'
          Dst:             ipf_send_frags_in_list
        - Src:             'lib/ipf.c:1073,9'
          Dst:             ipf_completed_list_clean
        - Src:             'lib/ipf.c:1076,5'
          Dst:             ovs_mutex_unlock
    - functionName:    ipf_post_execute_reass_pkts
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1149
      functionLinenumberEnd: 1232
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         39
      ICount:          414
      EdgeCount:       50
      CyclomaticComplexity: 13
      functionsReached:
        - dp_packet_batch_add
        - dp_packet_batch_refill_init
        - dp_packet_batch_size
        - dp_packet_delete
        - dp_packet_ip_checksum_set_partial
        - dp_packet_ip_checksum_valid
        - dp_packet_l3
        - dp_packet_l4
        - dp_packet_l4_size
        - dp_packet_ol_send_prepare
        - get_16aligned_be32
        - ipf_completed_list_add
        - ipf_list_is_empty_unsafe
        - ipf_reassembled_list_remove
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - recalc_csum32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ipf.c:1150,9'
          Dst:             ipf_list_is_empty_unsafe
        - Src:             'lib/ipf.c:1154,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/ipf.c:1158,31'
          Dst:             dp_packet_batch_size
        - Src:             'lib/ipf.c:1161,9'
          Dst:             dp_packet_batch_refill_init
        - Src:             'lib/ipf.c:1164,33'
          Dst:             dp_packet_l4
        - Src:             'lib/ipf.c:1165,34'
          Dst:             dp_packet_l4
        - Src:             'lib/ipf.c:1168,17'
          Dst:             dp_packet_ol_send_prepare
        - Src:             'lib/ipf.c:1169,43'
          Dst:             dp_packet_l4_size
        - Src:             'lib/ipf.c:1189,31'
          Dst:             dp_packet_l3
        - Src:             'lib/ipf.c:1191,31'
          Dst:             dp_packet_l3
        - Src:             'lib/ipf.c:1195,53'
          Dst:             dp_packet_l3
        - Src:             'lib/ipf.c:1196,54'
          Dst:             dp_packet_l3
        - Src:             'lib/ipf.c:1197,29'
          Dst:             dp_packet_ip_checksum_valid
        - Src:             'lib/ipf.c:1198,29'
          Dst:             dp_packet_ip_checksum_set_partial
        - Src:             'lib/ipf.c:1201,33'
          Dst:             get_16aligned_be32
        - Src:             'lib/ipf.c:1203,33'
          Dst:             get_16aligned_be32
        - Src:             'lib/ipf.c:1205,48'
          Dst:             recalc_csum32
        - Src:             'lib/ipf.c:1208,40'
          Dst:             get_16aligned_be32
        - Src:             'lib/ipf.c:1209,39'
          Dst:             get_16aligned_be32
        - Src:             'lib/ipf.c:1210,48'
          Dst:             recalc_csum32
        - Src:             'lib/ipf.c:1220,17'
          Dst:             ipf_completed_list_add
        - Src:             'lib/ipf.c:1221,17'
          Dst:             ipf_reassembled_list_remove
        - Src:             'lib/ipf.c:1222,17'
          Dst:             dp_packet_delete
        - Src:             'lib/ipf.c:1226,17'
          Dst:             dp_packet_batch_add
        - Src:             'lib/ipf.c:1231,5'
          Dst:             ovs_mutex_unlock
    - functionName:    ipf_postprocess_conntrack
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1259
      functionLinenumberEnd: 1266
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - short
        - short
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          70
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - atomic_count_get
        - htons
        - ipf_delete_expired_frags
        - ipf_get_enabled
        - ipf_post_execute_reass_pkts
        - ipf_send_completed_frags
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ipf.c:1260,9'
          Dst:             ipf_get_enabled
        - Src:             'lib/ipf.c:1260,33'
          Dst:             atomic_count_get
        - Src:             'lib/ipf.c:1261,30'
          Dst:             htons
        - Src:             'lib/ipf.c:1262,9'
          Dst:             ipf_post_execute_reass_pkts
        - Src:             'lib/ipf.c:1263,9'
          Dst:             ipf_send_completed_frags
        - Src:             'lib/ipf.c:1264,9'
          Dst:             ipf_delete_expired_frags
    - functionName:    ipf_get_enabled
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 212
      functionLinenumberEnd: 213
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          27
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ipf_get_v4_enabled
        - ipf_get_v6_enabled
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ipf.c:213,12'
          Dst:             ipf_get_v4_enabled
        - Src:             'lib/ipf.c:213,39'
          Dst:             ipf_get_v6_enabled
    - functionName:    ipf_execute_reass_pkts
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1125
      functionLinenumberEnd: 1142
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - short
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          121
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - dp_packet_batch_add
        - ipf_list_is_empty_unsafe
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ipf.c:1126,9'
          Dst:             ipf_list_is_empty_unsafe
        - Src:             'lib/ipf.c:1130,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/ipf.c:1136,13'
          Dst:             dp_packet_batch_add
        - Src:             'lib/ipf.c:1141,5'
          Dst:             ovs_mutex_unlock
    - functionName:    ipf_extract_frags_from_batch
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 960
      functionLinenumberEnd: 986
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - short
        - short
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          171
      EdgeCount:       36
      CyclomaticComplexity: 10
      functionsReached:
        - dp_packet_batch_add
        - dp_packet_batch_refill_init
        - dp_packet_batch_size
        - htons
        - ipf_handle_frag
        - ipf_is_valid_v4_frag
        - ipf_is_valid_v6_frag
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ipf.c:961,27'
          Dst:             dp_packet_batch_size
        - Src:             'lib/ipf.c:965,5'
          Dst:             dp_packet_batch_refill_init
        - Src:             'lib/ipf.c:966,13'
          Dst:             htons
        - Src:             'lib/ipf.c:966,13'
          Dst:             ipf_is_valid_v4_frag
        - Src:             'lib/ipf.c:966,13'
          Dst:             htons
        - Src:             'lib/ipf.c:966,13'
          Dst:             ipf_is_valid_v6_frag
        - Src:             'lib/ipf.c:973,13'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/ipf.c:974,18'
          Dst:             ipf_handle_frag
        - Src:             'lib/ipf.c:976,17'
          Dst:             dp_packet_batch_add
        - Src:             'lib/ipf.c:978,17'
          Dst:             dp_packet_batch_add
        - Src:             'lib/ipf.c:981,13'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/ipf.c:983,13'
          Dst:             dp_packet_batch_add
    - functionName:    ipf_preprocess_conntrack
      functionSourceFile: '/src/openvswitch/lib/ipf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1241
      functionLinenumberEnd: 1249
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - short
        - short
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          67
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - atomic_count_get
        - ipf_execute_reass_pkts
        - ipf_extract_frags_from_batch
        - ipf_get_enabled
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ipf.c:1242,9'
          Dst:             ipf_get_enabled
        - Src:             'lib/ipf.c:1243,9'
          Dst:             ipf_extract_frags_from_batch
        - Src:             'lib/ipf.c:1246,9'
          Dst:             ipf_get_enabled
        - Src:             'lib/ipf.c:1246,33'
          Dst:             atomic_count_get
        - Src:             'lib/ipf.c:1247,9'
          Dst:             ipf_execute_reass_pkts
    - functionName:    ofpbuf_tail
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 203
      functionLinenumberEnd: 205
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          56
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:204,5'
          Dst:             ovs_ignore
    - functionName:    learn_parse_load_immediate
      functionSourceFile: '/src/openvswitch/lib/learn.c'
      linkageType:     InternalLinkage
      functionLinenumber: 206
      functionLinenumberEnd: 236
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          119
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - bitwise_is_all_zeros
        - mf_nxm_header
        - mf_parse_subfield
        - ofpbuf_put_zeros
        - xasprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/learn.c:210,13'
          Dst:             mf_parse_subfield
        - Src:             'lib/learn.c:214,10'
          Dst:             mf_nxm_header
        - Src:             'lib/learn.c:215,16'
          Dst:             xasprintf
        - Src:             'lib/learn.c:219,10'
          Dst:             bitwise_is_all_zeros
        - Src:             'lib/learn.c:221,16'
          Dst:             xasprintf
        - Src:             'lib/learn.c:232,24'
          Dst:             ofpbuf_put_zeros
    - functionName:    ofpact_finish_LEARN
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_finish
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ovs_ignore
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_finish
    - functionName:    ofpbuf_oversized
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofpbuf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 291
      functionLinenumberEnd: 292
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpbuf_tail
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofpbuf.h:292,20'
          Dst:             ofpbuf_tail
    - functionName:    learn_parse_spec
      functionSourceFile: '/src/openvswitch/lib/learn.c'
      linkageType:     InternalLinkage
      functionLinenumber: 245
      functionLinenumberEnd: 382
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         59
      ICount:          495
      EdgeCount:       81
      CyclomaticComplexity: 24
      functionsReached:
        - bitwise_is_all_zeros
        - ds_cstr
        - ds_destroy
        - ds_init
        - learn_parse_load_immediate
        - mf_format
        - mf_nxm_header
        - mf_parse_subfield
        - mf_parse_value
        - nxm_parse_reg_move
        - ofpbuf_put_zeros
        - parse_int_string
        - strcmp
        - strstr
        - xasprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/learn.c:249,19'
          Dst:             mf_parse_subfield
        - Src:             'lib/learn.c:254,14'
          Dst:             mf_nxm_header
        - Src:             'lib/learn.c:255,20'
          Dst:             xasprintf
        - Src:             'lib/learn.c:265,21'
          Dst:             mf_parse_subfield
        - Src:             'lib/learn.c:273,33'
          Dst:             mf_parse_value
        - Src:             'lib/learn.c:278,25'
          Dst:             parse_int_string
        - Src:             'lib/learn.c:281,37'
          Dst:             xasprintf
        - Src:             'lib/learn.c:285,26'
          Dst:             bitwise_is_all_zeros
        - Src:             'lib/learn.c:290,25'
          Dst:             ds_init
        - Src:             'lib/learn.c:291,25'
          Dst:             mf_format
        - Src:             'lib/learn.c:293,53'
          Dst:             ds_cstr
        - Src:             'lib/learn.c:292,37'
          Dst:             xasprintf
        - Src:             'lib/learn.c:294,25'
          Dst:             ds_destroy
        - Src:             'lib/learn.c:298,33'
          Dst:             xasprintf
        - Src:             'lib/learn.c:309,36'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/learn.c:320,24'
          Dst:             xasprintf
        - Src:             'lib/learn.c:329,17'
          Dst:             strcmp
        - Src:             'lib/learn.c:332,27'
          Dst:             strstr
        - Src:             'lib/learn.c:335,20'
          Dst:             xasprintf
        - Src:             'lib/learn.c:339,20'
          Dst:             xasprintf
        - Src:             'lib/learn.c:342,14'
          Dst:             parse_int_string
        - Src:             'lib/learn.c:345,24'
          Dst:             xasprintf
        - Src:             'lib/learn.c:349,21'
          Dst:             learn_parse_load_immediate
        - Src:             'lib/learn.c:357,21'
          Dst:             nxm_parse_reg_move
        - Src:             'lib/learn.c:368,17'
          Dst:             strcmp
        - Src:             'lib/learn.c:369,17'
          Dst:             mf_parse_subfield
        - Src:             'lib/learn.c:378,16'
          Dst:             xasprintf
    - functionName:    ofpact_put_LEARN
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_put
    - functionName:    ofpact_next
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 212
      functionLinenumberEnd: 213
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ds_put_char
      functionSourceFile: '/src/openvswitch/./include/openvswitch/dynamic-string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_char__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/dynamic-string.h:99,9'
          Dst:             ds_put_char__
    - functionName:    learn_format
      functionSourceFile: '/src/openvswitch/lib/learn.c'
      linkageType:     InternalLinkage
      functionLinenumber: 494
      functionLinenumberEnd: 598
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         56
      ICount:          531
      EdgeCount:       70
      CyclomaticComplexity: 16
      functionsReached:
        - ds_put_char
        - ds_put_format
        - ds_put_hex
        - match_init_catchall
        - mf_format
        - mf_format_subfield
        - ntohll
        - ofpact_learn_spec_end
        - ofpact_learn_spec_imm
        - ofpact_learn_spec_next
        - ofputil_format_table
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/learn.c:546,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/learn.c:498,5'
          Dst:             match_init_catchall
        - Src:             'lib/learn.c:500,5'
          Dst:             ds_put_format
        - Src:             'lib/learn.c:502,5'
          Dst:             ofputil_format_table
        - Src:             'lib/learn.c:504,9'
          Dst:             ds_put_format
        - Src:             'lib/learn.c:508,9'
          Dst:             ds_put_format
        - Src:             'lib/learn.c:512,9'
          Dst:             ds_put_format
        - Src:             'lib/learn.c:516,9'
          Dst:             ds_put_format
        - Src:             'lib/learn.c:520,9'
          Dst:             ds_put_format
        - Src:             'lib/learn.c:524,9'
          Dst:             ds_put_format
        - Src:             'lib/learn.c:527,9'
          Dst:             ds_put_format
        - Src:             'lib/learn.c:531,49'
          Dst:             ntohll
        - Src:             'lib/learn.c:530,9'
          Dst:             ds_put_format
        - Src:             'lib/learn.c:534,9'
          Dst:             ds_put_format
        - Src:             'lib/learn.c:538,9'
          Dst:             ds_put_format
        - Src:             'lib/learn.c:539,9'
          Dst:             mf_format_subfield
        - Src:             'lib/learn.c:542,5'
          Dst:             ofpact_learn_spec_end
        - Src:             'lib/learn.c:544,9'
          Dst:             ds_put_char
        - Src:             'lib/learn.c:554,24'
          Dst:             ofpact_learn_spec_imm
        - Src:             'lib/learn.c:555,17'
          Dst:             ds_put_format
        - Src:             'lib/learn.c:557,17'
          Dst:             mf_format
        - Src:             'lib/learn.c:559,17'
          Dst:             ds_put_format
        - Src:             'lib/learn.c:560,17'
          Dst:             mf_format_subfield
        - Src:             'lib/learn.c:561,17'
          Dst:             ds_put_format
        - Src:             'lib/learn.c:562,31'
          Dst:             ofpact_learn_spec_imm
        - Src:             'lib/learn.c:562,17'
          Dst:             ds_put_hex
        - Src:             'lib/learn.c:567,13'
          Dst:             ds_put_format
        - Src:             'lib/learn.c:568,13'
          Dst:             mf_format_subfield
        - Src:             'lib/learn.c:569,13'
          Dst:             ds_put_format
        - Src:             'lib/learn.c:572,17'
          Dst:             ds_put_format
        - Src:             'lib/learn.c:573,17'
          Dst:             mf_format_subfield
        - Src:             'lib/learn.c:578,13'
          Dst:             ds_put_format
        - Src:             'lib/learn.c:579,27'
          Dst:             ofpact_learn_spec_imm
        - Src:             'lib/learn.c:579,13'
          Dst:             ds_put_hex
        - Src:             'lib/learn.c:580,13'
          Dst:             ds_put_format
        - Src:             'lib/learn.c:581,13'
          Dst:             mf_format_subfield
        - Src:             'lib/learn.c:585,13'
          Dst:             ds_put_format
        - Src:             'lib/learn.c:586,13'
          Dst:             mf_format_subfield
        - Src:             'lib/learn.c:587,13'
          Dst:             ds_put_format
        - Src:             'lib/learn.c:588,13'
          Dst:             mf_format_subfield
        - Src:             'lib/learn.c:592,13'
          Dst:             ds_put_format
        - Src:             'lib/learn.c:593,13'
          Dst:             mf_format_subfield
        - Src:             'lib/learn.c:542,5'
          Dst:             ofpact_learn_spec_next
        - Src:             'lib/learn.c:597,5'
          Dst:             ds_put_format
    - functionName:    ntohll
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
        - ntohl
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byte-order.h:36,12'
          Dst:             htonl
        - Src:             'lib/byte-order.h:36,44'
          Dst:             ntohl
        - Src:             'lib/byte-order.h:36,62'
          Dst:             ntohl
    - functionName:    ofpact_learn_spec_end
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 894
      functionLinenumberEnd: 895
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_next
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:895,12'
          Dst:             ofpact_next
    - functionName:    ofpact_learn_spec_imm
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 850
      functionLinenumberEnd: 851
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofpact_learn_spec_next
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 856
      functionLinenumberEnd: 863
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          44
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    learn_parse__
      functionSourceFile: '/src/openvswitch/lib/learn.c'
      linkageType:     InternalLinkage
      functionLinenumber: 390
      functionLinenumberEnd: 462
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         55
      ICount:          346
      EdgeCount:       74
      CyclomaticComplexity: 21
      functionsReached:
        - atoi
        - htonll
        - learn_parse_spec
        - mf_parse_subfield
        - ofpact_finish_LEARN
        - ofpact_put_LEARN
        - ofpbuf_oversized
        - ofpbuf_put_zeros
        - ofputil_parse_key_value
        - ofputil_table_from_string
        - strcmp
        - strtoull
        - xasprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/learn.c:394,13'
          Dst:             ofpact_put_LEARN
        - Src:             'lib/learn.c:400,12'
          Dst:             ofputil_parse_key_value
        - Src:             'lib/learn.c:401,14'
          Dst:             strcmp
        - Src:             'lib/learn.c:402,18'
          Dst:             ofputil_table_from_string
        - Src:             'lib/learn.c:404,24'
          Dst:             xasprintf
        - Src:             'lib/learn.c:406,24'
          Dst:             xasprintf
        - Src:             'lib/learn.c:409,21'
          Dst:             strcmp
        - Src:             'lib/learn.c:410,31'
          Dst:             atoi
        - Src:             'lib/learn.c:411,21'
          Dst:             strcmp
        - Src:             'lib/learn.c:412,35'
          Dst:             atoi
        - Src:             'lib/learn.c:413,21'
          Dst:             strcmp
        - Src:             'lib/learn.c:414,35'
          Dst:             atoi
        - Src:             'lib/learn.c:415,21'
          Dst:             strcmp
        - Src:             'lib/learn.c:416,39'
          Dst:             atoi
        - Src:             'lib/learn.c:417,21'
          Dst:             strcmp
        - Src:             'lib/learn.c:418,39'
          Dst:             atoi
        - Src:             'lib/learn.c:419,21'
          Dst:             strcmp
        - Src:             'lib/learn.c:420,36'
          Dst:             strtoull
        - Src:             'lib/learn.c:420,29'
          Dst:             htonll
        - Src:             'lib/learn.c:421,21'
          Dst:             strcmp
        - Src:             'lib/learn.c:423,21'
          Dst:             strcmp
        - Src:             'lib/learn.c:425,21'
          Dst:             strcmp
        - Src:             'lib/learn.c:426,28'
          Dst:             atoi
        - Src:             'lib/learn.c:427,21'
          Dst:             strcmp
        - Src:             'lib/learn.c:430,21'
          Dst:             mf_parse_subfield
        - Src:             'lib/learn.c:435,24'
          Dst:             xasprintf
        - Src:             'lib/learn.c:438,24'
          Dst:             xasprintf
        - Src:             'lib/learn.c:445,20'
          Dst:             ofpbuf_put_zeros
        - Src:             'lib/learn.c:446,21'
          Dst:             learn_parse_spec
        - Src:             'lib/learn.c:455,9'
          Dst:             ofpbuf_oversized
        - Src:             'lib/learn.c:456,16'
          Dst:             xasprintf
        - Src:             'lib/learn.c:459,5'
          Dst:             ofpact_finish_LEARN
    - functionName:    htonll
      functionSourceFile: '/src/openvswitch/lib/byte-order.h'
      linkageType:     InternalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 30
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - htonl
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/byte-order.h:30,12'
          Dst:             htonl
        - Src:             'lib/byte-order.h:30,44'
          Dst:             htonl
        - Src:             'lib/byte-order.h:30,62'
          Dst:             htonl
    - functionName:    learn_parse
      functionSourceFile: '/src/openvswitch/lib/learn.c'
      linkageType:     InternalLinkage
      functionLinenumber: 480
      functionLinenumberEnd: 484
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - learn_parse__
        - xstrdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/learn.c:481,18'
          Dst:             xstrdup
        - Src:             'lib/learn.c:482,19'
          Dst:             learn_parse__
    - functionName:    learn_mask
      functionSourceFile: '/src/openvswitch/lib/learn.c'
      linkageType:     InternalLinkage
      functionLinenumber: 188
      functionLinenumberEnd: 198
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          61
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - mf_write_subfield_flow
        - ofpact_learn_spec_end
        - ofpact_learn_spec_next
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/learn.c:193,5'
          Dst:             ofpact_learn_spec_end
        - Src:             'lib/learn.c:195,13'
          Dst:             mf_write_subfield_flow
        - Src:             'lib/learn.c:193,5'
          Dst:             ofpact_learn_spec_next
    - functionName:    ofpact_put_OUTPUT
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_put
    - functionName:    ofp_to_u16
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 196
      functionLinenumberEnd: 197
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    u16_to_ofp
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 214
      functionLinenumberEnd: 215
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mf_subvalue_from_value
      functionSourceFile: '/src/openvswitch/./include/openvswitch/meta-flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 2342
      functionLinenumberEnd: 2346
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          31
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ofpact_put_FIN_TIMEOUT
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_put
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_put
    - functionName:    learn_execute
      functionSourceFile: '/src/openvswitch/lib/learn.c'
      linkageType:     InternalLinkage
      functionLinenumber: 100
      functionLinenumberEnd: 182
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         42
      ICount:          428
      EdgeCount:       53
      CyclomaticComplexity: 13
      functionsReached:
        - bitwise_copy
        - bitwise_one
        - htonll
        - is_all_zeros
        - match_add_ethernet_prereq
        - match_init_catchall
        - mf_read_subfield
        - mf_subvalue_from_value
        - mf_vl_mff_set_tlv_bitmap
        - mf_write_subfield
        - minimatch_init
        - ntohll
        - ofp_to_u16
        - ofpact_learn_spec_end
        - ofpact_learn_spec_imm
        - ofpact_learn_spec_next
        - ofpact_put_FIN_TIMEOUT
        - ofpact_put_OUTPUT
        - ofpact_put_reg_load
        - u16_to_ofp
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib/learn.c:144,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/learn.c:104,5'
          Dst:             match_init_catchall
        - Src:             'lib/learn.c:106,18'
          Dst:             htonll
        - Src:             'lib/learn.c:107,23'
          Dst:             htonll
        - Src:             'lib/learn.c:128,15'
          Dst:             ofpact_put_FIN_TIMEOUT
        - Src:             'lib/learn.c:133,5'
          Dst:             ofpact_learn_spec_end
        - Src:             'lib/learn.c:138,13'
          Dst:             mf_read_subfield
        - Src:             'lib/learn.c:141,36'
          Dst:             ofpact_learn_spec_imm
        - Src:             'lib/learn.c:140,13'
          Dst:             mf_subvalue_from_value
        - Src:             'lib/learn.c:146,13'
          Dst:             mf_write_subfield
        - Src:             'lib/learn.c:147,13'
          Dst:             match_add_ethernet_prereq
        - Src:             'lib/learn.c:148,13'
          Dst:             mf_vl_mff_set_tlv_bitmap
        - Src:             'lib/learn.c:153,18'
          Dst:             ofpact_put_reg_load
        - Src:             'lib/learn.c:154,13'
          Dst:             bitwise_copy
        - Src:             'lib/learn.c:157,13'
          Dst:             bitwise_one
        - Src:             'lib/learn.c:159,13'
          Dst:             mf_vl_mff_set_tlv_bitmap
        - Src:             'lib/learn.c:164,20'
          Dst:             is_all_zeros
        - Src:             'lib/learn.c:165,46'
          Dst:             ntohll
        - Src:             'lib/learn.c:165,35'
          Dst:             u16_to_ofp
        - Src:             'lib/learn.c:167,21'
          Dst:             ofp_to_u16
        - Src:             'lib/learn.c:167,40'
          Dst:             ofp_to_u16
        - Src:             'lib/learn.c:172,21'
          Dst:             ofpact_put_OUTPUT
        - Src:             'lib/learn.c:133,5'
          Dst:             ofpact_learn_spec_next
        - Src:             'lib/learn.c:179,5'
          Dst:             minimatch_init
    - functionName:    learn_check
      functionSourceFile: '/src/openvswitch/lib/learn.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42
      functionLinenumberEnd: 85
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         25
      ICount:          150
      EdgeCount:       30
      CyclomaticComplexity: 7
      functionsReached:
        - match_init_catchall
        - mf_check_dst
        - mf_check_src
        - mf_write_subfield_value
        - ofpact_learn_spec_end
        - ofpact_learn_spec_imm
        - ofpact_learn_spec_next
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/learn.c:59,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/learn.c:46,5'
          Dst:             match_init_catchall
        - Src:             'lib/learn.c:47,5'
          Dst:             ofpact_learn_spec_end
        - Src:             'lib/learn.c:52,21'
          Dst:             mf_check_src
        - Src:             'lib/learn.c:61,21'
          Dst:             mf_check_src
        - Src:             'lib/learn.c:67,41'
          Dst:             ofpact_learn_spec_imm
        - Src:             'lib/learn.c:66,17'
          Dst:             mf_write_subfield_value
        - Src:             'lib/learn.c:73,21'
          Dst:             mf_check_dst
        - Src:             'lib/learn.c:47,5'
          Dst:             ofpact_learn_spec_next
    - functionName:    init_this_module_lockfile
      functionSourceFile: '/src/openvswitch/lib/lockfile.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 35
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/lockfile.c:35,1'
          Dst:             vlog_insert_module
    - functionName:    lockfile_lock_init_coverage
      functionSourceFile: '/src/openvswitch/lib/lockfile.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37
      functionLinenumberEnd: 37
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/lockfile.c:37,1'
          Dst:             coverage_counter_register
    - functionName:    lockfile_error_init_coverage
      functionSourceFile: '/src/openvswitch/lib/lockfile.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 38
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/lockfile.c:38,1'
          Dst:             coverage_counter_register
    - functionName:    lockfile_unlock_init_coverage
      functionSourceFile: '/src/openvswitch/lib/lockfile.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/lockfile.c:39,1'
          Dst:             coverage_counter_register
    - functionName:    lockfile_unlock_count
      functionSourceFile: '/src/openvswitch/lib/lockfile.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_lockfile_unlock_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/lockfile.c:39,1'
          Dst:             counter_lockfile_unlock_get
    - functionName:    counter_lockfile_unlock_get
      functionSourceFile: '/src/openvswitch/lib/lockfile.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_lockfile_unlock_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/lockfile.c:39,1'
          Dst:             counter_lockfile_unlock_get_unsafe
    - functionName:    counter_lockfile_unlock_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/lockfile.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    lockfile_error_count
      functionSourceFile: '/src/openvswitch/lib/lockfile.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 38
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_lockfile_error_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/lockfile.c:38,1'
          Dst:             counter_lockfile_error_get
    - functionName:    counter_lockfile_error_get
      functionSourceFile: '/src/openvswitch/lib/lockfile.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 38
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_lockfile_error_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/lockfile.c:38,1'
          Dst:             counter_lockfile_error_get_unsafe
    - functionName:    counter_lockfile_error_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/lockfile.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 38
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    lockfile_lock_count
      functionSourceFile: '/src/openvswitch/lib/lockfile.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37
      functionLinenumberEnd: 37
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_lockfile_lock_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/lockfile.c:37,1'
          Dst:             counter_lockfile_lock_get
    - functionName:    counter_lockfile_lock_get
      functionSourceFile: '/src/openvswitch/lib/lockfile.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37
      functionLinenumberEnd: 37
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_lockfile_lock_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/lockfile.c:37,1'
          Dst:             counter_lockfile_lock_get_unsafe
    - functionName:    counter_lockfile_lock_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/lockfile.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37
      functionLinenumberEnd: 37
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_insert_fast
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 289
      functionLinenumberEnd: 295
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          38
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_insert_at
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 306
      functionLinenumberEnd: 311
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_expand_at
        - hmap_insert_fast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:307,5'
          Dst:             hmap_insert_fast
        - Src:             './include/openvswitch/hmap.h:309,9'
          Dst:             hmap_expand_at
    - functionName:    hmap_next_with_hash__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 348
      functionLinenumberEnd: 352
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          40
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_next_with_hash
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 395
      functionLinenumberEnd: 396
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next_with_hash__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:396,12'
          Dst:             hmap_next_with_hash__
    - functionName:    lockfile_hash
      functionSourceFile: '/src/openvswitch/lib/lockfile.c'
      linkageType:     InternalLinkage
      functionLinenumber: 177
      functionLinenumberEnd: 179
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_bytes
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/lockfile.c:179,23'
          Dst:             hash_bytes
        - Src:             'lib/lockfile.c:178,12'
          Dst:             hash_bytes
    - functionName:    hmap_first_with_hash
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 360
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next_with_hash__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:360,12'
          Dst:             hmap_next_with_hash__
    - functionName:    lockfile_register
      functionSourceFile: '/src/openvswitch/lib/lockfile.c'
      linkageType:     InternalLinkage
      functionLinenumber: 209
      functionLinenumberEnd: 225
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - size_t
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          84
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - hmap_insert_at
        - lockfile_find
        - lockfile_hash
        - lockfile_unhash
        - vlog
        - xmalloc
        - xstrdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/lockfile.c:212,16'
          Dst:             lockfile_find
        - Src:             'lib/lockfile.c:214,9'
          Dst:             vlog
        - Src:             'lib/lockfile.c:215,9'
          Dst:             lockfile_unhash
        - Src:             'lib/lockfile.c:218,16'
          Dst:             xmalloc
        - Src:             'lib/lockfile.c:219,22'
          Dst:             xstrdup
        - Src:             'lib/lockfile.c:223,5'
          Dst:             lockfile_hash
        - Src:             'lib/lockfile.c:223,5'
          Dst:             hmap_insert_at
    - functionName:    lockfile_find
      functionSourceFile: '/src/openvswitch/lib/lockfile.c'
      linkageType:     InternalLinkage
      functionLinenumber: 184
      functionLinenumberEnd: 194
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          86
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - hmap_first_with_hash
        - hmap_next_with_hash
        - lockfile_hash
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/lockfile.c:187,5'
          Dst:             lockfile_hash
        - Src:             'lib/lockfile.c:187,5'
          Dst:             hmap_first_with_hash
        - Src:             'lib/lockfile.c:187,5'
          Dst:             hmap_next_with_hash
    - functionName:    lockfile_unhash
      functionSourceFile: '/src/openvswitch/lib/lockfile.c'
      linkageType:     InternalLinkage
      functionLinenumber: 198
      functionLinenumberEnd: 204
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - close
        - hmap_remove
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/lockfile.c:200,9'
          Dst:             close
        - Src:             'lib/lockfile.c:202,9'
          Dst:             hmap_remove
    - functionName:    hmap_remove
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 317
      functionLinenumberEnd: 324
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          48
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_next__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 401
      functionLinenumberEnd: 410
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          51
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_next
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 429
      functionLinenumberEnd: 432
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_next__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:432,15'
          Dst:             hmap_next__
    - functionName:    hmap_first
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 416
      functionLinenumberEnd: 417
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:417,12'
          Dst:             hmap_next__
    - functionName:    lockfile_postfork
      functionSourceFile: '/src/openvswitch/lib/lockfile.c'
      linkageType:     InternalLinkage
      functionLinenumber: 162
      functionLinenumberEnd: 173
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         18
      ICount:          86
      EdgeCount:       22
      CyclomaticComplexity: 6
      functionsReached:
        - hmap_first
        - hmap_next
        - lockfile_unhash
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - vlog
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/lockfile.c:165,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/lockfile.c:166,5'
          Dst:             hmap_first
        - Src:             'lib/lockfile.c:168,13'
          Dst:             vlog
        - Src:             'lib/lockfile.c:169,13'
          Dst:             lockfile_unhash
        - Src:             'lib/lockfile.c:166,5'
          Dst:             hmap_next
        - Src:             'lib/lockfile.c:172,5'
          Dst:             ovs_mutex_unlock
    - functionName:    lockfile_unlock_add
      functionSourceFile: '/src/openvswitch/lib/lockfile.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_lockfile_unlock_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/lockfile.c:39,1'
          Dst:             counter_lockfile_unlock_get
    - functionName:    lockfile_do_unlock
      functionSourceFile: '/src/openvswitch/lib/lockfile.c'
      linkageType:     InternalLinkage
      functionLinenumber: 230
      functionLinenumberEnd: 232
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - lockfile_unhash
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/lockfile.c:231,5'
          Dst:             lockfile_unhash
    - functionName:    lockfile_unlock
      functionSourceFile: '/src/openvswitch/lib/lockfile.c'
      linkageType:     InternalLinkage
      functionLinenumber: 145
      functionLinenumberEnd: 155
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - lockfile_do_unlock
        - lockfile_unlock_add
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/lockfile.c:147,9'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/lockfile.c:148,9'
          Dst:             lockfile_do_unlock
        - Src:             'lib/lockfile.c:149,9'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/lockfile.c:151,9'
          Dst:             lockfile_unlock_add
    - functionName:    lockfile_error_add
      functionSourceFile: '/src/openvswitch/lib/lockfile.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 38
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_lockfile_error_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/lockfile.c:38,1'
          Dst:             counter_lockfile_error_get
    - functionName:    lockfile_try_lock
      functionSourceFile: '/src/openvswitch/lib/lockfile.c'
      linkageType:     InternalLinkage
      functionLinenumber: 237
      functionLinenumberEnd: 292
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         41
      ICount:          240
      EdgeCount:       53
      CyclomaticComplexity: 14
      functionsReached:
        - __errno_location
        - close
        - fcntl
        - fstat
        - getpid
        - lockfile_find
        - lockfile_register
        - open
        - ovs_strerror
        - stat
        - vlog
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/lockfile.c:247,10'
          Dst:             stat
        - Src:             'lib/lockfile.c:248,13'
          Dst:             lockfile_find
        - Src:             'lib/lockfile.c:249,21'
          Dst:             getpid
        - Src:             'lib/lockfile.c:252,16'
          Dst:             __errno_location
        - Src:             'lib/lockfile.c:253,9'
          Dst:             __errno_location
        - Src:             'lib/lockfile.c:253,9'
          Dst:             ovs_strerror
        - Src:             'lib/lockfile.c:253,9'
          Dst:             vlog
        - Src:             'lib/lockfile.c:255,16'
          Dst:             __errno_location
        - Src:             'lib/lockfile.c:259,10'
          Dst:             open
        - Src:             'lib/lockfile.c:261,9'
          Dst:             __errno_location
        - Src:             'lib/lockfile.c:261,9'
          Dst:             ovs_strerror
        - Src:             'lib/lockfile.c:261,9'
          Dst:             vlog
        - Src:             'lib/lockfile.c:263,16'
          Dst:             __errno_location
        - Src:             'lib/lockfile.c:267,9'
          Dst:             fstat
        - Src:             'lib/lockfile.c:268,9'
          Dst:             __errno_location
        - Src:             'lib/lockfile.c:268,9'
          Dst:             ovs_strerror
        - Src:             'lib/lockfile.c:268,9'
          Dst:             vlog
        - Src:             'lib/lockfile.c:270,9'
          Dst:             close
        - Src:             'lib/lockfile.c:271,16'
          Dst:             __errno_location
        - Src:             'lib/lockfile.c:281,13'
          Dst:             fcntl
        - Src:             'lib/lockfile.c:281,44'
          Dst:             __errno_location
        - Src:             'lib/lockfile.c:284,22'
          Dst:             lockfile_register
        - Src:             'lib/lockfile.c:286,14'
          Dst:             fcntl
        - Src:             'lib/lockfile.c:289,9'
          Dst:             close
    - functionName:    lockfile_lock_add
      functionSourceFile: '/src/openvswitch/lib/lockfile.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37
      functionLinenumberEnd: 37
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_lockfile_lock_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/lockfile.c:37,1'
          Dst:             counter_lockfile_lock_get
    - functionName:    lockfile_lock
      functionSourceFile: '/src/openvswitch/lib/lockfile.c'
      linkageType:     InternalLinkage
      functionLinenumber: 103
      functionLinenumberEnd: 138
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         30
      ICount:          140
      EdgeCount:       37
      CyclomaticComplexity: 9
      functionsReached:
        - getpid
        - lockfile_error_add
        - lockfile_lock_add
        - lockfile_name
        - lockfile_try_lock
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - ovs_strerror
        - vlog
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/lockfile.c:112,5'
          Dst:             lockfile_lock_add
        - Src:             'lib/lockfile.c:114,17'
          Dst:             lockfile_name
        - Src:             'lib/lockfile.c:116,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/lockfile.c:117,13'
          Dst:             lockfile_try_lock
        - Src:             'lib/lockfile.c:118,5'
          Dst:             ovs_mutex_unlock
        - Src:             'lib/lockfile.c:121,9'
          Dst:             lockfile_error_add
        - Src:             'lib/lockfile.c:125,20'
          Dst:             getpid
        - Src:             'lib/lockfile.c:126,13'
          Dst:             vlog
        - Src:             'lib/lockfile.c:129,13'
          Dst:             vlog
        - Src:             'lib/lockfile.c:132,13'
          Dst:             ovs_strerror
        - Src:             'lib/lockfile.c:132,13'
          Dst:             vlog
    - functionName:    lockfile_name
      functionSourceFile: '/src/openvswitch/lib/lockfile.c'
      linkageType:     InternalLinkage
      functionLinenumber: 72
      functionLinenumberEnd: 91
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - follow_symlinks
        - strrchr
        - xasprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/lockfile.c:82,16'
          Dst:             follow_symlinks
        - Src:             'lib/lockfile.c:83,13'
          Dst:             strrchr
        - Src:             'lib/lockfile.c:86,19'
          Dst:             xasprintf
        - Src:             'lib/lockfile.c:88,19'
          Dst:             xasprintf
    - functionName:    ofpact_init_MULTIPATH
      functionSourceFile: '/src/openvswitch/./include/openvswitch/ofp-actions.h'
      linkageType:     InternalLinkage
      functionLinenumber: 1322
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ofpact_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/ofp-actions.h:1322,1'
          Dst:             ofpact_init
    - functionName:    round_up_pow2
      functionSourceFile: '/src/openvswitch/lib/multipath.c'
      linkageType:     InternalLinkage
      functionLinenumber: 85
      functionLinenumberEnd: 91
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          31
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_rot
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 32
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhash_add__
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hash_rot
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:71,12'
          Dst:             hash_rot
    - functionName:    mhash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_rot
        - mhash_add__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:78,12'
          Dst:             mhash_add__
        - Src:             'lib/hash.h:79,12'
          Dst:             hash_rot
    - functionName:    mhash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 108
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_add
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:109,12'
          Dst:             mhash_add
    - functionName:    hash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:119,12'
          Dst:             mhash_finish
    - functionName:    hash_2words
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 153
      functionLinenumberEnd: 154
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_add
        - hash_finish
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:154,33'
          Dst:             hash_add
        - Src:             'lib/hash.h:154,24'
          Dst:             hash_add
        - Src:             'lib/hash.h:154,12'
          Dst:             hash_finish
    - functionName:    algorithm_iter_hash
      functionSourceFile: '/src/openvswitch/lib/multipath.c'
      linkageType:     InternalLinkage
      functionLinenumber: 96
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      short
      argCount:        3
      argTypes:
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          71
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hash_2words
        - round_up_pow2
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/multipath.c:101,18'
          Dst:             round_up_pow2
        - Src:             'lib/multipath.c:106,16'
          Dst:             hash_2words
    - functionName:    algorithm_hrw
      functionSourceFile: '/src/openvswitch/lib/multipath.c'
      linkageType:     InternalLinkage
      functionLinenumber: 65
      functionLinenumberEnd: 79
      functionDepth:   0
      returnType:      short
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          64
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - hash_2words
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/multipath.c:71,19'
          Dst:             hash_2words
        - Src:             'lib/multipath.c:73,27'
          Dst:             hash_2words
    - functionName:    multipath_format
      functionSourceFile: '/src/openvswitch/lib/multipath.c'
      linkageType:     InternalLinkage
      functionLinenumber: 234
      functionLinenumberEnd: 261
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          85
      EdgeCount:       17
      CyclomaticComplexity: 10
      functionsReached:
        - ds_put_format
        - flow_hash_fields_to_str
        - mf_format_subfield
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/multipath.c:239,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/multipath.c:237,14'
          Dst:             flow_hash_fields_to_str
        - Src:             'lib/multipath.c:256,5'
          Dst:             ds_put_format
        - Src:             'lib/multipath.c:259,5'
          Dst:             mf_format_subfield
        - Src:             'lib/multipath.c:260,5'
          Dst:             ds_put_format
    - functionName:    multipath_parse__
      functionSourceFile: '/src/openvswitch/lib/multipath.c'
      linkageType:     InternalLinkage
      functionLinenumber: 145
      functionLinenumberEnd: 214
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         53
      ICount:          347
      EdgeCount:       71
      CyclomaticComplexity: 20
      functionsReached:
        - atoi
        - mf_nxm_header
        - mf_parse_subfield
        - ofpact_init_MULTIPATH
        - strcasecmp
        - strtok_r
        - xasprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/multipath.c:151,14'
          Dst:             strtok_r
        - Src:             'lib/multipath.c:152,13'
          Dst:             strtok_r
        - Src:             'lib/multipath.c:153,17'
          Dst:             strtok_r
        - Src:             'lib/multipath.c:154,19'
          Dst:             strtok_r
        - Src:             'lib/multipath.c:155,11'
          Dst:             strtok_r
        - Src:             'lib/multipath.c:156,11'
          Dst:             strtok_r
        - Src:             'lib/multipath.c:158,16'
          Dst:             xasprintf
        - Src:             'lib/multipath.c:161,5'
          Dst:             ofpact_init_MULTIPATH
        - Src:             'lib/multipath.c:162,10'
          Dst:             strcasecmp
        - Src:             'lib/multipath.c:164,17'
          Dst:             strcasecmp
        - Src:             'lib/multipath.c:166,17'
          Dst:             strcasecmp
        - Src:             'lib/multipath.c:168,17'
          Dst:             strcasecmp
        - Src:             'lib/multipath.c:170,17'
          Dst:             strcasecmp
        - Src:             'lib/multipath.c:172,17'
          Dst:             strcasecmp
        - Src:             'lib/multipath.c:174,17'
          Dst:             strcasecmp
        - Src:             'lib/multipath.c:177,16'
          Dst:             xasprintf
        - Src:             'lib/multipath.c:179,17'
          Dst:             atoi
        - Src:             'lib/multipath.c:180,10'
          Dst:             strcasecmp
        - Src:             'lib/multipath.c:182,17'
          Dst:             strcasecmp
        - Src:             'lib/multipath.c:184,17'
          Dst:             strcasecmp
        - Src:             'lib/multipath.c:186,17'
          Dst:             strcasecmp
        - Src:             'lib/multipath.c:189,16'
          Dst:             xasprintf
        - Src:             'lib/multipath.c:191,15'
          Dst:             atoi
        - Src:             'lib/multipath.c:193,16'
          Dst:             xasprintf
        - Src:             'lib/multipath.c:197,15'
          Dst:             atoi
        - Src:             'lib/multipath.c:199,13'
          Dst:             mf_parse_subfield
        - Src:             'lib/multipath.c:203,10'
          Dst:             mf_nxm_header
        - Src:             'lib/multipath.c:204,16'
          Dst:             xasprintf
        - Src:             'lib/multipath.c:208,16'
          Dst:             xasprintf
    - functionName:    multipath_parse
      functionSourceFile: '/src/openvswitch/lib/multipath.c'
      linkageType:     InternalLinkage
      functionLinenumber: 223
      functionLinenumberEnd: 227
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - multipath_parse__
        - xstrdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/multipath.c:224,15'
          Dst:             xstrdup
        - Src:             'lib/multipath.c:225,19'
          Dst:             multipath_parse__
    - functionName:    multipath_algorithm
      functionSourceFile: '/src/openvswitch/lib/multipath.c'
      linkageType:     InternalLinkage
      functionLinenumber: 115
      functionLinenumberEnd: 136
      functionDepth:   0
      returnType:      short
      argCount:        4
      argTypes:
        - int
        - int
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          92
      EdgeCount:       14
      CyclomaticComplexity: 2
      functionsReached:
        - abort
        - algorithm_hrw
        - algorithm_iter_hash
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/multipath.c:116,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/multipath.c:128,19'
          Dst:             algorithm_hrw
        - Src:             'lib/multipath.c:129,19'
          Dst:             algorithm_iter_hash
        - Src:             'lib/multipath.c:132,16'
          Dst:             algorithm_iter_hash
        - Src:             'lib/multipath.c:135,5'
          Dst:             abort
    - functionName:    multipath_execute
      functionSourceFile: '/src/openvswitch/lib/multipath.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 61
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          62
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - flow_hash_fields
        - flow_mask_hash_fields
        - multipath_algorithm
        - nxm_reg_load
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/multipath.c:55,21'
          Dst:             flow_hash_fields
        - Src:             'lib/multipath.c:56,21'
          Dst:             multipath_algorithm
        - Src:             'lib/multipath.c:59,5'
          Dst:             flow_mask_hash_fields
        - Src:             'lib/multipath.c:60,5'
          Dst:             nxm_reg_load
    - functionName:    multipath_check
      functionSourceFile: '/src/openvswitch/lib/multipath.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mf_check_dst
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/multipath.c:39,12'
          Dst:             mf_check_dst
    - functionName:    init_this_module_ovs_numa
      functionSourceFile: '/src/openvswitch/lib/ovs-numa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37
      functionLinenumberEnd: 37
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-numa.c:37,1'
          Dst:             vlog_insert_module
    - functionName:    hmap_remove
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 317
      functionLinenumberEnd: 324
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          48
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_rot
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 32
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhash_add__
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hash_rot
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:71,12'
          Dst:             hash_rot
    - functionName:    mhash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_rot
        - mhash_add__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:78,12'
          Dst:             mhash_add__
        - Src:             'lib/hash.h:79,12'
          Dst:             hash_rot
    - functionName:    mhash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 108
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_add
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:109,12'
          Dst:             mhash_add
    - functionName:    hash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:119,12'
          Dst:             mhash_finish
    - functionName:    hmap_next_with_hash__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 348
      functionLinenumberEnd: 352
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          40
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_next__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 401
      functionLinenumberEnd: 410
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          51
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    cpu_detected
      functionSourceFile: '/src/openvswitch/lib/ovs-numa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 176
      functionLinenumberEnd: 189
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          55
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - access
        - snprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-numa.c:178,15'
          Dst:             snprintf
        - Src:             'lib/ovs-numa.c:184,9'
          Dst:             access
    - 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:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    contain_all_digits
      functionSourceFile: '/src/openvswitch/lib/ovs-numa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 96
      functionLinenumberEnd: 97
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - strspn
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-numa.c:97,16'
          Dst:             strspn
    - functionName:    ovs_list_insert
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 169
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_insert_fast
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 289
      functionLinenumberEnd: 295
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          38
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_list_init
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_insert_at
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 306
      functionLinenumberEnd: 311
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_expand_at
        - hmap_insert_fast
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:307,5'
          Dst:             hmap_insert_fast
        - Src:             './include/openvswitch/hmap.h:309,9'
          Dst:             hmap_expand_at
    - functionName:    insert_new_cpu_core
      functionSourceFile: '/src/openvswitch/lib/ovs-numa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 115
      functionLinenumberEnd: 123
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          38
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_int
        - hmap_insert_at
        - ovs_list_insert
        - xzalloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-numa.c:116,26'
          Dst:             xzalloc
        - Src:             'lib/ovs-numa.c:118,5'
          Dst:             hash_int
        - Src:             'lib/ovs-numa.c:118,5'
          Dst:             hmap_insert_at
        - Src:             'lib/ovs-numa.c:119,5'
          Dst:             ovs_list_insert
    - functionName:    hash_int
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 408
      functionLinenumberEnd: 409
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_2words
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:409,12'
          Dst:             hash_2words
    - functionName:    hash_2words
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 153
      functionLinenumberEnd: 154
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_add
        - hash_finish
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:154,33'
          Dst:             hash_add
        - Src:             'lib/hash.h:154,24'
          Dst:             hash_add
        - Src:             'lib/hash.h:154,12'
          Dst:             hash_finish
    - functionName:    insert_new_numa_node
      functionSourceFile: '/src/openvswitch/lib/ovs-numa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 103
      functionLinenumberEnd: 110
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_int
        - hmap_insert_at
        - ovs_list_init
        - xzalloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-numa.c:104,27'
          Dst:             xzalloc
        - Src:             'lib/ovs-numa.c:106,5'
          Dst:             hash_int
        - Src:             'lib/ovs-numa.c:106,5'
          Dst:             hmap_insert_at
        - Src:             'lib/ovs-numa.c:107,5'
          Dst:             ovs_list_init
    - functionName:    ovs_numa_thread_setaffinity_core
      functionSourceFile: '/src/openvswitch/lib/ovs-numa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 654
      functionLinenumberEnd: 665
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          49
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - get_core_by_core_id
        - ovs_numa_dump_add
        - ovs_numa_dump_create
        - ovs_numa_dump_destroy
        - ovs_numa_thread_setaffinity_dump
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-numa.c:655,35'
          Dst:             get_core_by_core_id
        - Src:             'lib/ovs-numa.c:656,38'
          Dst:             ovs_numa_dump_create
        - Src:             'lib/ovs-numa.c:660,9'
          Dst:             ovs_numa_dump_add
        - Src:             'lib/ovs-numa.c:661,15'
          Dst:             ovs_numa_thread_setaffinity_dump
        - Src:             'lib/ovs-numa.c:664,5'
          Dst:             ovs_numa_dump_destroy
    - functionName:    get_core_by_core_id
      functionSourceFile: '/src/openvswitch/lib/ovs-numa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 259
      functionLinenumberEnd: 270
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          68
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hash_int
        - hmap_first_with_hash
        - hmap_next_with_hash
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-numa.c:262,5'
          Dst:             hash_int
        - Src:             'lib/ovs-numa.c:262,5'
          Dst:             hmap_first_with_hash
        - Src:             'lib/ovs-numa.c:262,5'
          Dst:             hmap_next_with_hash
    - functionName:    ovs_numa_dump_create
      functionSourceFile: '/src/openvswitch/lib/ovs-numa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 421
      functionLinenumberEnd: 427
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_init
        - xmalloc
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-numa.c:422,34'
          Dst:             xmalloc
        - Src:             'lib/ovs-numa.c:424,5'
          Dst:             hmap_init
        - Src:             'lib/ovs-numa.c:425,5'
          Dst:             hmap_init
    - functionName:    ovs_numa_dump_add
      functionSourceFile: '/src/openvswitch/lib/ovs-numa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 432
      functionLinenumberEnd: 452
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          111
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hash_2words
        - hash_int
        - hmap_first_with_hash
        - hmap_insert_at
        - hmap_next_with_hash
        - xzalloc
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-numa.c:433,36'
          Dst:             xzalloc
        - Src:             'lib/ovs-numa.c:438,5'
          Dst:             hash_2words
        - Src:             'lib/ovs-numa.c:438,5'
          Dst:             hmap_insert_at
        - Src:             'lib/ovs-numa.c:440,5'
          Dst:             hash_int
        - Src:             'lib/ovs-numa.c:440,5'
          Dst:             hmap_first_with_hash
        - Src:             'lib/ovs-numa.c:440,5'
          Dst:             hmap_next_with_hash
        - Src:             'lib/ovs-numa.c:448,9'
          Dst:             xzalloc
        - Src:             'lib/ovs-numa.c:451,5'
          Dst:             hash_int
        - Src:             'lib/ovs-numa.c:451,5'
          Dst:             hmap_insert_at
    - functionName:    ovs_numa_thread_setaffinity_dump
      functionSourceFile: '/src/openvswitch/lib/ovs-numa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 626
      functionLinenumberEnd: 651
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         28
      ICount:          145
      EdgeCount:       35
      CyclomaticComplexity: 9
      functionsReached:
        - hmap_first
        - hmap_next
        - ovs_strerror
        - pthread_self
        - pthread_setaffinity_np
        - vlog
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-numa.c:638,5'
          Dst:             hmap_first
        - Src:             'lib/ovs-numa.c:638,5'
          Dst:             hmap_next
        - Src:             'lib/ovs-numa.c:641,34'
          Dst:             pthread_self
        - Src:             'lib/ovs-numa.c:641,11'
          Dst:             pthread_setaffinity_np
        - Src:             'lib/ovs-numa.c:643,9'
          Dst:             ovs_strerror
        - Src:             'lib/ovs-numa.c:643,9'
          Dst:             vlog
    - functionName:    ovs_numa_dump_destroy
      functionSourceFile: '/src/openvswitch/lib/ovs-numa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 559
      functionLinenumberEnd: 579
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         18
      ICount:          98
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - hmap_destroy
        - hmap_pop_helper__
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-numa.c:567,5'
          Dst:             hmap_pop_helper__
        - Src:             'lib/ovs-numa.c:571,5'
          Dst:             hmap_pop_helper__
        - Src:             'lib/ovs-numa.c:575,5'
          Dst:             hmap_destroy
        - Src:             'lib/ovs-numa.c:576,5'
          Dst:             hmap_destroy
    - functionName:    hmap_pop_helper__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 226
      functionLinenumberEnd: 238
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          66
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - hmap_remove
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:232,13'
          Dst:             hmap_remove
    - functionName:    hmap_first
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 416
      functionLinenumberEnd: 417
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next__
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:417,12'
          Dst:             hmap_next__
    - functionName:    hmap_next
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 429
      functionLinenumberEnd: 432
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_next__
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:432,15'
          Dst:             hmap_next__
    - functionName:    pthread_setaffinity_np
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_first_with_hash
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 360
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next_with_hash__
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:360,12'
          Dst:             hmap_next_with_hash__
    - functionName:    hmap_next_with_hash
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 395
      functionLinenumberEnd: 396
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next_with_hash__
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:396,12'
          Dst:             hmap_next_with_hash__
    - functionName:    ovs_numa_thread_getaffinity_dump
      functionSourceFile: '/src/openvswitch/lib/ovs-numa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 583
      functionLinenumberEnd: 622
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         37
      ICount:          207
      EdgeCount:       47
      CyclomaticComplexity: 12
      functionsReached:
        - hmap_first
        - hmap_next
        - ovs_numa_dump_add
        - ovs_numa_dump_count
        - ovs_numa_dump_create
        - ovs_numa_dump_destroy
        - ovs_strerror
        - pthread_getaffinity_np
        - pthread_self
        - vlog
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-numa.c:598,34'
          Dst:             pthread_self
        - Src:             'lib/ovs-numa.c:598,11'
          Dst:             pthread_getaffinity_np
        - Src:             'lib/ovs-numa.c:600,9'
          Dst:             ovs_strerror
        - Src:             'lib/ovs-numa.c:600,9'
          Dst:             vlog
        - Src:             'lib/ovs-numa.c:604,12'
          Dst:             ovs_numa_dump_create
        - Src:             'lib/ovs-numa.c:606,5'
          Dst:             hmap_first
        - Src:             'lib/ovs-numa.c:611,17'
          Dst:             ovs_numa_dump_add
        - Src:             'lib/ovs-numa.c:606,5'
          Dst:             hmap_next
        - Src:             'lib/ovs-numa.c:616,10'
          Dst:             ovs_numa_dump_count
        - Src:             'lib/ovs-numa.c:617,9'
          Dst:             ovs_numa_dump_destroy
    - functionName:    pthread_getaffinity_np
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_numa_dump_count
      functionSourceFile: '/src/openvswitch/lib/ovs-numa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 553
      functionLinenumberEnd: 554
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_count
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-numa.c:554,12'
          Dst:             hmap_count
    - functionName:    hmap_count
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 263
      functionLinenumberEnd: 264
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_numa_dump_contains_core
      functionSourceFile: '/src/openvswitch/lib/ovs-numa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 538
      functionLinenumberEnd: 549
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          89
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - hash_2words
        - hmap_first_with_hash
        - hmap_next_with_hash
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-numa.c:541,5'
          Dst:             hash_2words
        - Src:             'lib/ovs-numa.c:541,5'
          Dst:             hmap_first_with_hash
        - Src:             'lib/ovs-numa.c:541,5'
          Dst:             hmap_next_with_hash
    - functionName:    ovs_numa_dump_n_cores_per_numa
      functionSourceFile: '/src/openvswitch/lib/ovs-numa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 515
      functionLinenumberEnd: 532
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         20
      ICount:          117
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - hmap_first
        - hmap_next
        - ovs_numa_dump_add
        - ovs_numa_dump_create
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-numa.c:516,34'
          Dst:             ovs_numa_dump_create
        - Src:             'lib/ovs-numa.c:519,5'
          Dst:             hmap_first
        - Src:             'lib/ovs-numa.c:528,13'
          Dst:             ovs_numa_dump_add
        - Src:             'lib/ovs-numa.c:519,5'
          Dst:             hmap_next
    - functionName:    ovs_numa_dump_cores_with_cmask
      functionSourceFile: '/src/openvswitch/lib/ovs-numa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 474
      functionLinenumberEnd: 510
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         31
      ICount:          172
      EdgeCount:       39
      CyclomaticComplexity: 10
      functionsReached:
        - get_core_by_core_id
        - hexit_value
        - ovs_numa_dump_add
        - ovs_numa_dump_create
        - strlen
        - strncmp
        - vlog
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-numa.c:475,34'
          Dst:             ovs_numa_dump_create
        - Src:             'lib/ovs-numa.c:481,10'
          Dst:             strncmp
        - Src:             'lib/ovs-numa.c:481,38'
          Dst:             strncmp
        - Src:             'lib/ovs-numa.c:485,18'
          Dst:             strlen
        - Src:             'lib/ovs-numa.c:489,15'
          Dst:             hexit_value
        - Src:             'lib/ovs-numa.c:491,13'
          Dst:             vlog
        - Src:             'lib/ovs-numa.c:497,41'
          Dst:             get_core_by_core_id
        - Src:             'lib/ovs-numa.c:500,21'
          Dst:             ovs_numa_dump_add
    - functionName:    ovs_numa_dump_cores_on_numa
      functionSourceFile: '/src/openvswitch/lib/ovs-numa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 457
      functionLinenumberEnd: 469
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          78
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - get_numa_by_numa_id
        - ovs_numa_dump_add
        - ovs_numa_dump_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-numa.c:458,34'
          Dst:             ovs_numa_dump_create
        - Src:             'lib/ovs-numa.c:459,30'
          Dst:             get_numa_by_numa_id
        - Src:             'lib/ovs-numa.c:465,13'
          Dst:             ovs_numa_dump_add
    - functionName:    get_numa_by_numa_id
      functionSourceFile: '/src/openvswitch/lib/ovs-numa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 275
      functionLinenumberEnd: 286
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          68
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hash_int
        - hmap_first_with_hash
        - hmap_next_with_hash
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-numa.c:278,5'
          Dst:             hash_int
        - Src:             'lib/ovs-numa.c:278,5'
          Dst:             hmap_first_with_hash
        - Src:             'lib/ovs-numa.c:278,5'
          Dst:             hmap_next_with_hash
    - functionName:    ovs_numa_get_largest_core_id
      functionSourceFile: '/src/openvswitch/lib/ovs-numa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 402
      functionLinenumberEnd: 417
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         16
      ICount:          80
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - hmap_first
        - hmap_next
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-numa.c:410,5'
          Dst:             hmap_first
        - Src:             'lib/ovs-numa.c:410,5'
          Dst:             hmap_next
    - functionName:    ovs_numa_get_n_cores_on_numa
      functionSourceFile: '/src/openvswitch/lib/ovs-numa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 380
      functionLinenumberEnd: 388
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - get_numa_by_numa_id
        - ovs_list_size
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-numa.c:381,30'
          Dst:             get_numa_by_numa_id
        - Src:             'lib/ovs-numa.c:384,16'
          Dst:             ovs_list_size
    - functionName:    ovs_list_size
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 307
      functionLinenumberEnd: 314
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         5
      ICount:          34
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_numa_get_numa_id
      functionSourceFile: '/src/openvswitch/lib/ovs-numa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 366
      functionLinenumberEnd: 374
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - get_core_by_core_id
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-numa.c:367,29'
          Dst:             get_core_by_core_id
    - functionName:    ovs_numa_get_n_cores
      functionSourceFile: '/src/openvswitch/lib/ovs-numa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 357
      functionLinenumberEnd: 358
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         6
      ICount:          25
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_count
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-numa.c:358,34'
          Dst:             hmap_count
    - functionName:    ovs_numa_core_id_is_valid
      functionSourceFile: '/src/openvswitch/lib/ovs-numa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 342
      functionLinenumberEnd: 343
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_numa_get_n_cores
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-numa.c:343,45'
          Dst:             ovs_numa_get_n_cores
    - functionName:    ovs_numa_get_n_numas
      functionSourceFile: '/src/openvswitch/lib/ovs-numa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 349
      functionLinenumberEnd: 350
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         6
      ICount:          25
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_count
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-numa.c:350,34'
          Dst:             hmap_count
    - functionName:    ovs_numa_numa_id_is_valid
      functionSourceFile: '/src/openvswitch/lib/ovs-numa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 336
      functionLinenumberEnd: 337
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_numa_get_n_numas
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-numa.c:337,45'
          Dst:             ovs_numa_get_n_numas
    - functionName:    ovs_numa_set_dummy
      functionSourceFile: '/src/openvswitch/lib/ovs-numa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 327
      functionLinenumberEnd: 332
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - xstrdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-numa.c:329,5'
          Dst:             ovs_ignore
        - Src:             'lib/ovs-numa.c:331,20'
          Dst:             xstrdup
    - functionName:    discover_numa_and_core
      functionSourceFile: '/src/openvswitch/lib/ovs-numa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 196
      functionLinenumberEnd: 254
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         43
      ICount:          202
      EdgeCount:       56
      CyclomaticComplexity: 15
      functionsReached:
        - __errno_location
        - closedir
        - contain_all_digits
        - cpu_detected
        - insert_new_cpu_core
        - insert_new_numa_node
        - opendir
        - ovs_strerror
        - readdir
        - strncmp
        - strtoul
        - vlog
        - xasprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-numa.c:203,11'
          Dst:             opendir
        - Src:             'lib/ovs-numa.c:205,17'
          Dst:             __errno_location
        - Src:             'lib/ovs-numa.c:209,9'
          Dst:             closedir
        - Src:             'lib/ovs-numa.c:217,20'
          Dst:             xasprintf
        - Src:             'lib/ovs-numa.c:219,20'
          Dst:             xasprintf
        - Src:             'lib/ovs-numa.c:222,15'
          Dst:             opendir
        - Src:             'lib/ovs-numa.c:229,17'
          Dst:             insert_new_numa_node
        - Src:             'lib/ovs-numa.c:231,30'
          Dst:             readdir
        - Src:             'lib/ovs-numa.c:232,22'
          Dst:             strncmp
        - Src:             'lib/ovs-numa.c:233,24'
          Dst:             contain_all_digits
        - Src:             'lib/ovs-numa.c:236,31'
          Dst:             strtoul
        - Src:             'lib/ovs-numa.c:237,25'
          Dst:             cpu_detected
        - Src:             'lib/ovs-numa.c:238,25'
          Dst:             insert_new_cpu_core
        - Src:             'lib/ovs-numa.c:242,13'
          Dst:             closedir
        - Src:             'lib/ovs-numa.c:243,20'
          Dst:             __errno_location
        - Src:             'lib/ovs-numa.c:244,13'
          Dst:             __errno_location
        - Src:             'lib/ovs-numa.c:244,13'
          Dst:             ovs_strerror
        - Src:             'lib/ovs-numa.c:244,13'
          Dst:             vlog
    - 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:    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:    2
      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:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    discover_numa_and_core_dummy
      functionSourceFile: '/src/openvswitch/lib/ovs-numa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 138
      functionLinenumberEnd: 170
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         20
      ICount:          112
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - hash_int
        - hmap_first_with_hash
        - insert_new_cpu_core
        - insert_new_numa_node
        - strtok_r
        - strtol
        - vlog
        - xstrdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-numa.c:139,18'
          Dst:             xstrdup
        - Src:             'lib/ovs-numa.c:143,15'
          Dst:             strtok_r
        - Src:             'lib/ovs-numa.c:149,19'
          Dst:             strtol
        - Src:             'lib/ovs-numa.c:151,13'
          Dst:             vlog
        - Src:             'lib/ovs-numa.c:155,55'
          Dst:             hash_int
        - Src:             'lib/ovs-numa.c:155,17'
          Dst:             hmap_first_with_hash
        - Src:             'lib/ovs-numa.c:160,17'
          Dst:             insert_new_numa_node
        - Src:             'lib/ovs-numa.c:163,9'
          Dst:             insert_new_cpu_core
        - Src:             'lib/ovs-numa.c:144,15'
          Dst:             strtok_r
    - functionName:    ovsthread_once_start
      functionSourceFile: '/src/openvswitch/./include/openvswitch/thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsthread_once_start__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/thread.h:161,12'
          Dst:             ovsthread_once_start__
    - functionName:    ovs_numa_init
      functionSourceFile: '/src/openvswitch/lib/ovs-numa.c'
      linkageType:     InternalLinkage
      functionLinenumber: 292
      functionLinenumberEnd: 318
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         31
      ICount:          131
      EdgeCount:       39
      CyclomaticComplexity: 10
      functionsReached:
        - discover_numa_and_core
        - discover_numa_and_core_dummy
        - hmap_count
        - hmap_first
        - hmap_next
        - ovs_list_size
        - ovsthread_once_done
        - ovsthread_once_start
        - vlog
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovs-numa.c:295,9'
          Dst:             ovsthread_once_start
        - Src:             'lib/ovs-numa.c:299,13'
          Dst:             discover_numa_and_core_dummy
        - Src:             'lib/ovs-numa.c:301,13'
          Dst:             discover_numa_and_core
        - Src:             'lib/ovs-numa.c:304,9'
          Dst:             hmap_first
        - Src:             'lib/ovs-numa.c:305,13'
          Dst:             ovs_list_size
        - Src:             'lib/ovs-numa.c:305,13'
          Dst:             vlog
        - Src:             'lib/ovs-numa.c:304,9'
          Dst:             hmap_next
        - Src:             'lib/ovs-numa.c:309,9'
          Dst:             hmap_count
        - Src:             'lib/ovs-numa.c:309,9'
          Dst:             hmap_count
        - Src:             'lib/ovs-numa.c:309,9'
          Dst:             vlog
        - Src:             'lib/ovs-numa.c:312,13'
          Dst:             hmap_count
        - Src:             'lib/ovs-numa.c:312,44'
          Dst:             hmap_count
        - Src:             'lib/ovs-numa.c:316,9'
          Dst:             ovsthread_once_done
    - functionName:    init_this_module_process
      functionSourceFile: '/src/openvswitch/lib/process.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40
      functionLinenumberEnd: 40
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/process.c:40,1'
          Dst:             vlog_insert_module
    - functionName:    process_start_init_coverage
      functionSourceFile: '/src/openvswitch/lib/process.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42
      functionLinenumberEnd: 42
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/process.c:42,1'
          Dst:             coverage_counter_register
    - functionName:    process_start_count
      functionSourceFile: '/src/openvswitch/lib/process.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42
      functionLinenumberEnd: 42
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_process_start_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/process.c:42,1'
          Dst:             counter_process_start_get
    - functionName:    counter_process_start_get
      functionSourceFile: '/src/openvswitch/lib/process.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42
      functionLinenumberEnd: 42
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_process_start_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/process.c:42,1'
          Dst:             counter_process_start_get_unsafe
    - functionName:    counter_process_start_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/process.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42
      functionLinenumberEnd: 42
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ticks_to_ms
      functionSourceFile: '/src/openvswitch/lib/process.c'
      linkageType:     InternalLinkage
      functionLinenumber: 375
      functionLinenumberEnd: 383
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/process.c:376,5'
          Dst:             ovs_ignore
    - functionName:    rlim_is_finite
      functionSourceFile: '/src/openvswitch/lib/process.c'
      linkageType:     InternalLinkage
      functionLinenumber: 187
      functionLinenumberEnd: 205
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          40
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_list_insert
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 169
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_list_push_back
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 204
      functionLinenumberEnd: 206
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_list_insert
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/list.h:205,5'
          Dst:             ovs_list_insert
    - functionName:    process_search_path
      functionSourceFile: '/src/openvswitch/lib/process.c'
      linkageType:     InternalLinkage
      functionLinenumber: 583
      functionLinenumberEnd: 604
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         18
      ICount:          97
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - getenv
        - stat
        - strchr
        - strtok_r
        - xasprintf
        - xstrdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/process.c:588,9'
          Dst:             strchr
        - Src:             'lib/process.c:588,31'
          Dst:             getenv
        - Src:             'lib/process.c:589,16'
          Dst:             stat
        - Src:             'lib/process.c:589,38'
          Dst:             xstrdup
        - Src:             'lib/process.c:592,20'
          Dst:             getenv
        - Src:             'lib/process.c:592,12'
          Dst:             xstrdup
        - Src:             'lib/process.c:593,16'
          Dst:             strtok_r
        - Src:             'lib/process.c:595,22'
          Dst:             xasprintf
        - Src:             'lib/process.c:596,13'
          Dst:             stat
        - Src:             'lib/process.c:594,16'
          Dst:             strtok_r
    - functionName:    process_wait
      functionSourceFile: '/src/openvswitch/lib/process.c'
      linkageType:     InternalLinkage
      functionLinenumber: 573
      functionLinenumberEnd: 579
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - poll_fd_wait_at
        - poll_immediate_wake_at
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/process.c:575,9'
          Dst:             poll_immediate_wake_at
        - Src:             'lib/process.c:577,9'
          Dst:             poll_fd_wait_at
    - functionName:    ovs_list_is_empty
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 320
      functionLinenumberEnd: 321
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    process_run
      functionSourceFile: '/src/openvswitch/lib/process.c'
      linkageType:     InternalLinkage
      functionLinenumber: 544
      functionLinenumberEnd: 567
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         36
      ICount:          165
      EdgeCount:       46
      CyclomaticComplexity: 12
      functionsReached:
        - __errno_location
        - ovs_list_is_empty
        - ovs_strerror
        - read
        - vlog
        - waitpid
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/process.c:547,10'
          Dst:             ovs_list_is_empty
        - Src:             'lib/process.c:547,47'
          Dst:             read
        - Src:             'lib/process.c:554,30'
          Dst:             waitpid
        - Src:             'lib/process.c:555,42'
          Dst:             __errno_location
        - Src:             'lib/process.c:560,21'
          Dst:             __errno_location
        - Src:             'lib/process.c:560,21'
          Dst:             ovs_strerror
        - Src:             'lib/process.c:560,21'
          Dst:             vlog
    - functionName:    process_status_msg
      functionSourceFile: '/src/openvswitch/lib/process.c'
      linkageType:     InternalLinkage
      functionLinenumber: 518
      functionLinenumberEnd: 538
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          86
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - ds_cstr
        - ds_put_cstr
        - ds_put_format
        - signal_name
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/process.c:521,9'
          Dst:             ds_put_format
        - Src:             'lib/process.c:526,23'
          Dst:             signal_name
        - Src:             'lib/process.c:525,9'
          Dst:             ds_put_format
        - Src:             'lib/process.c:531,23'
          Dst:             signal_name
        - Src:             'lib/process.c:530,9'
          Dst:             ds_put_format
        - Src:             'lib/process.c:533,9'
          Dst:             ds_put_format
        - Src:             'lib/process.c:536,9'
          Dst:             ds_put_cstr
        - Src:             'lib/process.c:538,12'
          Dst:             ds_cstr
    - functionName:    get_raw_process_info
      functionSourceFile: '/src/openvswitch/lib/process.c'
      linkageType:     InternalLinkage
      functionLinenumber: 392
      functionLinenumberEnd: 476
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          136
      EdgeCount:       22
      CyclomaticComplexity: 6
      functionsReached:
        - __errno_location
        - __isoc99_fscanf
        - fclose
        - fopen
        - get_boot_time
        - get_page_size
        - ovs_ignore
        - ovs_strerror
        - ovsthread_once_done
        - ovsthread_once_start
        - sprintf
        - ticks_to_ms
        - time_wall_msec
        - vlog
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/process.c:400,5'
          Dst:             ovs_ignore
        - Src:             'lib/process.c:402,5'
          Dst:             sprintf
        - Src:             'lib/process.c:403,14'
          Dst:             fopen
        - Src:             'lib/process.c:405,9'
          Dst:             ovsthread_once_start
        - Src:             'lib/process.c:405,9'
          Dst:             __errno_location
        - Src:             'lib/process.c:405,9'
          Dst:             ovs_strerror
        - Src:             'lib/process.c:405,9'
          Dst:             vlog
        - Src:             'lib/process.c:405,9'
          Dst:             ovsthread_once_done
        - Src:             'lib/process.c:410,9'
          Dst:             __isoc99_fscanf
        - Src:             'lib/process.c:461,5'
          Dst:             fclose
        - Src:             'lib/process.c:463,9'
          Dst:             ovsthread_once_start
        - Src:             'lib/process.c:463,9'
          Dst:             vlog
        - Src:             'lib/process.c:463,9'
          Dst:             ovsthread_once_done
        - Src:             'lib/process.c:467,18'
          Dst:             get_boot_time
        - Src:             'lib/process.c:467,36'
          Dst:             ticks_to_ms
        - Src:             'lib/process.c:470,23'
          Dst:             get_page_size
        - Src:             'lib/process.c:471,19'
          Dst:             time_wall_msec
        - Src:             'lib/process.c:472,20'
          Dst:             ticks_to_ms
    - functionName:    ovsthread_once_start
      functionSourceFile: '/src/openvswitch/./include/openvswitch/thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsthread_once_start__
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/thread.h:161,12'
          Dst:             ovsthread_once_start__
    - functionName:    get_process_info
      functionSourceFile: '/src/openvswitch/lib/process.c'
      linkageType:     InternalLinkage
      functionLinenumber: 480
      functionLinenumberEnd: 510
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          115
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - count_crashes
        - get_raw_process_info
        - ovs_ignore
        - ovs_strlcpy
        - strcmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/process.c:483,5'
          Dst:             ovs_ignore
        - Src:             'lib/process.c:484,10'
          Dst:             get_raw_process_info
        - Src:             'lib/process.c:488,5'
          Dst:             ovs_strlcpy
        - Src:             'lib/process.c:500,14'
          Dst:             get_raw_process_info
        - Src:             'lib/process.c:503,14'
          Dst:             strcmp
        - Src:             'lib/process.c:505,30'
          Dst:             count_crashes
    - functionName:    count_crashes
      functionSourceFile: '/src/openvswitch/lib/process.c'
      linkageType:     InternalLinkage
      functionLinenumber: 337
      functionLinenumberEnd: 370
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         28
      ICount:          121
      EdgeCount:       35
      CyclomaticComplexity: 9
      functionsReached:
        - __errno_location
        - fclose
        - feof
        - fgets
        - fopen
        - ovs_ignore
        - ovs_scan
        - ovs_strerror
        - ovsthread_once_done
        - ovsthread_once_start
        - sprintf
        - strchr
        - vlog
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/process.c:344,5'
          Dst:             ovs_ignore
        - Src:             'lib/process.c:346,5'
          Dst:             sprintf
        - Src:             'lib/process.c:347,14'
          Dst:             fopen
        - Src:             'lib/process.c:349,9'
          Dst:             ovsthread_once_start
        - Src:             'lib/process.c:349,9'
          Dst:             __errno_location
        - Src:             'lib/process.c:349,9'
          Dst:             ovs_strerror
        - Src:             'lib/process.c:349,9'
          Dst:             vlog
        - Src:             'lib/process.c:349,9'
          Dst:             ovsthread_once_done
        - Src:             'lib/process.c:353,10'
          Dst:             fgets
        - Src:             'lib/process.c:354,9'
          Dst:             ovsthread_once_start
        - Src:             'lib/process.c:354,9'
          Dst:             feof
        - Src:             'lib/process.c:354,9'
          Dst:             __errno_location
        - Src:             'lib/process.c:354,9'
          Dst:             ovs_strerror
        - Src:             'lib/process.c:354,9'
          Dst:             vlog
        - Src:             'lib/process.c:354,9'
          Dst:             ovsthread_once_done
        - Src:             'lib/process.c:359,13'
          Dst:             strchr
        - Src:             'lib/process.c:362,13'
          Dst:             ovs_scan
        - Src:             'lib/process.c:368,5'
          Dst:             fclose
    - functionName:    process_status
      functionSourceFile: '/src/openvswitch/lib/process.c'
      linkageType:     InternalLinkage
      functionLinenumber: 330
      functionLinenumberEnd: 332
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/process.c:331,5'
          Dst:             ovs_ignore
    - functionName:    process_exited
      functionSourceFile: '/src/openvswitch/lib/process.c'
      linkageType:     InternalLinkage
      functionLinenumber: 321
      functionLinenumberEnd: 322
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    process_name
      functionSourceFile: '/src/openvswitch/lib/process.c'
      linkageType:     InternalLinkage
      functionLinenumber: 314
      functionLinenumberEnd: 315
      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:    process_pid
      functionSourceFile: '/src/openvswitch/lib/process.c'
      linkageType:     InternalLinkage
      functionLinenumber: 306
      functionLinenumberEnd: 307
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    process_kill
      functionSourceFile: '/src/openvswitch/lib/process.c'
      linkageType:     InternalLinkage
      functionLinenumber: 297
      functionLinenumberEnd: 300
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          45
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - __errno_location
        - kill
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/process.c:299,16'
          Dst:             kill
        - Src:             'lib/process.c:300,15'
          Dst:             __errno_location
    - functionName:    kill
      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:    ovs_list_remove
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 251
      functionLinenumberEnd: 254
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          25
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    process_destroy
      functionSourceFile: '/src/openvswitch/lib/process.c'
      linkageType:     InternalLinkage
      functionLinenumber: 285
      functionLinenumberEnd: 291
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_list_remove
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/process.c:287,9'
          Dst:             ovs_list_remove
    - functionName:    get_max_fds
      functionSourceFile: '/src/openvswitch/lib/process.c'
      linkageType:     InternalLinkage
      functionLinenumber: 210
      functionLinenumberEnd: 223
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         17
      ICount:          70
      EdgeCount:       21
      CyclomaticComplexity: 6
      functionsReached:
        - getrlimit
        - rlim_is_finite
        - vlog
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/process.c:215,14'
          Dst:             getrlimit
        - Src:             'lib/process.c:215,46'
          Dst:             rlim_is_finite
        - Src:             'lib/process.c:218,13'
          Dst:             vlog
    - functionName:    getrlimit
      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:    process_register
      functionSourceFile: '/src/openvswitch/lib/process.c'
      linkageType:     InternalLinkage
      functionLinenumber: 170
      functionLinenumberEnd: 182
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_list_push_back
        - strrchr
        - xstrdup
        - xzalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/process.c:174,9'
          Dst:             xzalloc
        - Src:             'lib/process.c:176,13'
          Dst:             strrchr
        - Src:             'lib/process.c:177,15'
          Dst:             xstrdup
        - Src:             'lib/process.c:180,5'
          Dst:             ovs_list_push_back
    - functionName:    process_prestart
      functionSourceFile: '/src/openvswitch/lib/process.c'
      linkageType:     InternalLinkage
      functionLinenumber: 142
      functionLinenumberEnd: 164
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         19
      ICount:          95
      EdgeCount:       23
      CyclomaticComplexity: 6
      functionsReached:
        - process_escape_args
        - process_init
        - process_search_path
        - vlog
        - vlog_is_enabled
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/process.c:145,5'
          Dst:             process_init
        - Src:             'lib/process.c:148,9'
          Dst:             vlog_is_enabled
        - Src:             'lib/process.c:149,22'
          Dst:             process_escape_args
        - Src:             'lib/process.c:150,9'
          Dst:             vlog
        - Src:             'lib/process.c:156,14'
          Dst:             process_search_path
        - Src:             'lib/process.c:158,9'
          Dst:             vlog
    - functionName:    process_init
      functionSourceFile: '/src/openvswitch/lib/process.c'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 108
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - assert_single_threaded_at
        - sigemptyset
        - xpipe_nonblocking
        - xsigaction
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/process.c:93,5'
          Dst:             assert_single_threaded_at
        - Src:             'lib/process.c:100,5'
          Dst:             xpipe_nonblocking
        - Src:             'lib/process.c:105,5'
          Dst:             sigemptyset
        - Src:             'lib/process.c:107,5'
          Dst:             xsigaction
    - functionName:    process_escape_args
      functionSourceFile: '/src/openvswitch/lib/process.c'
      linkageType:     InternalLinkage
      functionLinenumber: 112
      functionLinenumberEnd: 134
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         23
      ICount:          118
      EdgeCount:       29
      CyclomaticComplexity: 8
      functionsReached:
        - ds_cstr
        - ds_put_char
        - ds_put_cstr
        - strcspn
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/process.c:119,13'
          Dst:             ds_put_char
        - Src:             'lib/process.c:121,17'
          Dst:             strcspn
        - Src:             'lib/process.c:122,13'
          Dst:             ds_put_char
        - Src:             'lib/process.c:125,21'
          Dst:             ds_put_char
        - Src:             'lib/process.c:127,17'
          Dst:             ds_put_char
        - Src:             'lib/process.c:129,13'
          Dst:             ds_put_char
        - Src:             'lib/process.c:131,13'
          Dst:             ds_put_cstr
        - Src:             'lib/process.c:134,12'
          Dst:             ds_cstr
    - functionName:    ds_put_char
      functionSourceFile: '/src/openvswitch/./include/openvswitch/dynamic-string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_char__
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/dynamic-string.h:99,9'
          Dst:             ds_put_char__
    - functionName:    sigchld_handler
      functionSourceFile: '/src/openvswitch/lib/process.c'
      linkageType:     InternalLinkage
      functionLinenumber: 608
      functionLinenumberEnd: 610
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - write
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/process.c:609,16'
          Dst:             write
        - Src:             'lib/process.c:609,5'
          Dst:             ovs_ignore
    - functionName:    process_start_add
      functionSourceFile: '/src/openvswitch/lib/process.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42
      functionLinenumberEnd: 42
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_process_start_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/process.c:42,1'
          Dst:             counter_process_start_get
    - functionName:    process_start
      functionSourceFile: '/src/openvswitch/lib/process.c'
      linkageType:     InternalLinkage
      functionLinenumber: 240
      functionLinenumberEnd: 280
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          135
      EdgeCount:       25
      CyclomaticComplexity: 6
      functionsReached:
        - __errno_location
        - _exit
        - assert_single_threaded_at
        - close
        - execvp
        - fatal_signal_block
        - fatal_signal_fork
        - fork
        - fprintf
        - get_max_fds
        - ovs_strerror
        - process_prestart
        - process_register
        - process_start_add
        - vlog
        - xpthread_sigmask
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/process.c:245,5'
          Dst:             assert_single_threaded_at
        - Src:             'lib/process.c:248,5'
          Dst:             process_start_add
        - Src:             'lib/process.c:249,13'
          Dst:             process_prestart
        - Src:             'lib/process.c:254,5'
          Dst:             fatal_signal_block
        - Src:             'lib/process.c:255,11'
          Dst:             fork
        - Src:             'lib/process.c:257,9'
          Dst:             __errno_location
        - Src:             'lib/process.c:257,9'
          Dst:             ovs_strerror
        - Src:             'lib/process.c:257,9'
          Dst:             vlog
        - Src:             'lib/process.c:258,17'
          Dst:             __errno_location
        - Src:             'lib/process.c:261,15'
          Dst:             process_register
        - Src:             'lib/process.c:265,22'
          Dst:             get_max_fds
        - Src:             'lib/process.c:268,9'
          Dst:             fatal_signal_fork
        - Src:             'lib/process.c:270,13'
          Dst:             close
        - Src:             'lib/process.c:272,9'
          Dst:             xpthread_sigmask
        - Src:             'lib/process.c:273,9'
          Dst:             execvp
        - Src:             'lib/process.c:275,39'
          Dst:             __errno_location
        - Src:             'lib/process.c:275,26'
          Dst:             ovs_strerror
        - Src:             'lib/process.c:274,9'
          Dst:             fprintf
        - Src:             'lib/process.c:276,9'
          Dst:             _exit
        - Src:             'lib/process.c:278,5'
          Dst:             xpthread_sigmask
    - functionName:    execvp
      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:    _exit
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    init_this_module_stream_fd
      functionSourceFile: '/src/openvswitch/lib/stream-fd.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 34
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-fd.c:34,1'
          Dst:             vlog_insert_module
    - functionName:    pstream_assert_class
      functionSourceFile: '/src/openvswitch/lib/stream-provider.h'
      linkageType:     InternalLinkage
      functionLinenumber: 145
      functionLinenumberEnd: 147
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-provider.h:146,5'
          Dst:             ovs_ignore
    - functionName:    maybe_unlink_and_free
      functionSourceFile: '/src/openvswitch/lib/stream-fd.c'
      linkageType:     InternalLinkage
      functionLinenumber: 274
      functionLinenumberEnd: 279
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          28
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - fatal_signal_unlink_file_now
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-fd.c:276,9'
          Dst:             fatal_signal_unlink_file_now
    - functionName:    fd_pstream_cast
      functionSourceFile: '/src/openvswitch/lib/stream-fd.c'
      linkageType:     InternalLinkage
      functionLinenumber: 183
      functionLinenumberEnd: 185
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - pstream_assert_class
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-fd.c:184,5'
          Dst:             pstream_assert_class
    - functionName:    pfd_close
      functionSourceFile: '/src/openvswitch/lib/stream-fd.c'
      linkageType:     InternalLinkage
      functionLinenumber: 221
      functionLinenumberEnd: 226
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - close
        - fd_pstream_cast
        - maybe_unlink_and_free
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-fd.c:222,29'
          Dst:             fd_pstream_cast
        - Src:             'lib/stream-fd.c:223,5'
          Dst:             close
        - Src:             'lib/stream-fd.c:224,5'
          Dst:             maybe_unlink_and_free
    - functionName:    pfd_accept
      functionSourceFile: '/src/openvswitch/lib/stream-fd.c'
      linkageType:     InternalLinkage
      functionLinenumber: 230
      functionLinenumberEnd: 253
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          107
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - accept
        - close
        - fd_pstream_cast
        - set_nonblocking
        - sock_errno
        - sock_strerror
        - vlog_rate_limit
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-fd.c:231,29'
          Dst:             fd_pstream_cast
        - Src:             'lib/stream-fd.c:237,14'
          Dst:             accept
        - Src:             'lib/stream-fd.c:239,18'
          Dst:             sock_errno
        - Src:             'lib/stream-fd.c:241,13'
          Dst:             sock_strerror
        - Src:             'lib/stream-fd.c:241,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/stream-fd.c:246,14'
          Dst:             set_nonblocking
        - Src:             'lib/stream-fd.c:248,9'
          Dst:             close
    - functionName:    pfd_wait
      functionSourceFile: '/src/openvswitch/lib/stream-fd.c'
      linkageType:     InternalLinkage
      functionLinenumber: 257
      functionLinenumberEnd: 260
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - fd_pstream_cast
        - poll_fd_wait_at
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-fd.c:258,29'
          Dst:             fd_pstream_cast
        - Src:             'lib/stream-fd.c:259,5'
          Dst:             poll_fd_wait_at
    - functionName:    sock_errno
      functionSourceFile: '/src/openvswitch/lib/socket-util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 148
      functionLinenumberEnd: 149
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - __errno_location
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/socket-util.h:149,12'
          Dst:             __errno_location
    - functionName:    stream_assert_class
      functionSourceFile: '/src/openvswitch/lib/stream-provider.h'
      linkageType:     InternalLinkage
      functionLinenumber: 42
      functionLinenumberEnd: 44
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-provider.h:43,5'
          Dst:             ovs_ignore
    - functionName:    stream_fd_cast
      functionSourceFile: '/src/openvswitch/lib/stream-fd.c'
      linkageType:     InternalLinkage
      functionLinenumber: 76
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - stream_assert_class
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-fd.c:77,5'
          Dst:             stream_assert_class
    - functionName:    fd_close
      functionSourceFile: '/src/openvswitch/lib/stream-fd.c'
      linkageType:     InternalLinkage
      functionLinenumber: 83
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - close
        - stream_fd_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-fd.c:84,27'
          Dst:             stream_fd_cast
        - Src:             'lib/stream-fd.c:85,5'
          Dst:             close
    - functionName:    fd_connect
      functionSourceFile: '/src/openvswitch/lib/stream-fd.c'
      linkageType:     InternalLinkage
      functionLinenumber: 91
      functionLinenumberEnd: 97
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          50
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - check_connection_completion
        - setsockopt_tcp_nodelay
        - stream_fd_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-fd.c:92,27'
          Dst:             stream_fd_cast
        - Src:             'lib/stream-fd.c:93,18'
          Dst:             check_connection_completion
        - Src:             'lib/stream-fd.c:95,9'
          Dst:             setsockopt_tcp_nodelay
    - functionName:    fd_recv
      functionSourceFile: '/src/openvswitch/lib/stream-fd.c'
      linkageType:     InternalLinkage
      functionLinenumber: 102
      functionLinenumberEnd: 116
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          82
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - recv
        - sock_errno
        - sock_strerror
        - stream_fd_cast
        - vlog_rate_limit
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-fd.c:103,27'
          Dst:             stream_fd_cast
        - Src:             'lib/stream-fd.c:107,14'
          Dst:             recv
        - Src:             'lib/stream-fd.c:109,17'
          Dst:             sock_errno
        - Src:             'lib/stream-fd.c:111,13'
          Dst:             sock_strerror
        - Src:             'lib/stream-fd.c:111,13'
          Dst:             vlog_rate_limit
    - functionName:    fd_send
      functionSourceFile: '/src/openvswitch/lib/stream-fd.c'
      linkageType:     InternalLinkage
      functionLinenumber: 120
      functionLinenumberEnd: 134
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          92
      EdgeCount:       21
      CyclomaticComplexity: 6
      functionsReached:
        - send
        - sock_errno
        - sock_strerror
        - stream_fd_cast
        - vlog_rate_limit
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-fd.c:121,27'
          Dst:             stream_fd_cast
        - Src:             'lib/stream-fd.c:125,14'
          Dst:             send
        - Src:             'lib/stream-fd.c:127,17'
          Dst:             sock_errno
        - Src:             'lib/stream-fd.c:129,13'
          Dst:             sock_strerror
        - Src:             'lib/stream-fd.c:129,13'
          Dst:             vlog_rate_limit
    - functionName:    fd_wait
      functionSourceFile: '/src/openvswitch/lib/stream-fd.c'
      linkageType:     InternalLinkage
      functionLinenumber: 138
      functionLinenumberEnd: 153
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          49
      EdgeCount:       16
      CyclomaticComplexity: 9
      functionsReached:
        - abort
        - poll_fd_wait_at
        - stream_fd_cast
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib/stream-fd.c:140,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/stream-fd.c:139,27'
          Dst:             stream_fd_cast
        - Src:             'lib/stream-fd.c:143,9'
          Dst:             poll_fd_wait_at
        - Src:             'lib/stream-fd.c:147,9'
          Dst:             poll_fd_wait_at
        - Src:             'lib/stream-fd.c:151,9'
          Dst:             abort
    - functionName:    new_fd_pstream
      functionSourceFile: '/src/openvswitch/lib/stream-fd.c'
      linkageType:     InternalLinkage
      functionLinenumber: 209
      functionLinenumberEnd: 216
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          44
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - pstream_init
        - xmalloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-fd.c:210,29'
          Dst:             xmalloc
        - Src:             'lib/stream-fd.c:211,5'
          Dst:             pstream_init
    - functionName:    new_fd_stream
      functionSourceFile: '/src/openvswitch/lib/stream-fd.c'
      linkageType:     InternalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 71
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          41
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - stream_init
        - xmalloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-fd.c:66,9'
          Dst:             xmalloc
        - Src:             'lib/stream-fd.c:67,5'
          Dst:             stream_init
    - functionName:    init_this_module_stream_replay
      functionSourceFile: '/src/openvswitch/lib/stream-replay.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 34
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-replay.c:34,1'
          Dst:             vlog_insert_module
    - functionName:    pstream_assert_class
      functionSourceFile: '/src/openvswitch/lib/stream-provider.h'
      linkageType:     InternalLinkage
      functionLinenumber: 145
      functionLinenumberEnd: 147
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-provider.h:146,5'
          Dst:             ovs_ignore
    - functionName:    replay_pstream_cast
      functionSourceFile: '/src/openvswitch/lib/stream-replay.c'
      linkageType:     InternalLinkage
      functionLinenumber: 276
      functionLinenumberEnd: 278
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - pstream_assert_class
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-replay.c:277,5'
          Dst:             pstream_assert_class
    - functionName:    pstream_replay_listen
      functionSourceFile: '/src/openvswitch/lib/stream-replay.c'
      linkageType:     InternalLinkage
      functionLinenumber: 289
      functionLinenumberEnd: 320
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         20
      ICount:          129
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - ovs_replay_file_close
        - ovs_replay_file_open
        - ovs_replay_lock
        - ovs_replay_read
        - ovs_replay_unlock
        - pstream_init
        - vlog_rate_limit
        - xmalloc
        - xstrdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-replay.c:293,5'
          Dst:             ovs_replay_lock
        - Src:             'lib/stream-replay.c:294,13'
          Dst:             ovs_replay_file_open
        - Src:             'lib/stream-replay.c:296,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/stream-replay.c:300,13'
          Dst:             ovs_replay_read
        - Src:             'lib/stream-replay.c:302,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/stream-replay.c:303,9'
          Dst:             ovs_replay_file_close
        - Src:             'lib/stream-replay.c:309,9'
          Dst:             ovs_replay_file_close
        - Src:             'lib/stream-replay.c:313,33'
          Dst:             xmalloc
        - Src:             'lib/stream-replay.c:314,56'
          Dst:             xstrdup
        - Src:             'lib/stream-replay.c:314,5'
          Dst:             pstream_init
        - Src:             'lib/stream-replay.c:319,5'
          Dst:             ovs_replay_unlock
    - functionName:    pstream_replay_close
      functionSourceFile: '/src/openvswitch/lib/stream-replay.c'
      linkageType:     InternalLinkage
      functionLinenumber: 390
      functionLinenumberEnd: 395
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_replay_file_close
        - replay_pstream_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-replay.c:391,33'
          Dst:             replay_pstream_cast
        - Src:             'lib/stream-replay.c:393,5'
          Dst:             ovs_replay_file_close
    - functionName:    pstream_replay_accept
      functionSourceFile: '/src/openvswitch/lib/stream-replay.c'
      linkageType:     InternalLinkage
      functionLinenumber: 401
      functionLinenumberEnd: 435
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          120
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - new_replay_stream
        - ovs_ignore
        - ovs_replay_lock
        - ovs_replay_normalized_seqno
        - ovs_replay_read
        - ovs_replay_seqno
        - ovs_replay_seqno_is_read
        - ovs_replay_unlock
        - replay_pstream_cast
        - vlog_rate_limit
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-replay.c:402,33'
          Dst:             replay_pstream_cast
        - Src:             'lib/stream-replay.c:403,22'
          Dst:             ovs_replay_normalized_seqno
        - Src:             'lib/stream-replay.c:407,5'
          Dst:             ovs_replay_lock
        - Src:             'lib/stream-replay.c:408,30'
          Dst:             ovs_replay_seqno
        - Src:             'lib/stream-replay.c:408,5'
          Dst:             ovs_ignore
        - Src:             'lib/stream-replay.c:410,23'
          Dst:             ovs_replay_seqno
        - Src:             'lib/stream-replay.c:411,13'
          Dst:             ovs_replay_seqno_is_read
        - Src:             'lib/stream-replay.c:413,9'
          Dst:             ovs_replay_unlock
        - Src:             'lib/stream-replay.c:417,14'
          Dst:             ovs_replay_read
        - Src:             'lib/stream-replay.c:420,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/stream-replay.c:422,9'
          Dst:             ovs_replay_unlock
        - Src:             'lib/stream-replay.c:426,5'
          Dst:             ovs_replay_unlock
        - Src:             'lib/stream-replay.c:430,18'
          Dst:             new_replay_stream
    - functionName:    pstream_replay_wait
      functionSourceFile: '/src/openvswitch/lib/stream-replay.c'
      linkageType:     InternalLinkage
      functionLinenumber: 440
      functionLinenumberEnd: 447
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          32
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - poll_immediate_wake_at
        - replay_pstream_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-replay.c:441,33'
          Dst:             replay_pstream_cast
        - Src:             'lib/stream-replay.c:445,9'
          Dst:             poll_immediate_wake_at
    - functionName:    ovs_replay_normalized_seqno
      functionSourceFile: '/src/openvswitch/lib/ovs-replay.h'
      linkageType:     InternalLinkage
      functionLinenumber: 81
      functionLinenumberEnd: 82
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          22
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_replay_seqno_is_read
      functionSourceFile: '/src/openvswitch/lib/ovs-replay.h'
      linkageType:     InternalLinkage
      functionLinenumber: 73
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    new_replay_stream
      functionSourceFile: '/src/openvswitch/lib/stream-replay.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 86
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         20
      ICount:          125
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - ovs_replay_file_close
        - ovs_replay_file_open
        - ovs_replay_lock
        - ovs_replay_read
        - ovs_replay_unlock
        - stream_init
        - vlog_rate_limit
        - xmalloc
        - xstrdup
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-replay.c:59,5'
          Dst:             ovs_replay_lock
        - Src:             'lib/stream-replay.c:60,13'
          Dst:             ovs_replay_file_open
        - Src:             'lib/stream-replay.c:62,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/stream-replay.c:66,13'
          Dst:             ovs_replay_read
        - Src:             'lib/stream-replay.c:68,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/stream-replay.c:69,9'
          Dst:             ovs_replay_file_close
        - Src:             'lib/stream-replay.c:75,9'
          Dst:             ovs_replay_file_close
        - Src:             'lib/stream-replay.c:79,9'
          Dst:             xmalloc
        - Src:             'lib/stream-replay.c:80,54'
          Dst:             xstrdup
        - Src:             'lib/stream-replay.c:80,5'
          Dst:             stream_init
        - Src:             'lib/stream-replay.c:85,5'
          Dst:             ovs_replay_unlock
    - functionName:    stream_replay_open
      functionSourceFile: '/src/openvswitch/lib/stream-replay.c'
      linkageType:     InternalLinkage
      functionLinenumber: 153
      functionLinenumberEnd: 154
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - new_replay_stream
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-replay.c:154,12'
          Dst:             new_replay_stream
    - functionName:    stream_replay_close
      functionSourceFile: '/src/openvswitch/lib/stream-replay.c'
      linkageType:     InternalLinkage
      functionLinenumber: 159
      functionLinenumberEnd: 163
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_replay_file_close
        - stream_replay_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-replay.c:160,31'
          Dst:             stream_replay_cast
        - Src:             'lib/stream-replay.c:161,5'
          Dst:             ovs_replay_file_close
    - functionName:    stream_replay_recv
      functionSourceFile: '/src/openvswitch/lib/stream-replay.c'
      linkageType:     InternalLinkage
      functionLinenumber: 167
      functionLinenumberEnd: 189
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          117
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - ovs_ignore
        - ovs_replay_lock
        - ovs_replay_normalized_seqno
        - ovs_replay_read
        - ovs_replay_seqno
        - ovs_replay_seqno_is_read
        - ovs_replay_unlock
        - stream_replay_cast
        - vlog_rate_limit
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-replay.c:168,31'
          Dst:             stream_replay_cast
        - Src:             'lib/stream-replay.c:169,22'
          Dst:             ovs_replay_normalized_seqno
        - Src:             'lib/stream-replay.c:172,5'
          Dst:             ovs_replay_lock
        - Src:             'lib/stream-replay.c:173,30'
          Dst:             ovs_replay_seqno
        - Src:             'lib/stream-replay.c:173,5'
          Dst:             ovs_ignore
        - Src:             'lib/stream-replay.c:175,23'
          Dst:             ovs_replay_seqno
        - Src:             'lib/stream-replay.c:176,13'
          Dst:             ovs_replay_seqno_is_read
        - Src:             'lib/stream-replay.c:181,13'
          Dst:             ovs_replay_read
        - Src:             'lib/stream-replay.c:183,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/stream-replay.c:188,5'
          Dst:             ovs_replay_unlock
    - functionName:    stream_replay_send
      functionSourceFile: '/src/openvswitch/lib/stream-replay.c'
      linkageType:     InternalLinkage
      functionLinenumber: 195
      functionLinenumberEnd: 218
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          130
      EdgeCount:       28
      CyclomaticComplexity: 8
      functionsReached:
        - ovs_ignore
        - ovs_replay_lock
        - ovs_replay_normalized_seqno
        - ovs_replay_read
        - ovs_replay_seqno
        - ovs_replay_seqno_is_read
        - ovs_replay_unlock
        - stream_replay_cast
        - vlog_rate_limit
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-replay.c:196,31'
          Dst:             stream_replay_cast
        - Src:             'lib/stream-replay.c:197,22'
          Dst:             ovs_replay_normalized_seqno
        - Src:             'lib/stream-replay.c:200,5'
          Dst:             ovs_replay_lock
        - Src:             'lib/stream-replay.c:201,30'
          Dst:             ovs_replay_seqno
        - Src:             'lib/stream-replay.c:201,5'
          Dst:             ovs_ignore
        - Src:             'lib/stream-replay.c:203,23'
          Dst:             ovs_replay_seqno
        - Src:             'lib/stream-replay.c:204,12'
          Dst:             ovs_replay_seqno_is_read
        - Src:             'lib/stream-replay.c:209,13'
          Dst:             ovs_replay_read
        - Src:             'lib/stream-replay.c:211,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/stream-replay.c:214,5'
          Dst:             ovs_ignore
        - Src:             'lib/stream-replay.c:217,5'
          Dst:             ovs_replay_unlock
    - functionName:    stream_replay_wait
      functionSourceFile: '/src/openvswitch/lib/stream-replay.c'
      linkageType:     InternalLinkage
      functionLinenumber: 223
      functionLinenumberEnd: 248
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         18
      ICount:          83
      EdgeCount:       20
      CyclomaticComplexity: 4
      functionsReached:
        - abort
        - ovs_replay_seqno_is_read
        - poll_immediate_wake_at
        - stream_replay_cast
      functionUses:    0
      BranchProfiles:
        - Branch String:   'lib/stream-replay.c:225,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/stream-replay.c:224,31'
          Dst:             stream_replay_cast
        - Src:             'lib/stream-replay.c:228,9'
          Dst:             poll_immediate_wake_at
        - Src:             'lib/stream-replay.c:232,37'
          Dst:             ovs_replay_seqno_is_read
        - Src:             'lib/stream-replay.c:234,13'
          Dst:             poll_immediate_wake_at
        - Src:             'lib/stream-replay.c:239,36'
          Dst:             ovs_replay_seqno_is_read
        - Src:             'lib/stream-replay.c:241,13'
          Dst:             poll_immediate_wake_at
        - Src:             'lib/stream-replay.c:246,9'
          Dst:             abort
    - functionName:    stream_replay_cast
      functionSourceFile: '/src/openvswitch/lib/stream-replay.c'
      linkageType:     InternalLinkage
      functionLinenumber: 91
      functionLinenumberEnd: 93
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - stream_assert_class
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-replay.c:92,5'
          Dst:             stream_assert_class
    - functionName:    stream_assert_class
      functionSourceFile: '/src/openvswitch/lib/stream-provider.h'
      linkageType:     InternalLinkage
      functionLinenumber: 42
      functionLinenumberEnd: 44
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-provider.h:43,5'
          Dst:             ovs_ignore
    - functionName:    pstream_replay_close_wfd
      functionSourceFile: '/src/openvswitch/lib/stream-replay.c'
      linkageType:     InternalLinkage
      functionLinenumber: 382
      functionLinenumberEnd: 386
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_replay_file_close
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-replay.c:384,9'
          Dst:             ovs_replay_file_close
    - functionName:    pstream_replay_write_accept
      functionSourceFile: '/src/openvswitch/lib/stream-replay.c'
      linkageType:     InternalLinkage
      functionLinenumber: 360
      functionLinenumberEnd: 378
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          131
      EdgeCount:       30
      CyclomaticComplexity: 8
      functionsReached:
        - ovs_replay_get_state
        - ovs_replay_write
        - strlen
        - vlog_rate_limit
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-replay.c:361,17'
          Dst:             ovs_replay_get_state
        - Src:             'lib/stream-replay.c:369,15'
          Dst:             strlen
        - Src:             'lib/stream-replay.c:370,13'
          Dst:             ovs_replay_write
        - Src:             'lib/stream-replay.c:371,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/stream-replay.c:374,16'
          Dst:             ovs_replay_write
        - Src:             'lib/stream-replay.c:375,9'
          Dst:             vlog_rate_limit
    - functionName:    pstream_replay_open_wfd
      functionSourceFile: '/src/openvswitch/lib/stream-replay.c'
      linkageType:     InternalLinkage
      functionLinenumber: 326
      functionLinenumberEnd: 355
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          125
      EdgeCount:       29
      CyclomaticComplexity: 8
      functionsReached:
        - ovs_replay_file_close
        - ovs_replay_file_open
        - ovs_replay_get_state
        - ovs_replay_lock
        - ovs_replay_unlock
        - ovs_replay_write
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-replay.c:327,17'
          Dst:             ovs_replay_get_state
        - Src:             'lib/stream-replay.c:335,5'
          Dst:             ovs_replay_lock
        - Src:             'lib/stream-replay.c:336,13'
          Dst:             ovs_replay_file_open
        - Src:             'lib/stream-replay.c:338,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/stream-replay.c:339,9'
          Dst:             ovs_replay_unlock
        - Src:             'lib/stream-replay.c:342,5'
          Dst:             ovs_replay_unlock
        - Src:             'lib/stream-replay.c:344,9'
          Dst:             ovs_replay_write
        - Src:             'lib/stream-replay.c:345,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/stream-replay.c:351,9'
          Dst:             ovs_replay_file_close
    - functionName:    stream_replay_close_wfd
      functionSourceFile: '/src/openvswitch/lib/stream-replay.c'
      linkageType:     InternalLinkage
      functionLinenumber: 144
      functionLinenumberEnd: 148
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_replay_file_close
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-replay.c:146,9'
          Dst:             ovs_replay_file_close
    - functionName:    stream_replay_write
      functionSourceFile: '/src/openvswitch/lib/stream-replay.c'
      linkageType:     InternalLinkage
      functionLinenumber: 130
      functionLinenumberEnd: 140
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          78
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - ovs_replay_get_state
        - ovs_replay_write
        - vlog_rate_limit
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-replay.c:131,17'
          Dst:             ovs_replay_get_state
        - Src:             'lib/stream-replay.c:137,9'
          Dst:             ovs_replay_write
        - Src:             'lib/stream-replay.c:138,9'
          Dst:             vlog_rate_limit
    - functionName:    stream_replay_open_wfd
      functionSourceFile: '/src/openvswitch/lib/stream-replay.c'
      linkageType:     InternalLinkage
      functionLinenumber: 98
      functionLinenumberEnd: 126
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          125
      EdgeCount:       29
      CyclomaticComplexity: 8
      functionsReached:
        - ovs_replay_file_close
        - ovs_replay_file_open
        - ovs_replay_get_state
        - ovs_replay_lock
        - ovs_replay_unlock
        - ovs_replay_write
        - vlog_rate_limit
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-replay.c:99,17'
          Dst:             ovs_replay_get_state
        - Src:             'lib/stream-replay.c:107,5'
          Dst:             ovs_replay_lock
        - Src:             'lib/stream-replay.c:108,13'
          Dst:             ovs_replay_file_open
        - Src:             'lib/stream-replay.c:110,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/stream-replay.c:111,9'
          Dst:             ovs_replay_unlock
        - Src:             'lib/stream-replay.c:114,5'
          Dst:             ovs_replay_unlock
        - Src:             'lib/stream-replay.c:116,9'
          Dst:             ovs_replay_write
        - Src:             'lib/stream-replay.c:117,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/stream-replay.c:122,9'
          Dst:             ovs_replay_file_close
    - functionName:    init_this_module_stream_tcp
      functionSourceFile: '/src/openvswitch/lib/stream-tcp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-tcp.c:36,1'
          Dst:             vlog_insert_module
    - functionName:    ptcp_accept
      functionSourceFile: '/src/openvswitch/lib/stream-tcp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 123
      functionLinenumberEnd: 129
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          32
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_put_cstr
        - ds_put_format
        - ds_steal_cstr
        - new_tcp_stream
        - ss_format_address
        - ss_get_port
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-tcp.c:125,5'
          Dst:             ds_put_cstr
        - Src:             'lib/stream-tcp.c:126,5'
          Dst:             ss_format_address
        - Src:             'lib/stream-tcp.c:127,38'
          Dst:             ss_get_port
        - Src:             'lib/stream-tcp.c:127,5'
          Dst:             ds_put_format
        - Src:             'lib/stream-tcp.c:129,27'
          Dst:             ds_steal_cstr
        - Src:             'lib/stream-tcp.c:129,12'
          Dst:             new_tcp_stream
    - functionName:    new_tcp_stream
      functionSourceFile: '/src/openvswitch/lib/stream-tcp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 48
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - new_fd_stream
        - setsockopt_tcp_nodelay
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-tcp.c:45,9'
          Dst:             setsockopt_tcp_nodelay
        - Src:             'lib/stream-tcp.c:48,12'
          Dst:             new_fd_stream
    - functionName:    new_pstream
      functionSourceFile: '/src/openvswitch/lib/stream-tcp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 86
      functionLinenumberEnd: 111
      functionDepth:   0
      returnType:      int
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          92
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - ds_put_cstr
        - ds_put_format
        - ds_steal_cstr
        - htons
        - inet_open_passive
        - new_fd_pstream
        - pstream_set_bound_port
        - ptcp_accept
        - ss_format_address
        - ss_get_port
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-tcp.c:91,10'
          Dst:             inet_open_passive
        - Src:             'lib/stream-tcp.c:99,55'
          Dst:             ss_get_port
        - Src:             'lib/stream-tcp.c:99,9'
          Dst:             ds_put_format
        - Src:             'lib/stream-tcp.c:100,9'
          Dst:             ss_format_address
        - Src:             'lib/stream-tcp.c:102,9'
          Dst:             ds_put_cstr
        - Src:             'lib/stream-tcp.c:105,28'
          Dst:             ds_steal_cstr
        - Src:             'lib/stream-tcp.c:105,13'
          Dst:             new_fd_pstream
        - Src:             'lib/stream-tcp.c:105,13'
          Dst:             ptcp_accept
        - Src:             'lib/stream-tcp.c:108,49'
          Dst:             ss_get_port
        - Src:             'lib/stream-tcp.c:108,43'
          Dst:             htons
        - Src:             'lib/stream-tcp.c:108,9'
          Dst:             pstream_set_bound_port
    - functionName:    ptcp_open
      functionSourceFile: '/src/openvswitch/lib/stream-tcp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 116
      functionLinenumberEnd: 117
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - new_pstream
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-tcp.c:117,12'
          Dst:             new_pstream
    - functionName:    tcp_open
      functionSourceFile: '/src/openvswitch/lib/stream-tcp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 63
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          70
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - inet_open_active
        - new_tcp_stream
        - ovs_strerror
        - vlog
        - xstrdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/stream-tcp.c:56,13'
          Dst:             inet_open_active
        - Src:             'lib/stream-tcp.c:58,31'
          Dst:             xstrdup
        - Src:             'lib/stream-tcp.c:58,16'
          Dst:             new_tcp_stream
        - Src:             'lib/stream-tcp.c:60,9'
          Dst:             ovs_strerror
        - Src:             'lib/stream-tcp.c:60,9'
          Dst:             vlog
    - functionName:    init_this_module_dpdk
      functionSourceFile: '/src/openvswitch/lib/dpdk-stub.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26
      functionLinenumberEnd: 26
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpdk-stub.c:26,1'
          Dst:             vlog_insert_module
    - functionName:    dpdk_status
      functionSourceFile: '/src/openvswitch/lib/dpdk-stub.c'
      linkageType:     InternalLinkage
      functionLinenumber: 65
      functionLinenumberEnd: 70
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          28
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsrec_open_vswitch_set_dpdk_initialized
        - ovsrec_open_vswitch_set_dpdk_version
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpdk-stub.c:67,9'
          Dst:             ovsrec_open_vswitch_set_dpdk_initialized
        - Src:             'lib/dpdk-stub.c:68,9'
          Dst:             ovsrec_open_vswitch_set_dpdk_version
    - functionName:    print_dpdk_version
      functionSourceFile: '/src/openvswitch/lib/dpdk-stub.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 61
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          4
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpdk_available
      functionSourceFile: '/src/openvswitch/lib/dpdk-stub.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      bool
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          4
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpdk_detach_thread
      functionSourceFile: '/src/openvswitch/lib/dpdk-stub.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          4
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dpdk_attach_thread
      functionSourceFile: '/src/openvswitch/lib/dpdk-stub.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43
      functionLinenumberEnd: 44
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsthread_once_start
      functionSourceFile: '/src/openvswitch/./include/openvswitch/thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsthread_once_start__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/thread.h:161,12'
          Dst:             ovsthread_once_start__
    - functionName:    dpdk_init
      functionSourceFile: '/src/openvswitch/lib/dpdk-stub.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          51
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - ovsthread_once_done
        - ovsthread_once_start
        - smap_get_bool
        - vlog
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpdk-stub.c:31,9'
          Dst:             smap_get_bool
        - Src:             'lib/dpdk-stub.c:34,13'
          Dst:             ovsthread_once_start
        - Src:             'lib/dpdk-stub.c:35,13'
          Dst:             vlog
        - Src:             'lib/dpdk-stub.c:36,13'
          Dst:             ovsthread_once_done
    - functionName:    hmap_next__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 401
      functionLinenumberEnd: 410
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          51
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_get_db_version
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46866
      functionLinenumberEnd: 46867
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          4
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_sflow_init__
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45410
      functionLinenumberEnd: 45412
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_sflow_cast
        - ovsrec_sflow_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:45411,23'
          Dst:             ovsrec_sflow_cast
        - Src:             'lib/vswitch-idl.c:45411,5'
          Dst:             ovsrec_sflow_init
    - functionName:    ovsrec_sflow_cast
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 125
      functionLinenumberEnd: 126
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          20
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    22
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_sflow_init
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45417
      functionLinenumberEnd: 45420
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smap_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:45419,5'
          Dst:             smap_init
    - functionName:    ovsrec_ssl_init__
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44231
      functionLinenumberEnd: 44233
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_ssl_cast
        - ovsrec_ssl_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:44232,21'
          Dst:             ovsrec_ssl_cast
        - Src:             'lib/vswitch-idl.c:44232,5'
          Dst:             ovsrec_ssl_init
    - functionName:    ovsrec_ssl_cast
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 119
      functionLinenumberEnd: 120
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          20
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    17
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_ssl_init
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44238
      functionLinenumberEnd: 44244
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smap_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:44242,5'
          Dst:             smap_init
    - functionName:    ovsrec_queue_init__
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43234
      functionLinenumberEnd: 43236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_queue_cast
        - ovsrec_queue_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:43235,23'
          Dst:             ovsrec_queue_cast
        - Src:             'lib/vswitch-idl.c:43235,5'
          Dst:             ovsrec_queue_init
    - functionName:    ovsrec_queue_cast
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 113
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          20
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    17
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_queue_init
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43241
      functionLinenumberEnd: 43245
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smap_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:43243,5'
          Dst:             smap_init
        - Src:             'lib/vswitch-idl.c:43244,5'
          Dst:             smap_init
    - functionName:    ovsrec_qos_init__
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42163
      functionLinenumberEnd: 42165
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_qos_cast
        - ovsrec_qos_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:42164,21'
          Dst:             ovsrec_qos_cast
        - Src:             'lib/vswitch-idl.c:42164,5'
          Dst:             ovsrec_qos_init
    - functionName:    ovsrec_qos_cast
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 107
      functionLinenumberEnd: 108
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          20
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    18
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_qos_init
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42170
      functionLinenumberEnd: 42175
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smap_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:42172,5'
          Dst:             smap_init
        - Src:             'lib/vswitch-idl.c:42173,5'
          Dst:             smap_init
    - functionName:    ovsrec_port_init__
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37722
      functionLinenumberEnd: 37724
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_port_cast
        - ovsrec_port_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37723,22'
          Dst:             ovsrec_port_cast
        - Src:             'lib/vswitch-idl.c:37723,5'
          Dst:             ovsrec_port_init
    - functionName:    ovsrec_port_cast
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 102
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          20
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    46
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_port_init
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37729
      functionLinenumberEnd: 37736
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smap_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37731,5'
          Dst:             smap_init
        - Src:             'lib/vswitch-idl.c:37733,5'
          Dst:             smap_init
        - Src:             'lib/vswitch-idl.c:37734,5'
          Dst:             smap_init
        - Src:             'lib/vswitch-idl.c:37735,5'
          Dst:             smap_init
    - functionName:    ovsrec_open_vswitch_init__
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33607
      functionLinenumberEnd: 33609
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_open_vswitch_cast
        - ovsrec_open_vswitch_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33608,30'
          Dst:             ovsrec_open_vswitch_cast
        - Src:             'lib/vswitch-idl.c:33608,5'
          Dst:             ovsrec_open_vswitch_init
    - functionName:    ovsrec_open_vswitch_cast
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 95
      functionLinenumberEnd: 96
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          20
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    35
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_open_vswitch_init
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33614
      functionLinenumberEnd: 33619
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smap_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33616,5'
          Dst:             smap_init
        - Src:             'lib/vswitch-idl.c:33617,5'
          Dst:             smap_init
        - Src:             'lib/vswitch-idl.c:33618,5'
          Dst:             smap_init
    - functionName:    ovsrec_netflow_init__
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31736
      functionLinenumberEnd: 31738
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_netflow_cast
        - ovsrec_netflow_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:31737,25'
          Dst:             ovsrec_netflow_cast
        - Src:             'lib/vswitch-idl.c:31737,5'
          Dst:             ovsrec_netflow_init
    - functionName:    ovsrec_netflow_cast
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 89
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          20
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    21
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_netflow_init
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31743
      functionLinenumberEnd: 31746
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smap_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:31745,5'
          Dst:             smap_init
    - functionName:    ovsrec_mirror_init__
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29261
      functionLinenumberEnd: 29263
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_mirror_cast
        - ovsrec_mirror_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:29262,24'
          Dst:             ovsrec_mirror_cast
        - Src:             'lib/vswitch-idl.c:29262,5'
          Dst:             ovsrec_mirror_init
    - functionName:    ovsrec_mirror_cast
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 83
      functionLinenumberEnd: 84
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          20
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    29
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_mirror_init
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29268
      functionLinenumberEnd: 29272
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smap_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:29270,5'
          Dst:             smap_init
    - functionName:    ovsrec_manager_init__
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27137
      functionLinenumberEnd: 27139
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_manager_cast
        - ovsrec_manager_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:27138,25'
          Dst:             ovsrec_manager_cast
        - Src:             'lib/vswitch-idl.c:27138,5'
          Dst:             ovsrec_manager_init
    - functionName:    ovsrec_manager_cast
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          20
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    24
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_manager_init
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27144
      functionLinenumberEnd: 27150
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smap_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:27146,5'
          Dst:             smap_init
        - Src:             'lib/vswitch-idl.c:27147,5'
          Dst:             smap_init
        - Src:             'lib/vswitch-idl.c:27148,5'
          Dst:             smap_init
    - functionName:    ovsrec_interface_init__
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19860
      functionLinenumberEnd: 19862
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_interface_cast
        - ovsrec_interface_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19861,27'
          Dst:             ovsrec_interface_cast
        - Src:             'lib/vswitch-idl.c:19861,5'
          Dst:             ovsrec_interface_init
    - functionName:    ovsrec_interface_cast
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 71
      functionLinenumberEnd: 72
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          20
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    68
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_interface_init
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19867
      functionLinenumberEnd: 19878
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          42
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smap_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19869,5'
          Dst:             smap_init
        - Src:             'lib/vswitch-idl.c:19870,5'
          Dst:             smap_init
        - Src:             'lib/vswitch-idl.c:19871,5'
          Dst:             smap_init
        - Src:             'lib/vswitch-idl.c:19872,5'
          Dst:             smap_init
        - Src:             'lib/vswitch-idl.c:19874,5'
          Dst:             smap_init
        - Src:             'lib/vswitch-idl.c:19875,5'
          Dst:             smap_init
        - Src:             'lib/vswitch-idl.c:19876,5'
          Dst:             smap_init
    - functionName:    ovsrec_ipfix_init__
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16414
      functionLinenumberEnd: 16416
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_ipfix_cast
        - ovsrec_ipfix_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16415,23'
          Dst:             ovsrec_ipfix_cast
        - Src:             'lib/vswitch-idl.c:16415,5'
          Dst:             ovsrec_ipfix_init
    - functionName:    ovsrec_ipfix_cast
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 65
      functionLinenumberEnd: 66
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          20
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    32
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_ipfix_init
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16421
      functionLinenumberEnd: 16425
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smap_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16423,5'
          Dst:             smap_init
        - Src:             'lib/vswitch-idl.c:16424,5'
          Dst:             smap_init
    - functionName:    ovsrec_flow_table_init__
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14636
      functionLinenumberEnd: 14638
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_flow_table_cast
        - ovsrec_flow_table_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:14637,28'
          Dst:             ovsrec_flow_table_cast
        - Src:             'lib/vswitch-idl.c:14637,5'
          Dst:             ovsrec_flow_table_init
    - functionName:    ovsrec_flow_table_cast
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 59
      functionLinenumberEnd: 60
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          20
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    21
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_flow_table_init
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14643
      functionLinenumberEnd: 14646
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smap_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:14645,5'
          Dst:             smap_init
    - functionName:    ovsrec_flow_sample_collector_set_init__
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13318
      functionLinenumberEnd: 13320
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_flow_sample_collector_set_cast
        - ovsrec_flow_sample_collector_set_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:13319,43'
          Dst:             ovsrec_flow_sample_collector_set_cast
        - Src:             'lib/vswitch-idl.c:13319,5'
          Dst:             ovsrec_flow_sample_collector_set_init
    - functionName:    ovsrec_flow_sample_collector_set_cast
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 53
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          20
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    17
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_flow_sample_collector_set_init
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13325
      functionLinenumberEnd: 13328
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smap_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:13327,5'
          Dst:             smap_init
    - functionName:    ovsrec_datapath_init__
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11977
      functionLinenumberEnd: 11979
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_datapath_cast
        - ovsrec_datapath_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:11978,26'
          Dst:             ovsrec_datapath_cast
        - Src:             'lib/vswitch-idl.c:11978,5'
          Dst:             ovsrec_datapath_init
    - functionName:    ovsrec_datapath_cast
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 48
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          20
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    20
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_datapath_init
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11984
      functionLinenumberEnd: 11989
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smap_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:11986,5'
          Dst:             smap_init
        - Src:             'lib/vswitch-idl.c:11988,5'
          Dst:             smap_init
    - functionName:    ovsrec_controller_init__
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8176
      functionLinenumberEnd: 8178
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_controller_cast
        - ovsrec_controller_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:8177,28'
          Dst:             ovsrec_controller_cast
        - Src:             'lib/vswitch-idl.c:8177,5'
          Dst:             ovsrec_controller_init
    - functionName:    ovsrec_controller_cast
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41
      functionLinenumberEnd: 42
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          20
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    37
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_controller_init
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8183
      functionLinenumberEnd: 8189
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smap_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:8185,5'
          Dst:             smap_init
        - Src:             'lib/vswitch-idl.c:8186,5'
          Dst:             smap_init
        - Src:             'lib/vswitch-idl.c:8187,5'
          Dst:             smap_init
    - functionName:    ovsrec_ct_zone_init__
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6777
      functionLinenumberEnd: 6779
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_ct_zone_cast
        - ovsrec_ct_zone_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:6778,25'
          Dst:             ovsrec_ct_zone_cast
        - Src:             'lib/vswitch-idl.c:6778,5'
          Dst:             ovsrec_ct_zone_init
    - functionName:    ovsrec_ct_zone_cast
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          20
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    16
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_ct_zone_init
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6784
      functionLinenumberEnd: 6787
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smap_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:6786,5'
          Dst:             smap_init
    - functionName:    ovsrec_ct_timeout_policy_init__
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6008
      functionLinenumberEnd: 6010
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_ct_timeout_policy_cast
        - ovsrec_ct_timeout_policy_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:6009,35'
          Dst:             ovsrec_ct_timeout_policy_cast
        - Src:             'lib/vswitch-idl.c:6009,5'
          Dst:             ovsrec_ct_timeout_policy_init
    - functionName:    ovsrec_ct_timeout_policy_cast
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29
      functionLinenumberEnd: 30
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          20
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    15
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_ct_timeout_policy_init
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6015
      functionLinenumberEnd: 6018
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smap_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:6017,5'
          Dst:             smap_init
    - functionName:    ovsrec_bridge_init__
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1692
      functionLinenumberEnd: 1694
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_bridge_cast
        - ovsrec_bridge_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1693,24'
          Dst:             ovsrec_bridge_cast
        - Src:             'lib/vswitch-idl.c:1693,5'
          Dst:             ovsrec_bridge_init
    - functionName:    ovsrec_bridge_cast
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23
      functionLinenumberEnd: 24
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          20
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    44
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_bridge_init
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1699
      functionLinenumberEnd: 1708
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - smap_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1703,5'
          Dst:             smap_init
        - Src:             'lib/vswitch-idl.c:1705,5'
          Dst:             smap_init
        - Src:             'lib/vswitch-idl.c:1706,5'
          Dst:             smap_init
        - Src:             'lib/vswitch-idl.c:1707,5'
          Dst:             smap_init
    - functionName:    ovsrec_autoattach_init__
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 263
      functionLinenumberEnd: 265
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_autoattach_cast
        - ovsrec_autoattach_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:264,28'
          Dst:             ovsrec_autoattach_cast
        - Src:             'lib/vswitch-idl.c:264,5'
          Dst:             ovsrec_autoattach_init
    - functionName:    ovsrec_autoattach_cast
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 17
      functionLinenumberEnd: 18
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          20
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    15
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_autoattach_init
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 270
      functionLinenumberEnd: 274
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_sflow_unparse_targets
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45403
      functionLinenumberEnd: 45406
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_sflow_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:45404,32'
          Dst:             ovsrec_sflow_cast
    - functionName:    ovsrec_sflow_parse_targets
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45354
      functionLinenumberEnd: 45365
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          90
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - json_string
        - ovsrec_sflow_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:45355,32'
          Dst:             ovsrec_sflow_cast
        - Src:             'lib/vswitch-idl.c:45360,28'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:45362,40'
          Dst:             json_string
    - functionName:    ovsrec_sflow_unparse_sampling
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45396
      functionLinenumberEnd: 45399
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_sflow_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:45397,32'
          Dst:             ovsrec_sflow_cast
    - functionName:    ovsrec_sflow_parse_sampling
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45338
      functionLinenumberEnd: 45350
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          104
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - ovsrec_sflow_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:45339,32'
          Dst:             ovsrec_sflow_cast
        - Src:             'lib/vswitch-idl.c:45345,29'
          Dst:             xmalloc
    - functionName:    ovsrec_sflow_unparse_polling
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45389
      functionLinenumberEnd: 45392
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_sflow_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:45390,32'
          Dst:             ovsrec_sflow_cast
    - functionName:    ovsrec_sflow_parse_polling
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45322
      functionLinenumberEnd: 45334
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          104
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - ovsrec_sflow_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:45323,32'
          Dst:             ovsrec_sflow_cast
        - Src:             'lib/vswitch-idl.c:45329,28'
          Dst:             xmalloc
    - functionName:    ovsrec_sflow_unparse_header
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45382
      functionLinenumberEnd: 45385
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_sflow_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:45383,32'
          Dst:             ovsrec_sflow_cast
    - functionName:    ovsrec_sflow_parse_header
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45306
      functionLinenumberEnd: 45318
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          104
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - ovsrec_sflow_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:45307,32'
          Dst:             ovsrec_sflow_cast
        - Src:             'lib/vswitch-idl.c:45313,27'
          Dst:             xmalloc
    - functionName:    ovsrec_sflow_unparse_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45375
      functionLinenumberEnd: 45378
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_sflow_cast
        - smap_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:45376,32'
          Dst:             ovsrec_sflow_cast
        - Src:             'lib/vswitch-idl.c:45377,5'
          Dst:             smap_destroy
    - functionName:    ovsrec_sflow_parse_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45294
      functionLinenumberEnd: 45302
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          61
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_sflow_cast
        - smap_add
        - smap_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:45295,32'
          Dst:             ovsrec_sflow_cast
        - Src:             'lib/vswitch-idl.c:45296,5'
          Dst:             smap_init
        - Src:             'lib/vswitch-idl.c:45299,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:45300,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:45298,9'
          Dst:             smap_add
    - functionName:    ovsrec_sflow_unparse_agent
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45369
      functionLinenumberEnd: 45371
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_sflow_parse_agent
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45282
      functionLinenumberEnd: 45290
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_sflow_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:45283,32'
          Dst:             ovsrec_sflow_cast
        - Src:             'lib/vswitch-idl.c:45286,22'
          Dst:             json_string
    - functionName:    ovsrec_sflow_set_condition
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46687
      functionLinenumberEnd: 46688
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_set_condition
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:46688,12'
          Dst:             ovsdb_idl_set_condition
    - functionName:    ovsrec_ssl_parse_bootstrap_ca_cert
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44140
      functionLinenumberEnd: 44148
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsrec_ssl_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:44141,30'
          Dst:             ovsrec_ssl_cast
    - functionName:    ovsrec_ssl_unparse_bootstrap_ca_cert
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44200
      functionLinenumberEnd: 44202
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_ssl_parse_ca_cert
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44152
      functionLinenumberEnd: 44160
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_ssl_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:44153,30'
          Dst:             ovsrec_ssl_cast
        - Src:             'lib/vswitch-idl.c:44156,24'
          Dst:             json_string
    - functionName:    ovsrec_ssl_unparse_ca_cert
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44206
      functionLinenumberEnd: 44208
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_ssl_parse_certificate
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44164
      functionLinenumberEnd: 44172
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_ssl_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:44165,30'
          Dst:             ovsrec_ssl_cast
        - Src:             'lib/vswitch-idl.c:44168,28'
          Dst:             json_string
    - functionName:    ovsrec_ssl_unparse_certificate
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44212
      functionLinenumberEnd: 44214
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_ssl_parse_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44176
      functionLinenumberEnd: 44184
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          61
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_ssl_cast
        - smap_add
        - smap_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:44177,30'
          Dst:             ovsrec_ssl_cast
        - Src:             'lib/vswitch-idl.c:44178,5'
          Dst:             smap_init
        - Src:             'lib/vswitch-idl.c:44181,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:44182,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:44180,9'
          Dst:             smap_add
    - functionName:    ovsrec_ssl_unparse_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44218
      functionLinenumberEnd: 44221
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_ssl_cast
        - smap_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:44219,30'
          Dst:             ovsrec_ssl_cast
        - Src:             'lib/vswitch-idl.c:44220,5'
          Dst:             smap_destroy
    - functionName:    ovsrec_ssl_parse_private_key
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44188
      functionLinenumberEnd: 44196
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_ssl_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:44189,30'
          Dst:             ovsrec_ssl_cast
        - Src:             'lib/vswitch-idl.c:44192,28'
          Dst:             json_string
    - functionName:    ovsrec_ssl_unparse_private_key
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44225
      functionLinenumberEnd: 44227
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_queue_parse_dscp
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43173
      functionLinenumberEnd: 43185
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          104
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - ovsrec_queue_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:43174,32'
          Dst:             ovsrec_queue_cast
        - Src:             'lib/vswitch-idl.c:43180,25'
          Dst:             xmalloc
    - functionName:    ovsrec_queue_unparse_dscp
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43213
      functionLinenumberEnd: 43216
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_queue_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:43214,32'
          Dst:             ovsrec_queue_cast
    - functionName:    ovsrec_queue_parse_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43189
      functionLinenumberEnd: 43197
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          61
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_queue_cast
        - smap_add
        - smap_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:43190,32'
          Dst:             ovsrec_queue_cast
        - Src:             'lib/vswitch-idl.c:43191,5'
          Dst:             smap_init
        - Src:             'lib/vswitch-idl.c:43194,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:43195,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:43193,9'
          Dst:             smap_add
    - functionName:    ovsrec_queue_unparse_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43220
      functionLinenumberEnd: 43223
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_queue_cast
        - smap_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:43221,32'
          Dst:             ovsrec_queue_cast
        - Src:             'lib/vswitch-idl.c:43222,5'
          Dst:             smap_destroy
    - functionName:    ovsrec_queue_parse_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43201
      functionLinenumberEnd: 43209
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          61
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_queue_cast
        - smap_add
        - smap_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:43202,32'
          Dst:             ovsrec_queue_cast
        - Src:             'lib/vswitch-idl.c:43203,5'
          Dst:             smap_init
        - Src:             'lib/vswitch-idl.c:43206,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:43207,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:43205,9'
          Dst:             smap_add
    - functionName:    ovsrec_queue_unparse_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43227
      functionLinenumberEnd: 43230
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_queue_cast
        - smap_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:43228,32'
          Dst:             ovsrec_queue_cast
        - Src:             'lib/vswitch-idl.c:43229,5'
          Dst:             smap_destroy
    - functionName:    ovsrec_qos_parse_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42077
      functionLinenumberEnd: 42085
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          61
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_qos_cast
        - smap_add
        - smap_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:42078,30'
          Dst:             ovsrec_qos_cast
        - Src:             'lib/vswitch-idl.c:42079,5'
          Dst:             smap_init
        - Src:             'lib/vswitch-idl.c:42082,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:42083,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:42081,9'
          Dst:             smap_add
    - functionName:    ovsrec_qos_unparse_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42135
      functionLinenumberEnd: 42138
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_qos_cast
        - smap_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:42136,30'
          Dst:             ovsrec_qos_cast
        - Src:             'lib/vswitch-idl.c:42137,5'
          Dst:             smap_destroy
    - functionName:    ovsrec_qos_parse_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42089
      functionLinenumberEnd: 42097
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          61
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_qos_cast
        - smap_add
        - smap_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:42090,30'
          Dst:             ovsrec_qos_cast
        - Src:             'lib/vswitch-idl.c:42091,5'
          Dst:             smap_init
        - Src:             'lib/vswitch-idl.c:42094,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:42095,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:42093,9'
          Dst:             smap_add
    - functionName:    ovsrec_qos_unparse_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42142
      functionLinenumberEnd: 42145
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_qos_cast
        - smap_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:42143,30'
          Dst:             ovsrec_qos_cast
        - Src:             'lib/vswitch-idl.c:42144,5'
          Dst:             smap_destroy
    - functionName:    ovsrec_qos_parse_queues
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42101
      functionLinenumberEnd: 42119
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          124
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - ovsdb_idl_get_row_arc
        - ovsrec_qos_cast
        - ovsrec_queue_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:42102,30'
          Dst:             ovsrec_qos_cast
        - Src:             'lib/vswitch-idl.c:42107,59'
          Dst:             ovsdb_idl_get_row_arc
        - Src:             'lib/vswitch-idl.c:42107,41'
          Dst:             ovsrec_queue_cast
        - Src:             'lib/vswitch-idl.c:42112,31'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:42113,33'
          Dst:             xmalloc
    - functionName:    ovsrec_qos_unparse_queues
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42149
      functionLinenumberEnd: 42153
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_qos_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:42150,30'
          Dst:             ovsrec_qos_cast
    - functionName:    ovsrec_qos_parse_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42123
      functionLinenumberEnd: 42131
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_qos_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:42124,30'
          Dst:             ovsrec_qos_cast
        - Src:             'lib/vswitch-idl.c:42127,21'
          Dst:             json_string
    - functionName:    ovsrec_qos_unparse_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42157
      functionLinenumberEnd: 42159
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_port_parse_bond_active_slave
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37283
      functionLinenumberEnd: 37291
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_port_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37284,31'
          Dst:             ovsrec_port_cast
        - Src:             'lib/vswitch-idl.c:37287,34'
          Dst:             json_string
    - functionName:    ovsrec_port_unparse_bond_active_slave
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37578
      functionLinenumberEnd: 37580
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_port_parse_bond_downdelay
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37295
      functionLinenumberEnd: 37303
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsrec_port_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37296,31'
          Dst:             ovsrec_port_cast
    - functionName:    ovsrec_port_unparse_bond_downdelay
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37584
      functionLinenumberEnd: 37586
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_port_parse_bond_fake_iface
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37307
      functionLinenumberEnd: 37315
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsrec_port_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37308,31'
          Dst:             ovsrec_port_cast
    - functionName:    ovsrec_port_unparse_bond_fake_iface
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37590
      functionLinenumberEnd: 37592
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_port_parse_bond_mode
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37319
      functionLinenumberEnd: 37327
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_port_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37320,31'
          Dst:             ovsrec_port_cast
        - Src:             'lib/vswitch-idl.c:37323,26'
          Dst:             json_string
    - functionName:    ovsrec_port_unparse_bond_mode
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37596
      functionLinenumberEnd: 37598
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_port_parse_bond_updelay
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37331
      functionLinenumberEnd: 37339
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsrec_port_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37332,31'
          Dst:             ovsrec_port_cast
    - functionName:    ovsrec_port_unparse_bond_updelay
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37602
      functionLinenumberEnd: 37604
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_port_parse_cvlans
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37343
      functionLinenumberEnd: 37355
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          104
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - ovsrec_port_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37344,31'
          Dst:             ovsrec_port_cast
        - Src:             'lib/vswitch-idl.c:37350,27'
          Dst:             xmalloc
    - functionName:    ovsrec_port_unparse_cvlans
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37608
      functionLinenumberEnd: 37611
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_port_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37609,31'
          Dst:             ovsrec_port_cast
    - functionName:    ovsrec_port_parse_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37359
      functionLinenumberEnd: 37367
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          61
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_port_cast
        - smap_add
        - smap_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37360,31'
          Dst:             ovsrec_port_cast
        - Src:             'lib/vswitch-idl.c:37361,5'
          Dst:             smap_init
        - Src:             'lib/vswitch-idl.c:37364,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:37365,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:37363,9'
          Dst:             smap_add
    - functionName:    ovsrec_port_unparse_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37615
      functionLinenumberEnd: 37618
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_port_cast
        - smap_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37616,31'
          Dst:             ovsrec_port_cast
        - Src:             'lib/vswitch-idl.c:37617,5'
          Dst:             smap_destroy
    - functionName:    ovsrec_port_parse_fake_bridge
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37371
      functionLinenumberEnd: 37379
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsrec_port_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37372,31'
          Dst:             ovsrec_port_cast
    - functionName:    ovsrec_port_unparse_fake_bridge
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37622
      functionLinenumberEnd: 37624
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_port_parse_interfaces
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37383
      functionLinenumberEnd: 37398
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          98
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - ovsdb_idl_get_row_arc
        - ovsrec_interface_cast
        - ovsrec_port_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37384,31'
          Dst:             ovsrec_port_cast
        - Src:             'lib/vswitch-idl.c:37388,65'
          Dst:             ovsdb_idl_get_row_arc
        - Src:             'lib/vswitch-idl.c:37388,43'
          Dst:             ovsrec_interface_cast
        - Src:             'lib/vswitch-idl.c:37393,31'
          Dst:             xmalloc
    - functionName:    ovsrec_port_unparse_interfaces
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37628
      functionLinenumberEnd: 37631
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_port_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37629,31'
          Dst:             ovsrec_port_cast
    - functionName:    ovsrec_port_parse_lacp
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37402
      functionLinenumberEnd: 37410
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_port_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37403,31'
          Dst:             ovsrec_port_cast
        - Src:             'lib/vswitch-idl.c:37406,21'
          Dst:             json_string
    - functionName:    ovsrec_port_unparse_lacp
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37635
      functionLinenumberEnd: 37637
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_port_parse_mac
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37414
      functionLinenumberEnd: 37422
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_port_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37415,31'
          Dst:             ovsrec_port_cast
        - Src:             'lib/vswitch-idl.c:37418,20'
          Dst:             json_string
    - functionName:    ovsrec_port_unparse_mac
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37641
      functionLinenumberEnd: 37643
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_port_parse_name
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37426
      functionLinenumberEnd: 37434
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_port_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37427,31'
          Dst:             ovsrec_port_cast
        - Src:             'lib/vswitch-idl.c:37430,21'
          Dst:             json_string
    - functionName:    ovsrec_port_unparse_name
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37647
      functionLinenumberEnd: 37649
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_port_parse_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37438
      functionLinenumberEnd: 37446
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          61
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_port_cast
        - smap_add
        - smap_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37439,31'
          Dst:             ovsrec_port_cast
        - Src:             'lib/vswitch-idl.c:37440,5'
          Dst:             smap_init
        - Src:             'lib/vswitch-idl.c:37443,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:37444,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:37442,9'
          Dst:             smap_add
    - functionName:    ovsrec_port_unparse_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37653
      functionLinenumberEnd: 37656
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_port_cast
        - smap_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37654,31'
          Dst:             ovsrec_port_cast
        - Src:             'lib/vswitch-idl.c:37655,5'
          Dst:             smap_destroy
    - functionName:    ovsrec_port_parse_protected_
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37450
      functionLinenumberEnd: 37458
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsrec_port_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37451,31'
          Dst:             ovsrec_port_cast
    - functionName:    ovsrec_port_unparse_protected_
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37660
      functionLinenumberEnd: 37662
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_port_parse_qos
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37462
      functionLinenumberEnd: 37470
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_get_row_arc
        - ovsrec_port_cast
        - ovsrec_qos_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37463,31'
          Dst:             ovsrec_port_cast
        - Src:             'lib/vswitch-idl.c:37466,36'
          Dst:             ovsdb_idl_get_row_arc
        - Src:             'lib/vswitch-idl.c:37466,20'
          Dst:             ovsrec_qos_cast
    - functionName:    ovsrec_port_unparse_qos
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37666
      functionLinenumberEnd: 37668
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_port_parse_rstp_statistics
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37474
      functionLinenumberEnd: 37488
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          116
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - json_string
        - ovsrec_port_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37475,31'
          Dst:             ovsrec_port_cast
        - Src:             'lib/vswitch-idl.c:37481,40'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:37482,42'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:37484,60'
          Dst:             json_string
    - functionName:    ovsrec_port_unparse_rstp_statistics
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37672
      functionLinenumberEnd: 37676
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_port_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37673,31'
          Dst:             ovsrec_port_cast
    - functionName:    ovsrec_port_parse_rstp_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37492
      functionLinenumberEnd: 37500
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          61
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_port_cast
        - smap_add
        - smap_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37493,31'
          Dst:             ovsrec_port_cast
        - Src:             'lib/vswitch-idl.c:37494,5'
          Dst:             smap_init
        - Src:             'lib/vswitch-idl.c:37497,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:37498,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:37496,9'
          Dst:             smap_add
    - functionName:    ovsrec_port_unparse_rstp_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37680
      functionLinenumberEnd: 37683
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_port_cast
        - smap_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37681,31'
          Dst:             ovsrec_port_cast
        - Src:             'lib/vswitch-idl.c:37682,5'
          Dst:             smap_destroy
    - functionName:    ovsrec_port_parse_statistics
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37504
      functionLinenumberEnd: 37518
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          116
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - json_string
        - ovsrec_port_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37505,31'
          Dst:             ovsrec_port_cast
        - Src:             'lib/vswitch-idl.c:37511,35'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:37512,37'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:37514,50'
          Dst:             json_string
    - functionName:    ovsrec_port_unparse_statistics
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37687
      functionLinenumberEnd: 37691
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_port_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37688,31'
          Dst:             ovsrec_port_cast
    - functionName:    ovsrec_port_parse_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37522
      functionLinenumberEnd: 37530
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          61
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_port_cast
        - smap_add
        - smap_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37523,31'
          Dst:             ovsrec_port_cast
        - Src:             'lib/vswitch-idl.c:37524,5'
          Dst:             smap_init
        - Src:             'lib/vswitch-idl.c:37527,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:37528,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:37526,9'
          Dst:             smap_add
    - functionName:    ovsrec_port_unparse_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37695
      functionLinenumberEnd: 37698
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_port_cast
        - smap_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37696,31'
          Dst:             ovsrec_port_cast
        - Src:             'lib/vswitch-idl.c:37697,5'
          Dst:             smap_destroy
    - functionName:    ovsrec_port_parse_tag
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37534
      functionLinenumberEnd: 37546
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          104
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - ovsrec_port_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37535,31'
          Dst:             ovsrec_port_cast
        - Src:             'lib/vswitch-idl.c:37541,24'
          Dst:             xmalloc
    - functionName:    ovsrec_port_unparse_tag
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37702
      functionLinenumberEnd: 37705
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_port_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37703,31'
          Dst:             ovsrec_port_cast
    - functionName:    ovsrec_port_parse_trunks
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37550
      functionLinenumberEnd: 37562
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          104
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - ovsrec_port_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37551,31'
          Dst:             ovsrec_port_cast
        - Src:             'lib/vswitch-idl.c:37557,27'
          Dst:             xmalloc
    - functionName:    ovsrec_port_unparse_trunks
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37709
      functionLinenumberEnd: 37712
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_port_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37710,31'
          Dst:             ovsrec_port_cast
    - functionName:    ovsrec_port_parse_vlan_mode
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37566
      functionLinenumberEnd: 37574
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_port_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37567,31'
          Dst:             ovsrec_port_cast
        - Src:             'lib/vswitch-idl.c:37570,26'
          Dst:             json_string
    - functionName:    ovsrec_port_unparse_vlan_mode
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37716
      functionLinenumberEnd: 37718
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_open_vswitch_parse_bridges
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33262
      functionLinenumberEnd: 33277
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          98
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - ovsdb_idl_get_row_arc
        - ovsrec_bridge_cast
        - ovsrec_open_vswitch_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33263,39'
          Dst:             ovsrec_open_vswitch_cast
        - Src:             'lib/vswitch-idl.c:33267,59'
          Dst:             ovsdb_idl_get_row_arc
        - Src:             'lib/vswitch-idl.c:33267,40'
          Dst:             ovsrec_bridge_cast
        - Src:             'lib/vswitch-idl.c:33272,28'
          Dst:             xmalloc
    - functionName:    ovsrec_open_vswitch_unparse_bridges
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33496
      functionLinenumberEnd: 33499
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_open_vswitch_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33497,39'
          Dst:             ovsrec_open_vswitch_cast
    - functionName:    ovsrec_open_vswitch_parse_cur_cfg
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33281
      functionLinenumberEnd: 33289
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsrec_open_vswitch_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33282,39'
          Dst:             ovsrec_open_vswitch_cast
    - functionName:    ovsrec_open_vswitch_unparse_cur_cfg
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33503
      functionLinenumberEnd: 33505
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_open_vswitch_parse_datapath_types
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33293
      functionLinenumberEnd: 33304
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          90
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - json_string
        - ovsrec_open_vswitch_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33294,39'
          Dst:             ovsrec_open_vswitch_cast
        - Src:             'lib/vswitch-idl.c:33299,35'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:33301,54'
          Dst:             json_string
    - functionName:    ovsrec_open_vswitch_unparse_datapath_types
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33509
      functionLinenumberEnd: 33512
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_open_vswitch_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33510,39'
          Dst:             ovsrec_open_vswitch_cast
    - functionName:    ovsrec_open_vswitch_parse_datapaths
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33308
      functionLinenumberEnd: 33326
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          125
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - json_string
        - ovsdb_idl_get_row_arc
        - ovsrec_datapath_cast
        - ovsrec_open_vswitch_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33309,39'
          Dst:             ovsrec_open_vswitch_cast
        - Src:             'lib/vswitch-idl.c:33314,65'
          Dst:             ovsdb_idl_get_row_arc
        - Src:             'lib/vswitch-idl.c:33314,44'
          Dst:             ovsrec_datapath_cast
        - Src:             'lib/vswitch-idl.c:33319,34'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:33320,36'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:33322,48'
          Dst:             json_string
    - functionName:    ovsrec_open_vswitch_unparse_datapaths
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33516
      functionLinenumberEnd: 33520
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_open_vswitch_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33517,39'
          Dst:             ovsrec_open_vswitch_cast
    - functionName:    ovsrec_open_vswitch_parse_db_version
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33330
      functionLinenumberEnd: 33338
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_open_vswitch_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33331,39'
          Dst:             ovsrec_open_vswitch_cast
        - Src:             'lib/vswitch-idl.c:33334,27'
          Dst:             json_string
    - functionName:    ovsrec_open_vswitch_unparse_db_version
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33524
      functionLinenumberEnd: 33526
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_open_vswitch_parse_dpdk_initialized
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33342
      functionLinenumberEnd: 33350
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsrec_open_vswitch_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33343,39'
          Dst:             ovsrec_open_vswitch_cast
    - functionName:    ovsrec_open_vswitch_unparse_dpdk_initialized
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33530
      functionLinenumberEnd: 33532
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_open_vswitch_parse_dpdk_version
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33354
      functionLinenumberEnd: 33362
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_open_vswitch_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33355,39'
          Dst:             ovsrec_open_vswitch_cast
        - Src:             'lib/vswitch-idl.c:33358,29'
          Dst:             json_string
    - functionName:    ovsrec_open_vswitch_unparse_dpdk_version
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33536
      functionLinenumberEnd: 33538
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_open_vswitch_parse_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33366
      functionLinenumberEnd: 33374
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          61
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_open_vswitch_cast
        - smap_add
        - smap_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33367,39'
          Dst:             ovsrec_open_vswitch_cast
        - Src:             'lib/vswitch-idl.c:33368,5'
          Dst:             smap_init
        - Src:             'lib/vswitch-idl.c:33371,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:33372,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:33370,9'
          Dst:             smap_add
    - functionName:    ovsrec_open_vswitch_unparse_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33542
      functionLinenumberEnd: 33545
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_open_vswitch_cast
        - smap_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33543,39'
          Dst:             ovsrec_open_vswitch_cast
        - Src:             'lib/vswitch-idl.c:33544,5'
          Dst:             smap_destroy
    - functionName:    ovsrec_open_vswitch_parse_iface_types
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33378
      functionLinenumberEnd: 33389
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          90
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - json_string
        - ovsrec_open_vswitch_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33379,39'
          Dst:             ovsrec_open_vswitch_cast
        - Src:             'lib/vswitch-idl.c:33384,32'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:33386,48'
          Dst:             json_string
    - functionName:    ovsrec_open_vswitch_unparse_iface_types
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33549
      functionLinenumberEnd: 33552
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_open_vswitch_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33550,39'
          Dst:             ovsrec_open_vswitch_cast
    - functionName:    ovsrec_open_vswitch_parse_manager_options
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33393
      functionLinenumberEnd: 33408
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          98
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - ovsdb_idl_get_row_arc
        - ovsrec_manager_cast
        - ovsrec_open_vswitch_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33394,39'
          Dst:             ovsrec_open_vswitch_cast
        - Src:             'lib/vswitch-idl.c:33398,61'
          Dst:             ovsdb_idl_get_row_arc
        - Src:             'lib/vswitch-idl.c:33398,41'
          Dst:             ovsrec_manager_cast
        - Src:             'lib/vswitch-idl.c:33403,36'
          Dst:             xmalloc
    - functionName:    ovsrec_open_vswitch_unparse_manager_options
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33556
      functionLinenumberEnd: 33559
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_open_vswitch_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33557,39'
          Dst:             ovsrec_open_vswitch_cast
    - functionName:    ovsrec_open_vswitch_parse_next_cfg
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33412
      functionLinenumberEnd: 33420
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsrec_open_vswitch_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33413,39'
          Dst:             ovsrec_open_vswitch_cast
    - functionName:    ovsrec_open_vswitch_unparse_next_cfg
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33563
      functionLinenumberEnd: 33565
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_open_vswitch_parse_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33424
      functionLinenumberEnd: 33432
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          61
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_open_vswitch_cast
        - smap_add
        - smap_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33425,39'
          Dst:             ovsrec_open_vswitch_cast
        - Src:             'lib/vswitch-idl.c:33426,5'
          Dst:             smap_init
        - Src:             'lib/vswitch-idl.c:33429,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:33430,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:33428,9'
          Dst:             smap_add
    - functionName:    ovsrec_open_vswitch_unparse_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33569
      functionLinenumberEnd: 33572
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_open_vswitch_cast
        - smap_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33570,39'
          Dst:             ovsrec_open_vswitch_cast
        - Src:             'lib/vswitch-idl.c:33571,5'
          Dst:             smap_destroy
    - functionName:    ovsrec_open_vswitch_parse_ovs_version
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33436
      functionLinenumberEnd: 33444
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_open_vswitch_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33437,39'
          Dst:             ovsrec_open_vswitch_cast
        - Src:             'lib/vswitch-idl.c:33440,28'
          Dst:             json_string
    - functionName:    ovsrec_open_vswitch_unparse_ovs_version
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33576
      functionLinenumberEnd: 33578
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_open_vswitch_parse_ssl
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33448
      functionLinenumberEnd: 33456
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_get_row_arc
        - ovsrec_open_vswitch_cast
        - ovsrec_ssl_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33449,39'
          Dst:             ovsrec_open_vswitch_cast
        - Src:             'lib/vswitch-idl.c:33452,36'
          Dst:             ovsdb_idl_get_row_arc
        - Src:             'lib/vswitch-idl.c:33452,20'
          Dst:             ovsrec_ssl_cast
    - functionName:    ovsrec_open_vswitch_unparse_ssl
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33582
      functionLinenumberEnd: 33584
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_open_vswitch_parse_statistics
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33460
      functionLinenumberEnd: 33468
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          61
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_open_vswitch_cast
        - smap_add
        - smap_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33461,39'
          Dst:             ovsrec_open_vswitch_cast
        - Src:             'lib/vswitch-idl.c:33462,5'
          Dst:             smap_init
        - Src:             'lib/vswitch-idl.c:33465,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:33466,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:33464,9'
          Dst:             smap_add
    - functionName:    ovsrec_open_vswitch_unparse_statistics
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33588
      functionLinenumberEnd: 33591
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_open_vswitch_cast
        - smap_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33589,39'
          Dst:             ovsrec_open_vswitch_cast
        - Src:             'lib/vswitch-idl.c:33590,5'
          Dst:             smap_destroy
    - functionName:    ovsrec_open_vswitch_parse_system_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33472
      functionLinenumberEnd: 33480
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_open_vswitch_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33473,39'
          Dst:             ovsrec_open_vswitch_cast
        - Src:             'lib/vswitch-idl.c:33476,28'
          Dst:             json_string
    - functionName:    ovsrec_open_vswitch_unparse_system_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33595
      functionLinenumberEnd: 33597
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_open_vswitch_parse_system_version
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33484
      functionLinenumberEnd: 33492
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_open_vswitch_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33485,39'
          Dst:             ovsrec_open_vswitch_cast
        - Src:             'lib/vswitch-idl.c:33488,31'
          Dst:             json_string
    - functionName:    ovsrec_open_vswitch_unparse_system_version
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33601
      functionLinenumberEnd: 33603
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_netflow_parse_active_timeout
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31613
      functionLinenumberEnd: 31621
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsrec_netflow_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:31614,34'
          Dst:             ovsrec_netflow_cast
    - functionName:    ovsrec_netflow_unparse_active_timeout
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31696
      functionLinenumberEnd: 31698
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_netflow_parse_add_id_to_interface
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31625
      functionLinenumberEnd: 31633
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsrec_netflow_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:31626,34'
          Dst:             ovsrec_netflow_cast
    - functionName:    ovsrec_netflow_unparse_add_id_to_interface
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31702
      functionLinenumberEnd: 31704
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_netflow_parse_engine_id
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31637
      functionLinenumberEnd: 31649
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          104
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - ovsrec_netflow_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:31638,34'
          Dst:             ovsrec_netflow_cast
        - Src:             'lib/vswitch-idl.c:31644,30'
          Dst:             xmalloc
    - functionName:    ovsrec_netflow_unparse_engine_id
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31708
      functionLinenumberEnd: 31711
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_netflow_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:31709,34'
          Dst:             ovsrec_netflow_cast
    - functionName:    ovsrec_netflow_parse_engine_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31653
      functionLinenumberEnd: 31665
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          104
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - ovsrec_netflow_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:31654,34'
          Dst:             ovsrec_netflow_cast
        - Src:             'lib/vswitch-idl.c:31660,32'
          Dst:             xmalloc
    - functionName:    ovsrec_netflow_unparse_engine_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31715
      functionLinenumberEnd: 31718
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_netflow_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:31716,34'
          Dst:             ovsrec_netflow_cast
    - functionName:    ovsrec_netflow_parse_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31669
      functionLinenumberEnd: 31677
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          61
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_netflow_cast
        - smap_add
        - smap_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:31670,34'
          Dst:             ovsrec_netflow_cast
        - Src:             'lib/vswitch-idl.c:31671,5'
          Dst:             smap_init
        - Src:             'lib/vswitch-idl.c:31674,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:31675,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:31673,9'
          Dst:             smap_add
    - functionName:    ovsrec_netflow_unparse_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31722
      functionLinenumberEnd: 31725
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_netflow_cast
        - smap_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:31723,34'
          Dst:             ovsrec_netflow_cast
        - Src:             'lib/vswitch-idl.c:31724,5'
          Dst:             smap_destroy
    - functionName:    ovsrec_netflow_parse_targets
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31681
      functionLinenumberEnd: 31692
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          90
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - json_string
        - ovsrec_netflow_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:31682,34'
          Dst:             ovsrec_netflow_cast
        - Src:             'lib/vswitch-idl.c:31687,28'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:31689,40'
          Dst:             json_string
    - functionName:    ovsrec_netflow_unparse_targets
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31729
      functionLinenumberEnd: 31732
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_netflow_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:31730,34'
          Dst:             ovsrec_netflow_cast
    - functionName:    ovsrec_mirror_parse_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29023
      functionLinenumberEnd: 29031
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          61
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_mirror_cast
        - smap_add
        - smap_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:29024,33'
          Dst:             ovsrec_mirror_cast
        - Src:             'lib/vswitch-idl.c:29025,5'
          Dst:             smap_init
        - Src:             'lib/vswitch-idl.c:29028,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:29029,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:29027,9'
          Dst:             smap_add
    - functionName:    ovsrec_mirror_unparse_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29187
      functionLinenumberEnd: 29190
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_mirror_cast
        - smap_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:29188,33'
          Dst:             ovsrec_mirror_cast
        - Src:             'lib/vswitch-idl.c:29189,5'
          Dst:             smap_destroy
    - functionName:    ovsrec_mirror_parse_filter
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29035
      functionLinenumberEnd: 29043
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_mirror_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:29036,33'
          Dst:             ovsrec_mirror_cast
        - Src:             'lib/vswitch-idl.c:29039,23'
          Dst:             json_string
    - functionName:    ovsrec_mirror_unparse_filter
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29194
      functionLinenumberEnd: 29196
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_mirror_parse_name
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29047
      functionLinenumberEnd: 29055
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_mirror_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:29048,33'
          Dst:             ovsrec_mirror_cast
        - Src:             'lib/vswitch-idl.c:29051,21'
          Dst:             json_string
    - functionName:    ovsrec_mirror_unparse_name
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29200
      functionLinenumberEnd: 29202
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_mirror_parse_output_port
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29059
      functionLinenumberEnd: 29067
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_get_row_arc
        - ovsrec_mirror_cast
        - ovsrec_port_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:29060,33'
          Dst:             ovsrec_mirror_cast
        - Src:             'lib/vswitch-idl.c:29063,45'
          Dst:             ovsdb_idl_get_row_arc
        - Src:             'lib/vswitch-idl.c:29063,28'
          Dst:             ovsrec_port_cast
    - functionName:    ovsrec_mirror_unparse_output_port
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29206
      functionLinenumberEnd: 29208
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_mirror_parse_output_vlan
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29071
      functionLinenumberEnd: 29083
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          104
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - ovsrec_mirror_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:29072,33'
          Dst:             ovsrec_mirror_cast
        - Src:             'lib/vswitch-idl.c:29078,32'
          Dst:             xmalloc
    - functionName:    ovsrec_mirror_unparse_output_vlan
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29212
      functionLinenumberEnd: 29215
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_mirror_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:29213,33'
          Dst:             ovsrec_mirror_cast
    - functionName:    ovsrec_mirror_parse_select_all
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29087
      functionLinenumberEnd: 29095
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsrec_mirror_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:29088,33'
          Dst:             ovsrec_mirror_cast
    - functionName:    ovsrec_mirror_unparse_select_all
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29219
      functionLinenumberEnd: 29221
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_mirror_parse_select_dst_port
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29099
      functionLinenumberEnd: 29114
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          98
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - ovsdb_idl_get_row_arc
        - ovsrec_mirror_cast
        - ovsrec_port_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:29100,33'
          Dst:             ovsrec_mirror_cast
        - Src:             'lib/vswitch-idl.c:29104,55'
          Dst:             ovsdb_idl_get_row_arc
        - Src:             'lib/vswitch-idl.c:29104,38'
          Dst:             ovsrec_port_cast
        - Src:             'lib/vswitch-idl.c:29109,36'
          Dst:             xmalloc
    - functionName:    ovsrec_mirror_unparse_select_dst_port
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29225
      functionLinenumberEnd: 29228
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_mirror_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:29226,33'
          Dst:             ovsrec_mirror_cast
    - functionName:    ovsrec_mirror_parse_select_src_port
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29118
      functionLinenumberEnd: 29133
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          98
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - ovsdb_idl_get_row_arc
        - ovsrec_mirror_cast
        - ovsrec_port_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:29119,33'
          Dst:             ovsrec_mirror_cast
        - Src:             'lib/vswitch-idl.c:29123,55'
          Dst:             ovsdb_idl_get_row_arc
        - Src:             'lib/vswitch-idl.c:29123,38'
          Dst:             ovsrec_port_cast
        - Src:             'lib/vswitch-idl.c:29128,36'
          Dst:             xmalloc
    - functionName:    ovsrec_mirror_unparse_select_src_port
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29232
      functionLinenumberEnd: 29235
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_mirror_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:29233,33'
          Dst:             ovsrec_mirror_cast
    - functionName:    ovsrec_mirror_parse_select_vlan
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29137
      functionLinenumberEnd: 29149
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          104
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - ovsrec_mirror_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:29138,33'
          Dst:             ovsrec_mirror_cast
        - Src:             'lib/vswitch-idl.c:29144,32'
          Dst:             xmalloc
    - functionName:    ovsrec_mirror_unparse_select_vlan
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29239
      functionLinenumberEnd: 29242
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_mirror_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:29240,33'
          Dst:             ovsrec_mirror_cast
    - functionName:    ovsrec_mirror_parse_snaplen
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29153
      functionLinenumberEnd: 29165
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          104
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - ovsrec_mirror_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:29154,33'
          Dst:             ovsrec_mirror_cast
        - Src:             'lib/vswitch-idl.c:29160,28'
          Dst:             xmalloc
    - functionName:    ovsrec_mirror_unparse_snaplen
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29246
      functionLinenumberEnd: 29249
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_mirror_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:29247,33'
          Dst:             ovsrec_mirror_cast
    - functionName:    ovsrec_mirror_parse_statistics
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29169
      functionLinenumberEnd: 29183
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          116
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - json_string
        - ovsrec_mirror_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:29170,33'
          Dst:             ovsrec_mirror_cast
        - Src:             'lib/vswitch-idl.c:29176,35'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:29177,37'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:29179,50'
          Dst:             json_string
    - functionName:    ovsrec_mirror_unparse_statistics
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29253
      functionLinenumberEnd: 29257
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_mirror_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:29254,33'
          Dst:             ovsrec_mirror_cast
    - functionName:    ovsrec_manager_parse_connection_mode
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26980
      functionLinenumberEnd: 26988
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_manager_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:26981,34'
          Dst:             ovsrec_manager_cast
        - Src:             'lib/vswitch-idl.c:26984,32'
          Dst:             json_string
    - functionName:    ovsrec_manager_unparse_connection_mode
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27084
      functionLinenumberEnd: 27086
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_manager_parse_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26992
      functionLinenumberEnd: 27000
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          61
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_manager_cast
        - smap_add
        - smap_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:26993,34'
          Dst:             ovsrec_manager_cast
        - Src:             'lib/vswitch-idl.c:26994,5'
          Dst:             smap_init
        - Src:             'lib/vswitch-idl.c:26997,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:26998,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:26996,9'
          Dst:             smap_add
    - functionName:    ovsrec_manager_unparse_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27090
      functionLinenumberEnd: 27093
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_manager_cast
        - smap_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:27091,34'
          Dst:             ovsrec_manager_cast
        - Src:             'lib/vswitch-idl.c:27092,5'
          Dst:             smap_destroy
    - functionName:    ovsrec_manager_parse_inactivity_probe
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27004
      functionLinenumberEnd: 27016
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          104
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - ovsrec_manager_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:27005,34'
          Dst:             ovsrec_manager_cast
        - Src:             'lib/vswitch-idl.c:27011,37'
          Dst:             xmalloc
    - functionName:    ovsrec_manager_unparse_inactivity_probe
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27097
      functionLinenumberEnd: 27100
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_manager_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:27098,34'
          Dst:             ovsrec_manager_cast
    - functionName:    ovsrec_manager_parse_is_connected
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27020
      functionLinenumberEnd: 27028
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsrec_manager_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:27021,34'
          Dst:             ovsrec_manager_cast
    - functionName:    ovsrec_manager_unparse_is_connected
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27104
      functionLinenumberEnd: 27106
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_manager_parse_max_backoff
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27032
      functionLinenumberEnd: 27044
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          104
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - ovsrec_manager_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:27033,34'
          Dst:             ovsrec_manager_cast
        - Src:             'lib/vswitch-idl.c:27039,32'
          Dst:             xmalloc
    - functionName:    ovsrec_manager_unparse_max_backoff
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27110
      functionLinenumberEnd: 27113
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_manager_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:27111,34'
          Dst:             ovsrec_manager_cast
    - functionName:    ovsrec_manager_parse_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27048
      functionLinenumberEnd: 27056
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          61
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_manager_cast
        - smap_add
        - smap_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:27049,34'
          Dst:             ovsrec_manager_cast
        - Src:             'lib/vswitch-idl.c:27050,5'
          Dst:             smap_init
        - Src:             'lib/vswitch-idl.c:27053,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:27054,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:27052,9'
          Dst:             smap_add
    - functionName:    ovsrec_manager_unparse_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27117
      functionLinenumberEnd: 27120
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_manager_cast
        - smap_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:27118,34'
          Dst:             ovsrec_manager_cast
        - Src:             'lib/vswitch-idl.c:27119,5'
          Dst:             smap_destroy
    - functionName:    ovsrec_manager_parse_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27060
      functionLinenumberEnd: 27068
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          61
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_manager_cast
        - smap_add
        - smap_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:27061,34'
          Dst:             ovsrec_manager_cast
        - Src:             'lib/vswitch-idl.c:27062,5'
          Dst:             smap_init
        - Src:             'lib/vswitch-idl.c:27065,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:27066,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:27064,9'
          Dst:             smap_add
    - functionName:    ovsrec_manager_unparse_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27124
      functionLinenumberEnd: 27127
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_manager_cast
        - smap_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:27125,34'
          Dst:             ovsrec_manager_cast
        - Src:             'lib/vswitch-idl.c:27126,5'
          Dst:             smap_destroy
    - functionName:    ovsrec_manager_parse_target
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27072
      functionLinenumberEnd: 27080
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_manager_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:27073,34'
          Dst:             ovsrec_manager_cast
        - Src:             'lib/vswitch-idl.c:27076,23'
          Dst:             json_string
    - functionName:    ovsrec_manager_unparse_target
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27131
      functionLinenumberEnd: 27133
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_interface_parse_admin_state
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19147
      functionLinenumberEnd: 19155
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_interface_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19148,36'
          Dst:             ovsrec_interface_cast
        - Src:             'lib/vswitch-idl.c:19151,28'
          Dst:             json_string
    - functionName:    ovsrec_interface_unparse_admin_state
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19627
      functionLinenumberEnd: 19629
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_interface_parse_bfd
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19159
      functionLinenumberEnd: 19167
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          61
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_interface_cast
        - smap_add
        - smap_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19160,36'
          Dst:             ovsrec_interface_cast
        - Src:             'lib/vswitch-idl.c:19161,5'
          Dst:             smap_init
        - Src:             'lib/vswitch-idl.c:19164,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:19165,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:19163,9'
          Dst:             smap_add
    - functionName:    ovsrec_interface_unparse_bfd
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19633
      functionLinenumberEnd: 19636
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_interface_cast
        - smap_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19634,36'
          Dst:             ovsrec_interface_cast
        - Src:             'lib/vswitch-idl.c:19635,5'
          Dst:             smap_destroy
    - functionName:    ovsrec_interface_parse_bfd_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19171
      functionLinenumberEnd: 19179
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          61
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_interface_cast
        - smap_add
        - smap_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19172,36'
          Dst:             ovsrec_interface_cast
        - Src:             'lib/vswitch-idl.c:19173,5'
          Dst:             smap_init
        - Src:             'lib/vswitch-idl.c:19176,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:19177,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:19175,9'
          Dst:             smap_add
    - functionName:    ovsrec_interface_unparse_bfd_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19640
      functionLinenumberEnd: 19643
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_interface_cast
        - smap_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19641,36'
          Dst:             ovsrec_interface_cast
        - Src:             'lib/vswitch-idl.c:19642,5'
          Dst:             smap_destroy
    - functionName:    ovsrec_interface_parse_cfm_fault
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19183
      functionLinenumberEnd: 19195
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          106
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - ovsrec_interface_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19184,36'
          Dst:             ovsrec_interface_cast
        - Src:             'lib/vswitch-idl.c:19190,30'
          Dst:             xmalloc
    - functionName:    ovsrec_interface_unparse_cfm_fault
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19647
      functionLinenumberEnd: 19650
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_interface_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19648,36'
          Dst:             ovsrec_interface_cast
    - functionName:    ovsrec_interface_parse_cfm_fault_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19199
      functionLinenumberEnd: 19210
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          90
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - json_string
        - ovsrec_interface_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19200,36'
          Dst:             ovsrec_interface_cast
        - Src:             'lib/vswitch-idl.c:19205,37'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:19207,58'
          Dst:             json_string
    - functionName:    ovsrec_interface_unparse_cfm_fault_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19654
      functionLinenumberEnd: 19657
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_interface_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19655,36'
          Dst:             ovsrec_interface_cast
    - functionName:    ovsrec_interface_parse_cfm_flap_count
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19214
      functionLinenumberEnd: 19226
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          104
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - ovsrec_interface_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19215,36'
          Dst:             ovsrec_interface_cast
        - Src:             'lib/vswitch-idl.c:19221,35'
          Dst:             xmalloc
    - functionName:    ovsrec_interface_unparse_cfm_flap_count
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19661
      functionLinenumberEnd: 19664
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_interface_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19662,36'
          Dst:             ovsrec_interface_cast
    - functionName:    ovsrec_interface_parse_cfm_health
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19230
      functionLinenumberEnd: 19242
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          104
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - ovsrec_interface_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19231,36'
          Dst:             ovsrec_interface_cast
        - Src:             'lib/vswitch-idl.c:19237,31'
          Dst:             xmalloc
    - functionName:    ovsrec_interface_unparse_cfm_health
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19668
      functionLinenumberEnd: 19671
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_interface_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19669,36'
          Dst:             ovsrec_interface_cast
    - functionName:    ovsrec_interface_parse_cfm_mpid
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19246
      functionLinenumberEnd: 19258
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          104
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - ovsrec_interface_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19247,36'
          Dst:             ovsrec_interface_cast
        - Src:             'lib/vswitch-idl.c:19253,29'
          Dst:             xmalloc
    - functionName:    ovsrec_interface_unparse_cfm_mpid
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19675
      functionLinenumberEnd: 19678
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_interface_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19676,36'
          Dst:             ovsrec_interface_cast
    - functionName:    ovsrec_interface_parse_cfm_remote_mpids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19262
      functionLinenumberEnd: 19273
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          89
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsrec_interface_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19263,36'
          Dst:             ovsrec_interface_cast
        - Src:             'lib/vswitch-idl.c:19268,37'
          Dst:             xmalloc
    - functionName:    ovsrec_interface_unparse_cfm_remote_mpids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19682
      functionLinenumberEnd: 19685
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_interface_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19683,36'
          Dst:             ovsrec_interface_cast
    - functionName:    ovsrec_interface_parse_cfm_remote_opstate
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19277
      functionLinenumberEnd: 19285
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_interface_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19278,36'
          Dst:             ovsrec_interface_cast
        - Src:             'lib/vswitch-idl.c:19281,35'
          Dst:             json_string
    - functionName:    ovsrec_interface_unparse_cfm_remote_opstate
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19689
      functionLinenumberEnd: 19691
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_interface_parse_duplex
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19289
      functionLinenumberEnd: 19297
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_interface_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19290,36'
          Dst:             ovsrec_interface_cast
        - Src:             'lib/vswitch-idl.c:19293,23'
          Dst:             json_string
    - functionName:    ovsrec_interface_unparse_duplex
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19695
      functionLinenumberEnd: 19697
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_interface_parse_error
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19301
      functionLinenumberEnd: 19309
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_interface_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19302,36'
          Dst:             ovsrec_interface_cast
        - Src:             'lib/vswitch-idl.c:19305,22'
          Dst:             json_string
    - functionName:    ovsrec_interface_unparse_error
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19701
      functionLinenumberEnd: 19703
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_interface_parse_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19313
      functionLinenumberEnd: 19321
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          61
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_interface_cast
        - smap_add
        - smap_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19314,36'
          Dst:             ovsrec_interface_cast
        - Src:             'lib/vswitch-idl.c:19315,5'
          Dst:             smap_init
        - Src:             'lib/vswitch-idl.c:19318,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:19319,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:19317,9'
          Dst:             smap_add
    - functionName:    ovsrec_interface_unparse_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19707
      functionLinenumberEnd: 19710
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_interface_cast
        - smap_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19708,36'
          Dst:             ovsrec_interface_cast
        - Src:             'lib/vswitch-idl.c:19709,5'
          Dst:             smap_destroy
    - functionName:    ovsrec_interface_parse_ifindex
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19325
      functionLinenumberEnd: 19337
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          104
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - ovsrec_interface_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19326,36'
          Dst:             ovsrec_interface_cast
        - Src:             'lib/vswitch-idl.c:19332,28'
          Dst:             xmalloc
    - functionName:    ovsrec_interface_unparse_ifindex
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19714
      functionLinenumberEnd: 19717
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_interface_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19715,36'
          Dst:             ovsrec_interface_cast
    - functionName:    ovsrec_interface_parse_ingress_policing_burst
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19341
      functionLinenumberEnd: 19349
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsrec_interface_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19342,36'
          Dst:             ovsrec_interface_cast
    - functionName:    ovsrec_interface_unparse_ingress_policing_burst
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19721
      functionLinenumberEnd: 19723
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_interface_parse_ingress_policing_kpkts_burst
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19353
      functionLinenumberEnd: 19361
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsrec_interface_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19354,36'
          Dst:             ovsrec_interface_cast
    - functionName:    ovsrec_interface_unparse_ingress_policing_kpkts_burst
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19727
      functionLinenumberEnd: 19729
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_interface_parse_ingress_policing_kpkts_rate
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19365
      functionLinenumberEnd: 19373
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsrec_interface_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19366,36'
          Dst:             ovsrec_interface_cast
    - functionName:    ovsrec_interface_unparse_ingress_policing_kpkts_rate
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19733
      functionLinenumberEnd: 19735
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_interface_parse_ingress_policing_rate
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19377
      functionLinenumberEnd: 19385
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsrec_interface_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19378,36'
          Dst:             ovsrec_interface_cast
    - functionName:    ovsrec_interface_unparse_ingress_policing_rate
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19739
      functionLinenumberEnd: 19741
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_interface_parse_lacp_current
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19389
      functionLinenumberEnd: 19401
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          106
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - ovsrec_interface_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19390,36'
          Dst:             ovsrec_interface_cast
        - Src:             'lib/vswitch-idl.c:19396,33'
          Dst:             xmalloc
    - functionName:    ovsrec_interface_unparse_lacp_current
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19745
      functionLinenumberEnd: 19748
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_interface_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19746,36'
          Dst:             ovsrec_interface_cast
    - functionName:    ovsrec_interface_parse_link_resets
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19405
      functionLinenumberEnd: 19417
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          104
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - ovsrec_interface_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19406,36'
          Dst:             ovsrec_interface_cast
        - Src:             'lib/vswitch-idl.c:19412,32'
          Dst:             xmalloc
    - functionName:    ovsrec_interface_unparse_link_resets
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19752
      functionLinenumberEnd: 19755
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_interface_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19753,36'
          Dst:             ovsrec_interface_cast
    - functionName:    ovsrec_interface_parse_link_speed
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19421
      functionLinenumberEnd: 19433
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          104
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - ovsrec_interface_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19422,36'
          Dst:             ovsrec_interface_cast
        - Src:             'lib/vswitch-idl.c:19428,31'
          Dst:             xmalloc
    - functionName:    ovsrec_interface_unparse_link_speed
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19759
      functionLinenumberEnd: 19762
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_interface_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19760,36'
          Dst:             ovsrec_interface_cast
    - functionName:    ovsrec_interface_parse_link_state
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19437
      functionLinenumberEnd: 19445
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_interface_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19438,36'
          Dst:             ovsrec_interface_cast
        - Src:             'lib/vswitch-idl.c:19441,27'
          Dst:             json_string
    - functionName:    ovsrec_interface_unparse_link_state
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19766
      functionLinenumberEnd: 19768
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_interface_parse_lldp
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19449
      functionLinenumberEnd: 19457
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          61
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_interface_cast
        - smap_add
        - smap_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19450,36'
          Dst:             ovsrec_interface_cast
        - Src:             'lib/vswitch-idl.c:19451,5'
          Dst:             smap_init
        - Src:             'lib/vswitch-idl.c:19454,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:19455,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:19453,9'
          Dst:             smap_add
    - functionName:    ovsrec_interface_unparse_lldp
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19772
      functionLinenumberEnd: 19775
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_interface_cast
        - smap_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19773,36'
          Dst:             ovsrec_interface_cast
        - Src:             'lib/vswitch-idl.c:19774,5'
          Dst:             smap_destroy
    - functionName:    ovsrec_interface_parse_mac
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19461
      functionLinenumberEnd: 19469
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_interface_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19462,36'
          Dst:             ovsrec_interface_cast
        - Src:             'lib/vswitch-idl.c:19465,20'
          Dst:             json_string
    - functionName:    ovsrec_interface_unparse_mac
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19779
      functionLinenumberEnd: 19781
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_interface_parse_mac_in_use
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19473
      functionLinenumberEnd: 19481
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_interface_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19474,36'
          Dst:             ovsrec_interface_cast
        - Src:             'lib/vswitch-idl.c:19477,27'
          Dst:             json_string
    - functionName:    ovsrec_interface_unparse_mac_in_use
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19785
      functionLinenumberEnd: 19787
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_interface_parse_mtu
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19485
      functionLinenumberEnd: 19497
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          104
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - ovsrec_interface_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19486,36'
          Dst:             ovsrec_interface_cast
        - Src:             'lib/vswitch-idl.c:19492,24'
          Dst:             xmalloc
    - functionName:    ovsrec_interface_unparse_mtu
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19791
      functionLinenumberEnd: 19794
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_interface_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19792,36'
          Dst:             ovsrec_interface_cast
    - functionName:    ovsrec_interface_parse_mtu_request
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19501
      functionLinenumberEnd: 19513
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          104
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - ovsrec_interface_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19502,36'
          Dst:             ovsrec_interface_cast
        - Src:             'lib/vswitch-idl.c:19508,32'
          Dst:             xmalloc
    - functionName:    ovsrec_interface_unparse_mtu_request
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19798
      functionLinenumberEnd: 19801
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_interface_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19799,36'
          Dst:             ovsrec_interface_cast
    - functionName:    ovsrec_interface_parse_name
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19517
      functionLinenumberEnd: 19525
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_interface_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19518,36'
          Dst:             ovsrec_interface_cast
        - Src:             'lib/vswitch-idl.c:19521,21'
          Dst:             json_string
    - functionName:    ovsrec_interface_unparse_name
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19805
      functionLinenumberEnd: 19807
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_interface_parse_ofport
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19529
      functionLinenumberEnd: 19541
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          104
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - ovsrec_interface_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19530,36'
          Dst:             ovsrec_interface_cast
        - Src:             'lib/vswitch-idl.c:19536,27'
          Dst:             xmalloc
    - functionName:    ovsrec_interface_unparse_ofport
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19811
      functionLinenumberEnd: 19814
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_interface_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19812,36'
          Dst:             ovsrec_interface_cast
    - functionName:    ovsrec_interface_parse_ofport_request
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19545
      functionLinenumberEnd: 19557
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          104
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - ovsrec_interface_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19546,36'
          Dst:             ovsrec_interface_cast
        - Src:             'lib/vswitch-idl.c:19552,35'
          Dst:             xmalloc
    - functionName:    ovsrec_interface_unparse_ofport_request
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19818
      functionLinenumberEnd: 19821
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_interface_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19819,36'
          Dst:             ovsrec_interface_cast
    - functionName:    ovsrec_interface_parse_options
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19561
      functionLinenumberEnd: 19569
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          61
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_interface_cast
        - smap_add
        - smap_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19562,36'
          Dst:             ovsrec_interface_cast
        - Src:             'lib/vswitch-idl.c:19563,5'
          Dst:             smap_init
        - Src:             'lib/vswitch-idl.c:19566,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:19567,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:19565,9'
          Dst:             smap_add
    - functionName:    ovsrec_interface_unparse_options
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19825
      functionLinenumberEnd: 19828
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_interface_cast
        - smap_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19826,36'
          Dst:             ovsrec_interface_cast
        - Src:             'lib/vswitch-idl.c:19827,5'
          Dst:             smap_destroy
    - functionName:    ovsrec_interface_parse_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19573
      functionLinenumberEnd: 19581
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          61
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_interface_cast
        - smap_add
        - smap_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19574,36'
          Dst:             ovsrec_interface_cast
        - Src:             'lib/vswitch-idl.c:19575,5'
          Dst:             smap_init
        - Src:             'lib/vswitch-idl.c:19578,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:19579,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:19577,9'
          Dst:             smap_add
    - functionName:    ovsrec_interface_unparse_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19832
      functionLinenumberEnd: 19835
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_interface_cast
        - smap_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19833,36'
          Dst:             ovsrec_interface_cast
        - Src:             'lib/vswitch-idl.c:19834,5'
          Dst:             smap_destroy
    - functionName:    ovsrec_interface_parse_statistics
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19585
      functionLinenumberEnd: 19599
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          116
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - json_string
        - ovsrec_interface_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19586,36'
          Dst:             ovsrec_interface_cast
        - Src:             'lib/vswitch-idl.c:19592,35'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:19593,37'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:19595,50'
          Dst:             json_string
    - functionName:    ovsrec_interface_unparse_statistics
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19839
      functionLinenumberEnd: 19843
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_interface_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19840,36'
          Dst:             ovsrec_interface_cast
    - functionName:    ovsrec_interface_parse_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19603
      functionLinenumberEnd: 19611
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          61
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_interface_cast
        - smap_add
        - smap_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19604,36'
          Dst:             ovsrec_interface_cast
        - Src:             'lib/vswitch-idl.c:19605,5'
          Dst:             smap_init
        - Src:             'lib/vswitch-idl.c:19608,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:19609,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:19607,9'
          Dst:             smap_add
    - functionName:    ovsrec_interface_unparse_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19847
      functionLinenumberEnd: 19850
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_interface_cast
        - smap_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19848,36'
          Dst:             ovsrec_interface_cast
        - Src:             'lib/vswitch-idl.c:19849,5'
          Dst:             smap_destroy
    - functionName:    ovsrec_interface_parse_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19615
      functionLinenumberEnd: 19623
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_interface_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19616,36'
          Dst:             ovsrec_interface_cast
        - Src:             'lib/vswitch-idl.c:19619,21'
          Dst:             json_string
    - functionName:    ovsrec_interface_unparse_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19854
      functionLinenumberEnd: 19856
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_ipfix_parse_cache_active_timeout
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16193
      functionLinenumberEnd: 16205
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          104
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - ovsrec_ipfix_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16194,32'
          Dst:             ovsrec_ipfix_cast
        - Src:             'lib/vswitch-idl.c:16200,41'
          Dst:             xmalloc
    - functionName:    ovsrec_ipfix_unparse_cache_active_timeout
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16344
      functionLinenumberEnd: 16347
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_ipfix_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16345,32'
          Dst:             ovsrec_ipfix_cast
    - functionName:    ovsrec_ipfix_parse_cache_max_flows
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16209
      functionLinenumberEnd: 16221
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          104
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - ovsrec_ipfix_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16210,32'
          Dst:             ovsrec_ipfix_cast
        - Src:             'lib/vswitch-idl.c:16216,36'
          Dst:             xmalloc
    - functionName:    ovsrec_ipfix_unparse_cache_max_flows
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16351
      functionLinenumberEnd: 16354
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_ipfix_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16352,32'
          Dst:             ovsrec_ipfix_cast
    - functionName:    ovsrec_ipfix_parse_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16225
      functionLinenumberEnd: 16233
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          61
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_ipfix_cast
        - smap_add
        - smap_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16226,32'
          Dst:             ovsrec_ipfix_cast
        - Src:             'lib/vswitch-idl.c:16227,5'
          Dst:             smap_init
        - Src:             'lib/vswitch-idl.c:16230,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:16231,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:16229,9'
          Dst:             smap_add
    - functionName:    ovsrec_ipfix_unparse_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16358
      functionLinenumberEnd: 16361
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_ipfix_cast
        - smap_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16359,32'
          Dst:             ovsrec_ipfix_cast
        - Src:             'lib/vswitch-idl.c:16360,5'
          Dst:             smap_destroy
    - functionName:    ovsrec_ipfix_parse_obs_domain_id
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16237
      functionLinenumberEnd: 16249
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          104
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - ovsrec_ipfix_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16238,32'
          Dst:             ovsrec_ipfix_cast
        - Src:             'lib/vswitch-idl.c:16244,34'
          Dst:             xmalloc
    - functionName:    ovsrec_ipfix_unparse_obs_domain_id
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16365
      functionLinenumberEnd: 16368
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_ipfix_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16366,32'
          Dst:             ovsrec_ipfix_cast
    - functionName:    ovsrec_ipfix_parse_obs_point_id
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16253
      functionLinenumberEnd: 16265
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          104
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - ovsrec_ipfix_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16254,32'
          Dst:             ovsrec_ipfix_cast
        - Src:             'lib/vswitch-idl.c:16260,33'
          Dst:             xmalloc
    - functionName:    ovsrec_ipfix_unparse_obs_point_id
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16372
      functionLinenumberEnd: 16375
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_ipfix_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16373,32'
          Dst:             ovsrec_ipfix_cast
    - functionName:    ovsrec_ipfix_parse_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16269
      functionLinenumberEnd: 16277
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          61
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_ipfix_cast
        - smap_add
        - smap_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16270,32'
          Dst:             ovsrec_ipfix_cast
        - Src:             'lib/vswitch-idl.c:16271,5'
          Dst:             smap_init
        - Src:             'lib/vswitch-idl.c:16274,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:16275,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:16273,9'
          Dst:             smap_add
    - functionName:    ovsrec_ipfix_unparse_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16379
      functionLinenumberEnd: 16382
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_ipfix_cast
        - smap_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16380,32'
          Dst:             ovsrec_ipfix_cast
        - Src:             'lib/vswitch-idl.c:16381,5'
          Dst:             smap_destroy
    - functionName:    ovsrec_ipfix_parse_sampling
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16281
      functionLinenumberEnd: 16293
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          104
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - ovsrec_ipfix_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16282,32'
          Dst:             ovsrec_ipfix_cast
        - Src:             'lib/vswitch-idl.c:16288,29'
          Dst:             xmalloc
    - functionName:    ovsrec_ipfix_unparse_sampling
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16386
      functionLinenumberEnd: 16389
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_ipfix_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16387,32'
          Dst:             ovsrec_ipfix_cast
    - functionName:    ovsrec_ipfix_parse_stats_interval
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16297
      functionLinenumberEnd: 16309
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          104
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - ovsrec_ipfix_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16298,32'
          Dst:             ovsrec_ipfix_cast
        - Src:             'lib/vswitch-idl.c:16304,35'
          Dst:             xmalloc
    - functionName:    ovsrec_ipfix_unparse_stats_interval
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16393
      functionLinenumberEnd: 16396
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_ipfix_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16394,32'
          Dst:             ovsrec_ipfix_cast
    - functionName:    ovsrec_ipfix_parse_targets
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16313
      functionLinenumberEnd: 16324
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          90
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - json_string
        - ovsrec_ipfix_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16314,32'
          Dst:             ovsrec_ipfix_cast
        - Src:             'lib/vswitch-idl.c:16319,28'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:16321,40'
          Dst:             json_string
    - functionName:    ovsrec_ipfix_unparse_targets
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16400
      functionLinenumberEnd: 16403
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_ipfix_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16401,32'
          Dst:             ovsrec_ipfix_cast
    - functionName:    ovsrec_ipfix_parse_template_interval
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16328
      functionLinenumberEnd: 16340
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          104
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - ovsrec_ipfix_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16329,32'
          Dst:             ovsrec_ipfix_cast
        - Src:             'lib/vswitch-idl.c:16335,38'
          Dst:             xmalloc
    - functionName:    ovsrec_ipfix_unparse_template_interval
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16407
      functionLinenumberEnd: 16410
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_ipfix_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16408,32'
          Dst:             ovsrec_ipfix_cast
    - functionName:    ovsrec_flow_table_parse_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14513
      functionLinenumberEnd: 14521
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          61
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_flow_table_cast
        - smap_add
        - smap_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:14514,37'
          Dst:             ovsrec_flow_table_cast
        - Src:             'lib/vswitch-idl.c:14515,5'
          Dst:             smap_init
        - Src:             'lib/vswitch-idl.c:14518,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:14519,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:14517,9'
          Dst:             smap_add
    - functionName:    ovsrec_flow_table_unparse_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14596
      functionLinenumberEnd: 14599
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_flow_table_cast
        - smap_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:14597,37'
          Dst:             ovsrec_flow_table_cast
        - Src:             'lib/vswitch-idl.c:14598,5'
          Dst:             smap_destroy
    - functionName:    ovsrec_flow_table_parse_flow_limit
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14525
      functionLinenumberEnd: 14537
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          104
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - ovsrec_flow_table_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:14526,37'
          Dst:             ovsrec_flow_table_cast
        - Src:             'lib/vswitch-idl.c:14532,31'
          Dst:             xmalloc
    - functionName:    ovsrec_flow_table_unparse_flow_limit
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14603
      functionLinenumberEnd: 14606
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_flow_table_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:14604,37'
          Dst:             ovsrec_flow_table_cast
    - functionName:    ovsrec_flow_table_parse_groups
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14541
      functionLinenumberEnd: 14552
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          90
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - json_string
        - ovsrec_flow_table_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:14542,37'
          Dst:             ovsrec_flow_table_cast
        - Src:             'lib/vswitch-idl.c:14547,27'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:14549,38'
          Dst:             json_string
    - functionName:    ovsrec_flow_table_unparse_groups
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14610
      functionLinenumberEnd: 14613
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_flow_table_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:14611,37'
          Dst:             ovsrec_flow_table_cast
    - functionName:    ovsrec_flow_table_parse_name
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14556
      functionLinenumberEnd: 14564
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_flow_table_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:14557,37'
          Dst:             ovsrec_flow_table_cast
        - Src:             'lib/vswitch-idl.c:14560,21'
          Dst:             json_string
    - functionName:    ovsrec_flow_table_unparse_name
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14617
      functionLinenumberEnd: 14619
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_flow_table_parse_overflow_policy
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14568
      functionLinenumberEnd: 14576
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_flow_table_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:14569,37'
          Dst:             ovsrec_flow_table_cast
        - Src:             'lib/vswitch-idl.c:14572,32'
          Dst:             json_string
    - functionName:    ovsrec_flow_table_unparse_overflow_policy
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14623
      functionLinenumberEnd: 14625
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_flow_table_parse_prefixes
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14580
      functionLinenumberEnd: 14592
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          105
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - json_string
        - ovsrec_flow_table_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:14581,37'
          Dst:             ovsrec_flow_table_cast
        - Src:             'lib/vswitch-idl.c:14587,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:14589,42'
          Dst:             json_string
    - functionName:    ovsrec_flow_table_unparse_prefixes
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14629
      functionLinenumberEnd: 14632
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_flow_table_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:14630,37'
          Dst:             ovsrec_flow_table_cast
    - functionName:    ovsrec_flow_sample_collector_set_parse_bridge
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13222
      functionLinenumberEnd: 13230
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_get_row_arc
        - ovsrec_bridge_cast
        - ovsrec_flow_sample_collector_set_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:13223,52'
          Dst:             ovsrec_flow_sample_collector_set_cast
        - Src:             'lib/vswitch-idl.c:13226,42'
          Dst:             ovsdb_idl_get_row_arc
        - Src:             'lib/vswitch-idl.c:13226,23'
          Dst:             ovsrec_bridge_cast
    - functionName:    ovsrec_flow_sample_collector_set_unparse_bridge
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13286
      functionLinenumberEnd: 13288
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_flow_sample_collector_set_parse_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13234
      functionLinenumberEnd: 13242
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          61
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_flow_sample_collector_set_cast
        - smap_add
        - smap_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:13235,52'
          Dst:             ovsrec_flow_sample_collector_set_cast
        - Src:             'lib/vswitch-idl.c:13236,5'
          Dst:             smap_init
        - Src:             'lib/vswitch-idl.c:13239,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:13240,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:13238,9'
          Dst:             smap_add
    - functionName:    ovsrec_flow_sample_collector_set_unparse_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13292
      functionLinenumberEnd: 13295
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_flow_sample_collector_set_cast
        - smap_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:13293,52'
          Dst:             ovsrec_flow_sample_collector_set_cast
        - Src:             'lib/vswitch-idl.c:13294,5'
          Dst:             smap_destroy
    - functionName:    ovsrec_flow_sample_collector_set_parse_id
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13246
      functionLinenumberEnd: 13254
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsrec_flow_sample_collector_set_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:13247,52'
          Dst:             ovsrec_flow_sample_collector_set_cast
    - functionName:    ovsrec_flow_sample_collector_set_unparse_id
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13299
      functionLinenumberEnd: 13301
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_flow_sample_collector_set_parse_ipfix
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13258
      functionLinenumberEnd: 13266
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_get_row_arc
        - ovsrec_flow_sample_collector_set_cast
        - ovsrec_ipfix_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:13259,52'
          Dst:             ovsrec_flow_sample_collector_set_cast
        - Src:             'lib/vswitch-idl.c:13262,40'
          Dst:             ovsdb_idl_get_row_arc
        - Src:             'lib/vswitch-idl.c:13262,22'
          Dst:             ovsrec_ipfix_cast
    - functionName:    ovsrec_flow_sample_collector_set_unparse_ipfix
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13305
      functionLinenumberEnd: 13307
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_flow_sample_collector_set_parse_local_group_id
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13270
      functionLinenumberEnd: 13282
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          104
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - ovsrec_flow_sample_collector_set_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:13271,52'
          Dst:             ovsrec_flow_sample_collector_set_cast
        - Src:             'lib/vswitch-idl.c:13277,35'
          Dst:             xmalloc
    - functionName:    ovsrec_flow_sample_collector_set_unparse_local_group_id
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13311
      functionLinenumberEnd: 13314
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_flow_sample_collector_set_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:13312,52'
          Dst:             ovsrec_flow_sample_collector_set_cast
    - functionName:    ovsrec_datapath_parse_capabilities
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11868
      functionLinenumberEnd: 11876
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          61
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_datapath_cast
        - smap_add
        - smap_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:11869,35'
          Dst:             ovsrec_datapath_cast
        - Src:             'lib/vswitch-idl.c:11870,5'
          Dst:             smap_init
        - Src:             'lib/vswitch-idl.c:11873,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:11874,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:11872,9'
          Dst:             smap_add
    - functionName:    ovsrec_datapath_unparse_capabilities
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11942
      functionLinenumberEnd: 11945
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_datapath_cast
        - smap_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:11943,35'
          Dst:             ovsrec_datapath_cast
        - Src:             'lib/vswitch-idl.c:11944,5'
          Dst:             smap_destroy
    - functionName:    ovsrec_datapath_parse_ct_zone_default_limit
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11880
      functionLinenumberEnd: 11892
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          104
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - ovsrec_datapath_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:11881,35'
          Dst:             ovsrec_datapath_cast
        - Src:             'lib/vswitch-idl.c:11887,42'
          Dst:             xmalloc
    - functionName:    ovsrec_datapath_unparse_ct_zone_default_limit
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11949
      functionLinenumberEnd: 11952
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_datapath_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:11950,35'
          Dst:             ovsrec_datapath_cast
    - functionName:    ovsrec_datapath_parse_ct_zones
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11896
      functionLinenumberEnd: 11914
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          124
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - ovsdb_idl_get_row_arc
        - ovsrec_ct_zone_cast
        - ovsrec_datapath_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:11897,35'
          Dst:             ovsrec_datapath_cast
        - Src:             'lib/vswitch-idl.c:11902,63'
          Dst:             ovsdb_idl_get_row_arc
        - Src:             'lib/vswitch-idl.c:11902,43'
          Dst:             ovsrec_ct_zone_cast
        - Src:             'lib/vswitch-idl.c:11907,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:11908,35'
          Dst:             xmalloc
    - functionName:    ovsrec_datapath_unparse_ct_zones
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11956
      functionLinenumberEnd: 11960
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_datapath_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:11957,35'
          Dst:             ovsrec_datapath_cast
    - functionName:    ovsrec_datapath_parse_datapath_version
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11918
      functionLinenumberEnd: 11926
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_datapath_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:11919,35'
          Dst:             ovsrec_datapath_cast
        - Src:             'lib/vswitch-idl.c:11922,33'
          Dst:             json_string
    - functionName:    ovsrec_datapath_unparse_datapath_version
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11964
      functionLinenumberEnd: 11966
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_datapath_parse_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11930
      functionLinenumberEnd: 11938
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          61
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_datapath_cast
        - smap_add
        - smap_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:11931,35'
          Dst:             ovsrec_datapath_cast
        - Src:             'lib/vswitch-idl.c:11932,5'
          Dst:             smap_init
        - Src:             'lib/vswitch-idl.c:11935,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:11936,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:11934,9'
          Dst:             smap_add
    - functionName:    ovsrec_datapath_unparse_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11970
      functionLinenumberEnd: 11973
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_datapath_cast
        - smap_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:11971,35'
          Dst:             ovsrec_datapath_cast
        - Src:             'lib/vswitch-idl.c:11972,5'
          Dst:             smap_destroy
    - functionName:    ovsrec_controller_parse_connection_mode
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7837
      functionLinenumberEnd: 7845
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_controller_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7838,37'
          Dst:             ovsrec_controller_cast
        - Src:             'lib/vswitch-idl.c:7841,32'
          Dst:             json_string
    - functionName:    ovsrec_controller_unparse_connection_mode
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8065
      functionLinenumberEnd: 8067
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_controller_parse_controller_burst_limit
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7849
      functionLinenumberEnd: 7861
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          104
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - ovsrec_controller_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7850,37'
          Dst:             ovsrec_controller_cast
        - Src:             'lib/vswitch-idl.c:7856,43'
          Dst:             xmalloc
    - functionName:    ovsrec_controller_unparse_controller_burst_limit
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8071
      functionLinenumberEnd: 8074
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_controller_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:8072,37'
          Dst:             ovsrec_controller_cast
    - functionName:    ovsrec_controller_parse_controller_queue_size
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7865
      functionLinenumberEnd: 7877
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          104
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - ovsrec_controller_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7866,37'
          Dst:             ovsrec_controller_cast
        - Src:             'lib/vswitch-idl.c:7872,42'
          Dst:             xmalloc
    - functionName:    ovsrec_controller_unparse_controller_queue_size
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8078
      functionLinenumberEnd: 8081
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_controller_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:8079,37'
          Dst:             ovsrec_controller_cast
    - functionName:    ovsrec_controller_parse_controller_rate_limit
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7881
      functionLinenumberEnd: 7893
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          104
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - ovsrec_controller_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7882,37'
          Dst:             ovsrec_controller_cast
        - Src:             'lib/vswitch-idl.c:7888,42'
          Dst:             xmalloc
    - functionName:    ovsrec_controller_unparse_controller_rate_limit
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8085
      functionLinenumberEnd: 8088
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_controller_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:8086,37'
          Dst:             ovsrec_controller_cast
    - functionName:    ovsrec_controller_parse_enable_async_messages
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7897
      functionLinenumberEnd: 7909
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          106
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - ovsrec_controller_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7898,37'
          Dst:             ovsrec_controller_cast
        - Src:             'lib/vswitch-idl.c:7904,42'
          Dst:             xmalloc
    - functionName:    ovsrec_controller_unparse_enable_async_messages
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8092
      functionLinenumberEnd: 8095
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_controller_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:8093,37'
          Dst:             ovsrec_controller_cast
    - functionName:    ovsrec_controller_parse_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7913
      functionLinenumberEnd: 7921
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          61
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_controller_cast
        - smap_add
        - smap_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7914,37'
          Dst:             ovsrec_controller_cast
        - Src:             'lib/vswitch-idl.c:7915,5'
          Dst:             smap_init
        - Src:             'lib/vswitch-idl.c:7918,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:7919,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:7917,9'
          Dst:             smap_add
    - functionName:    ovsrec_controller_unparse_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8099
      functionLinenumberEnd: 8102
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_controller_cast
        - smap_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:8100,37'
          Dst:             ovsrec_controller_cast
        - Src:             'lib/vswitch-idl.c:8101,5'
          Dst:             smap_destroy
    - functionName:    ovsrec_controller_parse_inactivity_probe
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7925
      functionLinenumberEnd: 7937
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          104
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - ovsrec_controller_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7926,37'
          Dst:             ovsrec_controller_cast
        - Src:             'lib/vswitch-idl.c:7932,37'
          Dst:             xmalloc
    - functionName:    ovsrec_controller_unparse_inactivity_probe
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8106
      functionLinenumberEnd: 8109
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_controller_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:8107,37'
          Dst:             ovsrec_controller_cast
    - functionName:    ovsrec_controller_parse_is_connected
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7941
      functionLinenumberEnd: 7949
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsrec_controller_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7942,37'
          Dst:             ovsrec_controller_cast
    - functionName:    ovsrec_controller_unparse_is_connected
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8113
      functionLinenumberEnd: 8115
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_controller_parse_local_gateway
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7953
      functionLinenumberEnd: 7961
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_controller_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7954,37'
          Dst:             ovsrec_controller_cast
        - Src:             'lib/vswitch-idl.c:7957,30'
          Dst:             json_string
    - functionName:    ovsrec_controller_unparse_local_gateway
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8119
      functionLinenumberEnd: 8121
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_controller_parse_local_ip
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7965
      functionLinenumberEnd: 7973
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_controller_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7966,37'
          Dst:             ovsrec_controller_cast
        - Src:             'lib/vswitch-idl.c:7969,25'
          Dst:             json_string
    - functionName:    ovsrec_controller_unparse_local_ip
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8125
      functionLinenumberEnd: 8127
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_controller_parse_local_netmask
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7977
      functionLinenumberEnd: 7985
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_controller_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7978,37'
          Dst:             ovsrec_controller_cast
        - Src:             'lib/vswitch-idl.c:7981,30'
          Dst:             json_string
    - functionName:    ovsrec_controller_unparse_local_netmask
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8131
      functionLinenumberEnd: 8133
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_controller_parse_max_backoff
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7989
      functionLinenumberEnd: 8001
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          104
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - ovsrec_controller_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7990,37'
          Dst:             ovsrec_controller_cast
        - Src:             'lib/vswitch-idl.c:7996,32'
          Dst:             xmalloc
    - functionName:    ovsrec_controller_unparse_max_backoff
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8137
      functionLinenumberEnd: 8140
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_controller_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:8138,37'
          Dst:             ovsrec_controller_cast
    - functionName:    ovsrec_controller_parse_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8005
      functionLinenumberEnd: 8013
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          61
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_controller_cast
        - smap_add
        - smap_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:8006,37'
          Dst:             ovsrec_controller_cast
        - Src:             'lib/vswitch-idl.c:8007,5'
          Dst:             smap_init
        - Src:             'lib/vswitch-idl.c:8010,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:8011,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:8009,9'
          Dst:             smap_add
    - functionName:    ovsrec_controller_unparse_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8144
      functionLinenumberEnd: 8147
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_controller_cast
        - smap_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:8145,37'
          Dst:             ovsrec_controller_cast
        - Src:             'lib/vswitch-idl.c:8146,5'
          Dst:             smap_destroy
    - functionName:    ovsrec_controller_parse_role
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8017
      functionLinenumberEnd: 8025
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_controller_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:8018,37'
          Dst:             ovsrec_controller_cast
        - Src:             'lib/vswitch-idl.c:8021,21'
          Dst:             json_string
    - functionName:    ovsrec_controller_unparse_role
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8151
      functionLinenumberEnd: 8153
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_controller_parse_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8029
      functionLinenumberEnd: 8037
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          61
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_controller_cast
        - smap_add
        - smap_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:8030,37'
          Dst:             ovsrec_controller_cast
        - Src:             'lib/vswitch-idl.c:8031,5'
          Dst:             smap_init
        - Src:             'lib/vswitch-idl.c:8034,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:8035,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:8033,9'
          Dst:             smap_add
    - functionName:    ovsrec_controller_unparse_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8157
      functionLinenumberEnd: 8160
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_controller_cast
        - smap_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:8158,37'
          Dst:             ovsrec_controller_cast
        - Src:             'lib/vswitch-idl.c:8159,5'
          Dst:             smap_destroy
    - functionName:    ovsrec_controller_parse_target
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8041
      functionLinenumberEnd: 8049
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_controller_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:8042,37'
          Dst:             ovsrec_controller_cast
        - Src:             'lib/vswitch-idl.c:8045,23'
          Dst:             json_string
    - functionName:    ovsrec_controller_unparse_target
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8164
      functionLinenumberEnd: 8166
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_controller_parse_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8053
      functionLinenumberEnd: 8061
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_controller_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:8054,37'
          Dst:             ovsrec_controller_cast
        - Src:             'lib/vswitch-idl.c:8057,21'
          Dst:             json_string
    - functionName:    ovsrec_controller_unparse_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8170
      functionLinenumberEnd: 8172
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_ct_zone_parse_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6717
      functionLinenumberEnd: 6725
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          61
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_ct_zone_cast
        - smap_add
        - smap_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:6718,34'
          Dst:             ovsrec_ct_zone_cast
        - Src:             'lib/vswitch-idl.c:6719,5'
          Dst:             smap_init
        - Src:             'lib/vswitch-idl.c:6722,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:6723,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:6721,9'
          Dst:             smap_add
    - functionName:    ovsrec_ct_zone_unparse_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6757
      functionLinenumberEnd: 6760
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_ct_zone_cast
        - smap_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:6758,34'
          Dst:             ovsrec_ct_zone_cast
        - Src:             'lib/vswitch-idl.c:6759,5'
          Dst:             smap_destroy
    - functionName:    ovsrec_ct_zone_parse_limit
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6729
      functionLinenumberEnd: 6741
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          104
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - ovsrec_ct_zone_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:6730,34'
          Dst:             ovsrec_ct_zone_cast
        - Src:             'lib/vswitch-idl.c:6736,26'
          Dst:             xmalloc
    - functionName:    ovsrec_ct_zone_unparse_limit
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6764
      functionLinenumberEnd: 6767
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_ct_zone_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:6765,34'
          Dst:             ovsrec_ct_zone_cast
    - functionName:    ovsrec_ct_zone_parse_timeout_policy
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6745
      functionLinenumberEnd: 6753
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_get_row_arc
        - ovsrec_ct_timeout_policy_cast
        - ovsrec_ct_zone_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:6746,34'
          Dst:             ovsrec_ct_zone_cast
        - Src:             'lib/vswitch-idl.c:6749,61'
          Dst:             ovsdb_idl_get_row_arc
        - Src:             'lib/vswitch-idl.c:6749,31'
          Dst:             ovsrec_ct_timeout_policy_cast
    - functionName:    ovsrec_ct_zone_unparse_timeout_policy
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6771
      functionLinenumberEnd: 6773
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_ct_timeout_policy_parse_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5963
      functionLinenumberEnd: 5971
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          61
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_ct_timeout_policy_cast
        - smap_add
        - smap_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:5964,44'
          Dst:             ovsrec_ct_timeout_policy_cast
        - Src:             'lib/vswitch-idl.c:5965,5'
          Dst:             smap_init
        - Src:             'lib/vswitch-idl.c:5968,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:5969,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:5967,9'
          Dst:             smap_add
    - functionName:    ovsrec_ct_timeout_policy_unparse_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5993
      functionLinenumberEnd: 5996
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_ct_timeout_policy_cast
        - smap_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:5994,44'
          Dst:             ovsrec_ct_timeout_policy_cast
        - Src:             'lib/vswitch-idl.c:5995,5'
          Dst:             smap_destroy
    - functionName:    ovsrec_ct_timeout_policy_parse_timeouts
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5975
      functionLinenumberEnd: 5989
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          116
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - json_string
        - ovsrec_ct_timeout_policy_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:5976,44'
          Dst:             ovsrec_ct_timeout_policy_cast
        - Src:             'lib/vswitch-idl.c:5982,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:5983,35'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:5985,46'
          Dst:             json_string
    - functionName:    ovsrec_ct_timeout_policy_unparse_timeouts
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6000
      functionLinenumberEnd: 6004
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_ct_timeout_policy_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:6001,44'
          Dst:             ovsrec_ct_timeout_policy_cast
    - functionName:    ovsrec_bridge_parse_auto_attach
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1247
      functionLinenumberEnd: 1255
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_get_row_arc
        - ovsrec_autoattach_cast
        - ovsrec_bridge_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1248,33'
          Dst:             ovsrec_bridge_cast
        - Src:             'lib/vswitch-idl.c:1251,51'
          Dst:             ovsdb_idl_get_row_arc
        - Src:             'lib/vswitch-idl.c:1251,28'
          Dst:             ovsrec_autoattach_cast
    - functionName:    ovsrec_bridge_unparse_auto_attach
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1549
      functionLinenumberEnd: 1551
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_bridge_parse_controller
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1259
      functionLinenumberEnd: 1274
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          98
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - ovsdb_idl_get_row_arc
        - ovsrec_bridge_cast
        - ovsrec_controller_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1260,33'
          Dst:             ovsrec_bridge_cast
        - Src:             'lib/vswitch-idl.c:1264,67'
          Dst:             ovsdb_idl_get_row_arc
        - Src:             'lib/vswitch-idl.c:1264,44'
          Dst:             ovsrec_controller_cast
        - Src:             'lib/vswitch-idl.c:1269,31'
          Dst:             xmalloc
    - functionName:    ovsrec_bridge_unparse_controller
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1555
      functionLinenumberEnd: 1558
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_bridge_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1556,33'
          Dst:             ovsrec_bridge_cast
    - functionName:    ovsrec_bridge_parse_datapath_id
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1278
      functionLinenumberEnd: 1286
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_bridge_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1279,33'
          Dst:             ovsrec_bridge_cast
        - Src:             'lib/vswitch-idl.c:1282,28'
          Dst:             json_string
    - functionName:    ovsrec_bridge_unparse_datapath_id
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1562
      functionLinenumberEnd: 1564
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_bridge_parse_datapath_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1290
      functionLinenumberEnd: 1298
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_bridge_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1291,33'
          Dst:             ovsrec_bridge_cast
        - Src:             'lib/vswitch-idl.c:1294,30'
          Dst:             json_string
    - functionName:    ovsrec_bridge_unparse_datapath_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1568
      functionLinenumberEnd: 1570
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_bridge_parse_datapath_version
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1302
      functionLinenumberEnd: 1310
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_bridge_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1303,33'
          Dst:             ovsrec_bridge_cast
        - Src:             'lib/vswitch-idl.c:1306,33'
          Dst:             json_string
    - functionName:    ovsrec_bridge_unparse_datapath_version
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1574
      functionLinenumberEnd: 1576
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_bridge_parse_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1314
      functionLinenumberEnd: 1322
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          61
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_bridge_cast
        - smap_add
        - smap_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1315,33'
          Dst:             ovsrec_bridge_cast
        - Src:             'lib/vswitch-idl.c:1316,5'
          Dst:             smap_init
        - Src:             'lib/vswitch-idl.c:1319,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:1320,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:1318,9'
          Dst:             smap_add
    - functionName:    ovsrec_bridge_unparse_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1580
      functionLinenumberEnd: 1583
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_bridge_cast
        - smap_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1581,33'
          Dst:             ovsrec_bridge_cast
        - Src:             'lib/vswitch-idl.c:1582,5'
          Dst:             smap_destroy
    - functionName:    ovsrec_bridge_parse_fail_mode
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1326
      functionLinenumberEnd: 1334
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_bridge_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1327,33'
          Dst:             ovsrec_bridge_cast
        - Src:             'lib/vswitch-idl.c:1330,26'
          Dst:             json_string
    - functionName:    ovsrec_bridge_unparse_fail_mode
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1587
      functionLinenumberEnd: 1589
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_bridge_parse_flood_vlans
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1338
      functionLinenumberEnd: 1350
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          104
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - ovsrec_bridge_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1339,33'
          Dst:             ovsrec_bridge_cast
        - Src:             'lib/vswitch-idl.c:1345,32'
          Dst:             xmalloc
    - functionName:    ovsrec_bridge_unparse_flood_vlans
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1593
      functionLinenumberEnd: 1596
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_bridge_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1594,33'
          Dst:             ovsrec_bridge_cast
    - functionName:    ovsrec_bridge_parse_flow_tables
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1354
      functionLinenumberEnd: 1372
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          124
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - ovsdb_idl_get_row_arc
        - ovsrec_bridge_cast
        - ovsrec_flow_table_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1355,33'
          Dst:             ovsrec_bridge_cast
        - Src:             'lib/vswitch-idl.c:1360,69'
          Dst:             ovsdb_idl_get_row_arc
        - Src:             'lib/vswitch-idl.c:1360,46'
          Dst:             ovsrec_flow_table_cast
        - Src:             'lib/vswitch-idl.c:1365,36'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:1366,38'
          Dst:             xmalloc
    - functionName:    ovsrec_bridge_unparse_flow_tables
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1600
      functionLinenumberEnd: 1604
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_bridge_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1601,33'
          Dst:             ovsrec_bridge_cast
    - functionName:    ovsrec_bridge_parse_ipfix
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1376
      functionLinenumberEnd: 1384
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_get_row_arc
        - ovsrec_bridge_cast
        - ovsrec_ipfix_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1377,33'
          Dst:             ovsrec_bridge_cast
        - Src:             'lib/vswitch-idl.c:1380,40'
          Dst:             ovsdb_idl_get_row_arc
        - Src:             'lib/vswitch-idl.c:1380,22'
          Dst:             ovsrec_ipfix_cast
    - functionName:    ovsrec_bridge_unparse_ipfix
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1608
      functionLinenumberEnd: 1610
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_bridge_parse_mcast_snooping_enable
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1388
      functionLinenumberEnd: 1396
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsrec_bridge_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1389,33'
          Dst:             ovsrec_bridge_cast
    - functionName:    ovsrec_bridge_unparse_mcast_snooping_enable
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1614
      functionLinenumberEnd: 1616
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_bridge_parse_mirrors
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1400
      functionLinenumberEnd: 1415
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          98
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - ovsdb_idl_get_row_arc
        - ovsrec_bridge_cast
        - ovsrec_mirror_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1401,33'
          Dst:             ovsrec_bridge_cast
        - Src:             'lib/vswitch-idl.c:1405,59'
          Dst:             ovsdb_idl_get_row_arc
        - Src:             'lib/vswitch-idl.c:1405,40'
          Dst:             ovsrec_mirror_cast
        - Src:             'lib/vswitch-idl.c:1410,28'
          Dst:             xmalloc
    - functionName:    ovsrec_bridge_unparse_mirrors
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1620
      functionLinenumberEnd: 1623
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_bridge_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1621,33'
          Dst:             ovsrec_bridge_cast
    - functionName:    ovsrec_bridge_parse_name
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1419
      functionLinenumberEnd: 1427
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_bridge_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1420,33'
          Dst:             ovsrec_bridge_cast
        - Src:             'lib/vswitch-idl.c:1423,21'
          Dst:             json_string
    - functionName:    ovsrec_bridge_unparse_name
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1627
      functionLinenumberEnd: 1629
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_bridge_parse_netflow
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1431
      functionLinenumberEnd: 1439
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_get_row_arc
        - ovsrec_bridge_cast
        - ovsrec_netflow_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1432,33'
          Dst:             ovsrec_bridge_cast
        - Src:             'lib/vswitch-idl.c:1435,44'
          Dst:             ovsdb_idl_get_row_arc
        - Src:             'lib/vswitch-idl.c:1435,24'
          Dst:             ovsrec_netflow_cast
    - functionName:    ovsrec_bridge_unparse_netflow
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1633
      functionLinenumberEnd: 1635
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_bridge_parse_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1443
      functionLinenumberEnd: 1451
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          61
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_bridge_cast
        - smap_add
        - smap_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1444,33'
          Dst:             ovsrec_bridge_cast
        - Src:             'lib/vswitch-idl.c:1445,5'
          Dst:             smap_init
        - Src:             'lib/vswitch-idl.c:1448,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:1449,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:1447,9'
          Dst:             smap_add
    - functionName:    ovsrec_bridge_unparse_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1639
      functionLinenumberEnd: 1642
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_bridge_cast
        - smap_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1640,33'
          Dst:             ovsrec_bridge_cast
        - Src:             'lib/vswitch-idl.c:1641,5'
          Dst:             smap_destroy
    - functionName:    ovsrec_bridge_parse_ports
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1455
      functionLinenumberEnd: 1470
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          98
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - ovsdb_idl_get_row_arc
        - ovsrec_bridge_cast
        - ovsrec_port_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1456,33'
          Dst:             ovsrec_bridge_cast
        - Src:             'lib/vswitch-idl.c:1460,55'
          Dst:             ovsdb_idl_get_row_arc
        - Src:             'lib/vswitch-idl.c:1460,38'
          Dst:             ovsrec_port_cast
        - Src:             'lib/vswitch-idl.c:1465,26'
          Dst:             xmalloc
    - functionName:    ovsrec_bridge_unparse_ports
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1646
      functionLinenumberEnd: 1649
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_bridge_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1647,33'
          Dst:             ovsrec_bridge_cast
    - functionName:    ovsrec_bridge_parse_protocols
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1474
      functionLinenumberEnd: 1485
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          90
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - json_string
        - ovsrec_bridge_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1475,33'
          Dst:             ovsrec_bridge_cast
        - Src:             'lib/vswitch-idl.c:1480,30'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:1482,44'
          Dst:             json_string
    - functionName:    ovsrec_bridge_unparse_protocols
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1653
      functionLinenumberEnd: 1656
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_bridge_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1654,33'
          Dst:             ovsrec_bridge_cast
    - functionName:    ovsrec_bridge_parse_rstp_enable
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1489
      functionLinenumberEnd: 1497
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsrec_bridge_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1490,33'
          Dst:             ovsrec_bridge_cast
    - functionName:    ovsrec_bridge_unparse_rstp_enable
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1660
      functionLinenumberEnd: 1662
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_bridge_parse_rstp_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1501
      functionLinenumberEnd: 1509
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          61
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_bridge_cast
        - smap_add
        - smap_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1502,33'
          Dst:             ovsrec_bridge_cast
        - Src:             'lib/vswitch-idl.c:1503,5'
          Dst:             smap_init
        - Src:             'lib/vswitch-idl.c:1506,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:1507,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:1505,9'
          Dst:             smap_add
    - functionName:    ovsrec_bridge_unparse_rstp_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1666
      functionLinenumberEnd: 1669
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_bridge_cast
        - smap_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1667,33'
          Dst:             ovsrec_bridge_cast
        - Src:             'lib/vswitch-idl.c:1668,5'
          Dst:             smap_destroy
    - functionName:    ovsrec_bridge_parse_sflow
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1513
      functionLinenumberEnd: 1521
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_get_row_arc
        - ovsrec_bridge_cast
        - ovsrec_sflow_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1514,33'
          Dst:             ovsrec_bridge_cast
        - Src:             'lib/vswitch-idl.c:1517,40'
          Dst:             ovsdb_idl_get_row_arc
        - Src:             'lib/vswitch-idl.c:1517,22'
          Dst:             ovsrec_sflow_cast
    - functionName:    ovsrec_bridge_unparse_sflow
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1673
      functionLinenumberEnd: 1675
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_bridge_parse_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1525
      functionLinenumberEnd: 1533
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          61
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_bridge_cast
        - smap_add
        - smap_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1526,33'
          Dst:             ovsrec_bridge_cast
        - Src:             'lib/vswitch-idl.c:1527,5'
          Dst:             smap_init
        - Src:             'lib/vswitch-idl.c:1530,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:1531,18'
          Dst:             json_string
        - Src:             'lib/vswitch-idl.c:1529,9'
          Dst:             smap_add
    - functionName:    ovsrec_bridge_unparse_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1679
      functionLinenumberEnd: 1682
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_bridge_cast
        - smap_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1680,33'
          Dst:             ovsrec_bridge_cast
        - Src:             'lib/vswitch-idl.c:1681,5'
          Dst:             smap_destroy
    - functionName:    ovsrec_bridge_parse_stp_enable
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1537
      functionLinenumberEnd: 1545
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsrec_bridge_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1538,33'
          Dst:             ovsrec_bridge_cast
    - functionName:    ovsrec_bridge_unparse_stp_enable
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1686
      functionLinenumberEnd: 1688
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_autoattach_parse_mappings
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 201
      functionLinenumberEnd: 215
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          115
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsrec_autoattach_cast
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:202,37'
          Dst:             ovsrec_autoattach_cast
        - Src:             'lib/vswitch-idl.c:208,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:209,35'
          Dst:             xmalloc
    - functionName:    ovsrec_autoattach_unparse_mappings
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 243
      functionLinenumberEnd: 247
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_autoattach_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:244,37'
          Dst:             ovsrec_autoattach_cast
    - functionName:    ovsrec_autoattach_parse_system_description
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 219
      functionLinenumberEnd: 227
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_autoattach_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:220,37'
          Dst:             ovsrec_autoattach_cast
        - Src:             'lib/vswitch-idl.c:223,35'
          Dst:             json_string
    - functionName:    ovsrec_autoattach_unparse_system_description
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 251
      functionLinenumberEnd: 253
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_autoattach_parse_system_name
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 231
      functionLinenumberEnd: 239
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovsrec_autoattach_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:232,37'
          Dst:             ovsrec_autoattach_cast
        - Src:             'lib/vswitch-idl.c:235,28'
          Dst:             json_string
    - functionName:    ovsrec_autoattach_unparse_system_name
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 257
      functionLinenumberEnd: 259
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_sflow_index_set_targets
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46667
      functionLinenumberEnd: 46681
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          77
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:46674,30'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:46677,27'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:46679,5'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:46680,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsdb_atom_string_create
      functionSourceFile: '/src/openvswitch/./lib/ovsdb-data.h'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - json_string_create
      functionUses:    473
      BranchProfiles:  []
      Callsites:
        - Src:             './lib/ovsdb-data.h:45,12'
          Dst:             json_string_create
    - functionName:    ovsrec_sflow_index_set_sampling
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46642
      functionLinenumberEnd: 46659
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:46649,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:46658,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_sflow_index_set_polling
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46614
      functionLinenumberEnd: 46631
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:46621,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:46630,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_sflow_index_set_header
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46586
      functionLinenumberEnd: 46603
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:46593,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:46602,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_sflow_index_set_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46547
      functionLinenumberEnd: 46574
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          127
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_first
        - hmap_next
        - ovsdb_atom_string_create
        - ovsdb_datum_init_empty
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - smap_count
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:46548,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:46554,20'
          Dst:             smap_count
        - Src:             'lib/vswitch-idl.c:46555,23'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:46556,25'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:46560,9'
          Dst:             hmap_first
        - Src:             'lib/vswitch-idl.c:46561,32'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:46562,34'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:46560,9'
          Dst:             hmap_next
        - Src:             'lib/vswitch-idl.c:46565,9'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:46567,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:46569,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    hmap_first
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 416
      functionLinenumberEnd: 417
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next__
      functionUses:    40
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:417,12'
          Dst:             hmap_next__
    - functionName:    hmap_next
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 429
      functionLinenumberEnd: 432
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_next__
      functionUses:    40
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:432,15'
          Dst:             hmap_next__
    - functionName:    ovsrec_sflow_index_set_agent
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46522
      functionLinenumberEnd: 46539
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:46529,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:46532,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:46538,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_sflow_cursor_data
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46508
      functionLinenumberEnd: 46509
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_cursor_data
        - ovsrec_sflow_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:46509,30'
          Dst:             ovsdb_idl_cursor_data
        - Src:             'lib/vswitch-idl.c:46509,12'
          Dst:             ovsrec_sflow_cast
    - functionName:    ovsrec_sflow_cursor_first_ge
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46501
      functionLinenumberEnd: 46503
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_cursor_first_ge
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:46502,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:46503,12'
          Dst:             ovsdb_idl_cursor_first_ge
    - functionName:    ovsrec_sflow_cursor_first_eq
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46493
      functionLinenumberEnd: 46495
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_cursor_first_eq
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:46494,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:46495,12'
          Dst:             ovsdb_idl_cursor_first_eq
    - functionName:    ovsrec_sflow_cursor_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46485
      functionLinenumberEnd: 46487
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_cursor_first
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:46486,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:46487,12'
          Dst:             ovsdb_idl_cursor_first
    - functionName:    ovsrec_sflow_index_compare
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46479
      functionLinenumberEnd: 46480
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_index_compare
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:46480,12'
          Dst:             ovsdb_idl_index_compare
    - functionName:    ovsrec_sflow_index_find
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46468
      functionLinenumberEnd: 46470
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_index_find
        - ovsrec_sflow_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:46469,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:46470,30'
          Dst:             ovsdb_idl_index_find
        - Src:             'lib/vswitch-idl.c:46470,12'
          Dst:             ovsrec_sflow_cast
    - functionName:    ovsrec_sflow_index_init_row
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46461
      functionLinenumberEnd: 46463
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_index_init_row
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:46462,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:46463,12'
          Dst:             ovsdb_idl_index_init_row
    - functionName:    ovsrec_sflow_index_destroy_row
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46453
      functionLinenumberEnd: 46455
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_index_destroy_row
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:46454,5'
          Dst:             ovsdb_idl_index_destroy_row
    - functionName:    ovsrec_sflow_add_clause_targets
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46430
      functionLinenumberEnd: 46446
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          80
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_destroy
        - ovsdb_datum_sort_unique
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:46435,30'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:46438,27'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:46440,5'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:46441,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:46445,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_sflow_add_clause_sampling
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46402
      functionLinenumberEnd: 46422
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:46408,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:46417,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:46421,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_sflow_add_clause_polling
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46371
      functionLinenumberEnd: 46391
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:46377,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:46386,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:46390,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_sflow_add_clause_header
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46340
      functionLinenumberEnd: 46360
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:46346,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:46355,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:46359,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_sflow_add_clause_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46313
      functionLinenumberEnd: 46328
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_condition_add_clause
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:46317,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:46319,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:46322,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:46327,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_sflow_add_clause_agent
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46285
      functionLinenumberEnd: 46305
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:46291,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:46294,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:46300,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:46304,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_sflow_update_targets_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46260
      functionLinenumberEnd: 46274
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:46263,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:46265,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:46269,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:46271,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_sflow_update_targets_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46238
      functionLinenumberEnd: 46252
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:46241,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:46243,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:46247,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:46249,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_sflow_update_sampling_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46216
      functionLinenumberEnd: 46230
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:46219,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:46221,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:46227,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_sflow_update_sampling_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46194
      functionLinenumberEnd: 46208
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:46197,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:46199,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:46205,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_sflow_update_polling_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46172
      functionLinenumberEnd: 46186
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:46175,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:46177,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:46183,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_sflow_update_polling_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46150
      functionLinenumberEnd: 46164
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:46153,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:46155,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:46161,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_sflow_update_header_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46128
      functionLinenumberEnd: 46142
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:46131,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:46133,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:46139,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_sflow_update_header_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46106
      functionLinenumberEnd: 46120
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:46109,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:46111,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:46117,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_sflow_update_external_ids_delkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46084
      functionLinenumberEnd: 46098
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:46087,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:46089,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:46093,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:46095,5'
          Dst:             ovsdb_idl_txn_delete_partial_map
    - functionName:    ovsrec_sflow_update_external_ids_setkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46061
      functionLinenumberEnd: 46076
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          62
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:46064,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:46066,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:46067,21'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:46070,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:46071,26'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:46073,5'
          Dst:             ovsdb_idl_txn_write_partial_map
    - functionName:    ovsrec_sflow_update_agent_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46039
      functionLinenumberEnd: 46053
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:46042,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:46044,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:46048,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:46050,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_sflow_update_agent_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46017
      functionLinenumberEnd: 46031
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:46020,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:46022,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:46026,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:46028,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_sflow_set_targets
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45997
      functionLinenumberEnd: 46009
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          76
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:46003,30'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:46006,27'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:46008,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_sflow_set_sampling
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45973
      functionLinenumberEnd: 45989
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:45979,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:45988,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_sflow_set_polling
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45946
      functionLinenumberEnd: 45962
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:45952,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:45961,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_sflow_set_header
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45919
      functionLinenumberEnd: 45935
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:45925,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:45934,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_sflow_set_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45896
      functionLinenumberEnd: 45907
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_txn_write
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:45900,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:45902,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:45904,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_sflow_set_agent
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45872
      functionLinenumberEnd: 45888
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:45878,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:45881,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:45887,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_sflow_get_targets
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45858
      functionLinenumberEnd: 45860
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:45859,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:45860,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_sflow_get_sampling
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45831
      functionLinenumberEnd: 45833
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:45832,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:45833,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_sflow_get_polling
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45804
      functionLinenumberEnd: 45806
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:45805,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:45806,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_sflow_get_header
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45777
      functionLinenumberEnd: 45779
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:45778,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:45779,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_sflow_get_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45749
      functionLinenumberEnd: 45752
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:45750,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:45751,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:45752,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_sflow_get_agent
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45720
      functionLinenumberEnd: 45722
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:45721,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:45722,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_sflow_verify_targets
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45694
      functionLinenumberEnd: 45696
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:45695,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_sflow_verify_sampling
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45665
      functionLinenumberEnd: 45667
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:45666,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_sflow_verify_polling
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45636
      functionLinenumberEnd: 45638
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:45637,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_sflow_verify_header
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45607
      functionLinenumberEnd: 45609
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:45608,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_sflow_verify_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45578
      functionLinenumberEnd: 45580
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:45579,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_sflow_verify_agent
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45549
      functionLinenumberEnd: 45551
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:45550,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_sflow_is_updated
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45520
      functionLinenumberEnd: 45521
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_track_is_updated
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:45521,12'
          Dst:             ovsdb_idl_track_is_updated
    - functionName:    ovsrec_sflow_insert_persist_uuid
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45513
      functionLinenumberEnd: 45515
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_insert_persist_uuid
        - ovsrec_sflow_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:45514,30'
          Dst:             ovsdb_idl_txn_insert_persist_uuid
        - Src:             'lib/vswitch-idl.c:45514,12'
          Dst:             ovsrec_sflow_cast
    - functionName:    ovsrec_sflow_insert
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45501
      functionLinenumberEnd: 45502
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_insert
        - ovsrec_sflow_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:45502,30'
          Dst:             ovsdb_idl_txn_insert
        - Src:             'lib/vswitch-idl.c:45502,12'
          Dst:             ovsrec_sflow_cast
    - functionName:    ovsrec_sflow_delete
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45488
      functionLinenumberEnd: 45490
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:45489,5'
          Dst:             ovsdb_idl_txn_delete
    - functionName:    ovsrec_sflow_track_get_next
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45477
      functionLinenumberEnd: 45478
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_track_get_next
        - ovsrec_sflow_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:45478,30'
          Dst:             ovsdb_idl_track_get_next
        - Src:             'lib/vswitch-idl.c:45478,12'
          Dst:             ovsrec_sflow_cast
    - functionName:    ovsrec_sflow_row_get_seqno
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45465
      functionLinenumberEnd: 45466
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_row_get_seqno
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:45466,12'
          Dst:             ovsdb_idl_row_get_seqno
    - functionName:    ovsrec_sflow_get_seqno
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45460
      functionLinenumberEnd: 45461
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_table_get_seqno
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:45461,12'
          Dst:             ovsdb_idl_table_get_seqno
    - functionName:    ovsrec_sflow_next
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45455
      functionLinenumberEnd: 45456
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_next_row
        - ovsrec_sflow_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:45456,30'
          Dst:             ovsdb_idl_next_row
        - Src:             'lib/vswitch-idl.c:45456,12'
          Dst:             ovsrec_sflow_cast
    - functionName:    ovsrec_sflow_table_get_for_uuid
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45434
      functionLinenumberEnd: 45436
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_sflow_get_for_uuid
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:45436,12'
          Dst:             ovsrec_sflow_get_for_uuid
    - functionName:    ovsrec_sflow_get_for_uuid
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45426
      functionLinenumberEnd: 45427
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_get_row_for_uuid
        - ovsrec_sflow_cast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:45427,30'
          Dst:             ovsdb_idl_get_row_for_uuid
        - Src:             'lib/vswitch-idl.c:45427,12'
          Dst:             ovsrec_sflow_cast
    - functionName:    ovsrec_sflow_track_get_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45471
      functionLinenumberEnd: 45472
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_track_get_first
        - ovsrec_sflow_cast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:45472,30'
          Dst:             ovsdb_idl_track_get_first
        - Src:             'lib/vswitch-idl.c:45472,12'
          Dst:             ovsrec_sflow_cast
    - functionName:    ovsrec_sflow_table_track_get_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45274
      functionLinenumberEnd: 45276
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_sflow_track_get_first
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:45276,12'
          Dst:             ovsrec_sflow_track_get_first
    - functionName:    ovsrec_sflow_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45447
      functionLinenumberEnd: 45448
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_first_row
        - ovsrec_sflow_cast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:45448,30'
          Dst:             ovsdb_idl_first_row
        - Src:             'lib/vswitch-idl.c:45448,12'
          Dst:             ovsrec_sflow_cast
    - functionName:    ovsrec_sflow_table_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45266
      functionLinenumberEnd: 45268
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_sflow_first
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:45268,12'
          Dst:             ovsrec_sflow_first
    - functionName:    ovsrec_sflow_table_get
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45260
      functionLinenumberEnd: 45261
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_server_has_sflow_table
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45253
      functionLinenumberEnd: 45254
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_table
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:45254,12'
          Dst:             ovsdb_idl_server_has_table
    - functionName:    ovsrec_sflow_targets_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45246
      functionLinenumberEnd: 45247
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:45247,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_sflow_table_col_targets
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45240
      functionLinenumberEnd: 45241
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:45241,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_sflow_sampling_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45233
      functionLinenumberEnd: 45234
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:45234,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_sflow_table_col_sampling
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45227
      functionLinenumberEnd: 45228
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:45228,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_sflow_polling_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45220
      functionLinenumberEnd: 45221
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:45221,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_sflow_table_col_polling
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45214
      functionLinenumberEnd: 45215
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:45215,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_sflow_header_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45207
      functionLinenumberEnd: 45208
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:45208,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_sflow_table_col_header
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45201
      functionLinenumberEnd: 45202
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:45202,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_sflow_external_ids_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45194
      functionLinenumberEnd: 45195
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:45195,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_sflow_table_col_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45188
      functionLinenumberEnd: 45189
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:45189,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_sflow_agent_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45181
      functionLinenumberEnd: 45182
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:45182,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_sflow_table_col_agent
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45175
      functionLinenumberEnd: 45176
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:45176,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_ssl_set_condition
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45077
      functionLinenumberEnd: 45078
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_set_condition
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:45078,12'
          Dst:             ovsdb_idl_set_condition
    - functionName:    ovsrec_ssl_index_set_private_key
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45060
      functionLinenumberEnd: 45071
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:45064,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:45068,14'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:45070,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_ssl_index_set_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45024
      functionLinenumberEnd: 45051
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          127
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_first
        - hmap_next
        - ovsdb_atom_string_create
        - ovsdb_datum_init_empty
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - smap_count
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:45025,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:45031,20'
          Dst:             smap_count
        - Src:             'lib/vswitch-idl.c:45032,23'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:45033,25'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:45037,9'
          Dst:             hmap_first
        - Src:             'lib/vswitch-idl.c:45038,32'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:45039,34'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:45037,9'
          Dst:             hmap_next
        - Src:             'lib/vswitch-idl.c:45042,9'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:45044,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:45046,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_ssl_index_set_certificate
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45005
      functionLinenumberEnd: 45016
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:45009,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:45013,14'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:45015,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_ssl_index_set_ca_cert
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44986
      functionLinenumberEnd: 44997
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:44990,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:44994,14'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:44996,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_ssl_index_set_bootstrap_ca_cert
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44967
      functionLinenumberEnd: 44978
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:44971,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:44977,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_ssl_cursor_data
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44956
      functionLinenumberEnd: 44957
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_cursor_data
        - ovsrec_ssl_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:44957,28'
          Dst:             ovsdb_idl_cursor_data
        - Src:             'lib/vswitch-idl.c:44957,12'
          Dst:             ovsrec_ssl_cast
    - functionName:    ovsrec_ssl_cursor_first_ge
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44949
      functionLinenumberEnd: 44951
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_cursor_first_ge
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:44950,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:44951,12'
          Dst:             ovsdb_idl_cursor_first_ge
    - functionName:    ovsrec_ssl_cursor_first_eq
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44941
      functionLinenumberEnd: 44943
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_cursor_first_eq
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:44942,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:44943,12'
          Dst:             ovsdb_idl_cursor_first_eq
    - functionName:    ovsrec_ssl_cursor_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44933
      functionLinenumberEnd: 44935
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_cursor_first
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:44934,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:44935,12'
          Dst:             ovsdb_idl_cursor_first
    - functionName:    ovsrec_ssl_index_compare
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44927
      functionLinenumberEnd: 44928
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_index_compare
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:44928,12'
          Dst:             ovsdb_idl_index_compare
    - functionName:    ovsrec_ssl_index_find
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44916
      functionLinenumberEnd: 44918
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_index_find
        - ovsrec_ssl_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:44917,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:44918,28'
          Dst:             ovsdb_idl_index_find
        - Src:             'lib/vswitch-idl.c:44918,12'
          Dst:             ovsrec_ssl_cast
    - functionName:    ovsrec_ssl_index_init_row
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44909
      functionLinenumberEnd: 44911
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_index_init_row
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:44910,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:44911,12'
          Dst:             ovsdb_idl_index_init_row
    - functionName:    ovsrec_ssl_index_destroy_row
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44901
      functionLinenumberEnd: 44903
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_index_destroy_row
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:44902,5'
          Dst:             ovsdb_idl_index_destroy_row
    - functionName:    ovsrec_ssl_add_clause_private_key
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44878
      functionLinenumberEnd: 44894
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          38
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:44883,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:44887,14'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:44889,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:44893,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_ssl_add_clause_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44854
      functionLinenumberEnd: 44869
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_condition_add_clause
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:44858,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:44860,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:44863,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:44868,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_ssl_add_clause_certificate
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44830
      functionLinenumberEnd: 44846
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          38
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:44835,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:44839,14'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:44841,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:44845,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_ssl_add_clause_ca_cert
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44806
      functionLinenumberEnd: 44822
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          38
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:44811,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:44815,14'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:44817,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:44821,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_ssl_add_clause_bootstrap_ca_cert
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44782
      functionLinenumberEnd: 44798
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          40
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:44787,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:44793,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:44797,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_ssl_update_external_ids_delkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44760
      functionLinenumberEnd: 44774
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:44763,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:44765,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:44769,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:44771,5'
          Dst:             ovsdb_idl_txn_delete_partial_map
    - functionName:    ovsrec_ssl_update_external_ids_setkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44737
      functionLinenumberEnd: 44752
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          62
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:44740,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:44742,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:44743,21'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:44746,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:44747,26'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:44749,5'
          Dst:             ovsdb_idl_txn_write_partial_map
    - functionName:    ovsrec_ssl_set_private_key
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44717
      functionLinenumberEnd: 44729
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:44722,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:44726,14'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:44728,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_ssl_set_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44697
      functionLinenumberEnd: 44708
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_txn_write
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:44701,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:44703,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:44705,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_ssl_set_certificate
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44677
      functionLinenumberEnd: 44689
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:44682,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:44686,14'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:44688,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_ssl_set_ca_cert
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44657
      functionLinenumberEnd: 44669
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:44662,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:44666,14'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:44668,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_ssl_set_bootstrap_ca_cert
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44637
      functionLinenumberEnd: 44649
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:44642,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:44648,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_ssl_get_private_key
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44626
      functionLinenumberEnd: 44628
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:44627,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:44628,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_ssl_get_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44598
      functionLinenumberEnd: 44601
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:44599,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:44600,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:44601,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_ssl_get_certificate
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44569
      functionLinenumberEnd: 44571
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:44570,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:44571,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_ssl_get_ca_cert
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44542
      functionLinenumberEnd: 44544
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:44543,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:44544,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_ssl_get_bootstrap_ca_cert
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44515
      functionLinenumberEnd: 44517
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:44516,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:44517,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_ssl_verify_private_key
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44489
      functionLinenumberEnd: 44491
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:44490,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_ssl_verify_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44460
      functionLinenumberEnd: 44462
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:44461,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_ssl_verify_certificate
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44431
      functionLinenumberEnd: 44433
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:44432,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_ssl_verify_ca_cert
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44402
      functionLinenumberEnd: 44404
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:44403,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_ssl_verify_bootstrap_ca_cert
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44373
      functionLinenumberEnd: 44375
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:44374,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_ssl_is_updated
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44344
      functionLinenumberEnd: 44345
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_track_is_updated
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:44345,12'
          Dst:             ovsdb_idl_track_is_updated
    - functionName:    ovsrec_ssl_insert_persist_uuid
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44337
      functionLinenumberEnd: 44339
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_insert_persist_uuid
        - ovsrec_ssl_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:44338,28'
          Dst:             ovsdb_idl_txn_insert_persist_uuid
        - Src:             'lib/vswitch-idl.c:44338,12'
          Dst:             ovsrec_ssl_cast
    - functionName:    ovsrec_ssl_insert
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44325
      functionLinenumberEnd: 44326
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_insert
        - ovsrec_ssl_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:44326,28'
          Dst:             ovsdb_idl_txn_insert
        - Src:             'lib/vswitch-idl.c:44326,12'
          Dst:             ovsrec_ssl_cast
    - functionName:    ovsrec_ssl_delete
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44312
      functionLinenumberEnd: 44314
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:44313,5'
          Dst:             ovsdb_idl_txn_delete
    - functionName:    ovsrec_ssl_track_get_next
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44301
      functionLinenumberEnd: 44302
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_track_get_next
        - ovsrec_ssl_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:44302,28'
          Dst:             ovsdb_idl_track_get_next
        - Src:             'lib/vswitch-idl.c:44302,12'
          Dst:             ovsrec_ssl_cast
    - functionName:    ovsrec_ssl_row_get_seqno
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44289
      functionLinenumberEnd: 44290
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_row_get_seqno
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:44290,12'
          Dst:             ovsdb_idl_row_get_seqno
    - functionName:    ovsrec_ssl_get_seqno
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44284
      functionLinenumberEnd: 44285
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_table_get_seqno
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:44285,12'
          Dst:             ovsdb_idl_table_get_seqno
    - functionName:    ovsrec_ssl_next
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44279
      functionLinenumberEnd: 44280
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_next_row
        - ovsrec_ssl_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:44280,28'
          Dst:             ovsdb_idl_next_row
        - Src:             'lib/vswitch-idl.c:44280,12'
          Dst:             ovsrec_ssl_cast
    - functionName:    ovsrec_ssl_table_get_for_uuid
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44258
      functionLinenumberEnd: 44260
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_ssl_get_for_uuid
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:44260,12'
          Dst:             ovsrec_ssl_get_for_uuid
    - functionName:    ovsrec_ssl_get_for_uuid
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44250
      functionLinenumberEnd: 44251
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_get_row_for_uuid
        - ovsrec_ssl_cast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:44251,28'
          Dst:             ovsdb_idl_get_row_for_uuid
        - Src:             'lib/vswitch-idl.c:44251,12'
          Dst:             ovsrec_ssl_cast
    - functionName:    ovsrec_ssl_track_get_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44295
      functionLinenumberEnd: 44296
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_track_get_first
        - ovsrec_ssl_cast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:44296,28'
          Dst:             ovsdb_idl_track_get_first
        - Src:             'lib/vswitch-idl.c:44296,12'
          Dst:             ovsrec_ssl_cast
    - functionName:    ovsrec_ssl_table_track_get_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44132
      functionLinenumberEnd: 44134
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_ssl_track_get_first
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:44134,12'
          Dst:             ovsrec_ssl_track_get_first
    - functionName:    ovsrec_ssl_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44271
      functionLinenumberEnd: 44272
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_first_row
        - ovsrec_ssl_cast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:44272,28'
          Dst:             ovsdb_idl_first_row
        - Src:             'lib/vswitch-idl.c:44272,12'
          Dst:             ovsrec_ssl_cast
    - functionName:    ovsrec_ssl_table_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44124
      functionLinenumberEnd: 44126
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_ssl_first
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:44126,12'
          Dst:             ovsrec_ssl_first
    - functionName:    ovsrec_ssl_table_get
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44118
      functionLinenumberEnd: 44119
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_server_has_ssl_table
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44111
      functionLinenumberEnd: 44112
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_table
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:44112,12'
          Dst:             ovsdb_idl_server_has_table
    - functionName:    ovsrec_ssl_private_key_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44104
      functionLinenumberEnd: 44105
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:44105,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_ssl_table_col_private_key
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44098
      functionLinenumberEnd: 44099
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:44099,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_ssl_external_ids_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44091
      functionLinenumberEnd: 44092
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:44092,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_ssl_table_col_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44085
      functionLinenumberEnd: 44086
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:44086,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_ssl_certificate_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44078
      functionLinenumberEnd: 44079
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:44079,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_ssl_table_col_certificate
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44072
      functionLinenumberEnd: 44073
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:44073,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_ssl_ca_cert_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44065
      functionLinenumberEnd: 44066
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:44066,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_ssl_table_col_ca_cert
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44059
      functionLinenumberEnd: 44060
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:44060,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_ssl_bootstrap_ca_cert_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44052
      functionLinenumberEnd: 44053
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:44053,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_ssl_table_col_bootstrap_ca_cert
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44046
      functionLinenumberEnd: 44047
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:44047,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_queue_set_condition
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43978
      functionLinenumberEnd: 43979
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_set_condition
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:43979,12'
          Dst:             ovsdb_idl_set_condition
    - functionName:    ovsrec_queue_index_set_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43944
      functionLinenumberEnd: 43971
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          127
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_first
        - hmap_next
        - ovsdb_atom_string_create
        - ovsdb_datum_init_empty
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - smap_count
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:43945,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:43951,20'
          Dst:             smap_count
        - Src:             'lib/vswitch-idl.c:43952,23'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:43953,25'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:43957,9'
          Dst:             hmap_first
        - Src:             'lib/vswitch-idl.c:43958,32'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:43959,34'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:43957,9'
          Dst:             hmap_next
        - Src:             'lib/vswitch-idl.c:43962,9'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:43964,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:43966,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_queue_index_set_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43908
      functionLinenumberEnd: 43935
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          127
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_first
        - hmap_next
        - ovsdb_atom_string_create
        - ovsdb_datum_init_empty
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - smap_count
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:43909,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:43915,20'
          Dst:             smap_count
        - Src:             'lib/vswitch-idl.c:43916,23'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:43917,25'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:43921,9'
          Dst:             hmap_first
        - Src:             'lib/vswitch-idl.c:43922,32'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:43923,34'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:43921,9'
          Dst:             hmap_next
        - Src:             'lib/vswitch-idl.c:43926,9'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:43928,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:43930,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_queue_index_set_dscp
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43883
      functionLinenumberEnd: 43900
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:43890,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:43899,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_queue_cursor_data
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43867
      functionLinenumberEnd: 43868
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_cursor_data
        - ovsrec_queue_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:43868,30'
          Dst:             ovsdb_idl_cursor_data
        - Src:             'lib/vswitch-idl.c:43868,12'
          Dst:             ovsrec_queue_cast
    - functionName:    ovsrec_queue_cursor_first_ge
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43860
      functionLinenumberEnd: 43862
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_cursor_first_ge
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:43861,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:43862,12'
          Dst:             ovsdb_idl_cursor_first_ge
    - functionName:    ovsrec_queue_cursor_first_eq
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43852
      functionLinenumberEnd: 43854
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_cursor_first_eq
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:43853,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:43854,12'
          Dst:             ovsdb_idl_cursor_first_eq
    - functionName:    ovsrec_queue_cursor_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43844
      functionLinenumberEnd: 43846
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_cursor_first
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:43845,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:43846,12'
          Dst:             ovsdb_idl_cursor_first
    - functionName:    ovsrec_queue_index_compare
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43838
      functionLinenumberEnd: 43839
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_index_compare
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:43839,12'
          Dst:             ovsdb_idl_index_compare
    - functionName:    ovsrec_queue_index_find
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43827
      functionLinenumberEnd: 43829
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_index_find
        - ovsrec_queue_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:43828,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:43829,30'
          Dst:             ovsdb_idl_index_find
        - Src:             'lib/vswitch-idl.c:43829,12'
          Dst:             ovsrec_queue_cast
    - functionName:    ovsrec_queue_index_init_row
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43820
      functionLinenumberEnd: 43822
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_index_init_row
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:43821,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:43822,12'
          Dst:             ovsdb_idl_index_init_row
    - functionName:    ovsrec_queue_index_destroy_row
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43812
      functionLinenumberEnd: 43814
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_index_destroy_row
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:43813,5'
          Dst:             ovsdb_idl_index_destroy_row
    - functionName:    ovsrec_queue_add_clause_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43789
      functionLinenumberEnd: 43804
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_condition_add_clause
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:43793,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:43795,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:43798,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:43803,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_queue_add_clause_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43765
      functionLinenumberEnd: 43780
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_condition_add_clause
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:43769,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:43771,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:43774,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:43779,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_queue_add_clause_dscp
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43737
      functionLinenumberEnd: 43757
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:43743,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:43752,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:43756,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_queue_update_other_config_delkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43710
      functionLinenumberEnd: 43724
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:43713,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:43715,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:43719,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:43721,5'
          Dst:             ovsdb_idl_txn_delete_partial_map
    - functionName:    ovsrec_queue_update_other_config_setkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43687
      functionLinenumberEnd: 43702
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          62
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:43690,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:43692,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:43693,21'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:43696,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:43697,26'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:43699,5'
          Dst:             ovsdb_idl_txn_write_partial_map
    - functionName:    ovsrec_queue_update_external_ids_delkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43665
      functionLinenumberEnd: 43679
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:43668,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:43670,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:43674,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:43676,5'
          Dst:             ovsdb_idl_txn_delete_partial_map
    - functionName:    ovsrec_queue_update_external_ids_setkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43642
      functionLinenumberEnd: 43657
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          62
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:43645,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:43647,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:43648,21'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:43651,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:43652,26'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:43654,5'
          Dst:             ovsdb_idl_txn_write_partial_map
    - functionName:    ovsrec_queue_update_dscp_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43620
      functionLinenumberEnd: 43634
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:43623,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:43625,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:43631,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_queue_update_dscp_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43598
      functionLinenumberEnd: 43612
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:43601,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:43603,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:43609,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_queue_set_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43578
      functionLinenumberEnd: 43589
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_txn_write
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:43582,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:43584,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:43586,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_queue_set_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43558
      functionLinenumberEnd: 43569
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_txn_write
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:43562,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:43564,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:43566,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_queue_set_dscp
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43534
      functionLinenumberEnd: 43550
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:43540,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:43549,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_queue_get_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43517
      functionLinenumberEnd: 43520
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:43518,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:43519,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:43520,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_queue_get_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43487
      functionLinenumberEnd: 43490
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:43488,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:43489,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:43490,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_queue_get_dscp
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43458
      functionLinenumberEnd: 43460
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:43459,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:43460,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_queue_verify_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43432
      functionLinenumberEnd: 43434
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:43433,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_queue_verify_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43403
      functionLinenumberEnd: 43405
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:43404,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_queue_verify_dscp
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43374
      functionLinenumberEnd: 43376
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:43375,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_queue_is_updated
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43345
      functionLinenumberEnd: 43346
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_track_is_updated
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:43346,12'
          Dst:             ovsdb_idl_track_is_updated
    - functionName:    ovsrec_queue_insert_persist_uuid
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43338
      functionLinenumberEnd: 43340
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_insert_persist_uuid
        - ovsrec_queue_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:43339,30'
          Dst:             ovsdb_idl_txn_insert_persist_uuid
        - Src:             'lib/vswitch-idl.c:43339,12'
          Dst:             ovsrec_queue_cast
    - functionName:    ovsrec_queue_insert
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43326
      functionLinenumberEnd: 43327
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_insert
        - ovsrec_queue_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:43327,30'
          Dst:             ovsdb_idl_txn_insert
        - Src:             'lib/vswitch-idl.c:43327,12'
          Dst:             ovsrec_queue_cast
    - functionName:    ovsrec_queue_delete
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43313
      functionLinenumberEnd: 43315
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:43314,5'
          Dst:             ovsdb_idl_txn_delete
    - functionName:    ovsrec_queue_track_get_next
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43302
      functionLinenumberEnd: 43303
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_track_get_next
        - ovsrec_queue_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:43303,30'
          Dst:             ovsdb_idl_track_get_next
        - Src:             'lib/vswitch-idl.c:43303,12'
          Dst:             ovsrec_queue_cast
    - functionName:    ovsrec_queue_row_get_seqno
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43290
      functionLinenumberEnd: 43291
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_row_get_seqno
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:43291,12'
          Dst:             ovsdb_idl_row_get_seqno
    - functionName:    ovsrec_queue_get_seqno
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43285
      functionLinenumberEnd: 43286
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_table_get_seqno
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:43286,12'
          Dst:             ovsdb_idl_table_get_seqno
    - functionName:    ovsrec_queue_next
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43280
      functionLinenumberEnd: 43281
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_next_row
        - ovsrec_queue_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:43281,30'
          Dst:             ovsdb_idl_next_row
        - Src:             'lib/vswitch-idl.c:43281,12'
          Dst:             ovsrec_queue_cast
    - functionName:    ovsrec_queue_table_get_for_uuid
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43259
      functionLinenumberEnd: 43261
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_queue_get_for_uuid
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:43261,12'
          Dst:             ovsrec_queue_get_for_uuid
    - functionName:    ovsrec_queue_get_for_uuid
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43251
      functionLinenumberEnd: 43252
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_get_row_for_uuid
        - ovsrec_queue_cast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:43252,30'
          Dst:             ovsdb_idl_get_row_for_uuid
        - Src:             'lib/vswitch-idl.c:43252,12'
          Dst:             ovsrec_queue_cast
    - functionName:    ovsrec_queue_track_get_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43296
      functionLinenumberEnd: 43297
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_track_get_first
        - ovsrec_queue_cast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:43297,30'
          Dst:             ovsdb_idl_track_get_first
        - Src:             'lib/vswitch-idl.c:43297,12'
          Dst:             ovsrec_queue_cast
    - functionName:    ovsrec_queue_table_track_get_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43165
      functionLinenumberEnd: 43167
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_queue_track_get_first
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:43167,12'
          Dst:             ovsrec_queue_track_get_first
    - functionName:    ovsrec_queue_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43272
      functionLinenumberEnd: 43273
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_first_row
        - ovsrec_queue_cast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:43273,30'
          Dst:             ovsdb_idl_first_row
        - Src:             'lib/vswitch-idl.c:43273,12'
          Dst:             ovsrec_queue_cast
    - functionName:    ovsrec_queue_table_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43157
      functionLinenumberEnd: 43159
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_queue_first
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:43159,12'
          Dst:             ovsrec_queue_first
    - functionName:    ovsrec_queue_table_get
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43151
      functionLinenumberEnd: 43152
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_server_has_queue_table
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43144
      functionLinenumberEnd: 43145
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_table
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:43145,12'
          Dst:             ovsdb_idl_server_has_table
    - functionName:    ovsrec_queue_other_config_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43137
      functionLinenumberEnd: 43138
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:43138,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_queue_table_col_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43131
      functionLinenumberEnd: 43132
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:43132,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_queue_external_ids_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43124
      functionLinenumberEnd: 43125
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:43125,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_queue_table_col_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43118
      functionLinenumberEnd: 43119
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:43119,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_queue_dscp_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43111
      functionLinenumberEnd: 43112
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:43112,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_queue_table_col_dscp
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43105
      functionLinenumberEnd: 43106
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:43106,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_qos_set_condition
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43017
      functionLinenumberEnd: 43018
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_set_condition
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:43018,12'
          Dst:             ovsdb_idl_set_condition
    - functionName:    ovsrec_qos_index_set_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 43000
      functionLinenumberEnd: 43011
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:43004,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:43008,14'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:43010,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_qos_index_set_queues
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42977
      functionLinenumberEnd: 42992
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          92
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:42984,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:42985,20'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:42990,5'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:42991,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_qos_index_set_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42938
      functionLinenumberEnd: 42965
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          127
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_first
        - hmap_next
        - ovsdb_atom_string_create
        - ovsdb_datum_init_empty
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - smap_count
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:42939,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:42945,20'
          Dst:             smap_count
        - Src:             'lib/vswitch-idl.c:42946,23'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:42947,25'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:42951,9'
          Dst:             hmap_first
        - Src:             'lib/vswitch-idl.c:42952,32'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:42953,34'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:42951,9'
          Dst:             hmap_next
        - Src:             'lib/vswitch-idl.c:42956,9'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:42958,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:42960,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_qos_index_set_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42902
      functionLinenumberEnd: 42929
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          127
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_first
        - hmap_next
        - ovsdb_atom_string_create
        - ovsdb_datum_init_empty
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - smap_count
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:42903,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:42909,20'
          Dst:             smap_count
        - Src:             'lib/vswitch-idl.c:42910,23'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:42911,25'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:42915,9'
          Dst:             hmap_first
        - Src:             'lib/vswitch-idl.c:42916,32'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:42917,34'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:42915,9'
          Dst:             hmap_next
        - Src:             'lib/vswitch-idl.c:42920,9'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:42922,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:42924,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_qos_cursor_data
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42891
      functionLinenumberEnd: 42892
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_cursor_data
        - ovsrec_qos_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:42892,28'
          Dst:             ovsdb_idl_cursor_data
        - Src:             'lib/vswitch-idl.c:42892,12'
          Dst:             ovsrec_qos_cast
    - functionName:    ovsrec_qos_cursor_first_ge
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42884
      functionLinenumberEnd: 42886
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_cursor_first_ge
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:42885,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:42886,12'
          Dst:             ovsdb_idl_cursor_first_ge
    - functionName:    ovsrec_qos_cursor_first_eq
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42876
      functionLinenumberEnd: 42878
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_cursor_first_eq
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:42877,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:42878,12'
          Dst:             ovsdb_idl_cursor_first_eq
    - functionName:    ovsrec_qos_cursor_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42868
      functionLinenumberEnd: 42870
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_cursor_first
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:42869,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:42870,12'
          Dst:             ovsdb_idl_cursor_first
    - functionName:    ovsrec_qos_index_compare
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42862
      functionLinenumberEnd: 42863
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_index_compare
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:42863,12'
          Dst:             ovsdb_idl_index_compare
    - functionName:    ovsrec_qos_index_find
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42851
      functionLinenumberEnd: 42853
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_index_find
        - ovsrec_qos_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:42852,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:42853,28'
          Dst:             ovsdb_idl_index_find
        - Src:             'lib/vswitch-idl.c:42853,12'
          Dst:             ovsrec_qos_cast
    - functionName:    ovsrec_qos_index_init_row
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42844
      functionLinenumberEnd: 42846
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_index_init_row
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:42845,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:42846,12'
          Dst:             ovsdb_idl_index_init_row
    - functionName:    ovsrec_qos_index_destroy_row
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42836
      functionLinenumberEnd: 42838
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_index_destroy_row
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:42837,5'
          Dst:             ovsdb_idl_index_destroy_row
    - functionName:    ovsrec_qos_add_clause_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42813
      functionLinenumberEnd: 42829
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          38
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:42818,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:42822,14'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:42824,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:42828,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_qos_add_clause_queues
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42788
      functionLinenumberEnd: 42805
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          93
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_datum_sort_unique
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:42793,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:42794,20'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:42799,5'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:42800,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:42804,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_qos_add_clause_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42761
      functionLinenumberEnd: 42776
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_condition_add_clause
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:42765,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:42767,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:42770,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:42775,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_qos_add_clause_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42737
      functionLinenumberEnd: 42752
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_condition_add_clause
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:42741,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:42743,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:42746,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:42751,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_qos_update_queues_delkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42715
      functionLinenumberEnd: 42729
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:42718,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:42720,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:42726,5'
          Dst:             ovsdb_idl_txn_delete_partial_map
    - functionName:    ovsrec_qos_update_queues_setkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42692
      functionLinenumberEnd: 42707
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          62
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:42695,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:42697,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:42698,21'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:42704,5'
          Dst:             ovsdb_idl_txn_write_partial_map
    - functionName:    ovsrec_qos_update_other_config_delkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42670
      functionLinenumberEnd: 42684
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:42673,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:42675,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:42679,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:42681,5'
          Dst:             ovsdb_idl_txn_delete_partial_map
    - functionName:    ovsrec_qos_update_other_config_setkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42647
      functionLinenumberEnd: 42662
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          62
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:42650,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:42652,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:42653,21'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:42656,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:42657,26'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:42659,5'
          Dst:             ovsdb_idl_txn_write_partial_map
    - functionName:    ovsrec_qos_update_external_ids_delkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42625
      functionLinenumberEnd: 42639
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:42628,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:42630,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:42634,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:42636,5'
          Dst:             ovsdb_idl_txn_delete_partial_map
    - functionName:    ovsrec_qos_update_external_ids_setkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42602
      functionLinenumberEnd: 42617
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          62
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:42605,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:42607,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:42608,21'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:42611,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:42612,26'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:42614,5'
          Dst:             ovsdb_idl_txn_write_partial_map
    - functionName:    ovsrec_qos_set_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42582
      functionLinenumberEnd: 42594
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:42587,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:42591,14'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:42593,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_qos_set_queues
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42561
      functionLinenumberEnd: 42574
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          91
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:42567,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:42568,20'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:42573,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_qos_set_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42538
      functionLinenumberEnd: 42549
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_txn_write
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:42542,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:42544,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:42546,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_qos_set_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42518
      functionLinenumberEnd: 42529
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_txn_write
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:42522,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:42524,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:42526,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_qos_get_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42507
      functionLinenumberEnd: 42509
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:42508,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:42509,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_qos_get_queues
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42479
      functionLinenumberEnd: 42482
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:42480,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:42481,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:42482,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_qos_get_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42449
      functionLinenumberEnd: 42452
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:42450,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:42451,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:42452,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_qos_get_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42419
      functionLinenumberEnd: 42422
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:42420,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:42421,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:42422,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_qos_verify_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42391
      functionLinenumberEnd: 42393
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:42392,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_qos_verify_queues
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42362
      functionLinenumberEnd: 42364
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:42363,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_qos_verify_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42333
      functionLinenumberEnd: 42335
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:42334,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_qos_verify_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42304
      functionLinenumberEnd: 42306
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:42305,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_qos_is_updated
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42275
      functionLinenumberEnd: 42276
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_track_is_updated
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:42276,12'
          Dst:             ovsdb_idl_track_is_updated
    - functionName:    ovsrec_qos_insert_persist_uuid
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42268
      functionLinenumberEnd: 42270
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_insert_persist_uuid
        - ovsrec_qos_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:42269,28'
          Dst:             ovsdb_idl_txn_insert_persist_uuid
        - Src:             'lib/vswitch-idl.c:42269,12'
          Dst:             ovsrec_qos_cast
    - functionName:    ovsrec_qos_insert
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42256
      functionLinenumberEnd: 42257
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_insert
        - ovsrec_qos_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:42257,28'
          Dst:             ovsdb_idl_txn_insert
        - Src:             'lib/vswitch-idl.c:42257,12'
          Dst:             ovsrec_qos_cast
    - functionName:    ovsrec_qos_delete
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42243
      functionLinenumberEnd: 42245
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:42244,5'
          Dst:             ovsdb_idl_txn_delete
    - functionName:    ovsrec_qos_track_get_next
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42232
      functionLinenumberEnd: 42233
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_track_get_next
        - ovsrec_qos_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:42233,28'
          Dst:             ovsdb_idl_track_get_next
        - Src:             'lib/vswitch-idl.c:42233,12'
          Dst:             ovsrec_qos_cast
    - functionName:    ovsrec_qos_row_get_seqno
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42220
      functionLinenumberEnd: 42221
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_row_get_seqno
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:42221,12'
          Dst:             ovsdb_idl_row_get_seqno
    - functionName:    ovsrec_qos_get_seqno
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42215
      functionLinenumberEnd: 42216
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_table_get_seqno
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:42216,12'
          Dst:             ovsdb_idl_table_get_seqno
    - functionName:    ovsrec_qos_next
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42210
      functionLinenumberEnd: 42211
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_next_row
        - ovsrec_qos_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:42211,28'
          Dst:             ovsdb_idl_next_row
        - Src:             'lib/vswitch-idl.c:42211,12'
          Dst:             ovsrec_qos_cast
    - functionName:    ovsrec_qos_table_get_for_uuid
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42189
      functionLinenumberEnd: 42191
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_qos_get_for_uuid
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:42191,12'
          Dst:             ovsrec_qos_get_for_uuid
    - functionName:    ovsrec_qos_get_for_uuid
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42181
      functionLinenumberEnd: 42182
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_get_row_for_uuid
        - ovsrec_qos_cast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:42182,28'
          Dst:             ovsdb_idl_get_row_for_uuid
        - Src:             'lib/vswitch-idl.c:42182,12'
          Dst:             ovsrec_qos_cast
    - functionName:    ovsrec_qos_track_get_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42226
      functionLinenumberEnd: 42227
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_track_get_first
        - ovsrec_qos_cast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:42227,28'
          Dst:             ovsdb_idl_track_get_first
        - Src:             'lib/vswitch-idl.c:42227,12'
          Dst:             ovsrec_qos_cast
    - functionName:    ovsrec_qos_table_track_get_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42069
      functionLinenumberEnd: 42071
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_qos_track_get_first
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:42071,12'
          Dst:             ovsrec_qos_track_get_first
    - functionName:    ovsrec_qos_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42202
      functionLinenumberEnd: 42203
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_first_row
        - ovsrec_qos_cast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:42203,28'
          Dst:             ovsdb_idl_first_row
        - Src:             'lib/vswitch-idl.c:42203,12'
          Dst:             ovsrec_qos_cast
    - functionName:    ovsrec_qos_table_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42061
      functionLinenumberEnd: 42063
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_qos_first
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:42063,12'
          Dst:             ovsrec_qos_first
    - functionName:    ovsrec_qos_table_get
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42055
      functionLinenumberEnd: 42056
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_server_has_qos_table
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42048
      functionLinenumberEnd: 42049
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_table
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:42049,12'
          Dst:             ovsdb_idl_server_has_table
    - functionName:    ovsrec_qos_type_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42041
      functionLinenumberEnd: 42042
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:42042,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_qos_table_col_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42035
      functionLinenumberEnd: 42036
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:42036,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_qos_queues_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42028
      functionLinenumberEnd: 42029
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:42029,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_qos_table_col_queues
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42022
      functionLinenumberEnd: 42023
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:42023,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_qos_other_config_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42015
      functionLinenumberEnd: 42016
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:42016,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_qos_table_col_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42009
      functionLinenumberEnd: 42010
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:42010,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_qos_external_ids_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42002
      functionLinenumberEnd: 42003
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:42003,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_qos_table_col_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41996
      functionLinenumberEnd: 41997
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:41997,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_port_set_condition
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41547
      functionLinenumberEnd: 41548
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_set_condition
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:41548,12'
          Dst:             ovsdb_idl_set_condition
    - functionName:    ovsrec_port_index_set_vlan_mode
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41524
      functionLinenumberEnd: 41541
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:41531,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:41534,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:41540,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_port_index_set_trunks
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41497
      functionLinenumberEnd: 41511
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          76
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:41504,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:41509,5'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:41510,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_port_index_set_tag
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41470
      functionLinenumberEnd: 41487
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:41477,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:41486,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_port_index_set_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41429
      functionLinenumberEnd: 41456
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          127
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_first
        - hmap_next
        - ovsdb_atom_string_create
        - ovsdb_datum_init_empty
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - smap_count
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:41430,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:41436,20'
          Dst:             smap_count
        - Src:             'lib/vswitch-idl.c:41437,23'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:41438,25'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:41442,9'
          Dst:             hmap_first
        - Src:             'lib/vswitch-idl.c:41443,32'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:41444,34'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:41442,9'
          Dst:             hmap_next
        - Src:             'lib/vswitch-idl.c:41447,9'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:41449,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:41451,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_port_index_set_statistics
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41406
      functionLinenumberEnd: 41421
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          91
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:41413,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:41414,20'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:41416,27'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:41419,5'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:41420,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_port_index_set_rstp_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41369
      functionLinenumberEnd: 41396
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          127
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_first
        - hmap_next
        - ovsdb_atom_string_create
        - ovsdb_datum_init_empty
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - smap_count
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:41370,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:41376,20'
          Dst:             smap_count
        - Src:             'lib/vswitch-idl.c:41377,23'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:41378,25'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:41382,9'
          Dst:             hmap_first
        - Src:             'lib/vswitch-idl.c:41383,32'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:41384,34'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:41382,9'
          Dst:             hmap_next
        - Src:             'lib/vswitch-idl.c:41387,9'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:41389,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:41391,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_port_index_set_rstp_statistics
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41346
      functionLinenumberEnd: 41361
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          91
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:41353,38'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:41354,20'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:41356,27'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:41359,5'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:41360,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_port_index_set_qos
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41320
      functionLinenumberEnd: 41337
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:41327,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:41336,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_port_index_set_protected_
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41298
      functionLinenumberEnd: 41309
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:41302,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:41308,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_port_index_set_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41262
      functionLinenumberEnd: 41289
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          127
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_first
        - hmap_next
        - ovsdb_atom_string_create
        - ovsdb_datum_init_empty
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - smap_count
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:41263,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:41269,20'
          Dst:             smap_count
        - Src:             'lib/vswitch-idl.c:41270,23'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:41271,25'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:41275,9'
          Dst:             hmap_first
        - Src:             'lib/vswitch-idl.c:41276,32'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:41277,34'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:41275,9'
          Dst:             hmap_next
        - Src:             'lib/vswitch-idl.c:41280,9'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:41282,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:41284,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_port_index_set_name
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41243
      functionLinenumberEnd: 41254
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:41247,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:41251,14'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:41253,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_port_index_set_mac
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41218
      functionLinenumberEnd: 41235
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:41225,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:41228,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:41234,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_port_index_set_lacp
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41190
      functionLinenumberEnd: 41207
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:41197,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:41200,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:41206,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_port_index_set_interfaces
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41163
      functionLinenumberEnd: 41177
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          78
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:41170,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:41175,5'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:41176,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_port_index_set_fake_bridge
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41144
      functionLinenumberEnd: 41155
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:41148,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:41154,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_port_index_set_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41108
      functionLinenumberEnd: 41135
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          127
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_first
        - hmap_next
        - ovsdb_atom_string_create
        - ovsdb_datum_init_empty
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - smap_count
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:41109,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:41115,20'
          Dst:             smap_count
        - Src:             'lib/vswitch-idl.c:41116,23'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:41117,25'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:41121,9'
          Dst:             hmap_first
        - Src:             'lib/vswitch-idl.c:41122,32'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:41123,34'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:41121,9'
          Dst:             hmap_next
        - Src:             'lib/vswitch-idl.c:41126,9'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:41128,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:41130,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_port_index_set_cvlans
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41086
      functionLinenumberEnd: 41100
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          76
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:41093,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:41098,5'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:41099,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_port_index_set_bond_updelay
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41065
      functionLinenumberEnd: 41076
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:41069,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:41075,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_port_index_set_bond_mode
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41040
      functionLinenumberEnd: 41057
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:41047,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:41050,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:41056,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_port_index_set_bond_fake_iface
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41016
      functionLinenumberEnd: 41027
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:41020,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:41026,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_port_index_set_bond_downdelay
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40997
      functionLinenumberEnd: 41008
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:41001,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:41007,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_port_index_set_bond_active_slave
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40972
      functionLinenumberEnd: 40989
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:40979,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:40982,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:40988,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_port_cursor_data
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40958
      functionLinenumberEnd: 40959
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_cursor_data
        - ovsrec_port_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:40959,29'
          Dst:             ovsdb_idl_cursor_data
        - Src:             'lib/vswitch-idl.c:40959,12'
          Dst:             ovsrec_port_cast
    - functionName:    ovsrec_port_cursor_first_ge
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40951
      functionLinenumberEnd: 40953
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_cursor_first_ge
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:40952,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:40953,12'
          Dst:             ovsdb_idl_cursor_first_ge
    - functionName:    ovsrec_port_cursor_first_eq
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40943
      functionLinenumberEnd: 40945
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_cursor_first_eq
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:40944,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:40945,12'
          Dst:             ovsdb_idl_cursor_first_eq
    - functionName:    ovsrec_port_cursor_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40935
      functionLinenumberEnd: 40937
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_cursor_first
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:40936,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:40937,12'
          Dst:             ovsdb_idl_cursor_first
    - functionName:    ovsrec_port_index_compare
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40929
      functionLinenumberEnd: 40930
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_index_compare
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:40930,12'
          Dst:             ovsdb_idl_index_compare
    - functionName:    ovsrec_port_index_find
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40918
      functionLinenumberEnd: 40920
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_index_find
        - ovsrec_port_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:40919,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:40920,29'
          Dst:             ovsdb_idl_index_find
        - Src:             'lib/vswitch-idl.c:40920,12'
          Dst:             ovsrec_port_cast
    - functionName:    ovsrec_port_index_init_row
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40911
      functionLinenumberEnd: 40913
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_index_init_row
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:40912,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:40913,12'
          Dst:             ovsdb_idl_index_init_row
    - functionName:    ovsrec_port_index_destroy_row
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40903
      functionLinenumberEnd: 40905
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_index_destroy_row
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:40904,5'
          Dst:             ovsdb_idl_index_destroy_row
    - functionName:    ovsrec_port_add_clause_vlan_mode
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40876
      functionLinenumberEnd: 40896
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:40882,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:40885,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:40891,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:40895,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_port_add_clause_trunks
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40847
      functionLinenumberEnd: 40863
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          79
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_datum_sort_unique
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:40852,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:40857,5'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:40858,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:40862,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_port_add_clause_tag
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40817
      functionLinenumberEnd: 40837
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:40823,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:40832,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:40836,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_port_add_clause_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40788
      functionLinenumberEnd: 40803
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_condition_add_clause
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:40792,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:40794,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:40797,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:40802,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_port_add_clause_statistics
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40763
      functionLinenumberEnd: 40780
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          94
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_destroy
        - ovsdb_datum_sort_unique
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:40768,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:40769,20'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:40771,27'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:40774,5'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:40775,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:40779,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_port_add_clause_rstp_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40738
      functionLinenumberEnd: 40753
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_condition_add_clause
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:40742,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:40744,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:40747,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:40752,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_port_add_clause_rstp_statistics
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40713
      functionLinenumberEnd: 40730
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          94
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_destroy
        - ovsdb_datum_sort_unique
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:40718,38'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:40719,20'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:40721,27'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:40724,5'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:40725,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:40729,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_port_add_clause_qos
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40684
      functionLinenumberEnd: 40704
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:40690,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:40699,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:40703,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_port_add_clause_protected_
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40657
      functionLinenumberEnd: 40673
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          40
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:40662,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:40668,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:40672,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_port_add_clause_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40633
      functionLinenumberEnd: 40648
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_condition_add_clause
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:40637,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:40639,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:40642,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:40647,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_port_add_clause_name
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40609
      functionLinenumberEnd: 40625
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          38
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:40614,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:40618,14'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:40620,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:40624,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_port_add_clause_mac
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40581
      functionLinenumberEnd: 40601
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:40587,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:40590,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:40596,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:40600,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_port_add_clause_lacp
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40550
      functionLinenumberEnd: 40570
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:40556,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:40559,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:40565,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:40569,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_port_add_clause_interfaces
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40521
      functionLinenumberEnd: 40537
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          79
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_datum_sort_unique
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:40526,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:40531,5'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:40532,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:40536,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_port_add_clause_fake_bridge
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40497
      functionLinenumberEnd: 40513
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          40
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:40502,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:40508,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:40512,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_port_add_clause_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40473
      functionLinenumberEnd: 40488
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_condition_add_clause
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:40477,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:40479,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:40482,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:40487,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_port_add_clause_cvlans
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40449
      functionLinenumberEnd: 40465
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          79
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_datum_sort_unique
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:40454,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:40459,5'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:40460,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:40464,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_port_add_clause_bond_updelay
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40423
      functionLinenumberEnd: 40439
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:40428,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:40434,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:40438,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_port_add_clause_bond_mode
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40395
      functionLinenumberEnd: 40415
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:40401,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:40404,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:40410,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:40414,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_port_add_clause_bond_fake_iface
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40366
      functionLinenumberEnd: 40382
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          40
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:40371,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:40377,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:40381,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_port_add_clause_bond_downdelay
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40342
      functionLinenumberEnd: 40358
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:40347,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:40353,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:40357,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_port_add_clause_bond_active_slave
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40314
      functionLinenumberEnd: 40334
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:40320,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:40323,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:40329,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:40333,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_port_update_vlan_mode_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40289
      functionLinenumberEnd: 40303
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:40292,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:40294,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:40298,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:40300,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_port_update_vlan_mode_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40267
      functionLinenumberEnd: 40281
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:40270,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:40272,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:40276,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:40278,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_port_update_trunks_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40245
      functionLinenumberEnd: 40259
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:40248,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:40250,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:40256,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_port_update_trunks_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40223
      functionLinenumberEnd: 40237
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:40226,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:40228,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:40234,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_port_update_tag_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40201
      functionLinenumberEnd: 40215
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:40204,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:40206,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:40212,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_port_update_tag_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40179
      functionLinenumberEnd: 40193
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:40182,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:40184,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:40190,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_port_update_status_delkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40157
      functionLinenumberEnd: 40171
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:40160,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:40162,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:40166,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:40168,5'
          Dst:             ovsdb_idl_txn_delete_partial_map
    - functionName:    ovsrec_port_update_status_setkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40134
      functionLinenumberEnd: 40149
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          62
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:40137,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:40139,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:40140,21'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:40143,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:40144,26'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:40146,5'
          Dst:             ovsdb_idl_txn_write_partial_map
    - functionName:    ovsrec_port_update_statistics_delkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40112
      functionLinenumberEnd: 40126
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:40115,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:40117,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:40121,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:40123,5'
          Dst:             ovsdb_idl_txn_delete_partial_map
    - functionName:    ovsrec_port_update_statistics_setkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40089
      functionLinenumberEnd: 40104
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          61
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:40092,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:40094,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:40095,21'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:40098,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:40101,5'
          Dst:             ovsdb_idl_txn_write_partial_map
    - functionName:    ovsrec_port_update_rstp_status_delkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40067
      functionLinenumberEnd: 40081
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:40070,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:40072,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:40076,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:40078,5'
          Dst:             ovsdb_idl_txn_delete_partial_map
    - functionName:    ovsrec_port_update_rstp_status_setkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40044
      functionLinenumberEnd: 40059
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          62
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:40047,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:40049,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:40050,21'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:40053,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:40054,26'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:40056,5'
          Dst:             ovsdb_idl_txn_write_partial_map
    - functionName:    ovsrec_port_update_rstp_statistics_delkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40022
      functionLinenumberEnd: 40036
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:40025,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:40027,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:40031,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:40033,5'
          Dst:             ovsdb_idl_txn_delete_partial_map
    - functionName:    ovsrec_port_update_rstp_statistics_setkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39999
      functionLinenumberEnd: 40014
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          61
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:40002,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:40004,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:40005,21'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:40008,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:40011,5'
          Dst:             ovsdb_idl_txn_write_partial_map
    - functionName:    ovsrec_port_update_qos_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39977
      functionLinenumberEnd: 39991
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          48
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:39980,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:39982,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:39988,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_port_update_qos_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39955
      functionLinenumberEnd: 39969
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          48
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:39958,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:39960,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:39966,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_port_update_other_config_delkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39933
      functionLinenumberEnd: 39947
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:39936,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:39938,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:39942,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:39944,5'
          Dst:             ovsdb_idl_txn_delete_partial_map
    - functionName:    ovsrec_port_update_other_config_setkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39910
      functionLinenumberEnd: 39925
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          62
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:39913,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:39915,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:39916,21'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:39919,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:39920,26'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:39922,5'
          Dst:             ovsdb_idl_txn_write_partial_map
    - functionName:    ovsrec_port_update_mac_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39888
      functionLinenumberEnd: 39902
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:39891,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:39893,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:39897,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:39899,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_port_update_mac_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39866
      functionLinenumberEnd: 39880
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:39869,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:39871,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:39875,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:39877,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_port_update_lacp_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39844
      functionLinenumberEnd: 39858
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:39847,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:39849,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:39853,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:39855,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_port_update_lacp_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39822
      functionLinenumberEnd: 39836
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:39825,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:39827,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:39831,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:39833,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_port_update_interfaces_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39800
      functionLinenumberEnd: 39814
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          48
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:39803,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:39805,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:39811,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_port_update_interfaces_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39778
      functionLinenumberEnd: 39792
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          48
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:39781,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:39783,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:39789,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_port_update_external_ids_delkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39756
      functionLinenumberEnd: 39770
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:39759,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:39761,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:39765,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:39767,5'
          Dst:             ovsdb_idl_txn_delete_partial_map
    - functionName:    ovsrec_port_update_external_ids_setkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39733
      functionLinenumberEnd: 39748
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          62
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:39736,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:39738,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:39739,21'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:39742,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:39743,26'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:39745,5'
          Dst:             ovsdb_idl_txn_write_partial_map
    - functionName:    ovsrec_port_update_cvlans_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39711
      functionLinenumberEnd: 39725
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:39714,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:39716,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:39722,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_port_update_cvlans_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39689
      functionLinenumberEnd: 39703
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:39692,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:39694,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:39700,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_port_update_bond_mode_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39667
      functionLinenumberEnd: 39681
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:39670,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:39672,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:39676,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:39678,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_port_update_bond_mode_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39645
      functionLinenumberEnd: 39659
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:39648,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:39650,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:39654,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:39656,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_port_update_bond_active_slave_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39623
      functionLinenumberEnd: 39637
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:39626,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:39628,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:39632,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:39634,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_port_update_bond_active_slave_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39601
      functionLinenumberEnd: 39615
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:39604,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:39606,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:39610,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:39612,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_port_set_vlan_mode
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39577
      functionLinenumberEnd: 39593
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:39583,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:39586,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:39592,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_port_set_trunks
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39552
      functionLinenumberEnd: 39564
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          75
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:39558,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:39563,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_port_set_tag
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39526
      functionLinenumberEnd: 39542
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:39532,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:39541,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_port_set_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39501
      functionLinenumberEnd: 39512
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_txn_write
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:39505,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:39507,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:39509,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_port_set_statistics
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39480
      functionLinenumberEnd: 39493
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          90
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:39486,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:39487,20'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:39489,27'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:39492,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_port_set_rstp_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39459
      functionLinenumberEnd: 39470
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_txn_write
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:39463,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:39465,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:39467,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_port_set_rstp_statistics
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39438
      functionLinenumberEnd: 39451
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          90
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:39444,38'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:39445,20'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:39447,27'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:39450,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_port_set_qos
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39413
      functionLinenumberEnd: 39429
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:39419,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:39428,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_port_set_protected_
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39390
      functionLinenumberEnd: 39402
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:39395,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:39401,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_port_set_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39370
      functionLinenumberEnd: 39381
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_txn_write
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:39374,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:39376,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:39378,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_port_set_name
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39350
      functionLinenumberEnd: 39362
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:39355,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:39359,14'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:39361,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_port_set_mac
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39326
      functionLinenumberEnd: 39342
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:39332,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:39335,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:39341,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_port_set_lacp
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39299
      functionLinenumberEnd: 39315
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:39305,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:39308,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:39314,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_port_set_interfaces
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39274
      functionLinenumberEnd: 39286
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          77
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:39280,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:39285,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_port_set_fake_bridge
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39254
      functionLinenumberEnd: 39266
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:39259,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:39265,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_port_set_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39234
      functionLinenumberEnd: 39245
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_txn_write
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:39238,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:39240,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:39242,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_port_set_cvlans
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39214
      functionLinenumberEnd: 39226
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          75
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:39220,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:39225,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_port_set_bond_updelay
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39192
      functionLinenumberEnd: 39204
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:39197,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:39203,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_port_set_bond_mode
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39168
      functionLinenumberEnd: 39184
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:39174,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:39177,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:39183,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_port_set_bond_fake_iface
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39143
      functionLinenumberEnd: 39155
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:39148,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:39154,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_port_set_bond_downdelay
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39123
      functionLinenumberEnd: 39135
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:39128,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:39134,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_port_set_bond_active_slave
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39099
      functionLinenumberEnd: 39115
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:39105,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:39108,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:39114,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_port_get_vlan_mode
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39085
      functionLinenumberEnd: 39087
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:39086,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:39087,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_port_get_trunks
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39058
      functionLinenumberEnd: 39060
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:39059,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:39060,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_port_get_tag
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39031
      functionLinenumberEnd: 39033
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:39032,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:39033,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_port_get_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39003
      functionLinenumberEnd: 39006
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:39004,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:39005,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:39006,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_port_get_statistics
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38973
      functionLinenumberEnd: 38976
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:38974,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:38975,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:38976,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_port_get_rstp_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38943
      functionLinenumberEnd: 38946
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:38944,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:38945,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:38946,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_port_get_rstp_statistics
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38913
      functionLinenumberEnd: 38916
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:38914,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:38915,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:38916,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_port_get_qos
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38884
      functionLinenumberEnd: 38886
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:38885,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:38886,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_port_get_protected_
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38857
      functionLinenumberEnd: 38859
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:38858,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:38859,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_port_get_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38829
      functionLinenumberEnd: 38832
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:38830,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:38831,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:38832,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_port_get_name
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38800
      functionLinenumberEnd: 38802
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:38801,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:38802,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_port_get_mac
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38773
      functionLinenumberEnd: 38775
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:38774,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:38775,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_port_get_lacp
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38746
      functionLinenumberEnd: 38748
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:38747,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:38748,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_port_get_interfaces
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38719
      functionLinenumberEnd: 38721
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:38720,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:38721,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_port_get_fake_bridge
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38692
      functionLinenumberEnd: 38694
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:38693,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:38694,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_port_get_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38664
      functionLinenumberEnd: 38667
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:38665,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:38666,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:38667,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_port_get_cvlans
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38635
      functionLinenumberEnd: 38637
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:38636,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:38637,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_port_get_bond_updelay
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38608
      functionLinenumberEnd: 38610
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:38609,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:38610,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_port_get_bond_mode
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38581
      functionLinenumberEnd: 38583
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:38582,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:38583,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_port_get_bond_fake_iface
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38554
      functionLinenumberEnd: 38556
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:38555,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:38556,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_port_get_bond_downdelay
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38527
      functionLinenumberEnd: 38529
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:38528,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:38529,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_port_get_bond_active_slave
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38500
      functionLinenumberEnd: 38502
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:38501,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:38502,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_port_verify_vlan_mode
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38474
      functionLinenumberEnd: 38476
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:38475,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_port_verify_trunks
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38445
      functionLinenumberEnd: 38447
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:38446,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_port_verify_tag
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38416
      functionLinenumberEnd: 38418
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:38417,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_port_verify_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38387
      functionLinenumberEnd: 38389
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:38388,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_port_verify_statistics
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38358
      functionLinenumberEnd: 38360
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:38359,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_port_verify_rstp_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38329
      functionLinenumberEnd: 38331
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:38330,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_port_verify_rstp_statistics
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38300
      functionLinenumberEnd: 38302
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:38301,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_port_verify_qos
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38271
      functionLinenumberEnd: 38273
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:38272,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_port_verify_protected_
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38242
      functionLinenumberEnd: 38244
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:38243,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_port_verify_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38213
      functionLinenumberEnd: 38215
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:38214,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_port_verify_name
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38184
      functionLinenumberEnd: 38186
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:38185,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_port_verify_mac
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38155
      functionLinenumberEnd: 38157
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:38156,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_port_verify_lacp
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38126
      functionLinenumberEnd: 38128
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:38127,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_port_verify_interfaces
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38097
      functionLinenumberEnd: 38099
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:38098,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_port_verify_fake_bridge
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38068
      functionLinenumberEnd: 38070
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:38069,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_port_verify_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38039
      functionLinenumberEnd: 38041
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:38040,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_port_verify_cvlans
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 38010
      functionLinenumberEnd: 38012
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:38011,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_port_verify_bond_updelay
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37981
      functionLinenumberEnd: 37983
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37982,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_port_verify_bond_mode
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37952
      functionLinenumberEnd: 37954
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37953,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_port_verify_bond_fake_iface
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37923
      functionLinenumberEnd: 37925
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37924,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_port_verify_bond_downdelay
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37894
      functionLinenumberEnd: 37896
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37895,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_port_verify_bond_active_slave
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37865
      functionLinenumberEnd: 37867
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37866,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_port_is_updated
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37836
      functionLinenumberEnd: 37837
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_track_is_updated
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37837,12'
          Dst:             ovsdb_idl_track_is_updated
    - functionName:    ovsrec_port_insert_persist_uuid
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37829
      functionLinenumberEnd: 37831
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_insert_persist_uuid
        - ovsrec_port_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37830,29'
          Dst:             ovsdb_idl_txn_insert_persist_uuid
        - Src:             'lib/vswitch-idl.c:37830,12'
          Dst:             ovsrec_port_cast
    - functionName:    ovsrec_port_insert
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37817
      functionLinenumberEnd: 37818
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_insert
        - ovsrec_port_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37818,29'
          Dst:             ovsdb_idl_txn_insert
        - Src:             'lib/vswitch-idl.c:37818,12'
          Dst:             ovsrec_port_cast
    - functionName:    ovsrec_port_delete
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37804
      functionLinenumberEnd: 37806
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37805,5'
          Dst:             ovsdb_idl_txn_delete
    - functionName:    ovsrec_port_track_get_next
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37793
      functionLinenumberEnd: 37794
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_track_get_next
        - ovsrec_port_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37794,29'
          Dst:             ovsdb_idl_track_get_next
        - Src:             'lib/vswitch-idl.c:37794,12'
          Dst:             ovsrec_port_cast
    - functionName:    ovsrec_port_row_get_seqno
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37781
      functionLinenumberEnd: 37782
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_row_get_seqno
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37782,12'
          Dst:             ovsdb_idl_row_get_seqno
    - functionName:    ovsrec_port_get_seqno
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37776
      functionLinenumberEnd: 37777
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_table_get_seqno
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37777,12'
          Dst:             ovsdb_idl_table_get_seqno
    - functionName:    ovsrec_port_next
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37771
      functionLinenumberEnd: 37772
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_next_row
        - ovsrec_port_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37772,29'
          Dst:             ovsdb_idl_next_row
        - Src:             'lib/vswitch-idl.c:37772,12'
          Dst:             ovsrec_port_cast
    - functionName:    ovsrec_port_table_get_for_uuid
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37750
      functionLinenumberEnd: 37752
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_port_get_for_uuid
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37752,12'
          Dst:             ovsrec_port_get_for_uuid
    - functionName:    ovsrec_port_get_for_uuid
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37742
      functionLinenumberEnd: 37743
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_get_row_for_uuid
        - ovsrec_port_cast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37743,29'
          Dst:             ovsdb_idl_get_row_for_uuid
        - Src:             'lib/vswitch-idl.c:37743,12'
          Dst:             ovsrec_port_cast
    - functionName:    ovsrec_port_track_get_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37787
      functionLinenumberEnd: 37788
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_track_get_first
        - ovsrec_port_cast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37788,29'
          Dst:             ovsdb_idl_track_get_first
        - Src:             'lib/vswitch-idl.c:37788,12'
          Dst:             ovsrec_port_cast
    - functionName:    ovsrec_port_table_track_get_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37275
      functionLinenumberEnd: 37277
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_port_track_get_first
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37277,12'
          Dst:             ovsrec_port_track_get_first
    - functionName:    ovsrec_port_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37763
      functionLinenumberEnd: 37764
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_first_row
        - ovsrec_port_cast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37764,29'
          Dst:             ovsdb_idl_first_row
        - Src:             'lib/vswitch-idl.c:37764,12'
          Dst:             ovsrec_port_cast
    - functionName:    ovsrec_port_table_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37267
      functionLinenumberEnd: 37269
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_port_first
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37269,12'
          Dst:             ovsrec_port_first
    - functionName:    ovsrec_port_table_get
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37261
      functionLinenumberEnd: 37262
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_server_has_port_table
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37254
      functionLinenumberEnd: 37255
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_table
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37255,12'
          Dst:             ovsdb_idl_server_has_table
    - functionName:    ovsrec_port_protected__server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37247
      functionLinenumberEnd: 37248
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37248,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_port_table_col_protected_
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37241
      functionLinenumberEnd: 37242
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37242,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_port_vlan_mode_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37234
      functionLinenumberEnd: 37235
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37235,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_port_table_col_vlan_mode
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37228
      functionLinenumberEnd: 37229
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37229,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_port_trunks_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37221
      functionLinenumberEnd: 37222
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37222,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_port_table_col_trunks
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37215
      functionLinenumberEnd: 37216
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37216,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_port_tag_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37208
      functionLinenumberEnd: 37209
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37209,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_port_table_col_tag
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37202
      functionLinenumberEnd: 37203
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37203,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_port_status_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37195
      functionLinenumberEnd: 37196
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37196,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_port_table_col_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37189
      functionLinenumberEnd: 37190
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37190,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_port_statistics_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37182
      functionLinenumberEnd: 37183
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37183,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_port_table_col_statistics
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37176
      functionLinenumberEnd: 37177
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37177,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_port_rstp_status_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37169
      functionLinenumberEnd: 37170
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37170,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_port_table_col_rstp_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37163
      functionLinenumberEnd: 37164
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37164,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_port_rstp_statistics_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37156
      functionLinenumberEnd: 37157
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37157,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_port_table_col_rstp_statistics
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37150
      functionLinenumberEnd: 37151
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37151,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_port_qos_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37143
      functionLinenumberEnd: 37144
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37144,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_port_table_col_qos
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37137
      functionLinenumberEnd: 37138
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37138,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_port_other_config_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37130
      functionLinenumberEnd: 37131
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37131,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_port_table_col_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37124
      functionLinenumberEnd: 37125
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37125,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_port_name_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37117
      functionLinenumberEnd: 37118
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37118,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_port_table_col_name
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37111
      functionLinenumberEnd: 37112
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37112,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_port_mac_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37104
      functionLinenumberEnd: 37105
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37105,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_port_table_col_mac
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37098
      functionLinenumberEnd: 37099
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37099,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_port_lacp_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37091
      functionLinenumberEnd: 37092
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37092,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_port_table_col_lacp
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37085
      functionLinenumberEnd: 37086
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37086,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_port_interfaces_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37078
      functionLinenumberEnd: 37079
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37079,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_port_table_col_interfaces
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37072
      functionLinenumberEnd: 37073
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37073,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_port_fake_bridge_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37065
      functionLinenumberEnd: 37066
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37066,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_port_table_col_fake_bridge
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37059
      functionLinenumberEnd: 37060
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37060,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_port_external_ids_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37052
      functionLinenumberEnd: 37053
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37053,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_port_table_col_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37046
      functionLinenumberEnd: 37047
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37047,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_port_cvlans_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37039
      functionLinenumberEnd: 37040
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37040,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_port_table_col_cvlans
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37033
      functionLinenumberEnd: 37034
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37034,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_port_bond_updelay_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37026
      functionLinenumberEnd: 37027
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37027,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_port_table_col_bond_updelay
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37020
      functionLinenumberEnd: 37021
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37021,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_port_bond_mode_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37013
      functionLinenumberEnd: 37014
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37014,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_port_table_col_bond_mode
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37007
      functionLinenumberEnd: 37008
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37008,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_port_bond_fake_iface_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 37000
      functionLinenumberEnd: 37001
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:37001,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_port_table_col_bond_fake_iface
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36994
      functionLinenumberEnd: 36995
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:36995,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_port_bond_downdelay_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36987
      functionLinenumberEnd: 36988
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:36988,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_port_table_col_bond_downdelay
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36981
      functionLinenumberEnd: 36982
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:36982,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_port_bond_active_slave_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36974
      functionLinenumberEnd: 36975
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:36975,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_port_table_col_bond_active_slave
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36968
      functionLinenumberEnd: 36969
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:36969,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_open_vswitch_set_condition
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36657
      functionLinenumberEnd: 36658
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_set_condition
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:36658,12'
          Dst:             ovsdb_idl_set_condition
    - functionName:    ovsrec_open_vswitch_index_set_system_version
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36634
      functionLinenumberEnd: 36651
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:36641,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:36644,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:36650,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_open_vswitch_index_set_system_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36606
      functionLinenumberEnd: 36623
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:36613,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:36616,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:36622,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_open_vswitch_index_set_statistics
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36567
      functionLinenumberEnd: 36594
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          127
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_first
        - hmap_next
        - ovsdb_atom_string_create
        - ovsdb_datum_init_empty
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - smap_count
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:36568,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:36574,20'
          Dst:             smap_count
        - Src:             'lib/vswitch-idl.c:36575,23'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:36576,25'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:36580,9'
          Dst:             hmap_first
        - Src:             'lib/vswitch-idl.c:36581,32'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:36582,34'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:36580,9'
          Dst:             hmap_next
        - Src:             'lib/vswitch-idl.c:36585,9'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:36587,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:36589,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_open_vswitch_index_set_ssl
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36542
      functionLinenumberEnd: 36559
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:36549,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:36558,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_open_vswitch_index_set_ovs_version
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36514
      functionLinenumberEnd: 36531
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:36521,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:36524,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:36530,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_open_vswitch_index_set_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36475
      functionLinenumberEnd: 36502
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          127
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_first
        - hmap_next
        - ovsdb_atom_string_create
        - ovsdb_datum_init_empty
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - smap_count
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:36476,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:36482,20'
          Dst:             smap_count
        - Src:             'lib/vswitch-idl.c:36483,23'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:36484,25'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:36488,9'
          Dst:             hmap_first
        - Src:             'lib/vswitch-idl.c:36489,32'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:36490,34'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:36488,9'
          Dst:             hmap_next
        - Src:             'lib/vswitch-idl.c:36493,9'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:36495,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:36497,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_open_vswitch_index_set_next_cfg
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36456
      functionLinenumberEnd: 36467
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:36460,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:36466,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_open_vswitch_index_set_manager_options
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36434
      functionLinenumberEnd: 36448
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          78
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:36441,38'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:36446,5'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:36447,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_open_vswitch_index_set_iface_types
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36412
      functionLinenumberEnd: 36426
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          77
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:36419,34'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:36422,27'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:36424,5'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:36425,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_open_vswitch_index_set_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36376
      functionLinenumberEnd: 36403
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          127
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_first
        - hmap_next
        - ovsdb_atom_string_create
        - ovsdb_datum_init_empty
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - smap_count
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:36377,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:36383,20'
          Dst:             smap_count
        - Src:             'lib/vswitch-idl.c:36384,23'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:36385,25'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:36389,9'
          Dst:             hmap_first
        - Src:             'lib/vswitch-idl.c:36390,32'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:36391,34'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:36389,9'
          Dst:             hmap_next
        - Src:             'lib/vswitch-idl.c:36394,9'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:36396,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:36398,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_open_vswitch_index_set_dpdk_version
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36351
      functionLinenumberEnd: 36368
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:36358,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:36361,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:36367,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_open_vswitch_index_set_dpdk_initialized
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36329
      functionLinenumberEnd: 36340
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:36333,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:36339,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_open_vswitch_index_set_db_version
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36304
      functionLinenumberEnd: 36321
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:36311,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:36314,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:36320,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_open_vswitch_index_set_datapaths
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36278
      functionLinenumberEnd: 36293
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          93
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:36285,32'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:36286,20'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:36288,27'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:36291,5'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:36292,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_open_vswitch_index_set_datapath_types
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36255
      functionLinenumberEnd: 36269
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          77
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:36262,37'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:36265,27'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:36267,5'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:36268,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_open_vswitch_index_set_cur_cfg
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36236
      functionLinenumberEnd: 36247
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:36240,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:36246,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_open_vswitch_index_set_bridges
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36214
      functionLinenumberEnd: 36228
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          78
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:36221,30'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:36226,5'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:36227,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_open_vswitch_cursor_data
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36203
      functionLinenumberEnd: 36204
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_cursor_data
        - ovsrec_open_vswitch_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:36204,37'
          Dst:             ovsdb_idl_cursor_data
        - Src:             'lib/vswitch-idl.c:36204,12'
          Dst:             ovsrec_open_vswitch_cast
    - functionName:    ovsrec_open_vswitch_cursor_first_ge
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36196
      functionLinenumberEnd: 36198
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_cursor_first_ge
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:36197,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:36198,12'
          Dst:             ovsdb_idl_cursor_first_ge
    - functionName:    ovsrec_open_vswitch_cursor_first_eq
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36188
      functionLinenumberEnd: 36190
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_cursor_first_eq
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:36189,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:36190,12'
          Dst:             ovsdb_idl_cursor_first_eq
    - functionName:    ovsrec_open_vswitch_cursor_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36180
      functionLinenumberEnd: 36182
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_cursor_first
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:36181,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:36182,12'
          Dst:             ovsdb_idl_cursor_first
    - functionName:    ovsrec_open_vswitch_index_compare
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36174
      functionLinenumberEnd: 36175
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_index_compare
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:36175,12'
          Dst:             ovsdb_idl_index_compare
    - functionName:    ovsrec_open_vswitch_index_find
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36163
      functionLinenumberEnd: 36165
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_index_find
        - ovsrec_open_vswitch_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:36164,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:36165,37'
          Dst:             ovsdb_idl_index_find
        - Src:             'lib/vswitch-idl.c:36165,12'
          Dst:             ovsrec_open_vswitch_cast
    - functionName:    ovsrec_open_vswitch_index_init_row
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36156
      functionLinenumberEnd: 36158
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_index_init_row
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:36157,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:36158,12'
          Dst:             ovsdb_idl_index_init_row
    - functionName:    ovsrec_open_vswitch_index_destroy_row
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36148
      functionLinenumberEnd: 36150
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_index_destroy_row
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:36149,5'
          Dst:             ovsdb_idl_index_destroy_row
    - functionName:    ovsrec_open_vswitch_add_clause_system_version
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36121
      functionLinenumberEnd: 36141
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:36127,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:36130,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:36136,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:36140,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_open_vswitch_add_clause_system_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36090
      functionLinenumberEnd: 36110
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:36096,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:36099,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:36105,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:36109,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_open_vswitch_add_clause_statistics
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36063
      functionLinenumberEnd: 36078
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_condition_add_clause
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:36067,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:36069,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:36072,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:36077,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_open_vswitch_add_clause_ssl
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36035
      functionLinenumberEnd: 36055
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:36041,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:36050,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:36054,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_open_vswitch_add_clause_ovs_version
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 36004
      functionLinenumberEnd: 36024
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:36010,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:36013,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:36019,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:36023,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_open_vswitch_add_clause_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35977
      functionLinenumberEnd: 35992
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_condition_add_clause
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:35981,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:35983,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:35986,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:35991,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_open_vswitch_add_clause_next_cfg
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35953
      functionLinenumberEnd: 35969
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:35958,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35964,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:35968,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_open_vswitch_add_clause_manager_options
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35929
      functionLinenumberEnd: 35945
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          79
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_datum_sort_unique
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:35934,38'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35939,5'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:35940,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:35944,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_open_vswitch_add_clause_iface_types
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35905
      functionLinenumberEnd: 35921
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          80
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_destroy
        - ovsdb_datum_sort_unique
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:35910,34'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35913,27'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:35915,5'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:35916,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:35920,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_open_vswitch_add_clause_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35881
      functionLinenumberEnd: 35896
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_condition_add_clause
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:35885,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:35887,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:35890,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:35895,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_open_vswitch_add_clause_dpdk_version
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35853
      functionLinenumberEnd: 35873
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:35859,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35862,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:35868,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:35872,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_open_vswitch_add_clause_dpdk_initialized
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35826
      functionLinenumberEnd: 35842
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          40
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:35831,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35837,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:35841,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_open_vswitch_add_clause_db_version
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35798
      functionLinenumberEnd: 35818
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:35804,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35807,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:35813,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:35817,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_open_vswitch_add_clause_datapaths
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35770
      functionLinenumberEnd: 35787
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          94
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_destroy
        - ovsdb_datum_sort_unique
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:35775,32'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35776,20'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35778,27'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:35781,5'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:35782,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:35786,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_open_vswitch_add_clause_datapath_types
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35745
      functionLinenumberEnd: 35761
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          80
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_destroy
        - ovsdb_datum_sort_unique
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:35750,37'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35753,27'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:35755,5'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:35756,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:35760,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_open_vswitch_add_clause_cur_cfg
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35721
      functionLinenumberEnd: 35737
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:35726,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35732,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:35736,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_open_vswitch_add_clause_bridges
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35697
      functionLinenumberEnd: 35713
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          79
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_datum_sort_unique
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:35702,30'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35707,5'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:35708,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:35712,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_open_vswitch_update_system_version_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35675
      functionLinenumberEnd: 35689
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:35678,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35680,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35684,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:35686,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_open_vswitch_update_system_version_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35653
      functionLinenumberEnd: 35667
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:35656,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35658,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35662,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:35664,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_open_vswitch_update_system_type_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35631
      functionLinenumberEnd: 35645
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:35634,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35636,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35640,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:35642,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_open_vswitch_update_system_type_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35609
      functionLinenumberEnd: 35623
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:35612,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35614,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35618,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:35620,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_open_vswitch_update_statistics_delkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35587
      functionLinenumberEnd: 35601
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:35590,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35592,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35596,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:35598,5'
          Dst:             ovsdb_idl_txn_delete_partial_map
    - functionName:    ovsrec_open_vswitch_update_statistics_setkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35564
      functionLinenumberEnd: 35579
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          62
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:35567,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35569,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35570,21'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35573,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:35574,26'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:35576,5'
          Dst:             ovsdb_idl_txn_write_partial_map
    - functionName:    ovsrec_open_vswitch_update_ssl_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35542
      functionLinenumberEnd: 35556
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          48
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:35545,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35547,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35553,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_open_vswitch_update_ssl_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35520
      functionLinenumberEnd: 35534
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          48
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:35523,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35525,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35531,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_open_vswitch_update_ovs_version_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35498
      functionLinenumberEnd: 35512
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:35501,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35503,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35507,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:35509,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_open_vswitch_update_ovs_version_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35476
      functionLinenumberEnd: 35490
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:35479,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35481,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35485,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:35487,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_open_vswitch_update_other_config_delkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35454
      functionLinenumberEnd: 35468
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:35457,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35459,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35463,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:35465,5'
          Dst:             ovsdb_idl_txn_delete_partial_map
    - functionName:    ovsrec_open_vswitch_update_other_config_setkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35431
      functionLinenumberEnd: 35446
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          62
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:35434,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35436,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35437,21'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35440,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:35441,26'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:35443,5'
          Dst:             ovsdb_idl_txn_write_partial_map
    - functionName:    ovsrec_open_vswitch_update_manager_options_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35409
      functionLinenumberEnd: 35423
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          48
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:35412,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35414,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35420,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_open_vswitch_update_manager_options_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35387
      functionLinenumberEnd: 35401
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          48
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:35390,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35392,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35398,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_open_vswitch_update_iface_types_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35365
      functionLinenumberEnd: 35379
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:35368,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35370,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35374,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:35376,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_open_vswitch_update_iface_types_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35343
      functionLinenumberEnd: 35357
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:35346,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35348,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35352,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:35354,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_open_vswitch_update_external_ids_delkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35321
      functionLinenumberEnd: 35335
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:35324,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35326,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35330,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:35332,5'
          Dst:             ovsdb_idl_txn_delete_partial_map
    - functionName:    ovsrec_open_vswitch_update_external_ids_setkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35298
      functionLinenumberEnd: 35313
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          62
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:35301,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35303,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35304,21'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35307,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:35308,26'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:35310,5'
          Dst:             ovsdb_idl_txn_write_partial_map
    - functionName:    ovsrec_open_vswitch_update_dpdk_version_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35276
      functionLinenumberEnd: 35290
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:35279,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35281,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35285,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:35287,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_open_vswitch_update_dpdk_version_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35254
      functionLinenumberEnd: 35268
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:35257,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35259,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35263,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:35265,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_open_vswitch_update_db_version_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35232
      functionLinenumberEnd: 35246
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:35235,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35237,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35241,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:35243,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_open_vswitch_update_db_version_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35210
      functionLinenumberEnd: 35224
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:35213,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35215,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35219,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:35221,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_open_vswitch_update_datapaths_delkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35188
      functionLinenumberEnd: 35202
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:35191,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35193,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35197,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:35199,5'
          Dst:             ovsdb_idl_txn_delete_partial_map
    - functionName:    ovsrec_open_vswitch_update_datapaths_setkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35165
      functionLinenumberEnd: 35180
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          63
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:35168,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35170,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35171,21'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35174,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:35177,5'
          Dst:             ovsdb_idl_txn_write_partial_map
    - functionName:    ovsrec_open_vswitch_update_datapath_types_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35143
      functionLinenumberEnd: 35157
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:35146,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35148,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35152,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:35154,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_open_vswitch_update_datapath_types_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35121
      functionLinenumberEnd: 35135
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:35124,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35126,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35130,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:35132,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_open_vswitch_update_bridges_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35099
      functionLinenumberEnd: 35113
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          48
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:35102,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35104,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35110,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_open_vswitch_update_bridges_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35077
      functionLinenumberEnd: 35091
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          48
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:35080,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35082,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35088,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_open_vswitch_set_system_version
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35053
      functionLinenumberEnd: 35069
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:35059,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35062,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:35068,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_open_vswitch_set_system_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35026
      functionLinenumberEnd: 35042
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:35032,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:35035,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:35041,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_open_vswitch_set_statistics
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 35003
      functionLinenumberEnd: 35014
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_txn_write
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:35007,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:35009,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:35011,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_open_vswitch_set_ssl
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34979
      functionLinenumberEnd: 34995
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:34985,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:34994,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_open_vswitch_set_ovs_version
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34952
      functionLinenumberEnd: 34968
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:34958,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:34961,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:34967,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_open_vswitch_set_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34929
      functionLinenumberEnd: 34940
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_txn_write
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:34933,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:34935,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:34937,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_open_vswitch_set_next_cfg
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34909
      functionLinenumberEnd: 34921
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:34914,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:34920,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_open_vswitch_set_manager_options
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34889
      functionLinenumberEnd: 34901
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          77
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:34895,38'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:34900,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_open_vswitch_set_iface_types
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34869
      functionLinenumberEnd: 34881
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          76
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:34875,34'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:34878,27'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:34880,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_open_vswitch_set_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34849
      functionLinenumberEnd: 34860
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_txn_write
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:34853,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:34855,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:34857,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_open_vswitch_set_dpdk_version
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34825
      functionLinenumberEnd: 34841
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:34831,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:34834,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:34840,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_open_vswitch_set_dpdk_initialized
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34802
      functionLinenumberEnd: 34814
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:34807,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:34813,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_open_vswitch_set_db_version
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34778
      functionLinenumberEnd: 34794
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:34784,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:34787,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:34793,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_open_vswitch_set_datapaths
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34754
      functionLinenumberEnd: 34767
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          92
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:34760,32'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:34761,20'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:34763,27'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:34766,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_open_vswitch_set_datapath_types
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34733
      functionLinenumberEnd: 34745
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          76
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:34739,37'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:34742,27'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:34744,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_open_vswitch_set_cur_cfg
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34713
      functionLinenumberEnd: 34725
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:34718,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:34724,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_open_vswitch_set_bridges
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34693
      functionLinenumberEnd: 34705
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          77
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:34699,30'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:34704,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_open_vswitch_get_system_version
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34682
      functionLinenumberEnd: 34684
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:34683,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:34684,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_open_vswitch_get_system_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34655
      functionLinenumberEnd: 34657
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:34656,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:34657,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_open_vswitch_get_statistics
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34627
      functionLinenumberEnd: 34630
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:34628,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:34629,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:34630,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_open_vswitch_get_ssl
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34598
      functionLinenumberEnd: 34600
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:34599,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:34600,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_open_vswitch_get_ovs_version
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34571
      functionLinenumberEnd: 34573
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:34572,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:34573,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_open_vswitch_get_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34543
      functionLinenumberEnd: 34546
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:34544,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:34545,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:34546,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_open_vswitch_get_next_cfg
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34514
      functionLinenumberEnd: 34516
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:34515,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:34516,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_open_vswitch_get_manager_options
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34487
      functionLinenumberEnd: 34489
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:34488,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:34489,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_open_vswitch_get_iface_types
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34460
      functionLinenumberEnd: 34462
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:34461,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:34462,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_open_vswitch_get_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34432
      functionLinenumberEnd: 34435
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:34433,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:34434,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:34435,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_open_vswitch_get_dpdk_version
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34403
      functionLinenumberEnd: 34405
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:34404,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:34405,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_open_vswitch_get_dpdk_initialized
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34376
      functionLinenumberEnd: 34378
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:34377,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:34378,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_open_vswitch_get_db_version
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34349
      functionLinenumberEnd: 34351
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:34350,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:34351,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_open_vswitch_get_datapaths
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34321
      functionLinenumberEnd: 34324
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:34322,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:34323,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:34324,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_open_vswitch_get_datapath_types
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34292
      functionLinenumberEnd: 34294
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:34293,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:34294,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_open_vswitch_get_cur_cfg
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34265
      functionLinenumberEnd: 34267
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:34266,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:34267,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_open_vswitch_get_bridges
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34238
      functionLinenumberEnd: 34240
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:34239,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:34240,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_open_vswitch_verify_system_version
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34212
      functionLinenumberEnd: 34214
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:34213,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_open_vswitch_verify_system_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34183
      functionLinenumberEnd: 34185
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:34184,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_open_vswitch_verify_statistics
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34154
      functionLinenumberEnd: 34156
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:34155,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_open_vswitch_verify_ssl
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34125
      functionLinenumberEnd: 34127
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:34126,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_open_vswitch_verify_ovs_version
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34096
      functionLinenumberEnd: 34098
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:34097,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_open_vswitch_verify_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34067
      functionLinenumberEnd: 34069
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:34068,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_open_vswitch_verify_next_cfg
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34038
      functionLinenumberEnd: 34040
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:34039,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_open_vswitch_verify_manager_options
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34009
      functionLinenumberEnd: 34011
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:34010,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_open_vswitch_verify_iface_types
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33980
      functionLinenumberEnd: 33982
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33981,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_open_vswitch_verify_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33951
      functionLinenumberEnd: 33953
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33952,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_open_vswitch_verify_dpdk_version
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33922
      functionLinenumberEnd: 33924
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33923,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_open_vswitch_verify_dpdk_initialized
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33893
      functionLinenumberEnd: 33895
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33894,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_open_vswitch_verify_db_version
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33864
      functionLinenumberEnd: 33866
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33865,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_open_vswitch_verify_datapaths
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33835
      functionLinenumberEnd: 33837
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33836,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_open_vswitch_verify_datapath_types
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33806
      functionLinenumberEnd: 33808
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33807,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_open_vswitch_verify_cur_cfg
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33777
      functionLinenumberEnd: 33779
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33778,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_open_vswitch_verify_bridges
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33748
      functionLinenumberEnd: 33750
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33749,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_open_vswitch_is_updated
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33719
      functionLinenumberEnd: 33720
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_track_is_updated
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33720,12'
          Dst:             ovsdb_idl_track_is_updated
    - functionName:    ovsrec_open_vswitch_insert_persist_uuid
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33712
      functionLinenumberEnd: 33714
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_insert_persist_uuid
        - ovsrec_open_vswitch_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33713,37'
          Dst:             ovsdb_idl_txn_insert_persist_uuid
        - Src:             'lib/vswitch-idl.c:33713,12'
          Dst:             ovsrec_open_vswitch_cast
    - functionName:    ovsrec_open_vswitch_insert
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33700
      functionLinenumberEnd: 33701
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_insert
        - ovsrec_open_vswitch_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33701,37'
          Dst:             ovsdb_idl_txn_insert
        - Src:             'lib/vswitch-idl.c:33701,12'
          Dst:             ovsrec_open_vswitch_cast
    - functionName:    ovsrec_open_vswitch_delete
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33687
      functionLinenumberEnd: 33689
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33688,5'
          Dst:             ovsdb_idl_txn_delete
    - functionName:    ovsrec_open_vswitch_track_get_next
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33676
      functionLinenumberEnd: 33677
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_track_get_next
        - ovsrec_open_vswitch_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33677,37'
          Dst:             ovsdb_idl_track_get_next
        - Src:             'lib/vswitch-idl.c:33677,12'
          Dst:             ovsrec_open_vswitch_cast
    - functionName:    ovsrec_open_vswitch_row_get_seqno
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33664
      functionLinenumberEnd: 33665
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_row_get_seqno
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33665,12'
          Dst:             ovsdb_idl_row_get_seqno
    - functionName:    ovsrec_open_vswitch_get_seqno
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33659
      functionLinenumberEnd: 33660
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_table_get_seqno
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33660,12'
          Dst:             ovsdb_idl_table_get_seqno
    - functionName:    ovsrec_open_vswitch_next
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33654
      functionLinenumberEnd: 33655
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_next_row
        - ovsrec_open_vswitch_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33655,37'
          Dst:             ovsdb_idl_next_row
        - Src:             'lib/vswitch-idl.c:33655,12'
          Dst:             ovsrec_open_vswitch_cast
    - functionName:    ovsrec_open_vswitch_table_get_for_uuid
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33633
      functionLinenumberEnd: 33635
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_open_vswitch_get_for_uuid
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33635,12'
          Dst:             ovsrec_open_vswitch_get_for_uuid
    - functionName:    ovsrec_open_vswitch_get_for_uuid
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33625
      functionLinenumberEnd: 33626
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_get_row_for_uuid
        - ovsrec_open_vswitch_cast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33626,37'
          Dst:             ovsdb_idl_get_row_for_uuid
        - Src:             'lib/vswitch-idl.c:33626,12'
          Dst:             ovsrec_open_vswitch_cast
    - functionName:    ovsrec_open_vswitch_track_get_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33670
      functionLinenumberEnd: 33671
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_track_get_first
        - ovsrec_open_vswitch_cast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33671,37'
          Dst:             ovsdb_idl_track_get_first
        - Src:             'lib/vswitch-idl.c:33671,12'
          Dst:             ovsrec_open_vswitch_cast
    - functionName:    ovsrec_open_vswitch_table_track_get_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33254
      functionLinenumberEnd: 33256
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_open_vswitch_track_get_first
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33256,12'
          Dst:             ovsrec_open_vswitch_track_get_first
    - functionName:    ovsrec_open_vswitch_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33646
      functionLinenumberEnd: 33647
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_first_row
        - ovsrec_open_vswitch_cast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33647,37'
          Dst:             ovsdb_idl_first_row
        - Src:             'lib/vswitch-idl.c:33647,12'
          Dst:             ovsrec_open_vswitch_cast
    - functionName:    ovsrec_open_vswitch_table_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33246
      functionLinenumberEnd: 33248
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_open_vswitch_first
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33248,12'
          Dst:             ovsrec_open_vswitch_first
    - functionName:    ovsrec_open_vswitch_table_get
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33240
      functionLinenumberEnd: 33241
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_server_has_open_vswitch_table
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33233
      functionLinenumberEnd: 33234
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_table
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33234,12'
          Dst:             ovsdb_idl_server_has_table
    - functionName:    ovsrec_open_vswitch_system_version_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33226
      functionLinenumberEnd: 33227
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33227,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_open_vswitch_table_col_system_version
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33220
      functionLinenumberEnd: 33221
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33221,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_open_vswitch_system_type_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33213
      functionLinenumberEnd: 33214
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33214,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_open_vswitch_table_col_system_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33207
      functionLinenumberEnd: 33208
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33208,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_open_vswitch_statistics_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33200
      functionLinenumberEnd: 33201
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33201,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_open_vswitch_table_col_statistics
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33194
      functionLinenumberEnd: 33195
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33195,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_open_vswitch_ssl_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33187
      functionLinenumberEnd: 33188
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33188,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_open_vswitch_table_col_ssl
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33181
      functionLinenumberEnd: 33182
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33182,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_open_vswitch_ovs_version_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33174
      functionLinenumberEnd: 33175
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33175,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_open_vswitch_table_col_ovs_version
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33168
      functionLinenumberEnd: 33169
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33169,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_open_vswitch_other_config_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33161
      functionLinenumberEnd: 33162
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33162,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_open_vswitch_table_col_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33155
      functionLinenumberEnd: 33156
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33156,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_open_vswitch_next_cfg_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33148
      functionLinenumberEnd: 33149
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33149,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_open_vswitch_table_col_next_cfg
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33142
      functionLinenumberEnd: 33143
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33143,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_open_vswitch_manager_options_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33135
      functionLinenumberEnd: 33136
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33136,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_open_vswitch_table_col_manager_options
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33129
      functionLinenumberEnd: 33130
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33130,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_open_vswitch_iface_types_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33122
      functionLinenumberEnd: 33123
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33123,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_open_vswitch_table_col_iface_types
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33116
      functionLinenumberEnd: 33117
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33117,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_open_vswitch_external_ids_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33109
      functionLinenumberEnd: 33110
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33110,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_open_vswitch_table_col_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33103
      functionLinenumberEnd: 33104
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33104,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_open_vswitch_dpdk_version_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33096
      functionLinenumberEnd: 33097
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33097,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_open_vswitch_table_col_dpdk_version
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33090
      functionLinenumberEnd: 33091
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33091,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_open_vswitch_dpdk_initialized_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33083
      functionLinenumberEnd: 33084
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33084,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_open_vswitch_table_col_dpdk_initialized
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33077
      functionLinenumberEnd: 33078
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33078,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_open_vswitch_db_version_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33070
      functionLinenumberEnd: 33071
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33071,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_open_vswitch_table_col_db_version
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33064
      functionLinenumberEnd: 33065
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33065,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_open_vswitch_datapaths_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33057
      functionLinenumberEnd: 33058
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33058,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_open_vswitch_table_col_datapaths
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33051
      functionLinenumberEnd: 33052
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33052,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_open_vswitch_datapath_types_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33044
      functionLinenumberEnd: 33045
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33045,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_open_vswitch_table_col_datapath_types
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33038
      functionLinenumberEnd: 33039
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33039,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_open_vswitch_cur_cfg_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33031
      functionLinenumberEnd: 33032
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33032,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_open_vswitch_table_col_cur_cfg
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33025
      functionLinenumberEnd: 33026
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33026,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_open_vswitch_bridges_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33018
      functionLinenumberEnd: 33019
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33019,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_open_vswitch_table_col_bridges
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 33012
      functionLinenumberEnd: 33013
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:33013,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_netflow_set_condition
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32897
      functionLinenumberEnd: 32898
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_set_condition
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:32898,12'
          Dst:             ovsdb_idl_set_condition
    - functionName:    ovsrec_netflow_index_set_targets
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32877
      functionLinenumberEnd: 32891
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          77
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:32884,30'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:32887,27'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:32889,5'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:32890,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_netflow_index_set_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32841
      functionLinenumberEnd: 32868
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          127
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_first
        - hmap_next
        - ovsdb_atom_string_create
        - ovsdb_datum_init_empty
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - smap_count
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:32842,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:32848,20'
          Dst:             smap_count
        - Src:             'lib/vswitch-idl.c:32849,23'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:32850,25'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:32854,9'
          Dst:             hmap_first
        - Src:             'lib/vswitch-idl.c:32855,32'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:32856,34'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:32854,9'
          Dst:             hmap_next
        - Src:             'lib/vswitch-idl.c:32859,9'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:32861,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:32863,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_netflow_index_set_engine_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32816
      functionLinenumberEnd: 32833
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:32823,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:32832,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_netflow_index_set_engine_id
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32786
      functionLinenumberEnd: 32803
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:32793,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:32802,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_netflow_index_set_add_id_to_interface
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32762
      functionLinenumberEnd: 32773
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:32766,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:32772,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_netflow_index_set_active_timeout
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32743
      functionLinenumberEnd: 32754
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:32747,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:32753,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_netflow_cursor_data
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32730
      functionLinenumberEnd: 32731
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_cursor_data
        - ovsrec_netflow_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:32731,32'
          Dst:             ovsdb_idl_cursor_data
        - Src:             'lib/vswitch-idl.c:32731,12'
          Dst:             ovsrec_netflow_cast
    - functionName:    ovsrec_netflow_cursor_first_ge
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32723
      functionLinenumberEnd: 32725
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_cursor_first_ge
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:32724,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:32725,12'
          Dst:             ovsdb_idl_cursor_first_ge
    - functionName:    ovsrec_netflow_cursor_first_eq
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32715
      functionLinenumberEnd: 32717
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_cursor_first_eq
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:32716,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:32717,12'
          Dst:             ovsdb_idl_cursor_first_eq
    - functionName:    ovsrec_netflow_cursor_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32707
      functionLinenumberEnd: 32709
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_cursor_first
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:32708,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:32709,12'
          Dst:             ovsdb_idl_cursor_first
    - functionName:    ovsrec_netflow_index_compare
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32701
      functionLinenumberEnd: 32702
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_index_compare
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:32702,12'
          Dst:             ovsdb_idl_index_compare
    - functionName:    ovsrec_netflow_index_find
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32690
      functionLinenumberEnd: 32692
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_index_find
        - ovsrec_netflow_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:32691,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:32692,32'
          Dst:             ovsdb_idl_index_find
        - Src:             'lib/vswitch-idl.c:32692,12'
          Dst:             ovsrec_netflow_cast
    - functionName:    ovsrec_netflow_index_init_row
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32683
      functionLinenumberEnd: 32685
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_index_init_row
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:32684,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:32685,12'
          Dst:             ovsdb_idl_index_init_row
    - functionName:    ovsrec_netflow_index_destroy_row
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32675
      functionLinenumberEnd: 32677
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_index_destroy_row
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:32676,5'
          Dst:             ovsdb_idl_index_destroy_row
    - functionName:    ovsrec_netflow_add_clause_targets
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32652
      functionLinenumberEnd: 32668
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          80
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_destroy
        - ovsdb_datum_sort_unique
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:32657,30'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:32660,27'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:32662,5'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:32663,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:32667,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_netflow_add_clause_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32628
      functionLinenumberEnd: 32643
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_condition_add_clause
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:32632,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:32634,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:32637,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:32642,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_netflow_add_clause_engine_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32600
      functionLinenumberEnd: 32620
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:32606,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:32615,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:32619,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_netflow_add_clause_engine_id
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32567
      functionLinenumberEnd: 32587
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:32573,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:32582,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:32586,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_netflow_add_clause_add_id_to_interface
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32538
      functionLinenumberEnd: 32554
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          40
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:32543,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:32549,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:32553,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_netflow_add_clause_active_timeout
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32514
      functionLinenumberEnd: 32530
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:32519,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:32525,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:32529,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_netflow_update_targets_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32490
      functionLinenumberEnd: 32504
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:32493,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:32495,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:32499,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:32501,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_netflow_update_targets_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32468
      functionLinenumberEnd: 32482
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:32471,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:32473,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:32477,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:32479,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_netflow_update_external_ids_delkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32446
      functionLinenumberEnd: 32460
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:32449,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:32451,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:32455,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:32457,5'
          Dst:             ovsdb_idl_txn_delete_partial_map
    - functionName:    ovsrec_netflow_update_external_ids_setkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32423
      functionLinenumberEnd: 32438
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          62
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:32426,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:32428,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:32429,21'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:32432,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:32433,26'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:32435,5'
          Dst:             ovsdb_idl_txn_write_partial_map
    - functionName:    ovsrec_netflow_update_engine_type_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32401
      functionLinenumberEnd: 32415
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:32404,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:32406,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:32412,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_netflow_update_engine_type_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32379
      functionLinenumberEnd: 32393
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:32382,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:32384,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:32390,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_netflow_update_engine_id_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32357
      functionLinenumberEnd: 32371
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:32360,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:32362,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:32368,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_netflow_update_engine_id_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32335
      functionLinenumberEnd: 32349
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:32338,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:32340,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:32346,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_netflow_set_targets
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32315
      functionLinenumberEnd: 32327
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          76
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:32321,30'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:32324,27'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:32326,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_netflow_set_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32295
      functionLinenumberEnd: 32306
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_txn_write
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:32299,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:32301,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:32303,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_netflow_set_engine_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32271
      functionLinenumberEnd: 32287
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:32277,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:32286,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_netflow_set_engine_id
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32242
      functionLinenumberEnd: 32258
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:32248,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:32257,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_netflow_set_add_id_to_interface
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32217
      functionLinenumberEnd: 32229
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:32222,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:32228,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_netflow_set_active_timeout
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32197
      functionLinenumberEnd: 32209
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:32202,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:32208,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_netflow_get_targets
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32184
      functionLinenumberEnd: 32186
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:32185,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:32186,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_netflow_get_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32156
      functionLinenumberEnd: 32159
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:32157,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:32158,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:32159,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_netflow_get_engine_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32127
      functionLinenumberEnd: 32129
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:32128,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:32129,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_netflow_get_engine_id
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32100
      functionLinenumberEnd: 32102
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:32101,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:32102,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_netflow_get_add_id_to_interface
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32073
      functionLinenumberEnd: 32075
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:32074,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:32075,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_netflow_get_active_timeout
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32046
      functionLinenumberEnd: 32048
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:32047,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:32048,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_netflow_verify_targets
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 32020
      functionLinenumberEnd: 32022
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:32021,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_netflow_verify_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31991
      functionLinenumberEnd: 31993
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:31992,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_netflow_verify_engine_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31962
      functionLinenumberEnd: 31964
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:31963,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_netflow_verify_engine_id
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31933
      functionLinenumberEnd: 31935
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:31934,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_netflow_verify_add_id_to_interface
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31904
      functionLinenumberEnd: 31906
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:31905,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_netflow_verify_active_timeout
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31875
      functionLinenumberEnd: 31877
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:31876,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_netflow_is_updated
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31846
      functionLinenumberEnd: 31847
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_track_is_updated
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:31847,12'
          Dst:             ovsdb_idl_track_is_updated
    - functionName:    ovsrec_netflow_insert_persist_uuid
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31839
      functionLinenumberEnd: 31841
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_insert_persist_uuid
        - ovsrec_netflow_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:31840,32'
          Dst:             ovsdb_idl_txn_insert_persist_uuid
        - Src:             'lib/vswitch-idl.c:31840,12'
          Dst:             ovsrec_netflow_cast
    - functionName:    ovsrec_netflow_insert
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31827
      functionLinenumberEnd: 31828
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_insert
        - ovsrec_netflow_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:31828,32'
          Dst:             ovsdb_idl_txn_insert
        - Src:             'lib/vswitch-idl.c:31828,12'
          Dst:             ovsrec_netflow_cast
    - functionName:    ovsrec_netflow_delete
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31814
      functionLinenumberEnd: 31816
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:31815,5'
          Dst:             ovsdb_idl_txn_delete
    - functionName:    ovsrec_netflow_track_get_next
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31803
      functionLinenumberEnd: 31804
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_track_get_next
        - ovsrec_netflow_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:31804,32'
          Dst:             ovsdb_idl_track_get_next
        - Src:             'lib/vswitch-idl.c:31804,12'
          Dst:             ovsrec_netflow_cast
    - functionName:    ovsrec_netflow_row_get_seqno
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31791
      functionLinenumberEnd: 31792
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_row_get_seqno
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:31792,12'
          Dst:             ovsdb_idl_row_get_seqno
    - functionName:    ovsrec_netflow_get_seqno
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31786
      functionLinenumberEnd: 31787
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_table_get_seqno
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:31787,12'
          Dst:             ovsdb_idl_table_get_seqno
    - functionName:    ovsrec_netflow_next
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31781
      functionLinenumberEnd: 31782
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_next_row
        - ovsrec_netflow_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:31782,32'
          Dst:             ovsdb_idl_next_row
        - Src:             'lib/vswitch-idl.c:31782,12'
          Dst:             ovsrec_netflow_cast
    - functionName:    ovsrec_netflow_table_get_for_uuid
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31760
      functionLinenumberEnd: 31762
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_netflow_get_for_uuid
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:31762,12'
          Dst:             ovsrec_netflow_get_for_uuid
    - functionName:    ovsrec_netflow_get_for_uuid
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31752
      functionLinenumberEnd: 31753
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_get_row_for_uuid
        - ovsrec_netflow_cast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:31753,32'
          Dst:             ovsdb_idl_get_row_for_uuid
        - Src:             'lib/vswitch-idl.c:31753,12'
          Dst:             ovsrec_netflow_cast
    - functionName:    ovsrec_netflow_track_get_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31797
      functionLinenumberEnd: 31798
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_track_get_first
        - ovsrec_netflow_cast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:31798,32'
          Dst:             ovsdb_idl_track_get_first
        - Src:             'lib/vswitch-idl.c:31798,12'
          Dst:             ovsrec_netflow_cast
    - functionName:    ovsrec_netflow_table_track_get_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31605
      functionLinenumberEnd: 31607
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_netflow_track_get_first
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:31607,12'
          Dst:             ovsrec_netflow_track_get_first
    - functionName:    ovsrec_netflow_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31773
      functionLinenumberEnd: 31774
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_first_row
        - ovsrec_netflow_cast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:31774,32'
          Dst:             ovsdb_idl_first_row
        - Src:             'lib/vswitch-idl.c:31774,12'
          Dst:             ovsrec_netflow_cast
    - functionName:    ovsrec_netflow_table_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31597
      functionLinenumberEnd: 31599
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_netflow_first
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:31599,12'
          Dst:             ovsrec_netflow_first
    - functionName:    ovsrec_netflow_table_get
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31591
      functionLinenumberEnd: 31592
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_server_has_netflow_table
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31584
      functionLinenumberEnd: 31585
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_table
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:31585,12'
          Dst:             ovsdb_idl_server_has_table
    - functionName:    ovsrec_netflow_targets_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31577
      functionLinenumberEnd: 31578
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:31578,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_netflow_table_col_targets
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31571
      functionLinenumberEnd: 31572
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:31572,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_netflow_external_ids_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31564
      functionLinenumberEnd: 31565
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:31565,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_netflow_table_col_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31558
      functionLinenumberEnd: 31559
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:31559,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_netflow_engine_type_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31551
      functionLinenumberEnd: 31552
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:31552,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_netflow_table_col_engine_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31545
      functionLinenumberEnd: 31546
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:31546,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_netflow_engine_id_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31538
      functionLinenumberEnd: 31539
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:31539,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_netflow_table_col_engine_id
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31532
      functionLinenumberEnd: 31533
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:31533,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_netflow_add_id_to_interface_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31525
      functionLinenumberEnd: 31526
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:31526,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_netflow_table_col_add_id_to_interface
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31519
      functionLinenumberEnd: 31520
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:31520,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_netflow_active_timeout_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31512
      functionLinenumberEnd: 31513
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:31513,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_netflow_table_col_active_timeout
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31506
      functionLinenumberEnd: 31507
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:31507,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_mirror_set_condition
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31303
      functionLinenumberEnd: 31304
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_set_condition
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:31304,12'
          Dst:             ovsdb_idl_set_condition
    - functionName:    ovsrec_mirror_index_set_statistics
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31282
      functionLinenumberEnd: 31297
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          91
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:31289,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:31290,20'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:31292,27'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:31295,5'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:31296,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_mirror_index_set_snaplen
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31256
      functionLinenumberEnd: 31273
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:31263,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:31272,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_mirror_index_set_select_vlan
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31229
      functionLinenumberEnd: 31243
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          76
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:31236,34'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:31241,5'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:31242,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_mirror_index_set_select_src_port
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31205
      functionLinenumberEnd: 31219
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          78
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:31212,38'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:31217,5'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:31218,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_mirror_index_set_select_dst_port
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31183
      functionLinenumberEnd: 31197
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          78
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:31190,38'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:31195,5'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:31196,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_mirror_index_set_select_all
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31164
      functionLinenumberEnd: 31175
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:31168,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:31174,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_mirror_index_set_output_vlan
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31139
      functionLinenumberEnd: 31156
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:31146,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:31155,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_mirror_index_set_output_port
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31109
      functionLinenumberEnd: 31126
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:31116,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:31125,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_mirror_index_set_name
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31087
      functionLinenumberEnd: 31098
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:31091,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:31095,14'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:31097,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_mirror_index_set_filter
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31062
      functionLinenumberEnd: 31079
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:31069,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:31072,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:31078,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_mirror_index_set_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31023
      functionLinenumberEnd: 31050
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          127
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_first
        - hmap_next
        - ovsdb_atom_string_create
        - ovsdb_datum_init_empty
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - smap_count
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:31024,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:31030,20'
          Dst:             smap_count
        - Src:             'lib/vswitch-idl.c:31031,23'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:31032,25'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:31036,9'
          Dst:             hmap_first
        - Src:             'lib/vswitch-idl.c:31037,32'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:31038,34'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:31036,9'
          Dst:             hmap_next
        - Src:             'lib/vswitch-idl.c:31041,9'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:31043,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:31045,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_mirror_cursor_data
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31012
      functionLinenumberEnd: 31013
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_cursor_data
        - ovsrec_mirror_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:31013,31'
          Dst:             ovsdb_idl_cursor_data
        - Src:             'lib/vswitch-idl.c:31013,12'
          Dst:             ovsrec_mirror_cast
    - functionName:    ovsrec_mirror_cursor_first_ge
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 31005
      functionLinenumberEnd: 31007
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_cursor_first_ge
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:31006,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:31007,12'
          Dst:             ovsdb_idl_cursor_first_ge
    - functionName:    ovsrec_mirror_cursor_first_eq
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30997
      functionLinenumberEnd: 30999
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_cursor_first_eq
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:30998,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:30999,12'
          Dst:             ovsdb_idl_cursor_first_eq
    - functionName:    ovsrec_mirror_cursor_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30989
      functionLinenumberEnd: 30991
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_cursor_first
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:30990,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:30991,12'
          Dst:             ovsdb_idl_cursor_first
    - functionName:    ovsrec_mirror_index_compare
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30983
      functionLinenumberEnd: 30984
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_index_compare
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:30984,12'
          Dst:             ovsdb_idl_index_compare
    - functionName:    ovsrec_mirror_index_find
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30972
      functionLinenumberEnd: 30974
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_index_find
        - ovsrec_mirror_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:30973,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:30974,31'
          Dst:             ovsdb_idl_index_find
        - Src:             'lib/vswitch-idl.c:30974,12'
          Dst:             ovsrec_mirror_cast
    - functionName:    ovsrec_mirror_index_init_row
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30965
      functionLinenumberEnd: 30967
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_index_init_row
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:30966,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:30967,12'
          Dst:             ovsdb_idl_index_init_row
    - functionName:    ovsrec_mirror_index_destroy_row
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30957
      functionLinenumberEnd: 30959
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_index_destroy_row
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:30958,5'
          Dst:             ovsdb_idl_index_destroy_row
    - functionName:    ovsrec_mirror_add_clause_statistics
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30933
      functionLinenumberEnd: 30950
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          94
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_destroy
        - ovsdb_datum_sort_unique
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:30938,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:30939,20'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:30941,27'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:30944,5'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:30945,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:30949,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_mirror_add_clause_snaplen
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30904
      functionLinenumberEnd: 30924
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:30910,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:30919,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:30923,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_mirror_add_clause_select_vlan
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30875
      functionLinenumberEnd: 30891
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          79
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_datum_sort_unique
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:30880,34'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:30885,5'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:30886,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:30890,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_mirror_add_clause_select_src_port
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30849
      functionLinenumberEnd: 30865
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          79
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_datum_sort_unique
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:30854,38'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:30859,5'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:30860,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:30864,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_mirror_add_clause_select_dst_port
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30825
      functionLinenumberEnd: 30841
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          79
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_datum_sort_unique
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:30830,38'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:30835,5'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:30836,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:30840,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_mirror_add_clause_select_all
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30801
      functionLinenumberEnd: 30817
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          40
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:30806,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:30812,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:30816,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_mirror_add_clause_output_vlan
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30773
      functionLinenumberEnd: 30793
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:30779,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:30788,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:30792,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_mirror_add_clause_output_port
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30740
      functionLinenumberEnd: 30760
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:30746,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:30755,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:30759,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_mirror_add_clause_name
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30713
      functionLinenumberEnd: 30729
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          38
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:30718,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:30722,14'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:30724,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:30728,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_mirror_add_clause_filter
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30685
      functionLinenumberEnd: 30705
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:30691,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:30694,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:30700,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:30704,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_mirror_add_clause_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30658
      functionLinenumberEnd: 30673
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_condition_add_clause
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:30662,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:30664,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:30667,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:30672,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_mirror_update_statistics_delkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30636
      functionLinenumberEnd: 30650
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:30639,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:30641,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:30645,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:30647,5'
          Dst:             ovsdb_idl_txn_delete_partial_map
    - functionName:    ovsrec_mirror_update_statistics_setkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30613
      functionLinenumberEnd: 30628
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          61
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:30616,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:30618,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:30619,21'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:30622,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:30625,5'
          Dst:             ovsdb_idl_txn_write_partial_map
    - functionName:    ovsrec_mirror_update_snaplen_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30591
      functionLinenumberEnd: 30605
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:30594,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:30596,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:30602,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_mirror_update_snaplen_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30569
      functionLinenumberEnd: 30583
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:30572,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:30574,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:30580,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_mirror_update_select_vlan_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30547
      functionLinenumberEnd: 30561
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:30550,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:30552,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:30558,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_mirror_update_select_vlan_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30525
      functionLinenumberEnd: 30539
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:30528,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:30530,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:30536,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_mirror_update_select_src_port_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30503
      functionLinenumberEnd: 30517
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          48
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:30506,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:30508,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:30514,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_mirror_update_select_src_port_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30481
      functionLinenumberEnd: 30495
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          48
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:30484,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:30486,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:30492,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_mirror_update_select_dst_port_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30459
      functionLinenumberEnd: 30473
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          48
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:30462,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:30464,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:30470,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_mirror_update_select_dst_port_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30437
      functionLinenumberEnd: 30451
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          48
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:30440,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:30442,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:30448,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_mirror_update_output_vlan_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30415
      functionLinenumberEnd: 30429
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:30418,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:30420,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:30426,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_mirror_update_output_vlan_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30393
      functionLinenumberEnd: 30407
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:30396,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:30398,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:30404,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_mirror_update_output_port_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30371
      functionLinenumberEnd: 30385
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          48
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:30374,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:30376,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:30382,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_mirror_update_output_port_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30349
      functionLinenumberEnd: 30363
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          48
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:30352,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:30354,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:30360,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_mirror_update_filter_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30327
      functionLinenumberEnd: 30341
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:30330,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:30332,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:30336,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:30338,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_mirror_update_filter_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30305
      functionLinenumberEnd: 30319
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:30308,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:30310,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:30314,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:30316,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_mirror_update_external_ids_delkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30283
      functionLinenumberEnd: 30297
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:30286,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:30288,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:30292,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:30294,5'
          Dst:             ovsdb_idl_txn_delete_partial_map
    - functionName:    ovsrec_mirror_update_external_ids_setkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30260
      functionLinenumberEnd: 30275
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          62
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:30263,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:30265,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:30266,21'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:30269,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:30270,26'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:30272,5'
          Dst:             ovsdb_idl_txn_write_partial_map
    - functionName:    ovsrec_mirror_set_statistics
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30239
      functionLinenumberEnd: 30252
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          90
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:30245,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:30246,20'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:30248,27'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:30251,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_mirror_set_snaplen
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30214
      functionLinenumberEnd: 30230
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:30220,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:30229,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_mirror_set_select_vlan
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30189
      functionLinenumberEnd: 30201
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          75
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:30195,34'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:30200,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_mirror_set_select_src_port
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30167
      functionLinenumberEnd: 30179
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          77
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:30173,38'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:30178,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_mirror_set_select_dst_port
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30147
      functionLinenumberEnd: 30159
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          77
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:30153,38'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:30158,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_mirror_set_select_all
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30127
      functionLinenumberEnd: 30139
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:30132,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:30138,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_mirror_set_output_vlan
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30103
      functionLinenumberEnd: 30119
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:30109,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:30118,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_mirror_set_output_port
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30074
      functionLinenumberEnd: 30090
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:30080,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:30089,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_mirror_set_name
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30051
      functionLinenumberEnd: 30063
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:30056,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:30060,14'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:30062,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_mirror_set_filter
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30027
      functionLinenumberEnd: 30043
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:30033,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:30036,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:30042,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_mirror_set_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 30004
      functionLinenumberEnd: 30015
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_txn_write
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:30008,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:30010,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:30012,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_mirror_get_statistics
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29992
      functionLinenumberEnd: 29995
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:29993,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:29994,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:29995,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_mirror_get_snaplen
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29963
      functionLinenumberEnd: 29965
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:29964,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:29965,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_mirror_get_select_vlan
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29936
      functionLinenumberEnd: 29938
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:29937,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:29938,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_mirror_get_select_src_port
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29909
      functionLinenumberEnd: 29911
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:29910,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:29911,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_mirror_get_select_dst_port
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29882
      functionLinenumberEnd: 29884
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:29883,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:29884,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_mirror_get_select_all
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29855
      functionLinenumberEnd: 29857
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:29856,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:29857,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_mirror_get_output_vlan
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29828
      functionLinenumberEnd: 29830
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:29829,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:29830,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_mirror_get_output_port
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29801
      functionLinenumberEnd: 29803
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:29802,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:29803,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_mirror_get_name
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29774
      functionLinenumberEnd: 29776
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:29775,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:29776,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_mirror_get_filter
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29747
      functionLinenumberEnd: 29749
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:29748,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:29749,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_mirror_get_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29719
      functionLinenumberEnd: 29722
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:29720,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:29721,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:29722,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_mirror_verify_statistics
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29691
      functionLinenumberEnd: 29693
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:29692,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_mirror_verify_snaplen
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29662
      functionLinenumberEnd: 29664
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:29663,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_mirror_verify_select_vlan
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29633
      functionLinenumberEnd: 29635
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:29634,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_mirror_verify_select_src_port
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29604
      functionLinenumberEnd: 29606
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:29605,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_mirror_verify_select_dst_port
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29575
      functionLinenumberEnd: 29577
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:29576,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_mirror_verify_select_all
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29546
      functionLinenumberEnd: 29548
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:29547,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_mirror_verify_output_vlan
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29517
      functionLinenumberEnd: 29519
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:29518,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_mirror_verify_output_port
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29488
      functionLinenumberEnd: 29490
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:29489,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_mirror_verify_name
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29459
      functionLinenumberEnd: 29461
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:29460,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_mirror_verify_filter
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29430
      functionLinenumberEnd: 29432
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:29431,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_mirror_verify_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29401
      functionLinenumberEnd: 29403
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:29402,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_mirror_is_updated
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29372
      functionLinenumberEnd: 29373
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_track_is_updated
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:29373,12'
          Dst:             ovsdb_idl_track_is_updated
    - functionName:    ovsrec_mirror_insert_persist_uuid
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29365
      functionLinenumberEnd: 29367
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_insert_persist_uuid
        - ovsrec_mirror_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:29366,31'
          Dst:             ovsdb_idl_txn_insert_persist_uuid
        - Src:             'lib/vswitch-idl.c:29366,12'
          Dst:             ovsrec_mirror_cast
    - functionName:    ovsrec_mirror_insert
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29353
      functionLinenumberEnd: 29354
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_insert
        - ovsrec_mirror_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:29354,31'
          Dst:             ovsdb_idl_txn_insert
        - Src:             'lib/vswitch-idl.c:29354,12'
          Dst:             ovsrec_mirror_cast
    - functionName:    ovsrec_mirror_delete
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29340
      functionLinenumberEnd: 29342
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:29341,5'
          Dst:             ovsdb_idl_txn_delete
    - functionName:    ovsrec_mirror_track_get_next
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29329
      functionLinenumberEnd: 29330
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_track_get_next
        - ovsrec_mirror_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:29330,31'
          Dst:             ovsdb_idl_track_get_next
        - Src:             'lib/vswitch-idl.c:29330,12'
          Dst:             ovsrec_mirror_cast
    - functionName:    ovsrec_mirror_row_get_seqno
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29317
      functionLinenumberEnd: 29318
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_row_get_seqno
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:29318,12'
          Dst:             ovsdb_idl_row_get_seqno
    - functionName:    ovsrec_mirror_get_seqno
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29312
      functionLinenumberEnd: 29313
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_table_get_seqno
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:29313,12'
          Dst:             ovsdb_idl_table_get_seqno
    - functionName:    ovsrec_mirror_next
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29307
      functionLinenumberEnd: 29308
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_next_row
        - ovsrec_mirror_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:29308,31'
          Dst:             ovsdb_idl_next_row
        - Src:             'lib/vswitch-idl.c:29308,12'
          Dst:             ovsrec_mirror_cast
    - functionName:    ovsrec_mirror_table_get_for_uuid
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29286
      functionLinenumberEnd: 29288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_mirror_get_for_uuid
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:29288,12'
          Dst:             ovsrec_mirror_get_for_uuid
    - functionName:    ovsrec_mirror_get_for_uuid
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29278
      functionLinenumberEnd: 29279
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_get_row_for_uuid
        - ovsrec_mirror_cast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:29279,31'
          Dst:             ovsdb_idl_get_row_for_uuid
        - Src:             'lib/vswitch-idl.c:29279,12'
          Dst:             ovsrec_mirror_cast
    - functionName:    ovsrec_mirror_track_get_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29323
      functionLinenumberEnd: 29324
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_track_get_first
        - ovsrec_mirror_cast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:29324,31'
          Dst:             ovsdb_idl_track_get_first
        - Src:             'lib/vswitch-idl.c:29324,12'
          Dst:             ovsrec_mirror_cast
    - functionName:    ovsrec_mirror_table_track_get_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29015
      functionLinenumberEnd: 29017
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_mirror_track_get_first
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:29017,12'
          Dst:             ovsrec_mirror_track_get_first
    - functionName:    ovsrec_mirror_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29299
      functionLinenumberEnd: 29300
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_first_row
        - ovsrec_mirror_cast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:29300,31'
          Dst:             ovsdb_idl_first_row
        - Src:             'lib/vswitch-idl.c:29300,12'
          Dst:             ovsrec_mirror_cast
    - functionName:    ovsrec_mirror_table_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29007
      functionLinenumberEnd: 29009
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_mirror_first
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:29009,12'
          Dst:             ovsrec_mirror_first
    - functionName:    ovsrec_mirror_table_get
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 29001
      functionLinenumberEnd: 29002
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_server_has_mirror_table
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28994
      functionLinenumberEnd: 28995
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_table
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:28995,12'
          Dst:             ovsdb_idl_server_has_table
    - functionName:    ovsrec_mirror_statistics_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28987
      functionLinenumberEnd: 28988
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:28988,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_mirror_table_col_statistics
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28981
      functionLinenumberEnd: 28982
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:28982,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_mirror_snaplen_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28974
      functionLinenumberEnd: 28975
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:28975,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_mirror_table_col_snaplen
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28968
      functionLinenumberEnd: 28969
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:28969,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_mirror_select_vlan_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28961
      functionLinenumberEnd: 28962
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:28962,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_mirror_table_col_select_vlan
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28955
      functionLinenumberEnd: 28956
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:28956,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_mirror_select_src_port_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28948
      functionLinenumberEnd: 28949
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:28949,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_mirror_table_col_select_src_port
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28942
      functionLinenumberEnd: 28943
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:28943,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_mirror_select_dst_port_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28935
      functionLinenumberEnd: 28936
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:28936,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_mirror_table_col_select_dst_port
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28929
      functionLinenumberEnd: 28930
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:28930,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_mirror_select_all_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28922
      functionLinenumberEnd: 28923
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:28923,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_mirror_table_col_select_all
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28916
      functionLinenumberEnd: 28917
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:28917,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_mirror_output_vlan_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28909
      functionLinenumberEnd: 28910
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:28910,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_mirror_table_col_output_vlan
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28903
      functionLinenumberEnd: 28904
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:28904,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_mirror_output_port_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28896
      functionLinenumberEnd: 28897
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:28897,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_mirror_table_col_output_port
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28890
      functionLinenumberEnd: 28891
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:28891,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_mirror_name_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28883
      functionLinenumberEnd: 28884
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:28884,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_mirror_table_col_name
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28877
      functionLinenumberEnd: 28878
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:28878,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_mirror_filter_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28870
      functionLinenumberEnd: 28871
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:28871,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_mirror_table_col_filter
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28864
      functionLinenumberEnd: 28865
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:28865,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_mirror_external_ids_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28857
      functionLinenumberEnd: 28858
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:28858,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_mirror_table_col_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28851
      functionLinenumberEnd: 28852
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:28852,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_manager_set_condition
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28683
      functionLinenumberEnd: 28684
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_set_condition
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:28684,12'
          Dst:             ovsdb_idl_set_condition
    - functionName:    ovsrec_manager_index_set_target
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28666
      functionLinenumberEnd: 28677
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:28670,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:28674,14'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:28676,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_manager_index_set_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28630
      functionLinenumberEnd: 28657
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          127
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_first
        - hmap_next
        - ovsdb_atom_string_create
        - ovsdb_datum_init_empty
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - smap_count
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:28631,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:28637,20'
          Dst:             smap_count
        - Src:             'lib/vswitch-idl.c:28638,23'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:28639,25'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:28643,9'
          Dst:             hmap_first
        - Src:             'lib/vswitch-idl.c:28644,32'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:28645,34'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:28643,9'
          Dst:             hmap_next
        - Src:             'lib/vswitch-idl.c:28648,9'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:28650,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:28652,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_manager_index_set_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28594
      functionLinenumberEnd: 28621
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          127
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_first
        - hmap_next
        - ovsdb_atom_string_create
        - ovsdb_datum_init_empty
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - smap_count
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:28595,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:28601,20'
          Dst:             smap_count
        - Src:             'lib/vswitch-idl.c:28602,23'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:28603,25'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:28607,9'
          Dst:             hmap_first
        - Src:             'lib/vswitch-idl.c:28608,32'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:28609,34'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:28607,9'
          Dst:             hmap_next
        - Src:             'lib/vswitch-idl.c:28612,9'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:28614,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:28616,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_manager_index_set_max_backoff
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28569
      functionLinenumberEnd: 28586
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:28576,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:28585,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_manager_index_set_is_connected
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28545
      functionLinenumberEnd: 28556
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:28549,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:28555,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_manager_index_set_inactivity_probe
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28520
      functionLinenumberEnd: 28537
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:28527,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:28536,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_manager_index_set_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28481
      functionLinenumberEnd: 28508
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          127
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_first
        - hmap_next
        - ovsdb_atom_string_create
        - ovsdb_datum_init_empty
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - smap_count
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:28482,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:28488,20'
          Dst:             smap_count
        - Src:             'lib/vswitch-idl.c:28489,23'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:28490,25'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:28494,9'
          Dst:             hmap_first
        - Src:             'lib/vswitch-idl.c:28495,32'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:28496,34'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:28494,9'
          Dst:             hmap_next
        - Src:             'lib/vswitch-idl.c:28499,9'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:28501,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:28503,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_manager_index_set_connection_mode
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28456
      functionLinenumberEnd: 28473
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:28463,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:28466,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:28472,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_manager_cursor_data
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28440
      functionLinenumberEnd: 28441
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_cursor_data
        - ovsrec_manager_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:28441,32'
          Dst:             ovsdb_idl_cursor_data
        - Src:             'lib/vswitch-idl.c:28441,12'
          Dst:             ovsrec_manager_cast
    - functionName:    ovsrec_manager_cursor_first_ge
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28433
      functionLinenumberEnd: 28435
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_cursor_first_ge
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:28434,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:28435,12'
          Dst:             ovsdb_idl_cursor_first_ge
    - functionName:    ovsrec_manager_cursor_first_eq
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28425
      functionLinenumberEnd: 28427
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_cursor_first_eq
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:28426,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:28427,12'
          Dst:             ovsdb_idl_cursor_first_eq
    - functionName:    ovsrec_manager_cursor_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28417
      functionLinenumberEnd: 28419
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_cursor_first
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:28418,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:28419,12'
          Dst:             ovsdb_idl_cursor_first
    - functionName:    ovsrec_manager_index_compare
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28411
      functionLinenumberEnd: 28412
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_index_compare
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:28412,12'
          Dst:             ovsdb_idl_index_compare
    - functionName:    ovsrec_manager_index_find
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28400
      functionLinenumberEnd: 28402
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_index_find
        - ovsrec_manager_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:28401,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:28402,32'
          Dst:             ovsdb_idl_index_find
        - Src:             'lib/vswitch-idl.c:28402,12'
          Dst:             ovsrec_manager_cast
    - functionName:    ovsrec_manager_index_init_row
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28393
      functionLinenumberEnd: 28395
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_index_init_row
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:28394,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:28395,12'
          Dst:             ovsdb_idl_index_init_row
    - functionName:    ovsrec_manager_index_destroy_row
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28385
      functionLinenumberEnd: 28387
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_index_destroy_row
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:28386,5'
          Dst:             ovsdb_idl_index_destroy_row
    - functionName:    ovsrec_manager_add_clause_target
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28362
      functionLinenumberEnd: 28378
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          38
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:28367,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:28371,14'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:28373,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:28377,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_manager_add_clause_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28338
      functionLinenumberEnd: 28353
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_condition_add_clause
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:28342,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:28344,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:28347,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:28352,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_manager_add_clause_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28314
      functionLinenumberEnd: 28329
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_condition_add_clause
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:28318,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:28320,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:28323,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:28328,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_manager_add_clause_max_backoff
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28286
      functionLinenumberEnd: 28306
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:28292,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:28301,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:28305,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_manager_add_clause_is_connected
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28257
      functionLinenumberEnd: 28273
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          40
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:28262,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:28268,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:28272,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_manager_add_clause_inactivity_probe
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28229
      functionLinenumberEnd: 28249
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:28235,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:28244,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:28248,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_manager_add_clause_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28202
      functionLinenumberEnd: 28217
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_condition_add_clause
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:28206,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:28208,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:28211,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:28216,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_manager_add_clause_connection_mode
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28174
      functionLinenumberEnd: 28194
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:28180,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:28183,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:28189,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:28193,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_manager_update_status_delkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28147
      functionLinenumberEnd: 28161
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:28150,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:28152,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:28156,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:28158,5'
          Dst:             ovsdb_idl_txn_delete_partial_map
    - functionName:    ovsrec_manager_update_status_setkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28124
      functionLinenumberEnd: 28139
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          62
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:28127,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:28129,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:28130,21'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:28133,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:28134,26'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:28136,5'
          Dst:             ovsdb_idl_txn_write_partial_map
    - functionName:    ovsrec_manager_update_other_config_delkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28102
      functionLinenumberEnd: 28116
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:28105,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:28107,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:28111,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:28113,5'
          Dst:             ovsdb_idl_txn_delete_partial_map
    - functionName:    ovsrec_manager_update_other_config_setkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28079
      functionLinenumberEnd: 28094
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          62
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:28082,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:28084,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:28085,21'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:28088,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:28089,26'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:28091,5'
          Dst:             ovsdb_idl_txn_write_partial_map
    - functionName:    ovsrec_manager_update_max_backoff_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28057
      functionLinenumberEnd: 28071
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:28060,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:28062,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:28068,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_manager_update_max_backoff_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28035
      functionLinenumberEnd: 28049
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:28038,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:28040,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:28046,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_manager_update_inactivity_probe_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28013
      functionLinenumberEnd: 28027
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:28016,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:28018,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:28024,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_manager_update_inactivity_probe_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27991
      functionLinenumberEnd: 28005
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:27994,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:27996,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:28002,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_manager_update_external_ids_delkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27969
      functionLinenumberEnd: 27983
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:27972,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:27974,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:27978,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:27980,5'
          Dst:             ovsdb_idl_txn_delete_partial_map
    - functionName:    ovsrec_manager_update_external_ids_setkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27946
      functionLinenumberEnd: 27961
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          62
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:27949,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:27951,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:27952,21'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:27955,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:27956,26'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:27958,5'
          Dst:             ovsdb_idl_txn_write_partial_map
    - functionName:    ovsrec_manager_update_connection_mode_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27924
      functionLinenumberEnd: 27938
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:27927,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:27929,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:27933,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:27935,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_manager_update_connection_mode_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27902
      functionLinenumberEnd: 27916
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:27905,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:27907,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:27911,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:27913,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_manager_set_target
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27882
      functionLinenumberEnd: 27894
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:27887,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:27891,14'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:27893,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_manager_set_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27862
      functionLinenumberEnd: 27873
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_txn_write
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:27866,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:27868,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:27870,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_manager_set_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27842
      functionLinenumberEnd: 27853
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_txn_write
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:27846,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:27848,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:27850,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_manager_set_max_backoff
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27818
      functionLinenumberEnd: 27834
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:27824,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:27833,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_manager_set_is_connected
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27793
      functionLinenumberEnd: 27805
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:27798,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:27804,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_manager_set_inactivity_probe
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27769
      functionLinenumberEnd: 27785
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:27775,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:27784,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_manager_set_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27746
      functionLinenumberEnd: 27757
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_txn_write
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:27750,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:27752,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:27754,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_manager_set_connection_mode
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27722
      functionLinenumberEnd: 27738
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:27728,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:27731,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:27737,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_manager_get_target
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27706
      functionLinenumberEnd: 27708
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:27707,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:27708,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_manager_get_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27678
      functionLinenumberEnd: 27681
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:27679,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:27680,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:27681,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_manager_get_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27648
      functionLinenumberEnd: 27651
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:27649,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:27650,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:27651,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_manager_get_max_backoff
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27619
      functionLinenumberEnd: 27621
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:27620,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:27621,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_manager_get_is_connected
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27592
      functionLinenumberEnd: 27594
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:27593,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:27594,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_manager_get_inactivity_probe
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27565
      functionLinenumberEnd: 27567
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:27566,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:27567,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_manager_get_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27537
      functionLinenumberEnd: 27540
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:27538,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:27539,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:27540,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_manager_get_connection_mode
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27508
      functionLinenumberEnd: 27510
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:27509,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:27510,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_manager_verify_target
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27482
      functionLinenumberEnd: 27484
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:27483,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_manager_verify_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27453
      functionLinenumberEnd: 27455
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:27454,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_manager_verify_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27424
      functionLinenumberEnd: 27426
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:27425,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_manager_verify_max_backoff
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27395
      functionLinenumberEnd: 27397
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:27396,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_manager_verify_is_connected
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27366
      functionLinenumberEnd: 27368
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:27367,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_manager_verify_inactivity_probe
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27337
      functionLinenumberEnd: 27339
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:27338,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_manager_verify_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27308
      functionLinenumberEnd: 27310
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:27309,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_manager_verify_connection_mode
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27279
      functionLinenumberEnd: 27281
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:27280,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_manager_is_updated
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27250
      functionLinenumberEnd: 27251
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_track_is_updated
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:27251,12'
          Dst:             ovsdb_idl_track_is_updated
    - functionName:    ovsrec_manager_insert_persist_uuid
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27243
      functionLinenumberEnd: 27245
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_insert_persist_uuid
        - ovsrec_manager_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:27244,32'
          Dst:             ovsdb_idl_txn_insert_persist_uuid
        - Src:             'lib/vswitch-idl.c:27244,12'
          Dst:             ovsrec_manager_cast
    - functionName:    ovsrec_manager_insert
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27231
      functionLinenumberEnd: 27232
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_insert
        - ovsrec_manager_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:27232,32'
          Dst:             ovsdb_idl_txn_insert
        - Src:             'lib/vswitch-idl.c:27232,12'
          Dst:             ovsrec_manager_cast
    - functionName:    ovsrec_manager_delete
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27218
      functionLinenumberEnd: 27220
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:27219,5'
          Dst:             ovsdb_idl_txn_delete
    - functionName:    ovsrec_manager_track_get_next
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27207
      functionLinenumberEnd: 27208
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_track_get_next
        - ovsrec_manager_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:27208,32'
          Dst:             ovsdb_idl_track_get_next
        - Src:             'lib/vswitch-idl.c:27208,12'
          Dst:             ovsrec_manager_cast
    - functionName:    ovsrec_manager_row_get_seqno
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27195
      functionLinenumberEnd: 27196
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_row_get_seqno
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:27196,12'
          Dst:             ovsdb_idl_row_get_seqno
    - functionName:    ovsrec_manager_get_seqno
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27190
      functionLinenumberEnd: 27191
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_table_get_seqno
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:27191,12'
          Dst:             ovsdb_idl_table_get_seqno
    - functionName:    ovsrec_manager_next
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27185
      functionLinenumberEnd: 27186
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_next_row
        - ovsrec_manager_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:27186,32'
          Dst:             ovsdb_idl_next_row
        - Src:             'lib/vswitch-idl.c:27186,12'
          Dst:             ovsrec_manager_cast
    - functionName:    ovsrec_manager_table_get_for_uuid
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27164
      functionLinenumberEnd: 27166
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_manager_get_for_uuid
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:27166,12'
          Dst:             ovsrec_manager_get_for_uuid
    - functionName:    ovsrec_manager_get_for_uuid
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27156
      functionLinenumberEnd: 27157
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_get_row_for_uuid
        - ovsrec_manager_cast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:27157,32'
          Dst:             ovsdb_idl_get_row_for_uuid
        - Src:             'lib/vswitch-idl.c:27157,12'
          Dst:             ovsrec_manager_cast
    - functionName:    ovsrec_manager_track_get_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27201
      functionLinenumberEnd: 27202
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_track_get_first
        - ovsrec_manager_cast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:27202,32'
          Dst:             ovsdb_idl_track_get_first
        - Src:             'lib/vswitch-idl.c:27202,12'
          Dst:             ovsrec_manager_cast
    - functionName:    ovsrec_manager_table_track_get_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26972
      functionLinenumberEnd: 26974
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_manager_track_get_first
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:26974,12'
          Dst:             ovsrec_manager_track_get_first
    - functionName:    ovsrec_manager_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27177
      functionLinenumberEnd: 27178
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_first_row
        - ovsrec_manager_cast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:27178,32'
          Dst:             ovsdb_idl_first_row
        - Src:             'lib/vswitch-idl.c:27178,12'
          Dst:             ovsrec_manager_cast
    - functionName:    ovsrec_manager_table_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26964
      functionLinenumberEnd: 26966
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_manager_first
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:26966,12'
          Dst:             ovsrec_manager_first
    - functionName:    ovsrec_manager_table_get
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26958
      functionLinenumberEnd: 26959
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_server_has_manager_table
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26951
      functionLinenumberEnd: 26952
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_table
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:26952,12'
          Dst:             ovsdb_idl_server_has_table
    - functionName:    ovsrec_manager_target_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26944
      functionLinenumberEnd: 26945
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:26945,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_manager_table_col_target
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26938
      functionLinenumberEnd: 26939
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:26939,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_manager_status_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26931
      functionLinenumberEnd: 26932
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:26932,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_manager_table_col_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26925
      functionLinenumberEnd: 26926
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:26926,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_manager_other_config_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26918
      functionLinenumberEnd: 26919
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:26919,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_manager_table_col_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26912
      functionLinenumberEnd: 26913
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:26913,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_manager_max_backoff_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26905
      functionLinenumberEnd: 26906
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:26906,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_manager_table_col_max_backoff
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26899
      functionLinenumberEnd: 26900
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:26900,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_manager_is_connected_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26892
      functionLinenumberEnd: 26893
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:26893,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_manager_table_col_is_connected
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26886
      functionLinenumberEnd: 26887
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:26887,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_manager_inactivity_probe_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26879
      functionLinenumberEnd: 26880
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:26880,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_manager_table_col_inactivity_probe
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26873
      functionLinenumberEnd: 26874
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:26874,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_manager_external_ids_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26866
      functionLinenumberEnd: 26867
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:26867,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_manager_table_col_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26860
      functionLinenumberEnd: 26861
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:26861,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_manager_connection_mode_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26853
      functionLinenumberEnd: 26854
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:26854,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_manager_table_col_connection_mode
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26847
      functionLinenumberEnd: 26848
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:26848,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_interface_set_condition
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26167
      functionLinenumberEnd: 26168
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_set_condition
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:26168,12'
          Dst:             ovsdb_idl_set_condition
    - functionName:    ovsrec_interface_index_set_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26150
      functionLinenumberEnd: 26161
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:26154,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:26158,14'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:26160,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_interface_index_set_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26114
      functionLinenumberEnd: 26141
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          127
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_first
        - hmap_next
        - ovsdb_atom_string_create
        - ovsdb_datum_init_empty
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - smap_count
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:26115,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:26121,20'
          Dst:             smap_count
        - Src:             'lib/vswitch-idl.c:26122,23'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:26123,25'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:26127,9'
          Dst:             hmap_first
        - Src:             'lib/vswitch-idl.c:26128,32'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:26129,34'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:26127,9'
          Dst:             hmap_next
        - Src:             'lib/vswitch-idl.c:26132,9'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:26134,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:26136,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_interface_index_set_statistics
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26091
      functionLinenumberEnd: 26106
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          91
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:26098,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:26099,20'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:26101,27'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:26104,5'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:26105,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_interface_index_set_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26054
      functionLinenumberEnd: 26081
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          127
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_first
        - hmap_next
        - ovsdb_atom_string_create
        - ovsdb_datum_init_empty
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - smap_count
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:26055,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:26061,20'
          Dst:             smap_count
        - Src:             'lib/vswitch-idl.c:26062,23'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:26063,25'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:26067,9'
          Dst:             hmap_first
        - Src:             'lib/vswitch-idl.c:26068,32'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:26069,34'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:26067,9'
          Dst:             hmap_next
        - Src:             'lib/vswitch-idl.c:26072,9'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:26074,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:26076,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_interface_index_set_options
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 26018
      functionLinenumberEnd: 26045
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          127
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_first
        - hmap_next
        - ovsdb_atom_string_create
        - ovsdb_datum_init_empty
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - smap_count
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:26019,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:26025,20'
          Dst:             smap_count
        - Src:             'lib/vswitch-idl.c:26026,23'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:26027,25'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:26031,9'
          Dst:             hmap_first
        - Src:             'lib/vswitch-idl.c:26032,32'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:26033,34'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:26031,9'
          Dst:             hmap_next
        - Src:             'lib/vswitch-idl.c:26036,9'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:26038,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:26040,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_interface_index_set_ofport_request
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25993
      functionLinenumberEnd: 26010
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:26000,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:26009,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_interface_index_set_ofport
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25963
      functionLinenumberEnd: 25980
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:25970,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:25979,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_interface_index_set_name
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25941
      functionLinenumberEnd: 25952
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:25945,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:25949,14'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:25951,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_interface_index_set_mtu_request
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25916
      functionLinenumberEnd: 25933
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:25923,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:25932,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_interface_index_set_mtu
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25886
      functionLinenumberEnd: 25903
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:25893,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:25902,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_interface_index_set_mac_in_use
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25858
      functionLinenumberEnd: 25875
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:25865,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:25868,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:25874,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_interface_index_set_mac
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25830
      functionLinenumberEnd: 25847
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:25837,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:25840,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:25846,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_interface_index_set_lldp
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25791
      functionLinenumberEnd: 25818
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          127
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_first
        - hmap_next
        - ovsdb_atom_string_create
        - ovsdb_datum_init_empty
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - smap_count
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:25792,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:25798,20'
          Dst:             smap_count
        - Src:             'lib/vswitch-idl.c:25799,23'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:25800,25'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:25804,9'
          Dst:             hmap_first
        - Src:             'lib/vswitch-idl.c:25805,32'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:25806,34'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:25804,9'
          Dst:             hmap_next
        - Src:             'lib/vswitch-idl.c:25809,9'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:25811,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:25813,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_interface_index_set_link_state
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25766
      functionLinenumberEnd: 25783
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:25773,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:25776,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:25782,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_interface_index_set_link_speed
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25736
      functionLinenumberEnd: 25753
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:25743,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:25752,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_interface_index_set_link_resets
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25708
      functionLinenumberEnd: 25725
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:25715,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:25724,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_interface_index_set_lacp_current
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25680
      functionLinenumberEnd: 25697
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          55
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:25687,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:25696,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_interface_index_set_ingress_policing_rate
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25658
      functionLinenumberEnd: 25669
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:25662,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:25668,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_interface_index_set_ingress_policing_kpkts_rate
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25637
      functionLinenumberEnd: 25648
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:25641,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:25647,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_interface_index_set_ingress_policing_kpkts_burst
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25616
      functionLinenumberEnd: 25627
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:25620,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:25626,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_interface_index_set_ingress_policing_burst
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25595
      functionLinenumberEnd: 25606
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:25599,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:25605,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_interface_index_set_ifindex
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25568
      functionLinenumberEnd: 25585
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:25575,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:25584,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_interface_index_set_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25527
      functionLinenumberEnd: 25554
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          127
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_first
        - hmap_next
        - ovsdb_atom_string_create
        - ovsdb_datum_init_empty
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - smap_count
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:25528,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:25534,20'
          Dst:             smap_count
        - Src:             'lib/vswitch-idl.c:25535,23'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:25536,25'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:25540,9'
          Dst:             hmap_first
        - Src:             'lib/vswitch-idl.c:25541,32'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:25542,34'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:25540,9'
          Dst:             hmap_next
        - Src:             'lib/vswitch-idl.c:25545,9'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:25547,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:25549,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_interface_index_set_error
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25502
      functionLinenumberEnd: 25519
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:25509,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:25512,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:25518,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_interface_index_set_duplex
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25474
      functionLinenumberEnd: 25491
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:25481,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:25484,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:25490,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_interface_index_set_cfm_remote_opstate
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25444
      functionLinenumberEnd: 25461
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:25451,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:25454,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:25460,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_interface_index_set_cfm_remote_mpids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25417
      functionLinenumberEnd: 25431
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          76
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:25424,39'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:25429,5'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:25430,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_interface_index_set_cfm_mpid
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25392
      functionLinenumberEnd: 25409
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:25399,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:25408,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_interface_index_set_cfm_health
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25364
      functionLinenumberEnd: 25381
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:25371,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:25380,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_interface_index_set_cfm_flap_count
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25334
      functionLinenumberEnd: 25351
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:25341,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:25350,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_interface_index_set_cfm_fault_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25309
      functionLinenumberEnd: 25323
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          77
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:25316,39'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:25319,27'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:25321,5'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:25322,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_interface_index_set_cfm_fault
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25284
      functionLinenumberEnd: 25301
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          55
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:25291,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:25300,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_interface_index_set_bfd_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25245
      functionLinenumberEnd: 25272
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          127
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_first
        - hmap_next
        - ovsdb_atom_string_create
        - ovsdb_datum_init_empty
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - smap_count
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:25246,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:25252,20'
          Dst:             smap_count
        - Src:             'lib/vswitch-idl.c:25253,23'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:25254,25'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:25258,9'
          Dst:             hmap_first
        - Src:             'lib/vswitch-idl.c:25259,32'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:25260,34'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:25258,9'
          Dst:             hmap_next
        - Src:             'lib/vswitch-idl.c:25263,9'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:25265,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:25267,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_interface_index_set_bfd
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25209
      functionLinenumberEnd: 25236
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          127
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_first
        - hmap_next
        - ovsdb_atom_string_create
        - ovsdb_datum_init_empty
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - smap_count
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:25210,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:25216,20'
          Dst:             smap_count
        - Src:             'lib/vswitch-idl.c:25217,23'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:25218,25'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:25222,9'
          Dst:             hmap_first
        - Src:             'lib/vswitch-idl.c:25223,32'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:25224,34'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:25222,9'
          Dst:             hmap_next
        - Src:             'lib/vswitch-idl.c:25227,9'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:25229,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:25231,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_interface_index_set_admin_state
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25184
      functionLinenumberEnd: 25201
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:25191,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:25194,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:25200,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_interface_cursor_data
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25168
      functionLinenumberEnd: 25169
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_cursor_data
        - ovsrec_interface_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:25169,34'
          Dst:             ovsdb_idl_cursor_data
        - Src:             'lib/vswitch-idl.c:25169,12'
          Dst:             ovsrec_interface_cast
    - functionName:    ovsrec_interface_cursor_first_ge
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25161
      functionLinenumberEnd: 25163
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_cursor_first_ge
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:25162,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:25163,12'
          Dst:             ovsdb_idl_cursor_first_ge
    - functionName:    ovsrec_interface_cursor_first_eq
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25153
      functionLinenumberEnd: 25155
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_cursor_first_eq
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:25154,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:25155,12'
          Dst:             ovsdb_idl_cursor_first_eq
    - functionName:    ovsrec_interface_cursor_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25145
      functionLinenumberEnd: 25147
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_cursor_first
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:25146,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:25147,12'
          Dst:             ovsdb_idl_cursor_first
    - functionName:    ovsrec_interface_index_compare
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25139
      functionLinenumberEnd: 25140
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_index_compare
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:25140,12'
          Dst:             ovsdb_idl_index_compare
    - functionName:    ovsrec_interface_index_find
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25128
      functionLinenumberEnd: 25130
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_index_find
        - ovsrec_interface_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:25129,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:25130,34'
          Dst:             ovsdb_idl_index_find
        - Src:             'lib/vswitch-idl.c:25130,12'
          Dst:             ovsrec_interface_cast
    - functionName:    ovsrec_interface_index_init_row
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25121
      functionLinenumberEnd: 25123
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_index_init_row
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:25122,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:25123,12'
          Dst:             ovsdb_idl_index_init_row
    - functionName:    ovsrec_interface_index_destroy_row
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25113
      functionLinenumberEnd: 25115
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_index_destroy_row
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:25114,5'
          Dst:             ovsdb_idl_index_destroy_row
    - functionName:    ovsrec_interface_add_clause_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25090
      functionLinenumberEnd: 25106
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          38
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:25095,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:25099,14'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:25101,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:25105,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_interface_add_clause_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25066
      functionLinenumberEnd: 25081
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_condition_add_clause
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:25070,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:25072,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:25075,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:25080,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_interface_add_clause_statistics
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25041
      functionLinenumberEnd: 25058
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          94
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_destroy
        - ovsdb_datum_sort_unique
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:25046,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:25047,20'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:25049,27'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:25052,5'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:25053,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:25057,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_interface_add_clause_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25016
      functionLinenumberEnd: 25031
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_condition_add_clause
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:25020,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:25022,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:25025,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:25030,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_interface_add_clause_options
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 24992
      functionLinenumberEnd: 25007
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_condition_add_clause
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:24996,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:24998,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:25001,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:25006,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_interface_add_clause_ofport_request
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 24964
      functionLinenumberEnd: 24984
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:24970,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:24979,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:24983,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_interface_add_clause_ofport
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 24931
      functionLinenumberEnd: 24951
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:24937,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:24946,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:24950,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_interface_add_clause_name
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 24904
      functionLinenumberEnd: 24920
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          38
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:24909,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:24913,14'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:24915,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:24919,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_interface_add_clause_mtu_request
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 24876
      functionLinenumberEnd: 24896
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:24882,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:24891,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:24895,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_interface_add_clause_mtu
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 24843
      functionLinenumberEnd: 24863
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:24849,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:24858,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:24862,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_interface_add_clause_mac_in_use
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 24812
      functionLinenumberEnd: 24832
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:24818,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:24821,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:24827,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:24831,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_interface_add_clause_mac
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 24781
      functionLinenumberEnd: 24801
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:24787,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:24790,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:24796,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:24800,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_interface_add_clause_lldp
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 24754
      functionLinenumberEnd: 24769
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_condition_add_clause
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:24758,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:24760,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:24763,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:24768,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_interface_add_clause_link_state
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 24726
      functionLinenumberEnd: 24746
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:24732,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:24735,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:24741,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:24745,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_interface_add_clause_link_speed
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 24693
      functionLinenumberEnd: 24713
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:24699,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:24708,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:24712,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_interface_add_clause_link_resets
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 24662
      functionLinenumberEnd: 24682
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:24668,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:24677,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:24681,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_interface_add_clause_lacp_current
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 24631
      functionLinenumberEnd: 24651
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          58
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:24637,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:24646,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:24650,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_interface_add_clause_ingress_policing_rate
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 24604
      functionLinenumberEnd: 24620
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:24609,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:24615,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:24619,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_interface_add_clause_ingress_policing_kpkts_rate
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 24578
      functionLinenumberEnd: 24594
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:24583,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:24589,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:24593,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_interface_add_clause_ingress_policing_kpkts_burst
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 24552
      functionLinenumberEnd: 24568
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:24557,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:24563,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:24567,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_interface_add_clause_ingress_policing_burst
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 24526
      functionLinenumberEnd: 24542
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:24531,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:24537,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:24541,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_interface_add_clause_ifindex
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 24496
      functionLinenumberEnd: 24516
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:24502,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:24511,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:24515,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_interface_add_clause_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 24467
      functionLinenumberEnd: 24482
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_condition_add_clause
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:24471,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:24473,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:24476,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:24481,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_interface_add_clause_error
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 24439
      functionLinenumberEnd: 24459
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:24445,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:24448,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:24454,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:24458,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_interface_add_clause_duplex
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 24408
      functionLinenumberEnd: 24428
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:24414,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:24417,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:24423,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:24427,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_interface_add_clause_cfm_remote_opstate
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 24375
      functionLinenumberEnd: 24395
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:24381,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:24384,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:24390,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:24394,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_interface_add_clause_cfm_remote_mpids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 24346
      functionLinenumberEnd: 24362
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          79
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_datum_sort_unique
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:24351,39'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:24356,5'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:24357,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:24361,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_interface_add_clause_cfm_mpid
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 24318
      functionLinenumberEnd: 24338
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:24324,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:24333,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:24337,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_interface_add_clause_cfm_health
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 24287
      functionLinenumberEnd: 24307
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:24293,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:24302,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:24306,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_interface_add_clause_cfm_flap_count
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 24254
      functionLinenumberEnd: 24274
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:24260,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:24269,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:24273,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_interface_add_clause_cfm_fault_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 24227
      functionLinenumberEnd: 24243
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          80
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_destroy
        - ovsdb_datum_sort_unique
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:24232,39'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:24235,27'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:24237,5'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:24238,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:24242,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_interface_add_clause_cfm_fault
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 24199
      functionLinenumberEnd: 24219
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          58
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:24205,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:24214,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:24218,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_interface_add_clause_bfd_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 24172
      functionLinenumberEnd: 24187
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_condition_add_clause
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:24176,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:24178,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:24181,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:24186,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_interface_add_clause_bfd
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 24148
      functionLinenumberEnd: 24163
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_condition_add_clause
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:24152,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:24154,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:24157,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:24162,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_interface_add_clause_admin_state
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 24120
      functionLinenumberEnd: 24140
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:24126,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:24129,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:24135,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:24139,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_interface_update_status_delkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 24093
      functionLinenumberEnd: 24107
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:24096,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:24098,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:24102,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:24104,5'
          Dst:             ovsdb_idl_txn_delete_partial_map
    - functionName:    ovsrec_interface_update_status_setkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 24070
      functionLinenumberEnd: 24085
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          62
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:24073,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:24075,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:24076,21'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:24079,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:24080,26'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:24082,5'
          Dst:             ovsdb_idl_txn_write_partial_map
    - functionName:    ovsrec_interface_update_statistics_delkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 24048
      functionLinenumberEnd: 24062
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:24051,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:24053,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:24057,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:24059,5'
          Dst:             ovsdb_idl_txn_delete_partial_map
    - functionName:    ovsrec_interface_update_statistics_setkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 24025
      functionLinenumberEnd: 24040
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          61
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:24028,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:24030,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:24031,21'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:24034,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:24037,5'
          Dst:             ovsdb_idl_txn_write_partial_map
    - functionName:    ovsrec_interface_update_other_config_delkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 24003
      functionLinenumberEnd: 24017
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:24006,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:24008,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:24012,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:24014,5'
          Dst:             ovsdb_idl_txn_delete_partial_map
    - functionName:    ovsrec_interface_update_other_config_setkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23980
      functionLinenumberEnd: 23995
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          62
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:23983,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23985,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23986,21'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23989,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:23990,26'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:23992,5'
          Dst:             ovsdb_idl_txn_write_partial_map
    - functionName:    ovsrec_interface_update_options_delkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23958
      functionLinenumberEnd: 23972
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:23961,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23963,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23967,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:23969,5'
          Dst:             ovsdb_idl_txn_delete_partial_map
    - functionName:    ovsrec_interface_update_options_setkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23935
      functionLinenumberEnd: 23950
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          62
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:23938,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23940,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23941,21'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23944,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:23945,26'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:23947,5'
          Dst:             ovsdb_idl_txn_write_partial_map
    - functionName:    ovsrec_interface_update_ofport_request_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23913
      functionLinenumberEnd: 23927
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:23916,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23918,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23924,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_interface_update_ofport_request_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23891
      functionLinenumberEnd: 23905
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:23894,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23896,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23902,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_interface_update_ofport_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23869
      functionLinenumberEnd: 23883
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:23872,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23874,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23880,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_interface_update_ofport_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23847
      functionLinenumberEnd: 23861
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:23850,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23852,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23858,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_interface_update_mtu_request_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23825
      functionLinenumberEnd: 23839
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:23828,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23830,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23836,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_interface_update_mtu_request_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23803
      functionLinenumberEnd: 23817
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:23806,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23808,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23814,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_interface_update_mtu_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23781
      functionLinenumberEnd: 23795
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:23784,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23786,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23792,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_interface_update_mtu_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23759
      functionLinenumberEnd: 23773
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:23762,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23764,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23770,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_interface_update_mac_in_use_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23737
      functionLinenumberEnd: 23751
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:23740,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23742,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23746,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:23748,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_interface_update_mac_in_use_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23715
      functionLinenumberEnd: 23729
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:23718,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23720,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23724,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:23726,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_interface_update_mac_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23693
      functionLinenumberEnd: 23707
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:23696,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23698,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23702,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:23704,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_interface_update_mac_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23671
      functionLinenumberEnd: 23685
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:23674,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23676,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23680,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:23682,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_interface_update_lldp_delkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23649
      functionLinenumberEnd: 23663
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:23652,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23654,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23658,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:23660,5'
          Dst:             ovsdb_idl_txn_delete_partial_map
    - functionName:    ovsrec_interface_update_lldp_setkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23626
      functionLinenumberEnd: 23641
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          62
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:23629,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23631,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23632,21'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23635,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:23636,26'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:23638,5'
          Dst:             ovsdb_idl_txn_write_partial_map
    - functionName:    ovsrec_interface_update_link_state_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23604
      functionLinenumberEnd: 23618
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:23607,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23609,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23613,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:23615,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_interface_update_link_state_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23582
      functionLinenumberEnd: 23596
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:23585,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23587,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23591,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:23593,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_interface_update_link_speed_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23560
      functionLinenumberEnd: 23574
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:23563,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23565,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23571,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_interface_update_link_speed_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23538
      functionLinenumberEnd: 23552
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:23541,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23543,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23549,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_interface_update_link_resets_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23516
      functionLinenumberEnd: 23530
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:23519,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23521,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23527,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_interface_update_link_resets_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23494
      functionLinenumberEnd: 23508
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:23497,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23499,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23505,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_interface_update_lacp_current_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23472
      functionLinenumberEnd: 23486
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          49
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:23475,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23477,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23483,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_interface_update_lacp_current_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23450
      functionLinenumberEnd: 23464
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          49
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:23453,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23455,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23461,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_interface_update_ifindex_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23428
      functionLinenumberEnd: 23442
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:23431,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23433,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23439,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_interface_update_ifindex_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23406
      functionLinenumberEnd: 23420
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:23409,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23411,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23417,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_interface_update_external_ids_delkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23384
      functionLinenumberEnd: 23398
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:23387,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23389,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23393,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:23395,5'
          Dst:             ovsdb_idl_txn_delete_partial_map
    - functionName:    ovsrec_interface_update_external_ids_setkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23361
      functionLinenumberEnd: 23376
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          62
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:23364,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23366,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23367,21'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23370,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:23371,26'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:23373,5'
          Dst:             ovsdb_idl_txn_write_partial_map
    - functionName:    ovsrec_interface_update_error_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23339
      functionLinenumberEnd: 23353
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:23342,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23344,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23348,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:23350,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_interface_update_error_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23317
      functionLinenumberEnd: 23331
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:23320,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23322,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23326,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:23328,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_interface_update_duplex_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23295
      functionLinenumberEnd: 23309
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:23298,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23300,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23304,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:23306,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_interface_update_duplex_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23273
      functionLinenumberEnd: 23287
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:23276,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23278,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23282,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:23284,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_interface_update_cfm_remote_opstate_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23251
      functionLinenumberEnd: 23265
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:23254,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23256,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23260,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:23262,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_interface_update_cfm_remote_opstate_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23229
      functionLinenumberEnd: 23243
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:23232,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23234,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23238,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:23240,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_interface_update_cfm_remote_mpids_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23207
      functionLinenumberEnd: 23221
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:23210,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23212,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23218,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_interface_update_cfm_remote_mpids_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23185
      functionLinenumberEnd: 23199
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:23188,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23190,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23196,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_interface_update_cfm_mpid_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23163
      functionLinenumberEnd: 23177
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:23166,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23168,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23174,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_interface_update_cfm_mpid_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23141
      functionLinenumberEnd: 23155
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:23144,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23146,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23152,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_interface_update_cfm_health_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23119
      functionLinenumberEnd: 23133
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:23122,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23124,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23130,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_interface_update_cfm_health_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23097
      functionLinenumberEnd: 23111
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:23100,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23102,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23108,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_interface_update_cfm_flap_count_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23075
      functionLinenumberEnd: 23089
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:23078,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23080,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23086,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_interface_update_cfm_flap_count_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23053
      functionLinenumberEnd: 23067
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:23056,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23058,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23064,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_interface_update_cfm_fault_status_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23031
      functionLinenumberEnd: 23045
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:23034,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23036,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23040,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:23042,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_interface_update_cfm_fault_status_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 23009
      functionLinenumberEnd: 23023
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:23012,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23014,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:23018,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:23020,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_interface_update_cfm_fault_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 22987
      functionLinenumberEnd: 23001
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          49
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:22990,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:22992,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:22998,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_interface_update_cfm_fault_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 22965
      functionLinenumberEnd: 22979
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          49
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:22968,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:22970,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:22976,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_interface_update_bfd_status_delkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 22943
      functionLinenumberEnd: 22957
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:22946,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:22948,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:22952,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:22954,5'
          Dst:             ovsdb_idl_txn_delete_partial_map
    - functionName:    ovsrec_interface_update_bfd_status_setkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 22920
      functionLinenumberEnd: 22935
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          62
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:22923,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:22925,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:22926,21'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:22929,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:22930,26'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:22932,5'
          Dst:             ovsdb_idl_txn_write_partial_map
    - functionName:    ovsrec_interface_update_bfd_delkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 22898
      functionLinenumberEnd: 22912
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:22901,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:22903,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:22907,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:22909,5'
          Dst:             ovsdb_idl_txn_delete_partial_map
    - functionName:    ovsrec_interface_update_bfd_setkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 22875
      functionLinenumberEnd: 22890
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          62
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:22878,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:22880,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:22881,21'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:22884,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:22885,26'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:22887,5'
          Dst:             ovsdb_idl_txn_write_partial_map
    - functionName:    ovsrec_interface_update_admin_state_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 22853
      functionLinenumberEnd: 22867
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:22856,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:22858,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:22862,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:22864,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_interface_update_admin_state_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 22831
      functionLinenumberEnd: 22845
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:22834,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:22836,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:22840,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:22842,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_interface_set_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 22811
      functionLinenumberEnd: 22823
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:22816,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:22820,14'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:22822,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_interface_set_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 22791
      functionLinenumberEnd: 22802
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_txn_write
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:22795,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:22797,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:22799,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_interface_set_statistics
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 22770
      functionLinenumberEnd: 22783
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          90
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:22776,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:22777,20'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:22779,27'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:22782,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_interface_set_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 22749
      functionLinenumberEnd: 22760
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_txn_write
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:22753,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:22755,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:22757,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_interface_set_options
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 22729
      functionLinenumberEnd: 22740
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_txn_write
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:22733,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:22735,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:22737,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_interface_set_ofport_request
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 22705
      functionLinenumberEnd: 22721
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:22711,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:22720,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_interface_set_ofport
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 22676
      functionLinenumberEnd: 22692
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:22682,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:22691,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_interface_set_name
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 22653
      functionLinenumberEnd: 22665
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:22658,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:22662,14'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:22664,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_interface_set_mtu_request
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 22629
      functionLinenumberEnd: 22645
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:22635,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:22644,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_interface_set_mtu
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 22600
      functionLinenumberEnd: 22616
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:22606,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:22615,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_interface_set_mac_in_use
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 22573
      functionLinenumberEnd: 22589
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:22579,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:22582,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:22588,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_interface_set_mac
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 22546
      functionLinenumberEnd: 22562
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:22552,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:22555,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:22561,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_interface_set_lldp
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 22523
      functionLinenumberEnd: 22534
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_txn_write
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:22527,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:22529,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:22531,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_interface_set_link_state
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 22499
      functionLinenumberEnd: 22515
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:22505,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:22508,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:22514,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_interface_set_link_speed
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 22470
      functionLinenumberEnd: 22486
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:22476,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:22485,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_interface_set_link_resets
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 22443
      functionLinenumberEnd: 22459
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:22449,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:22458,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_interface_set_lacp_current
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 22416
      functionLinenumberEnd: 22432
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          55
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:22422,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:22431,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_interface_set_ingress_policing_rate
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 22393
      functionLinenumberEnd: 22405
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:22398,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:22404,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_interface_set_ingress_policing_kpkts_rate
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 22371
      functionLinenumberEnd: 22383
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:22376,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:22382,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_interface_set_ingress_policing_kpkts_burst
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 22349
      functionLinenumberEnd: 22361
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:22354,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:22360,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_interface_set_ingress_policing_burst
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 22327
      functionLinenumberEnd: 22339
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:22332,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:22338,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_interface_set_ifindex
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 22301
      functionLinenumberEnd: 22317
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:22307,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:22316,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_interface_set_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 22276
      functionLinenumberEnd: 22287
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_txn_write
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:22280,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:22282,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:22284,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_interface_set_error
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 22252
      functionLinenumberEnd: 22268
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:22258,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:22261,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:22267,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_interface_set_duplex
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 22225
      functionLinenumberEnd: 22241
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:22231,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:22234,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:22240,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_interface_set_cfm_remote_opstate
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 22196
      functionLinenumberEnd: 22212
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:22202,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:22205,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:22211,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_interface_set_cfm_remote_mpids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 22171
      functionLinenumberEnd: 22183
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          75
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:22177,39'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:22182,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_interface_set_cfm_mpid
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 22147
      functionLinenumberEnd: 22163
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:22153,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:22162,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_interface_set_cfm_health
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 22120
      functionLinenumberEnd: 22136
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:22126,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:22135,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_interface_set_cfm_flap_count
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 22091
      functionLinenumberEnd: 22107
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:22097,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:22106,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_interface_set_cfm_fault_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 22068
      functionLinenumberEnd: 22080
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          76
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:22074,39'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:22077,27'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:22079,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_interface_set_cfm_fault
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 22044
      functionLinenumberEnd: 22060
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          55
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:22050,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:22059,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_interface_set_bfd_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 22021
      functionLinenumberEnd: 22032
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_txn_write
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:22025,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:22027,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:22029,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_interface_set_bfd
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 22001
      functionLinenumberEnd: 22012
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_txn_write
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:22005,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:22007,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:22009,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_interface_set_admin_state
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 21977
      functionLinenumberEnd: 21993
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:21983,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:21986,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:21992,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_interface_get_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 21961
      functionLinenumberEnd: 21963
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:21962,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:21963,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_interface_get_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 21933
      functionLinenumberEnd: 21936
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:21934,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:21935,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:21936,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_interface_get_statistics
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 21903
      functionLinenumberEnd: 21906
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:21904,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:21905,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:21906,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_interface_get_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 21873
      functionLinenumberEnd: 21876
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:21874,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:21875,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:21876,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_interface_get_options
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 21843
      functionLinenumberEnd: 21846
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:21844,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:21845,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:21846,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_interface_get_ofport_request
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 21814
      functionLinenumberEnd: 21816
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:21815,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:21816,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_interface_get_ofport
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 21787
      functionLinenumberEnd: 21789
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:21788,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:21789,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_interface_get_name
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 21760
      functionLinenumberEnd: 21762
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:21761,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:21762,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_interface_get_mtu_request
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 21733
      functionLinenumberEnd: 21735
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:21734,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:21735,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_interface_get_mtu
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 21706
      functionLinenumberEnd: 21708
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:21707,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:21708,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_interface_get_mac_in_use
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 21679
      functionLinenumberEnd: 21681
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:21680,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:21681,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_interface_get_mac
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 21652
      functionLinenumberEnd: 21654
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:21653,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:21654,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_interface_get_lldp
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 21624
      functionLinenumberEnd: 21627
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:21625,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:21626,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:21627,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_interface_get_link_state
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 21595
      functionLinenumberEnd: 21597
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:21596,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:21597,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_interface_get_link_speed
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 21568
      functionLinenumberEnd: 21570
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:21569,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:21570,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_interface_get_link_resets
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 21541
      functionLinenumberEnd: 21543
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:21542,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:21543,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_interface_get_lacp_current
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 21514
      functionLinenumberEnd: 21516
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:21515,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:21516,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_interface_get_ingress_policing_rate
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 21487
      functionLinenumberEnd: 21489
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:21488,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:21489,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_interface_get_ingress_policing_kpkts_rate
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 21460
      functionLinenumberEnd: 21462
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:21461,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:21462,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_interface_get_ingress_policing_kpkts_burst
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 21433
      functionLinenumberEnd: 21435
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:21434,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:21435,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_interface_get_ingress_policing_burst
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 21406
      functionLinenumberEnd: 21408
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:21407,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:21408,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_interface_get_ifindex
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 21379
      functionLinenumberEnd: 21381
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:21380,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:21381,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_interface_get_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 21351
      functionLinenumberEnd: 21354
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:21352,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:21353,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:21354,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_interface_get_error
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 21322
      functionLinenumberEnd: 21324
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:21323,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:21324,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_interface_get_duplex
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 21295
      functionLinenumberEnd: 21297
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:21296,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:21297,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_interface_get_cfm_remote_opstate
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 21268
      functionLinenumberEnd: 21270
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:21269,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:21270,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_interface_get_cfm_remote_mpids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 21241
      functionLinenumberEnd: 21243
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:21242,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:21243,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_interface_get_cfm_mpid
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 21214
      functionLinenumberEnd: 21216
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:21215,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:21216,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_interface_get_cfm_health
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 21187
      functionLinenumberEnd: 21189
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:21188,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:21189,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_interface_get_cfm_flap_count
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 21160
      functionLinenumberEnd: 21162
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:21161,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:21162,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_interface_get_cfm_fault_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 21133
      functionLinenumberEnd: 21135
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:21134,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:21135,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_interface_get_cfm_fault
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 21106
      functionLinenumberEnd: 21108
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:21107,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:21108,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_interface_get_bfd_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 21078
      functionLinenumberEnd: 21081
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:21079,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:21080,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:21081,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_interface_get_bfd
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 21048
      functionLinenumberEnd: 21051
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:21049,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:21050,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:21051,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_interface_get_admin_state
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 21019
      functionLinenumberEnd: 21021
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:21020,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:21021,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_interface_verify_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20993
      functionLinenumberEnd: 20995
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:20994,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_interface_verify_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20964
      functionLinenumberEnd: 20966
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:20965,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_interface_verify_statistics
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20935
      functionLinenumberEnd: 20937
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:20936,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_interface_verify_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20906
      functionLinenumberEnd: 20908
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:20907,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_interface_verify_options
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20877
      functionLinenumberEnd: 20879
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:20878,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_interface_verify_ofport_request
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20848
      functionLinenumberEnd: 20850
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:20849,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_interface_verify_ofport
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20819
      functionLinenumberEnd: 20821
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:20820,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_interface_verify_name
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20790
      functionLinenumberEnd: 20792
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:20791,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_interface_verify_mtu_request
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20761
      functionLinenumberEnd: 20763
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:20762,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_interface_verify_mtu
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20732
      functionLinenumberEnd: 20734
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:20733,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_interface_verify_mac_in_use
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20703
      functionLinenumberEnd: 20705
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:20704,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_interface_verify_mac
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20674
      functionLinenumberEnd: 20676
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:20675,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_interface_verify_lldp
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20645
      functionLinenumberEnd: 20647
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:20646,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_interface_verify_link_state
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20616
      functionLinenumberEnd: 20618
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:20617,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_interface_verify_link_speed
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20587
      functionLinenumberEnd: 20589
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:20588,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_interface_verify_link_resets
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20558
      functionLinenumberEnd: 20560
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:20559,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_interface_verify_lacp_current
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20529
      functionLinenumberEnd: 20531
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:20530,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_interface_verify_ingress_policing_rate
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20500
      functionLinenumberEnd: 20502
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:20501,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_interface_verify_ingress_policing_kpkts_rate
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20471
      functionLinenumberEnd: 20473
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:20472,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_interface_verify_ingress_policing_kpkts_burst
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20442
      functionLinenumberEnd: 20444
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:20443,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_interface_verify_ingress_policing_burst
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20413
      functionLinenumberEnd: 20415
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:20414,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_interface_verify_ifindex
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20384
      functionLinenumberEnd: 20386
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:20385,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_interface_verify_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20355
      functionLinenumberEnd: 20357
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:20356,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_interface_verify_error
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20326
      functionLinenumberEnd: 20328
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:20327,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_interface_verify_duplex
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20297
      functionLinenumberEnd: 20299
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:20298,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_interface_verify_cfm_remote_opstate
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20268
      functionLinenumberEnd: 20270
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:20269,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_interface_verify_cfm_remote_mpids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20239
      functionLinenumberEnd: 20241
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:20240,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_interface_verify_cfm_mpid
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20210
      functionLinenumberEnd: 20212
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:20211,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_interface_verify_cfm_health
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20181
      functionLinenumberEnd: 20183
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:20182,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_interface_verify_cfm_flap_count
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20152
      functionLinenumberEnd: 20154
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:20153,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_interface_verify_cfm_fault_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20123
      functionLinenumberEnd: 20125
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:20124,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_interface_verify_cfm_fault
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20094
      functionLinenumberEnd: 20096
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:20095,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_interface_verify_bfd_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20065
      functionLinenumberEnd: 20067
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:20066,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_interface_verify_bfd
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20036
      functionLinenumberEnd: 20038
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:20037,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_interface_verify_admin_state
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 20007
      functionLinenumberEnd: 20009
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:20008,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_interface_is_updated
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19978
      functionLinenumberEnd: 19979
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_track_is_updated
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19979,12'
          Dst:             ovsdb_idl_track_is_updated
    - functionName:    ovsrec_interface_insert_persist_uuid
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19971
      functionLinenumberEnd: 19973
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_insert_persist_uuid
        - ovsrec_interface_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19972,34'
          Dst:             ovsdb_idl_txn_insert_persist_uuid
        - Src:             'lib/vswitch-idl.c:19972,12'
          Dst:             ovsrec_interface_cast
    - functionName:    ovsrec_interface_insert
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19959
      functionLinenumberEnd: 19960
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_insert
        - ovsrec_interface_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19960,34'
          Dst:             ovsdb_idl_txn_insert
        - Src:             'lib/vswitch-idl.c:19960,12'
          Dst:             ovsrec_interface_cast
    - functionName:    ovsrec_interface_delete
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19946
      functionLinenumberEnd: 19948
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19947,5'
          Dst:             ovsdb_idl_txn_delete
    - functionName:    ovsrec_interface_track_get_next
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19935
      functionLinenumberEnd: 19936
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_track_get_next
        - ovsrec_interface_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19936,34'
          Dst:             ovsdb_idl_track_get_next
        - Src:             'lib/vswitch-idl.c:19936,12'
          Dst:             ovsrec_interface_cast
    - functionName:    ovsrec_interface_row_get_seqno
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19923
      functionLinenumberEnd: 19924
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_row_get_seqno
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19924,12'
          Dst:             ovsdb_idl_row_get_seqno
    - functionName:    ovsrec_interface_get_seqno
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19918
      functionLinenumberEnd: 19919
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_table_get_seqno
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19919,12'
          Dst:             ovsdb_idl_table_get_seqno
    - functionName:    ovsrec_interface_next
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19913
      functionLinenumberEnd: 19914
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_next_row
        - ovsrec_interface_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19914,34'
          Dst:             ovsdb_idl_next_row
        - Src:             'lib/vswitch-idl.c:19914,12'
          Dst:             ovsrec_interface_cast
    - functionName:    ovsrec_interface_table_get_for_uuid
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19892
      functionLinenumberEnd: 19894
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_interface_get_for_uuid
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19894,12'
          Dst:             ovsrec_interface_get_for_uuid
    - functionName:    ovsrec_interface_get_for_uuid
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19884
      functionLinenumberEnd: 19885
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_get_row_for_uuid
        - ovsrec_interface_cast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19885,34'
          Dst:             ovsdb_idl_get_row_for_uuid
        - Src:             'lib/vswitch-idl.c:19885,12'
          Dst:             ovsrec_interface_cast
    - functionName:    ovsrec_interface_track_get_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19929
      functionLinenumberEnd: 19930
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_track_get_first
        - ovsrec_interface_cast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19930,34'
          Dst:             ovsdb_idl_track_get_first
        - Src:             'lib/vswitch-idl.c:19930,12'
          Dst:             ovsrec_interface_cast
    - functionName:    ovsrec_interface_table_track_get_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19139
      functionLinenumberEnd: 19141
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_interface_track_get_first
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19141,12'
          Dst:             ovsrec_interface_track_get_first
    - functionName:    ovsrec_interface_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19905
      functionLinenumberEnd: 19906
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_first_row
        - ovsrec_interface_cast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19906,34'
          Dst:             ovsdb_idl_first_row
        - Src:             'lib/vswitch-idl.c:19906,12'
          Dst:             ovsrec_interface_cast
    - functionName:    ovsrec_interface_table_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19131
      functionLinenumberEnd: 19133
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_interface_first
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19133,12'
          Dst:             ovsrec_interface_first
    - functionName:    ovsrec_interface_table_get
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19125
      functionLinenumberEnd: 19126
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_server_has_interface_table
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19118
      functionLinenumberEnd: 19119
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_table
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19119,12'
          Dst:             ovsdb_idl_server_has_table
    - functionName:    ovsrec_interface_type_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19111
      functionLinenumberEnd: 19112
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19112,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_interface_table_col_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19105
      functionLinenumberEnd: 19106
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19106,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_interface_status_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19098
      functionLinenumberEnd: 19099
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19099,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_interface_table_col_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19092
      functionLinenumberEnd: 19093
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19093,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_interface_statistics_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19085
      functionLinenumberEnd: 19086
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19086,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_interface_table_col_statistics
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19079
      functionLinenumberEnd: 19080
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19080,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_interface_other_config_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19072
      functionLinenumberEnd: 19073
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19073,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_interface_table_col_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19066
      functionLinenumberEnd: 19067
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19067,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_interface_options_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19059
      functionLinenumberEnd: 19060
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19060,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_interface_table_col_options
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19053
      functionLinenumberEnd: 19054
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19054,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_interface_ofport_request_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19046
      functionLinenumberEnd: 19047
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19047,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_interface_table_col_ofport_request
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19040
      functionLinenumberEnd: 19041
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19041,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_interface_ofport_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19033
      functionLinenumberEnd: 19034
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19034,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_interface_table_col_ofport
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19027
      functionLinenumberEnd: 19028
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19028,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_interface_name_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19020
      functionLinenumberEnd: 19021
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19021,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_interface_table_col_name
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19014
      functionLinenumberEnd: 19015
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19015,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_interface_mtu_request_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19007
      functionLinenumberEnd: 19008
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19008,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_interface_table_col_mtu_request
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 19001
      functionLinenumberEnd: 19002
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:19002,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_interface_mtu_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18994
      functionLinenumberEnd: 18995
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18995,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_interface_table_col_mtu
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18988
      functionLinenumberEnd: 18989
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18989,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_interface_mac_in_use_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18981
      functionLinenumberEnd: 18982
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18982,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_interface_table_col_mac_in_use
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18975
      functionLinenumberEnd: 18976
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18976,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_interface_mac_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18968
      functionLinenumberEnd: 18969
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18969,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_interface_table_col_mac
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18962
      functionLinenumberEnd: 18963
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18963,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_interface_lldp_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18955
      functionLinenumberEnd: 18956
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18956,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_interface_table_col_lldp
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18949
      functionLinenumberEnd: 18950
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18950,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_interface_link_state_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18942
      functionLinenumberEnd: 18943
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18943,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_interface_table_col_link_state
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18936
      functionLinenumberEnd: 18937
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18937,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_interface_link_speed_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18929
      functionLinenumberEnd: 18930
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18930,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_interface_table_col_link_speed
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18923
      functionLinenumberEnd: 18924
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18924,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_interface_link_resets_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18916
      functionLinenumberEnd: 18917
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18917,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_interface_table_col_link_resets
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18910
      functionLinenumberEnd: 18911
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18911,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_interface_lacp_current_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18903
      functionLinenumberEnd: 18904
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18904,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_interface_table_col_lacp_current
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18897
      functionLinenumberEnd: 18898
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18898,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_interface_ingress_policing_rate_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18890
      functionLinenumberEnd: 18891
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18891,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_interface_table_col_ingress_policing_rate
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18884
      functionLinenumberEnd: 18885
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18885,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_interface_ingress_policing_kpkts_rate_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18877
      functionLinenumberEnd: 18878
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18878,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_interface_table_col_ingress_policing_kpkts_rate
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18871
      functionLinenumberEnd: 18872
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18872,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_interface_ingress_policing_kpkts_burst_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18864
      functionLinenumberEnd: 18865
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18865,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_interface_table_col_ingress_policing_kpkts_burst
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18858
      functionLinenumberEnd: 18859
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18859,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_interface_ingress_policing_burst_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18851
      functionLinenumberEnd: 18852
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18852,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_interface_table_col_ingress_policing_burst
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18845
      functionLinenumberEnd: 18846
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18846,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_interface_ifindex_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18838
      functionLinenumberEnd: 18839
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18839,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_interface_table_col_ifindex
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18832
      functionLinenumberEnd: 18833
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18833,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_interface_external_ids_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18825
      functionLinenumberEnd: 18826
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18826,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_interface_table_col_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18819
      functionLinenumberEnd: 18820
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18820,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_interface_error_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18812
      functionLinenumberEnd: 18813
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18813,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_interface_table_col_error
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18806
      functionLinenumberEnd: 18807
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18807,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_interface_duplex_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18799
      functionLinenumberEnd: 18800
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18800,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_interface_table_col_duplex
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18793
      functionLinenumberEnd: 18794
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18794,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_interface_cfm_remote_opstate_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18786
      functionLinenumberEnd: 18787
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18787,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_interface_table_col_cfm_remote_opstate
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18780
      functionLinenumberEnd: 18781
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18781,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_interface_cfm_remote_mpids_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18773
      functionLinenumberEnd: 18774
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18774,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_interface_table_col_cfm_remote_mpids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18767
      functionLinenumberEnd: 18768
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18768,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_interface_cfm_mpid_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18760
      functionLinenumberEnd: 18761
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18761,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_interface_table_col_cfm_mpid
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18754
      functionLinenumberEnd: 18755
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18755,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_interface_cfm_health_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18747
      functionLinenumberEnd: 18748
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18748,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_interface_table_col_cfm_health
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18741
      functionLinenumberEnd: 18742
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18742,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_interface_cfm_flap_count_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18734
      functionLinenumberEnd: 18735
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18735,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_interface_table_col_cfm_flap_count
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18728
      functionLinenumberEnd: 18729
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18729,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_interface_cfm_fault_status_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18721
      functionLinenumberEnd: 18722
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18722,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_interface_table_col_cfm_fault_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18715
      functionLinenumberEnd: 18716
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18716,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_interface_cfm_fault_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18708
      functionLinenumberEnd: 18709
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18709,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_interface_table_col_cfm_fault
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18702
      functionLinenumberEnd: 18703
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18703,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_interface_bfd_status_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18695
      functionLinenumberEnd: 18696
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18696,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_interface_table_col_bfd_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18689
      functionLinenumberEnd: 18690
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18690,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_interface_bfd_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18682
      functionLinenumberEnd: 18683
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18683,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_interface_table_col_bfd
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18676
      functionLinenumberEnd: 18677
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18677,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_interface_admin_state_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18669
      functionLinenumberEnd: 18670
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18670,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_interface_table_col_admin_state
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18663
      functionLinenumberEnd: 18664
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18664,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_ipfix_set_condition
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18476
      functionLinenumberEnd: 18477
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_set_condition
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18477,12'
          Dst:             ovsdb_idl_set_condition
    - functionName:    ovsrec_ipfix_index_set_template_interval
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18453
      functionLinenumberEnd: 18470
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18460,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:18469,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_ipfix_index_set_targets
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18426
      functionLinenumberEnd: 18440
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          77
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18433,30'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:18436,27'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:18438,5'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:18439,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_ipfix_index_set_stats_interval
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18401
      functionLinenumberEnd: 18418
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18408,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:18417,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_ipfix_index_set_sampling
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18371
      functionLinenumberEnd: 18388
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18378,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:18387,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_ipfix_index_set_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18330
      functionLinenumberEnd: 18357
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          127
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_first
        - hmap_next
        - ovsdb_atom_string_create
        - ovsdb_datum_init_empty
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - smap_count
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18331,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:18337,20'
          Dst:             smap_count
        - Src:             'lib/vswitch-idl.c:18338,23'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:18339,25'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:18343,9'
          Dst:             hmap_first
        - Src:             'lib/vswitch-idl.c:18344,32'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:18345,34'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:18343,9'
          Dst:             hmap_next
        - Src:             'lib/vswitch-idl.c:18348,9'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:18350,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:18352,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_ipfix_index_set_obs_point_id
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18305
      functionLinenumberEnd: 18322
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18312,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:18321,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_ipfix_index_set_obs_domain_id
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18275
      functionLinenumberEnd: 18292
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18282,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:18291,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_ipfix_index_set_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18234
      functionLinenumberEnd: 18261
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          127
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_first
        - hmap_next
        - ovsdb_atom_string_create
        - ovsdb_datum_init_empty
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - smap_count
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18235,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:18241,20'
          Dst:             smap_count
        - Src:             'lib/vswitch-idl.c:18242,23'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:18243,25'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:18247,9'
          Dst:             hmap_first
        - Src:             'lib/vswitch-idl.c:18248,32'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:18249,34'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:18247,9'
          Dst:             hmap_next
        - Src:             'lib/vswitch-idl.c:18252,9'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:18254,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:18256,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_ipfix_index_set_cache_max_flows
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18209
      functionLinenumberEnd: 18226
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18216,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:18225,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_ipfix_index_set_cache_active_timeout
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18179
      functionLinenumberEnd: 18196
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18186,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:18195,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_ipfix_cursor_data
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18163
      functionLinenumberEnd: 18164
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_cursor_data
        - ovsrec_ipfix_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18164,30'
          Dst:             ovsdb_idl_cursor_data
        - Src:             'lib/vswitch-idl.c:18164,12'
          Dst:             ovsrec_ipfix_cast
    - functionName:    ovsrec_ipfix_cursor_first_ge
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18156
      functionLinenumberEnd: 18158
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_cursor_first_ge
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18157,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:18158,12'
          Dst:             ovsdb_idl_cursor_first_ge
    - functionName:    ovsrec_ipfix_cursor_first_eq
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18148
      functionLinenumberEnd: 18150
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_cursor_first_eq
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18149,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:18150,12'
          Dst:             ovsdb_idl_cursor_first_eq
    - functionName:    ovsrec_ipfix_cursor_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18140
      functionLinenumberEnd: 18142
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_cursor_first
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18141,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:18142,12'
          Dst:             ovsdb_idl_cursor_first
    - functionName:    ovsrec_ipfix_index_compare
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18134
      functionLinenumberEnd: 18135
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_index_compare
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18135,12'
          Dst:             ovsdb_idl_index_compare
    - functionName:    ovsrec_ipfix_index_find
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18123
      functionLinenumberEnd: 18125
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_index_find
        - ovsrec_ipfix_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18124,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:18125,30'
          Dst:             ovsdb_idl_index_find
        - Src:             'lib/vswitch-idl.c:18125,12'
          Dst:             ovsrec_ipfix_cast
    - functionName:    ovsrec_ipfix_index_init_row
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18116
      functionLinenumberEnd: 18118
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_index_init_row
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18117,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:18118,12'
          Dst:             ovsdb_idl_index_init_row
    - functionName:    ovsrec_ipfix_index_destroy_row
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18108
      functionLinenumberEnd: 18110
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_index_destroy_row
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18109,5'
          Dst:             ovsdb_idl_index_destroy_row
    - functionName:    ovsrec_ipfix_add_clause_template_interval
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18081
      functionLinenumberEnd: 18101
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18087,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:18096,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:18100,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_ipfix_add_clause_targets
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18052
      functionLinenumberEnd: 18068
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          80
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_destroy
        - ovsdb_datum_sort_unique
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18057,30'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:18060,27'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:18062,5'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:18063,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:18067,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_ipfix_add_clause_stats_interval
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 18024
      functionLinenumberEnd: 18044
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:18030,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:18039,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:18043,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_ipfix_add_clause_sampling
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 17991
      functionLinenumberEnd: 18011
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:17997,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:18006,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:18010,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_ipfix_add_clause_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 17962
      functionLinenumberEnd: 17977
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_condition_add_clause
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:17966,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:17968,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:17971,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:17976,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_ipfix_add_clause_obs_point_id
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 17934
      functionLinenumberEnd: 17954
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:17940,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:17949,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:17953,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_ipfix_add_clause_obs_domain_id
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 17901
      functionLinenumberEnd: 17921
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:17907,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:17916,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:17920,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_ipfix_add_clause_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 17872
      functionLinenumberEnd: 17887
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_condition_add_clause
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:17876,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:17878,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:17881,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:17886,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_ipfix_add_clause_cache_max_flows
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 17844
      functionLinenumberEnd: 17864
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:17850,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:17859,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:17863,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_ipfix_add_clause_cache_active_timeout
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 17811
      functionLinenumberEnd: 17831
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:17817,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:17826,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:17830,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_ipfix_update_template_interval_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 17784
      functionLinenumberEnd: 17798
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:17787,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:17789,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:17795,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_ipfix_update_template_interval_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 17762
      functionLinenumberEnd: 17776
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:17765,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:17767,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:17773,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_ipfix_update_targets_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 17740
      functionLinenumberEnd: 17754
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:17743,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:17745,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:17749,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:17751,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_ipfix_update_targets_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 17718
      functionLinenumberEnd: 17732
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:17721,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:17723,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:17727,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:17729,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_ipfix_update_stats_interval_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 17696
      functionLinenumberEnd: 17710
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:17699,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:17701,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:17707,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_ipfix_update_stats_interval_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 17674
      functionLinenumberEnd: 17688
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:17677,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:17679,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:17685,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_ipfix_update_sampling_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 17652
      functionLinenumberEnd: 17666
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:17655,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:17657,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:17663,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_ipfix_update_sampling_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 17630
      functionLinenumberEnd: 17644
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:17633,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:17635,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:17641,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_ipfix_update_other_config_delkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 17608
      functionLinenumberEnd: 17622
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:17611,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:17613,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:17617,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:17619,5'
          Dst:             ovsdb_idl_txn_delete_partial_map
    - functionName:    ovsrec_ipfix_update_other_config_setkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 17585
      functionLinenumberEnd: 17600
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          62
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:17588,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:17590,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:17591,21'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:17594,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:17595,26'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:17597,5'
          Dst:             ovsdb_idl_txn_write_partial_map
    - functionName:    ovsrec_ipfix_update_obs_point_id_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 17563
      functionLinenumberEnd: 17577
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:17566,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:17568,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:17574,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_ipfix_update_obs_point_id_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 17541
      functionLinenumberEnd: 17555
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:17544,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:17546,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:17552,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_ipfix_update_obs_domain_id_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 17519
      functionLinenumberEnd: 17533
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:17522,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:17524,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:17530,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_ipfix_update_obs_domain_id_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 17497
      functionLinenumberEnd: 17511
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:17500,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:17502,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:17508,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_ipfix_update_external_ids_delkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 17475
      functionLinenumberEnd: 17489
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:17478,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:17480,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:17484,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:17486,5'
          Dst:             ovsdb_idl_txn_delete_partial_map
    - functionName:    ovsrec_ipfix_update_external_ids_setkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 17452
      functionLinenumberEnd: 17467
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          62
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:17455,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:17457,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:17458,21'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:17461,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:17462,26'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:17464,5'
          Dst:             ovsdb_idl_txn_write_partial_map
    - functionName:    ovsrec_ipfix_update_cache_max_flows_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 17430
      functionLinenumberEnd: 17444
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:17433,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:17435,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:17441,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_ipfix_update_cache_max_flows_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 17408
      functionLinenumberEnd: 17422
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:17411,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:17413,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:17419,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_ipfix_update_cache_active_timeout_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 17386
      functionLinenumberEnd: 17400
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:17389,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:17391,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:17397,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_ipfix_update_cache_active_timeout_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 17364
      functionLinenumberEnd: 17378
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:17367,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:17369,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:17375,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_ipfix_set_template_interval
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 17340
      functionLinenumberEnd: 17356
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:17346,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:17355,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_ipfix_set_targets
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 17315
      functionLinenumberEnd: 17327
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          76
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:17321,30'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:17324,27'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:17326,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_ipfix_set_stats_interval
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 17291
      functionLinenumberEnd: 17307
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:17297,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:17306,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_ipfix_set_sampling
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 17262
      functionLinenumberEnd: 17278
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:17268,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:17277,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_ipfix_set_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 17237
      functionLinenumberEnd: 17248
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_txn_write
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:17241,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:17243,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:17245,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_ipfix_set_obs_point_id
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 17213
      functionLinenumberEnd: 17229
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:17219,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:17228,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_ipfix_set_obs_domain_id
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 17184
      functionLinenumberEnd: 17200
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:17190,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:17199,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_ipfix_set_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 17159
      functionLinenumberEnd: 17170
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_txn_write
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:17163,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:17165,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:17167,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_ipfix_set_cache_max_flows
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 17135
      functionLinenumberEnd: 17151
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:17141,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:17150,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_ipfix_set_cache_active_timeout
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 17106
      functionLinenumberEnd: 17122
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:17112,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:17121,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_ipfix_get_template_interval
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 17090
      functionLinenumberEnd: 17092
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:17091,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:17092,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_ipfix_get_targets
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 17063
      functionLinenumberEnd: 17065
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:17064,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:17065,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_ipfix_get_stats_interval
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 17036
      functionLinenumberEnd: 17038
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:17037,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:17038,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_ipfix_get_sampling
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 17009
      functionLinenumberEnd: 17011
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:17010,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:17011,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_ipfix_get_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16981
      functionLinenumberEnd: 16984
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16982,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:16983,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:16984,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_ipfix_get_obs_point_id
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16952
      functionLinenumberEnd: 16954
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16953,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:16954,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_ipfix_get_obs_domain_id
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16925
      functionLinenumberEnd: 16927
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16926,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:16927,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_ipfix_get_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16897
      functionLinenumberEnd: 16900
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16898,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:16899,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:16900,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_ipfix_get_cache_max_flows
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16868
      functionLinenumberEnd: 16870
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16869,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:16870,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_ipfix_get_cache_active_timeout
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16841
      functionLinenumberEnd: 16843
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16842,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:16843,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_ipfix_verify_template_interval
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16815
      functionLinenumberEnd: 16817
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16816,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_ipfix_verify_targets
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16786
      functionLinenumberEnd: 16788
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16787,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_ipfix_verify_stats_interval
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16757
      functionLinenumberEnd: 16759
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16758,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_ipfix_verify_sampling
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16728
      functionLinenumberEnd: 16730
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16729,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_ipfix_verify_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16699
      functionLinenumberEnd: 16701
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16700,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_ipfix_verify_obs_point_id
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16670
      functionLinenumberEnd: 16672
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16671,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_ipfix_verify_obs_domain_id
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16641
      functionLinenumberEnd: 16643
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16642,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_ipfix_verify_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16612
      functionLinenumberEnd: 16614
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16613,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_ipfix_verify_cache_max_flows
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16583
      functionLinenumberEnd: 16585
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16584,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_ipfix_verify_cache_active_timeout
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16554
      functionLinenumberEnd: 16556
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16555,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_ipfix_is_updated
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16525
      functionLinenumberEnd: 16526
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_track_is_updated
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16526,12'
          Dst:             ovsdb_idl_track_is_updated
    - functionName:    ovsrec_ipfix_insert_persist_uuid
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16518
      functionLinenumberEnd: 16520
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_insert_persist_uuid
        - ovsrec_ipfix_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16519,30'
          Dst:             ovsdb_idl_txn_insert_persist_uuid
        - Src:             'lib/vswitch-idl.c:16519,12'
          Dst:             ovsrec_ipfix_cast
    - functionName:    ovsrec_ipfix_insert
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16506
      functionLinenumberEnd: 16507
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_insert
        - ovsrec_ipfix_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16507,30'
          Dst:             ovsdb_idl_txn_insert
        - Src:             'lib/vswitch-idl.c:16507,12'
          Dst:             ovsrec_ipfix_cast
    - functionName:    ovsrec_ipfix_delete
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16493
      functionLinenumberEnd: 16495
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16494,5'
          Dst:             ovsdb_idl_txn_delete
    - functionName:    ovsrec_ipfix_track_get_next
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16482
      functionLinenumberEnd: 16483
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_track_get_next
        - ovsrec_ipfix_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16483,30'
          Dst:             ovsdb_idl_track_get_next
        - Src:             'lib/vswitch-idl.c:16483,12'
          Dst:             ovsrec_ipfix_cast
    - functionName:    ovsrec_ipfix_row_get_seqno
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16470
      functionLinenumberEnd: 16471
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_row_get_seqno
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16471,12'
          Dst:             ovsdb_idl_row_get_seqno
    - functionName:    ovsrec_ipfix_get_seqno
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16465
      functionLinenumberEnd: 16466
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_table_get_seqno
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16466,12'
          Dst:             ovsdb_idl_table_get_seqno
    - functionName:    ovsrec_ipfix_next
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16460
      functionLinenumberEnd: 16461
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_next_row
        - ovsrec_ipfix_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16461,30'
          Dst:             ovsdb_idl_next_row
        - Src:             'lib/vswitch-idl.c:16461,12'
          Dst:             ovsrec_ipfix_cast
    - functionName:    ovsrec_ipfix_table_get_for_uuid
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16439
      functionLinenumberEnd: 16441
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_ipfix_get_for_uuid
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16441,12'
          Dst:             ovsrec_ipfix_get_for_uuid
    - functionName:    ovsrec_ipfix_get_for_uuid
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16431
      functionLinenumberEnd: 16432
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_get_row_for_uuid
        - ovsrec_ipfix_cast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16432,30'
          Dst:             ovsdb_idl_get_row_for_uuid
        - Src:             'lib/vswitch-idl.c:16432,12'
          Dst:             ovsrec_ipfix_cast
    - functionName:    ovsrec_ipfix_track_get_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16476
      functionLinenumberEnd: 16477
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_track_get_first
        - ovsrec_ipfix_cast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16477,30'
          Dst:             ovsdb_idl_track_get_first
        - Src:             'lib/vswitch-idl.c:16477,12'
          Dst:             ovsrec_ipfix_cast
    - functionName:    ovsrec_ipfix_table_track_get_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16185
      functionLinenumberEnd: 16187
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_ipfix_track_get_first
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16187,12'
          Dst:             ovsrec_ipfix_track_get_first
    - functionName:    ovsrec_ipfix_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16452
      functionLinenumberEnd: 16453
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_first_row
        - ovsrec_ipfix_cast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16453,30'
          Dst:             ovsdb_idl_first_row
        - Src:             'lib/vswitch-idl.c:16453,12'
          Dst:             ovsrec_ipfix_cast
    - functionName:    ovsrec_ipfix_table_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16177
      functionLinenumberEnd: 16179
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_ipfix_first
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16179,12'
          Dst:             ovsrec_ipfix_first
    - functionName:    ovsrec_ipfix_table_get
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16171
      functionLinenumberEnd: 16172
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_server_has_ipfix_table
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16164
      functionLinenumberEnd: 16165
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_table
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16165,12'
          Dst:             ovsdb_idl_server_has_table
    - functionName:    ovsrec_ipfix_template_interval_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16157
      functionLinenumberEnd: 16158
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16158,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_ipfix_table_col_template_interval
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16151
      functionLinenumberEnd: 16152
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16152,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_ipfix_targets_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16144
      functionLinenumberEnd: 16145
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16145,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_ipfix_table_col_targets
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16138
      functionLinenumberEnd: 16139
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16139,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_ipfix_stats_interval_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16131
      functionLinenumberEnd: 16132
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16132,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_ipfix_table_col_stats_interval
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16125
      functionLinenumberEnd: 16126
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16126,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_ipfix_sampling_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16118
      functionLinenumberEnd: 16119
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16119,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_ipfix_table_col_sampling
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16112
      functionLinenumberEnd: 16113
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16113,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_ipfix_other_config_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16105
      functionLinenumberEnd: 16106
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16106,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_ipfix_table_col_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16099
      functionLinenumberEnd: 16100
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16100,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_ipfix_obs_point_id_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16092
      functionLinenumberEnd: 16093
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16093,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_ipfix_table_col_obs_point_id
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16086
      functionLinenumberEnd: 16087
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16087,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_ipfix_obs_domain_id_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16079
      functionLinenumberEnd: 16080
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16080,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_ipfix_table_col_obs_domain_id
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16073
      functionLinenumberEnd: 16074
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16074,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_ipfix_external_ids_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16066
      functionLinenumberEnd: 16067
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16067,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_ipfix_table_col_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16060
      functionLinenumberEnd: 16061
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16061,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_ipfix_cache_max_flows_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16053
      functionLinenumberEnd: 16054
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16054,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_ipfix_table_col_cache_max_flows
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16047
      functionLinenumberEnd: 16048
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16048,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_ipfix_cache_active_timeout_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16040
      functionLinenumberEnd: 16041
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16041,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_ipfix_table_col_cache_active_timeout
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 16034
      functionLinenumberEnd: 16035
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:16035,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_flow_table_set_condition
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15905
      functionLinenumberEnd: 15906
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_set_condition
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:15906,12'
          Dst:             ovsdb_idl_set_condition
    - functionName:    ovsrec_flow_table_index_set_prefixes
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15885
      functionLinenumberEnd: 15899
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          77
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:15892,31'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:15895,27'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:15897,5'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:15898,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_flow_table_index_set_overflow_policy
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15860
      functionLinenumberEnd: 15877
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:15867,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:15870,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:15876,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_flow_table_index_set_name
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15830
      functionLinenumberEnd: 15847
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:15837,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:15840,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:15846,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_flow_table_index_set_groups
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15805
      functionLinenumberEnd: 15819
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          77
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:15812,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:15815,27'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:15817,5'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:15818,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_flow_table_index_set_flow_limit
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15780
      functionLinenumberEnd: 15797
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:15787,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:15796,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_flow_table_index_set_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15739
      functionLinenumberEnd: 15766
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          127
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_first
        - hmap_next
        - ovsdb_atom_string_create
        - ovsdb_datum_init_empty
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - smap_count
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:15740,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:15746,20'
          Dst:             smap_count
        - Src:             'lib/vswitch-idl.c:15747,23'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:15748,25'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:15752,9'
          Dst:             hmap_first
        - Src:             'lib/vswitch-idl.c:15753,32'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:15754,34'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:15752,9'
          Dst:             hmap_next
        - Src:             'lib/vswitch-idl.c:15757,9'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:15759,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:15761,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_flow_table_cursor_data
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15728
      functionLinenumberEnd: 15729
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_cursor_data
        - ovsrec_flow_table_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:15729,35'
          Dst:             ovsdb_idl_cursor_data
        - Src:             'lib/vswitch-idl.c:15729,12'
          Dst:             ovsrec_flow_table_cast
    - functionName:    ovsrec_flow_table_cursor_first_ge
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15721
      functionLinenumberEnd: 15723
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_cursor_first_ge
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:15722,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:15723,12'
          Dst:             ovsdb_idl_cursor_first_ge
    - functionName:    ovsrec_flow_table_cursor_first_eq
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15713
      functionLinenumberEnd: 15715
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_cursor_first_eq
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:15714,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:15715,12'
          Dst:             ovsdb_idl_cursor_first_eq
    - functionName:    ovsrec_flow_table_cursor_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15705
      functionLinenumberEnd: 15707
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_cursor_first
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:15706,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:15707,12'
          Dst:             ovsdb_idl_cursor_first
    - functionName:    ovsrec_flow_table_index_compare
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15699
      functionLinenumberEnd: 15700
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_index_compare
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:15700,12'
          Dst:             ovsdb_idl_index_compare
    - functionName:    ovsrec_flow_table_index_find
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15688
      functionLinenumberEnd: 15690
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_index_find
        - ovsrec_flow_table_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:15689,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:15690,35'
          Dst:             ovsdb_idl_index_find
        - Src:             'lib/vswitch-idl.c:15690,12'
          Dst:             ovsrec_flow_table_cast
    - functionName:    ovsrec_flow_table_index_init_row
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15681
      functionLinenumberEnd: 15683
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_index_init_row
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:15682,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:15683,12'
          Dst:             ovsdb_idl_index_init_row
    - functionName:    ovsrec_flow_table_index_destroy_row
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15673
      functionLinenumberEnd: 15675
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_index_destroy_row
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:15674,5'
          Dst:             ovsdb_idl_index_destroy_row
    - functionName:    ovsrec_flow_table_add_clause_prefixes
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15650
      functionLinenumberEnd: 15666
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          80
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_destroy
        - ovsdb_datum_sort_unique
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:15655,31'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:15658,27'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:15660,5'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:15661,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:15665,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_flow_table_add_clause_overflow_policy
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15622
      functionLinenumberEnd: 15642
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:15628,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:15631,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:15637,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:15641,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_flow_table_add_clause_name
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15589
      functionLinenumberEnd: 15609
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:15595,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:15598,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:15604,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:15608,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_flow_table_add_clause_groups
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15562
      functionLinenumberEnd: 15578
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          80
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_destroy
        - ovsdb_datum_sort_unique
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:15567,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:15570,27'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:15572,5'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:15573,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:15577,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_flow_table_add_clause_flow_limit
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15534
      functionLinenumberEnd: 15554
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:15540,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:15549,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:15553,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_flow_table_add_clause_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15505
      functionLinenumberEnd: 15520
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_condition_add_clause
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:15509,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:15511,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:15514,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:15519,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_flow_table_update_prefixes_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15483
      functionLinenumberEnd: 15497
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:15486,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:15488,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:15492,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:15494,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_flow_table_update_prefixes_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15461
      functionLinenumberEnd: 15475
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:15464,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:15466,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:15470,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:15472,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_flow_table_update_overflow_policy_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15439
      functionLinenumberEnd: 15453
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:15442,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:15444,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:15448,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:15450,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_flow_table_update_overflow_policy_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15417
      functionLinenumberEnd: 15431
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:15420,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:15422,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:15426,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:15428,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_flow_table_update_name_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15395
      functionLinenumberEnd: 15409
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:15398,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:15400,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:15404,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:15406,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_flow_table_update_name_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15373
      functionLinenumberEnd: 15387
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:15376,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:15378,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:15382,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:15384,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_flow_table_update_groups_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15351
      functionLinenumberEnd: 15365
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:15354,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:15356,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:15360,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:15362,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_flow_table_update_groups_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15329
      functionLinenumberEnd: 15343
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:15332,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:15334,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:15338,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:15340,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_flow_table_update_flow_limit_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15307
      functionLinenumberEnd: 15321
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:15310,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:15312,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:15318,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_flow_table_update_flow_limit_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15285
      functionLinenumberEnd: 15299
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:15288,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:15290,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:15296,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_flow_table_update_external_ids_delkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15263
      functionLinenumberEnd: 15277
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:15266,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:15268,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:15272,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:15274,5'
          Dst:             ovsdb_idl_txn_delete_partial_map
    - functionName:    ovsrec_flow_table_update_external_ids_setkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15240
      functionLinenumberEnd: 15255
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          62
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:15243,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:15245,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:15246,21'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:15249,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:15250,26'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:15252,5'
          Dst:             ovsdb_idl_txn_write_partial_map
    - functionName:    ovsrec_flow_table_set_prefixes
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15220
      functionLinenumberEnd: 15232
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          76
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:15226,31'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:15229,27'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:15231,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_flow_table_set_overflow_policy
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15196
      functionLinenumberEnd: 15212
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:15202,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:15205,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:15211,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_flow_table_set_name
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15167
      functionLinenumberEnd: 15183
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:15173,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:15176,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:15182,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_flow_table_set_groups
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15144
      functionLinenumberEnd: 15156
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          76
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:15150,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:15153,27'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:15155,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_flow_table_set_flow_limit
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15120
      functionLinenumberEnd: 15136
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:15126,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:15135,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_flow_table_set_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15095
      functionLinenumberEnd: 15106
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_txn_write
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:15099,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:15101,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:15103,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_flow_table_get_prefixes
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15084
      functionLinenumberEnd: 15086
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:15085,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:15086,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_flow_table_get_overflow_policy
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15057
      functionLinenumberEnd: 15059
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:15058,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:15059,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_flow_table_get_name
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15030
      functionLinenumberEnd: 15032
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:15031,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:15032,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_flow_table_get_groups
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 15003
      functionLinenumberEnd: 15005
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:15004,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:15005,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_flow_table_get_flow_limit
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14976
      functionLinenumberEnd: 14978
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:14977,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:14978,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_flow_table_get_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14948
      functionLinenumberEnd: 14951
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:14949,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:14950,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:14951,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_flow_table_verify_prefixes
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14920
      functionLinenumberEnd: 14922
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:14921,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_flow_table_verify_overflow_policy
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14891
      functionLinenumberEnd: 14893
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:14892,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_flow_table_verify_name
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14862
      functionLinenumberEnd: 14864
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:14863,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_flow_table_verify_groups
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14833
      functionLinenumberEnd: 14835
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:14834,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_flow_table_verify_flow_limit
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14804
      functionLinenumberEnd: 14806
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:14805,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_flow_table_verify_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14775
      functionLinenumberEnd: 14777
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:14776,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_flow_table_is_updated
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14746
      functionLinenumberEnd: 14747
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_track_is_updated
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:14747,12'
          Dst:             ovsdb_idl_track_is_updated
    - functionName:    ovsrec_flow_table_insert_persist_uuid
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14739
      functionLinenumberEnd: 14741
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_insert_persist_uuid
        - ovsrec_flow_table_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:14740,35'
          Dst:             ovsdb_idl_txn_insert_persist_uuid
        - Src:             'lib/vswitch-idl.c:14740,12'
          Dst:             ovsrec_flow_table_cast
    - functionName:    ovsrec_flow_table_insert
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14727
      functionLinenumberEnd: 14728
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_insert
        - ovsrec_flow_table_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:14728,35'
          Dst:             ovsdb_idl_txn_insert
        - Src:             'lib/vswitch-idl.c:14728,12'
          Dst:             ovsrec_flow_table_cast
    - functionName:    ovsrec_flow_table_delete
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14714
      functionLinenumberEnd: 14716
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:14715,5'
          Dst:             ovsdb_idl_txn_delete
    - functionName:    ovsrec_flow_table_track_get_next
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14703
      functionLinenumberEnd: 14704
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_track_get_next
        - ovsrec_flow_table_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:14704,35'
          Dst:             ovsdb_idl_track_get_next
        - Src:             'lib/vswitch-idl.c:14704,12'
          Dst:             ovsrec_flow_table_cast
    - functionName:    ovsrec_flow_table_row_get_seqno
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14691
      functionLinenumberEnd: 14692
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_row_get_seqno
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:14692,12'
          Dst:             ovsdb_idl_row_get_seqno
    - functionName:    ovsrec_flow_table_get_seqno
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14686
      functionLinenumberEnd: 14687
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_table_get_seqno
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:14687,12'
          Dst:             ovsdb_idl_table_get_seqno
    - functionName:    ovsrec_flow_table_next
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14681
      functionLinenumberEnd: 14682
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_next_row
        - ovsrec_flow_table_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:14682,35'
          Dst:             ovsdb_idl_next_row
        - Src:             'lib/vswitch-idl.c:14682,12'
          Dst:             ovsrec_flow_table_cast
    - functionName:    ovsrec_flow_table_table_get_for_uuid
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14660
      functionLinenumberEnd: 14662
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_flow_table_get_for_uuid
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:14662,12'
          Dst:             ovsrec_flow_table_get_for_uuid
    - functionName:    ovsrec_flow_table_get_for_uuid
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14652
      functionLinenumberEnd: 14653
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_get_row_for_uuid
        - ovsrec_flow_table_cast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:14653,35'
          Dst:             ovsdb_idl_get_row_for_uuid
        - Src:             'lib/vswitch-idl.c:14653,12'
          Dst:             ovsrec_flow_table_cast
    - functionName:    ovsrec_flow_table_track_get_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14697
      functionLinenumberEnd: 14698
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_track_get_first
        - ovsrec_flow_table_cast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:14698,35'
          Dst:             ovsdb_idl_track_get_first
        - Src:             'lib/vswitch-idl.c:14698,12'
          Dst:             ovsrec_flow_table_cast
    - functionName:    ovsrec_flow_table_table_track_get_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14505
      functionLinenumberEnd: 14507
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_flow_table_track_get_first
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:14507,12'
          Dst:             ovsrec_flow_table_track_get_first
    - functionName:    ovsrec_flow_table_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14673
      functionLinenumberEnd: 14674
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_first_row
        - ovsrec_flow_table_cast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:14674,35'
          Dst:             ovsdb_idl_first_row
        - Src:             'lib/vswitch-idl.c:14674,12'
          Dst:             ovsrec_flow_table_cast
    - functionName:    ovsrec_flow_table_table_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14497
      functionLinenumberEnd: 14499
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_flow_table_first
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:14499,12'
          Dst:             ovsrec_flow_table_first
    - functionName:    ovsrec_flow_table_table_get
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14491
      functionLinenumberEnd: 14492
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_server_has_flow_table_table
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14484
      functionLinenumberEnd: 14485
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_table
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:14485,12'
          Dst:             ovsdb_idl_server_has_table
    - functionName:    ovsrec_flow_table_prefixes_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14477
      functionLinenumberEnd: 14478
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:14478,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_flow_table_table_col_prefixes
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14471
      functionLinenumberEnd: 14472
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:14472,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_flow_table_overflow_policy_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14464
      functionLinenumberEnd: 14465
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:14465,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_flow_table_table_col_overflow_policy
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14458
      functionLinenumberEnd: 14459
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:14459,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_flow_table_name_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14451
      functionLinenumberEnd: 14452
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:14452,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_flow_table_table_col_name
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14445
      functionLinenumberEnd: 14446
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:14446,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_flow_table_groups_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14438
      functionLinenumberEnd: 14439
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:14439,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_flow_table_table_col_groups
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14432
      functionLinenumberEnd: 14433
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:14433,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_flow_table_flow_limit_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14425
      functionLinenumberEnd: 14426
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:14426,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_flow_table_table_col_flow_limit
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14419
      functionLinenumberEnd: 14420
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:14420,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_flow_table_external_ids_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14412
      functionLinenumberEnd: 14413
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:14413,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_flow_table_table_col_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14406
      functionLinenumberEnd: 14407
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:14407,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_flow_sample_collector_set_set_condition
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14307
      functionLinenumberEnd: 14308
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_set_condition
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:14308,12'
          Dst:             ovsdb_idl_set_condition
    - functionName:    ovsrec_flow_sample_collector_set_index_set_local_group_id
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14284
      functionLinenumberEnd: 14301
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:14291,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:14300,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_flow_sample_collector_set_index_set_ipfix
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14254
      functionLinenumberEnd: 14271
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:14261,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:14270,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_flow_sample_collector_set_index_set_id
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14232
      functionLinenumberEnd: 14243
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:14236,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:14242,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_flow_sample_collector_set_index_set_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14194
      functionLinenumberEnd: 14221
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          127
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_first
        - hmap_next
        - ovsdb_atom_string_create
        - ovsdb_datum_init_empty
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - smap_count
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:14195,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:14201,20'
          Dst:             smap_count
        - Src:             'lib/vswitch-idl.c:14202,23'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:14203,25'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:14207,9'
          Dst:             hmap_first
        - Src:             'lib/vswitch-idl.c:14208,32'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:14209,34'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:14207,9'
          Dst:             hmap_next
        - Src:             'lib/vswitch-idl.c:14212,9'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:14214,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:14216,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_flow_sample_collector_set_index_set_bridge
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14175
      functionLinenumberEnd: 14186
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:14179,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:14185,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_flow_sample_collector_set_cursor_data
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14164
      functionLinenumberEnd: 14165
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_cursor_data
        - ovsrec_flow_sample_collector_set_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:14165,50'
          Dst:             ovsdb_idl_cursor_data
        - Src:             'lib/vswitch-idl.c:14165,12'
          Dst:             ovsrec_flow_sample_collector_set_cast
    - functionName:    ovsrec_flow_sample_collector_set_cursor_first_ge
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14157
      functionLinenumberEnd: 14159
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_cursor_first_ge
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:14158,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:14159,12'
          Dst:             ovsdb_idl_cursor_first_ge
    - functionName:    ovsrec_flow_sample_collector_set_cursor_first_eq
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14149
      functionLinenumberEnd: 14151
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_cursor_first_eq
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:14150,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:14151,12'
          Dst:             ovsdb_idl_cursor_first_eq
    - functionName:    ovsrec_flow_sample_collector_set_cursor_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14141
      functionLinenumberEnd: 14143
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_cursor_first
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:14142,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:14143,12'
          Dst:             ovsdb_idl_cursor_first
    - functionName:    ovsrec_flow_sample_collector_set_index_compare
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14135
      functionLinenumberEnd: 14136
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_index_compare
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:14136,12'
          Dst:             ovsdb_idl_index_compare
    - functionName:    ovsrec_flow_sample_collector_set_index_find
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14124
      functionLinenumberEnd: 14126
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_index_find
        - ovsrec_flow_sample_collector_set_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:14125,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:14126,50'
          Dst:             ovsdb_idl_index_find
        - Src:             'lib/vswitch-idl.c:14126,12'
          Dst:             ovsrec_flow_sample_collector_set_cast
    - functionName:    ovsrec_flow_sample_collector_set_index_init_row
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14117
      functionLinenumberEnd: 14119
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_index_init_row
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:14118,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:14119,12'
          Dst:             ovsdb_idl_index_init_row
    - functionName:    ovsrec_flow_sample_collector_set_index_destroy_row
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14109
      functionLinenumberEnd: 14111
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_index_destroy_row
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:14110,5'
          Dst:             ovsdb_idl_index_destroy_row
    - functionName:    ovsrec_flow_sample_collector_set_add_clause_local_group_id
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14082
      functionLinenumberEnd: 14102
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:14088,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:14097,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:14101,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_flow_sample_collector_set_add_clause_ipfix
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14049
      functionLinenumberEnd: 14069
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:14055,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:14064,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:14068,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_flow_sample_collector_set_add_clause_id
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 14022
      functionLinenumberEnd: 14038
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:14027,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:14033,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:14037,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_flow_sample_collector_set_add_clause_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13996
      functionLinenumberEnd: 14011
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_condition_add_clause
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:14000,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:14002,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:14005,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:14010,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_flow_sample_collector_set_add_clause_bridge
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13972
      functionLinenumberEnd: 13988
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:13977,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:13983,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:13987,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_flow_sample_collector_set_update_local_group_id_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13950
      functionLinenumberEnd: 13964
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:13953,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:13955,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:13961,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_flow_sample_collector_set_update_local_group_id_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13928
      functionLinenumberEnd: 13942
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:13931,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:13933,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:13939,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_flow_sample_collector_set_update_ipfix_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13906
      functionLinenumberEnd: 13920
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          48
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:13909,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:13911,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:13917,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_flow_sample_collector_set_update_ipfix_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13884
      functionLinenumberEnd: 13898
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          48
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:13887,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:13889,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:13895,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_flow_sample_collector_set_update_external_ids_delkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13862
      functionLinenumberEnd: 13876
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:13865,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:13867,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:13871,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:13873,5'
          Dst:             ovsdb_idl_txn_delete_partial_map
    - functionName:    ovsrec_flow_sample_collector_set_update_external_ids_setkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13839
      functionLinenumberEnd: 13854
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          62
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:13842,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:13844,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:13845,21'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:13848,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:13849,26'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:13851,5'
          Dst:             ovsdb_idl_txn_write_partial_map
    - functionName:    ovsrec_flow_sample_collector_set_set_local_group_id
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13815
      functionLinenumberEnd: 13831
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:13821,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:13830,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_flow_sample_collector_set_set_ipfix
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13786
      functionLinenumberEnd: 13802
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:13792,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:13801,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_flow_sample_collector_set_set_id
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13763
      functionLinenumberEnd: 13775
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:13768,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:13774,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_flow_sample_collector_set_set_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13741
      functionLinenumberEnd: 13752
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_txn_write
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:13745,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:13747,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:13749,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_flow_sample_collector_set_set_bridge
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13721
      functionLinenumberEnd: 13733
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:13726,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:13732,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_flow_sample_collector_set_get_local_group_id
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13710
      functionLinenumberEnd: 13712
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:13711,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:13712,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_flow_sample_collector_set_get_ipfix
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13683
      functionLinenumberEnd: 13685
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:13684,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:13685,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_flow_sample_collector_set_get_id
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13656
      functionLinenumberEnd: 13658
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:13657,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:13658,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_flow_sample_collector_set_get_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13628
      functionLinenumberEnd: 13631
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:13629,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:13630,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:13631,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_flow_sample_collector_set_get_bridge
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13599
      functionLinenumberEnd: 13601
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:13600,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:13601,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_flow_sample_collector_set_verify_local_group_id
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13573
      functionLinenumberEnd: 13575
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:13574,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_flow_sample_collector_set_verify_ipfix
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13544
      functionLinenumberEnd: 13546
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:13545,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_flow_sample_collector_set_verify_id
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13515
      functionLinenumberEnd: 13517
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:13516,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_flow_sample_collector_set_verify_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13486
      functionLinenumberEnd: 13488
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:13487,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_flow_sample_collector_set_verify_bridge
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13457
      functionLinenumberEnd: 13459
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:13458,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_flow_sample_collector_set_is_updated
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13428
      functionLinenumberEnd: 13429
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_track_is_updated
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:13429,12'
          Dst:             ovsdb_idl_track_is_updated
    - functionName:    ovsrec_flow_sample_collector_set_insert_persist_uuid
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13421
      functionLinenumberEnd: 13423
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_insert_persist_uuid
        - ovsrec_flow_sample_collector_set_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:13422,50'
          Dst:             ovsdb_idl_txn_insert_persist_uuid
        - Src:             'lib/vswitch-idl.c:13422,12'
          Dst:             ovsrec_flow_sample_collector_set_cast
    - functionName:    ovsrec_flow_sample_collector_set_insert
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13409
      functionLinenumberEnd: 13410
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_insert
        - ovsrec_flow_sample_collector_set_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:13410,50'
          Dst:             ovsdb_idl_txn_insert
        - Src:             'lib/vswitch-idl.c:13410,12'
          Dst:             ovsrec_flow_sample_collector_set_cast
    - functionName:    ovsrec_flow_sample_collector_set_delete
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13396
      functionLinenumberEnd: 13398
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:13397,5'
          Dst:             ovsdb_idl_txn_delete
    - functionName:    ovsrec_flow_sample_collector_set_track_get_next
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13385
      functionLinenumberEnd: 13386
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_track_get_next
        - ovsrec_flow_sample_collector_set_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:13386,50'
          Dst:             ovsdb_idl_track_get_next
        - Src:             'lib/vswitch-idl.c:13386,12'
          Dst:             ovsrec_flow_sample_collector_set_cast
    - functionName:    ovsrec_flow_sample_collector_set_row_get_seqno
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13373
      functionLinenumberEnd: 13374
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_row_get_seqno
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:13374,12'
          Dst:             ovsdb_idl_row_get_seqno
    - functionName:    ovsrec_flow_sample_collector_set_get_seqno
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13368
      functionLinenumberEnd: 13369
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_table_get_seqno
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:13369,12'
          Dst:             ovsdb_idl_table_get_seqno
    - functionName:    ovsrec_flow_sample_collector_set_next
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13363
      functionLinenumberEnd: 13364
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_next_row
        - ovsrec_flow_sample_collector_set_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:13364,50'
          Dst:             ovsdb_idl_next_row
        - Src:             'lib/vswitch-idl.c:13364,12'
          Dst:             ovsrec_flow_sample_collector_set_cast
    - functionName:    ovsrec_flow_sample_collector_set_table_get_for_uuid
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13342
      functionLinenumberEnd: 13344
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_flow_sample_collector_set_get_for_uuid
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:13344,12'
          Dst:             ovsrec_flow_sample_collector_set_get_for_uuid
    - functionName:    ovsrec_flow_sample_collector_set_get_for_uuid
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13334
      functionLinenumberEnd: 13335
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_get_row_for_uuid
        - ovsrec_flow_sample_collector_set_cast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:13335,50'
          Dst:             ovsdb_idl_get_row_for_uuid
        - Src:             'lib/vswitch-idl.c:13335,12'
          Dst:             ovsrec_flow_sample_collector_set_cast
    - functionName:    ovsrec_flow_sample_collector_set_track_get_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13379
      functionLinenumberEnd: 13380
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_track_get_first
        - ovsrec_flow_sample_collector_set_cast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:13380,50'
          Dst:             ovsdb_idl_track_get_first
        - Src:             'lib/vswitch-idl.c:13380,12'
          Dst:             ovsrec_flow_sample_collector_set_cast
    - functionName:    ovsrec_flow_sample_collector_set_table_track_get_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13214
      functionLinenumberEnd: 13216
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_flow_sample_collector_set_track_get_first
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:13216,12'
          Dst:             ovsrec_flow_sample_collector_set_track_get_first
    - functionName:    ovsrec_flow_sample_collector_set_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13355
      functionLinenumberEnd: 13356
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_first_row
        - ovsrec_flow_sample_collector_set_cast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:13356,50'
          Dst:             ovsdb_idl_first_row
        - Src:             'lib/vswitch-idl.c:13356,12'
          Dst:             ovsrec_flow_sample_collector_set_cast
    - functionName:    ovsrec_flow_sample_collector_set_table_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13206
      functionLinenumberEnd: 13208
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_flow_sample_collector_set_first
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:13208,12'
          Dst:             ovsrec_flow_sample_collector_set_first
    - functionName:    ovsrec_flow_sample_collector_set_table_get
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13200
      functionLinenumberEnd: 13201
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_server_has_flow_sample_collector_set_table
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13193
      functionLinenumberEnd: 13194
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_table
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:13194,12'
          Dst:             ovsdb_idl_server_has_table
    - functionName:    ovsrec_flow_sample_collector_set_local_group_id_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13186
      functionLinenumberEnd: 13187
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:13187,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_flow_sample_collector_set_table_col_local_group_id
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13180
      functionLinenumberEnd: 13181
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:13181,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_flow_sample_collector_set_ipfix_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13173
      functionLinenumberEnd: 13174
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:13174,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_flow_sample_collector_set_table_col_ipfix
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13167
      functionLinenumberEnd: 13168
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:13168,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_flow_sample_collector_set_id_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13160
      functionLinenumberEnd: 13161
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:13161,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_flow_sample_collector_set_table_col_id
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13154
      functionLinenumberEnd: 13155
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:13155,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_flow_sample_collector_set_external_ids_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13147
      functionLinenumberEnd: 13148
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:13148,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_flow_sample_collector_set_table_col_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13141
      functionLinenumberEnd: 13142
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:13142,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_flow_sample_collector_set_bridge_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13134
      functionLinenumberEnd: 13135
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:13135,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_flow_sample_collector_set_table_col_bridge
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13128
      functionLinenumberEnd: 13129
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:13129,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_datapath_set_condition
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 13023
      functionLinenumberEnd: 13024
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_set_condition
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:13024,12'
          Dst:             ovsdb_idl_set_condition
    - functionName:    ovsrec_datapath_index_set_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12989
      functionLinenumberEnd: 13016
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          127
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_first
        - hmap_next
        - ovsdb_atom_string_create
        - ovsdb_datum_init_empty
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - smap_count
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:12990,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:12996,20'
          Dst:             smap_count
        - Src:             'lib/vswitch-idl.c:12997,23'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:12998,25'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:13002,9'
          Dst:             hmap_first
        - Src:             'lib/vswitch-idl.c:13003,32'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:13004,34'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:13002,9'
          Dst:             hmap_next
        - Src:             'lib/vswitch-idl.c:13007,9'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:13009,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:13011,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_datapath_index_set_datapath_version
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12970
      functionLinenumberEnd: 12981
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:12974,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:12978,14'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:12980,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_datapath_index_set_ct_zones
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12947
      functionLinenumberEnd: 12962
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          92
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:12954,31'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:12955,20'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:12960,5'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:12961,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_datapath_index_set_ct_zone_default_limit
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12919
      functionLinenumberEnd: 12936
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:12926,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:12935,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_datapath_index_set_capabilities
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12878
      functionLinenumberEnd: 12905
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          127
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_first
        - hmap_next
        - ovsdb_atom_string_create
        - ovsdb_datum_init_empty
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - smap_count
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:12879,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:12885,20'
          Dst:             smap_count
        - Src:             'lib/vswitch-idl.c:12886,23'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:12887,25'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:12891,9'
          Dst:             hmap_first
        - Src:             'lib/vswitch-idl.c:12892,32'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:12893,34'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:12891,9'
          Dst:             hmap_next
        - Src:             'lib/vswitch-idl.c:12896,9'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:12898,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:12900,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_datapath_cursor_data
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12867
      functionLinenumberEnd: 12868
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_cursor_data
        - ovsrec_datapath_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:12868,33'
          Dst:             ovsdb_idl_cursor_data
        - Src:             'lib/vswitch-idl.c:12868,12'
          Dst:             ovsrec_datapath_cast
    - functionName:    ovsrec_datapath_cursor_first_ge
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12860
      functionLinenumberEnd: 12862
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_cursor_first_ge
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:12861,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:12862,12'
          Dst:             ovsdb_idl_cursor_first_ge
    - functionName:    ovsrec_datapath_cursor_first_eq
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12852
      functionLinenumberEnd: 12854
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_cursor_first_eq
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:12853,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:12854,12'
          Dst:             ovsdb_idl_cursor_first_eq
    - functionName:    ovsrec_datapath_cursor_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12844
      functionLinenumberEnd: 12846
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_cursor_first
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:12845,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:12846,12'
          Dst:             ovsdb_idl_cursor_first
    - functionName:    ovsrec_datapath_index_compare
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12838
      functionLinenumberEnd: 12839
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_index_compare
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:12839,12'
          Dst:             ovsdb_idl_index_compare
    - functionName:    ovsrec_datapath_index_find
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12827
      functionLinenumberEnd: 12829
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_index_find
        - ovsrec_datapath_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:12828,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:12829,33'
          Dst:             ovsdb_idl_index_find
        - Src:             'lib/vswitch-idl.c:12829,12'
          Dst:             ovsrec_datapath_cast
    - functionName:    ovsrec_datapath_index_init_row
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12820
      functionLinenumberEnd: 12822
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_index_init_row
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:12821,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:12822,12'
          Dst:             ovsdb_idl_index_init_row
    - functionName:    ovsrec_datapath_index_destroy_row
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12812
      functionLinenumberEnd: 12814
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_index_destroy_row
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:12813,5'
          Dst:             ovsdb_idl_index_destroy_row
    - functionName:    ovsrec_datapath_add_clause_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12789
      functionLinenumberEnd: 12804
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_condition_add_clause
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:12793,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:12795,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:12798,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:12803,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_datapath_add_clause_datapath_version
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12765
      functionLinenumberEnd: 12781
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          38
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:12770,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:12774,14'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:12776,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:12780,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_datapath_add_clause_ct_zones
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12740
      functionLinenumberEnd: 12757
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          93
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_datum_sort_unique
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:12745,31'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:12746,20'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:12751,5'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:12752,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:12756,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_datapath_add_clause_ct_zone_default_limit
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12709
      functionLinenumberEnd: 12729
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:12715,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:12724,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:12728,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_datapath_add_clause_capabilities
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12680
      functionLinenumberEnd: 12695
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_condition_add_clause
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:12684,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:12686,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:12689,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:12694,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_datapath_update_external_ids_delkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12658
      functionLinenumberEnd: 12672
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:12661,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:12663,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:12667,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:12669,5'
          Dst:             ovsdb_idl_txn_delete_partial_map
    - functionName:    ovsrec_datapath_update_external_ids_setkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12635
      functionLinenumberEnd: 12650
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          62
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:12638,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:12640,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:12641,21'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:12644,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:12645,26'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:12647,5'
          Dst:             ovsdb_idl_txn_write_partial_map
    - functionName:    ovsrec_datapath_update_ct_zones_delkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12613
      functionLinenumberEnd: 12627
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:12616,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:12618,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:12624,5'
          Dst:             ovsdb_idl_txn_delete_partial_map
    - functionName:    ovsrec_datapath_update_ct_zones_setkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12590
      functionLinenumberEnd: 12605
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          62
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:12593,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:12595,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:12596,21'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:12602,5'
          Dst:             ovsdb_idl_txn_write_partial_map
    - functionName:    ovsrec_datapath_update_ct_zone_default_limit_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12568
      functionLinenumberEnd: 12582
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:12571,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:12573,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:12579,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_datapath_update_ct_zone_default_limit_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12546
      functionLinenumberEnd: 12560
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:12549,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:12551,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:12557,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_datapath_update_capabilities_delkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12524
      functionLinenumberEnd: 12538
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:12527,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:12529,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:12533,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:12535,5'
          Dst:             ovsdb_idl_txn_delete_partial_map
    - functionName:    ovsrec_datapath_update_capabilities_setkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12501
      functionLinenumberEnd: 12516
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          62
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:12504,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:12506,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:12507,21'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:12510,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:12511,26'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:12513,5'
          Dst:             ovsdb_idl_txn_write_partial_map
    - functionName:    ovsrec_datapath_set_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12481
      functionLinenumberEnd: 12492
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_txn_write
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:12485,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:12487,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:12489,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_datapath_set_datapath_version
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12461
      functionLinenumberEnd: 12473
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:12466,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:12470,14'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:12472,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_datapath_set_ct_zones
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12440
      functionLinenumberEnd: 12453
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          91
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:12446,31'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:12447,20'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:12452,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_datapath_set_ct_zone_default_limit
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12413
      functionLinenumberEnd: 12429
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:12419,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:12428,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_datapath_set_capabilities
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12388
      functionLinenumberEnd: 12399
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_txn_write
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:12392,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:12394,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:12396,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_datapath_get_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12376
      functionLinenumberEnd: 12379
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:12377,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:12378,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:12379,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_datapath_get_datapath_version
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12347
      functionLinenumberEnd: 12349
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:12348,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:12349,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_datapath_get_ct_zones
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12319
      functionLinenumberEnd: 12322
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:12320,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:12321,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:12322,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_datapath_get_ct_zone_default_limit
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12290
      functionLinenumberEnd: 12292
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:12291,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:12292,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_datapath_get_capabilities
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12262
      functionLinenumberEnd: 12265
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:12263,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:12264,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:12265,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_datapath_verify_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12234
      functionLinenumberEnd: 12236
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:12235,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_datapath_verify_datapath_version
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12205
      functionLinenumberEnd: 12207
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:12206,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_datapath_verify_ct_zones
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12176
      functionLinenumberEnd: 12178
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:12177,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_datapath_verify_ct_zone_default_limit
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12147
      functionLinenumberEnd: 12149
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:12148,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_datapath_verify_capabilities
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12118
      functionLinenumberEnd: 12120
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:12119,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_datapath_is_updated
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12089
      functionLinenumberEnd: 12090
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_track_is_updated
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:12090,12'
          Dst:             ovsdb_idl_track_is_updated
    - functionName:    ovsrec_datapath_insert_persist_uuid
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12082
      functionLinenumberEnd: 12084
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_insert_persist_uuid
        - ovsrec_datapath_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:12083,33'
          Dst:             ovsdb_idl_txn_insert_persist_uuid
        - Src:             'lib/vswitch-idl.c:12083,12'
          Dst:             ovsrec_datapath_cast
    - functionName:    ovsrec_datapath_insert
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12070
      functionLinenumberEnd: 12071
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_insert
        - ovsrec_datapath_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:12071,33'
          Dst:             ovsdb_idl_txn_insert
        - Src:             'lib/vswitch-idl.c:12071,12'
          Dst:             ovsrec_datapath_cast
    - functionName:    ovsrec_datapath_delete
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12057
      functionLinenumberEnd: 12059
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:12058,5'
          Dst:             ovsdb_idl_txn_delete
    - functionName:    ovsrec_datapath_track_get_next
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12046
      functionLinenumberEnd: 12047
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_track_get_next
        - ovsrec_datapath_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:12047,33'
          Dst:             ovsdb_idl_track_get_next
        - Src:             'lib/vswitch-idl.c:12047,12'
          Dst:             ovsrec_datapath_cast
    - functionName:    ovsrec_datapath_row_get_seqno
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12034
      functionLinenumberEnd: 12035
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_row_get_seqno
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:12035,12'
          Dst:             ovsdb_idl_row_get_seqno
    - functionName:    ovsrec_datapath_get_seqno
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12029
      functionLinenumberEnd: 12030
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_table_get_seqno
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:12030,12'
          Dst:             ovsdb_idl_table_get_seqno
    - functionName:    ovsrec_datapath_next
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12024
      functionLinenumberEnd: 12025
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_next_row
        - ovsrec_datapath_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:12025,33'
          Dst:             ovsdb_idl_next_row
        - Src:             'lib/vswitch-idl.c:12025,12'
          Dst:             ovsrec_datapath_cast
    - functionName:    ovsrec_datapath_table_get_for_uuid
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12003
      functionLinenumberEnd: 12005
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_datapath_get_for_uuid
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:12005,12'
          Dst:             ovsrec_datapath_get_for_uuid
    - functionName:    ovsrec_datapath_get_for_uuid
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11995
      functionLinenumberEnd: 11996
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_get_row_for_uuid
        - ovsrec_datapath_cast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:11996,33'
          Dst:             ovsdb_idl_get_row_for_uuid
        - Src:             'lib/vswitch-idl.c:11996,12'
          Dst:             ovsrec_datapath_cast
    - functionName:    ovsrec_datapath_track_get_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12040
      functionLinenumberEnd: 12041
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_track_get_first
        - ovsrec_datapath_cast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:12041,33'
          Dst:             ovsdb_idl_track_get_first
        - Src:             'lib/vswitch-idl.c:12041,12'
          Dst:             ovsrec_datapath_cast
    - functionName:    ovsrec_datapath_table_track_get_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11860
      functionLinenumberEnd: 11862
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_datapath_track_get_first
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:11862,12'
          Dst:             ovsrec_datapath_track_get_first
    - functionName:    ovsrec_datapath_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 12016
      functionLinenumberEnd: 12017
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_first_row
        - ovsrec_datapath_cast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:12017,33'
          Dst:             ovsdb_idl_first_row
        - Src:             'lib/vswitch-idl.c:12017,12'
          Dst:             ovsrec_datapath_cast
    - functionName:    ovsrec_datapath_table_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11852
      functionLinenumberEnd: 11854
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_datapath_first
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:11854,12'
          Dst:             ovsrec_datapath_first
    - functionName:    ovsrec_datapath_table_get
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11846
      functionLinenumberEnd: 11847
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_server_has_datapath_table
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11839
      functionLinenumberEnd: 11840
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_table
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:11840,12'
          Dst:             ovsdb_idl_server_has_table
    - functionName:    ovsrec_datapath_external_ids_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11832
      functionLinenumberEnd: 11833
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:11833,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_datapath_table_col_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11826
      functionLinenumberEnd: 11827
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:11827,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_datapath_datapath_version_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11819
      functionLinenumberEnd: 11820
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:11820,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_datapath_table_col_datapath_version
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11813
      functionLinenumberEnd: 11814
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:11814,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_datapath_ct_zones_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11806
      functionLinenumberEnd: 11807
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:11807,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_datapath_table_col_ct_zones
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11800
      functionLinenumberEnd: 11801
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:11801,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_datapath_ct_zone_default_limit_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11793
      functionLinenumberEnd: 11794
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:11794,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_datapath_table_col_ct_zone_default_limit
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11787
      functionLinenumberEnd: 11788
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:11788,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_datapath_capabilities_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11780
      functionLinenumberEnd: 11781
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:11781,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_datapath_table_col_capabilities
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11774
      functionLinenumberEnd: 11775
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:11775,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_controller_set_condition
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11426
      functionLinenumberEnd: 11427
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_set_condition
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:11427,12'
          Dst:             ovsdb_idl_set_condition
    - functionName:    ovsrec_controller_index_set_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11403
      functionLinenumberEnd: 11420
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:11410,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:11413,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:11419,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_controller_index_set_target
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11379
      functionLinenumberEnd: 11390
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:11383,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:11387,14'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:11389,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_controller_index_set_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11343
      functionLinenumberEnd: 11370
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          127
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_first
        - hmap_next
        - ovsdb_atom_string_create
        - ovsdb_datum_init_empty
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - smap_count
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:11344,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:11350,20'
          Dst:             smap_count
        - Src:             'lib/vswitch-idl.c:11351,23'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:11352,25'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:11356,9'
          Dst:             hmap_first
        - Src:             'lib/vswitch-idl.c:11357,32'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:11358,34'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:11356,9'
          Dst:             hmap_next
        - Src:             'lib/vswitch-idl.c:11361,9'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:11363,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:11365,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_controller_index_set_role
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11318
      functionLinenumberEnd: 11335
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:11325,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:11328,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:11334,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_controller_index_set_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11277
      functionLinenumberEnd: 11304
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          127
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_first
        - hmap_next
        - ovsdb_atom_string_create
        - ovsdb_datum_init_empty
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - smap_count
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:11278,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:11284,20'
          Dst:             smap_count
        - Src:             'lib/vswitch-idl.c:11285,23'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:11286,25'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:11290,9'
          Dst:             hmap_first
        - Src:             'lib/vswitch-idl.c:11291,32'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:11292,34'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:11290,9'
          Dst:             hmap_next
        - Src:             'lib/vswitch-idl.c:11295,9'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:11297,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:11299,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_controller_index_set_max_backoff
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11252
      functionLinenumberEnd: 11269
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:11259,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:11268,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_controller_index_set_local_netmask
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11222
      functionLinenumberEnd: 11239
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:11229,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:11232,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:11238,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_controller_index_set_local_ip
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11194
      functionLinenumberEnd: 11211
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:11201,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:11204,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:11210,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_controller_index_set_local_gateway
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11166
      functionLinenumberEnd: 11183
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:11173,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:11176,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:11182,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_controller_index_set_is_connected
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11144
      functionLinenumberEnd: 11155
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:11148,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:11154,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_controller_index_set_inactivity_probe
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11119
      functionLinenumberEnd: 11136
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:11126,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:11135,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_controller_index_set_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11080
      functionLinenumberEnd: 11107
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          127
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_first
        - hmap_next
        - ovsdb_atom_string_create
        - ovsdb_datum_init_empty
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - smap_count
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:11081,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:11087,20'
          Dst:             smap_count
        - Src:             'lib/vswitch-idl.c:11088,23'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:11089,25'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:11093,9'
          Dst:             hmap_first
        - Src:             'lib/vswitch-idl.c:11094,32'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:11095,34'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:11093,9'
          Dst:             hmap_next
        - Src:             'lib/vswitch-idl.c:11098,9'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:11100,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:11102,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_controller_index_set_enable_async_messages
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11055
      functionLinenumberEnd: 11072
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          55
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:11062,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:11071,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_controller_index_set_controller_rate_limit
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 11027
      functionLinenumberEnd: 11044
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:11034,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:11043,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_controller_index_set_controller_queue_size
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10997
      functionLinenumberEnd: 11014
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:11004,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:11013,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_controller_index_set_controller_burst_limit
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10967
      functionLinenumberEnd: 10984
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:10974,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:10983,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_controller_index_set_connection_mode
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10937
      functionLinenumberEnd: 10954
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:10944,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:10947,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:10953,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_controller_cursor_data
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10921
      functionLinenumberEnd: 10922
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_cursor_data
        - ovsrec_controller_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:10922,35'
          Dst:             ovsdb_idl_cursor_data
        - Src:             'lib/vswitch-idl.c:10922,12'
          Dst:             ovsrec_controller_cast
    - functionName:    ovsrec_controller_cursor_first_ge
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10914
      functionLinenumberEnd: 10916
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_cursor_first_ge
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:10915,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:10916,12'
          Dst:             ovsdb_idl_cursor_first_ge
    - functionName:    ovsrec_controller_cursor_first_eq
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10906
      functionLinenumberEnd: 10908
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_cursor_first_eq
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:10907,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:10908,12'
          Dst:             ovsdb_idl_cursor_first_eq
    - functionName:    ovsrec_controller_cursor_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10898
      functionLinenumberEnd: 10900
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_cursor_first
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:10899,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:10900,12'
          Dst:             ovsdb_idl_cursor_first
    - functionName:    ovsrec_controller_index_compare
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10892
      functionLinenumberEnd: 10893
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_index_compare
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:10893,12'
          Dst:             ovsdb_idl_index_compare
    - functionName:    ovsrec_controller_index_find
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10881
      functionLinenumberEnd: 10883
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_index_find
        - ovsrec_controller_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:10882,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:10883,35'
          Dst:             ovsdb_idl_index_find
        - Src:             'lib/vswitch-idl.c:10883,12'
          Dst:             ovsrec_controller_cast
    - functionName:    ovsrec_controller_index_init_row
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10874
      functionLinenumberEnd: 10876
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_index_init_row
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:10875,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:10876,12'
          Dst:             ovsdb_idl_index_init_row
    - functionName:    ovsrec_controller_index_destroy_row
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10866
      functionLinenumberEnd: 10868
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_index_destroy_row
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:10867,5'
          Dst:             ovsdb_idl_index_destroy_row
    - functionName:    ovsrec_controller_add_clause_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10839
      functionLinenumberEnd: 10859
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:10845,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:10848,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:10854,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:10858,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_controller_add_clause_target
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10810
      functionLinenumberEnd: 10826
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          38
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:10815,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:10819,14'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:10821,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:10825,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_controller_add_clause_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10786
      functionLinenumberEnd: 10801
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_condition_add_clause
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:10790,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:10792,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:10795,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:10800,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_controller_add_clause_role
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10758
      functionLinenumberEnd: 10778
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:10764,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:10767,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:10773,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:10777,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_controller_add_clause_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10729
      functionLinenumberEnd: 10744
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_condition_add_clause
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:10733,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:10735,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:10738,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:10743,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_controller_add_clause_max_backoff
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10701
      functionLinenumberEnd: 10721
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:10707,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:10716,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:10720,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_controller_add_clause_local_netmask
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10668
      functionLinenumberEnd: 10688
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:10674,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:10677,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:10683,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:10687,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_controller_add_clause_local_ip
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10637
      functionLinenumberEnd: 10657
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:10643,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:10646,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:10652,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:10656,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_controller_add_clause_local_gateway
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10606
      functionLinenumberEnd: 10626
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:10612,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:10615,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:10621,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:10625,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_controller_add_clause_is_connected
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10579
      functionLinenumberEnd: 10595
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          40
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:10584,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:10590,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:10594,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_controller_add_clause_inactivity_probe
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10551
      functionLinenumberEnd: 10571
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:10557,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:10566,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:10570,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_controller_add_clause_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10524
      functionLinenumberEnd: 10539
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_condition_add_clause
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:10528,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:10530,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:10533,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:10538,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_controller_add_clause_enable_async_messages
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10496
      functionLinenumberEnd: 10516
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          58
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:10502,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:10511,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:10515,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_controller_add_clause_controller_rate_limit
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10465
      functionLinenumberEnd: 10485
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:10471,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:10480,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:10484,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_controller_add_clause_controller_queue_size
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10432
      functionLinenumberEnd: 10452
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:10438,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:10447,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:10451,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_controller_add_clause_controller_burst_limit
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10399
      functionLinenumberEnd: 10419
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:10405,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:10414,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:10418,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_controller_add_clause_connection_mode
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10366
      functionLinenumberEnd: 10386
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:10372,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:10375,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:10381,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:10385,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_controller_update_type_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10339
      functionLinenumberEnd: 10353
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:10342,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:10344,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:10348,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:10350,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_controller_update_type_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10317
      functionLinenumberEnd: 10331
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:10320,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:10322,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:10326,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:10328,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_controller_update_status_delkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10295
      functionLinenumberEnd: 10309
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:10298,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:10300,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:10304,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:10306,5'
          Dst:             ovsdb_idl_txn_delete_partial_map
    - functionName:    ovsrec_controller_update_status_setkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10272
      functionLinenumberEnd: 10287
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          62
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:10275,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:10277,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:10278,21'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:10281,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:10282,26'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:10284,5'
          Dst:             ovsdb_idl_txn_write_partial_map
    - functionName:    ovsrec_controller_update_role_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10250
      functionLinenumberEnd: 10264
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:10253,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:10255,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:10259,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:10261,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_controller_update_role_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10228
      functionLinenumberEnd: 10242
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:10231,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:10233,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:10237,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:10239,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_controller_update_other_config_delkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10206
      functionLinenumberEnd: 10220
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:10209,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:10211,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:10215,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:10217,5'
          Dst:             ovsdb_idl_txn_delete_partial_map
    - functionName:    ovsrec_controller_update_other_config_setkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10183
      functionLinenumberEnd: 10198
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          62
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:10186,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:10188,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:10189,21'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:10192,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:10193,26'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:10195,5'
          Dst:             ovsdb_idl_txn_write_partial_map
    - functionName:    ovsrec_controller_update_max_backoff_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10161
      functionLinenumberEnd: 10175
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:10164,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:10166,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:10172,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_controller_update_max_backoff_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10139
      functionLinenumberEnd: 10153
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:10142,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:10144,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:10150,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_controller_update_local_netmask_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10117
      functionLinenumberEnd: 10131
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:10120,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:10122,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:10126,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:10128,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_controller_update_local_netmask_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10095
      functionLinenumberEnd: 10109
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:10098,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:10100,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:10104,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:10106,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_controller_update_local_ip_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10073
      functionLinenumberEnd: 10087
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:10076,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:10078,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:10082,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:10084,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_controller_update_local_ip_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10051
      functionLinenumberEnd: 10065
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:10054,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:10056,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:10060,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:10062,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_controller_update_local_gateway_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10029
      functionLinenumberEnd: 10043
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:10032,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:10034,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:10038,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:10040,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_controller_update_local_gateway_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 10007
      functionLinenumberEnd: 10021
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:10010,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:10012,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:10016,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:10018,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_controller_update_inactivity_probe_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9985
      functionLinenumberEnd: 9999
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:9988,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:9990,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:9996,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_controller_update_inactivity_probe_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9963
      functionLinenumberEnd: 9977
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:9966,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:9968,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:9974,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_controller_update_external_ids_delkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9941
      functionLinenumberEnd: 9955
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:9944,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:9946,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:9950,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:9952,5'
          Dst:             ovsdb_idl_txn_delete_partial_map
    - functionName:    ovsrec_controller_update_external_ids_setkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9918
      functionLinenumberEnd: 9933
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          62
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:9921,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:9923,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:9924,21'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:9927,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:9928,26'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:9930,5'
          Dst:             ovsdb_idl_txn_write_partial_map
    - functionName:    ovsrec_controller_update_enable_async_messages_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9896
      functionLinenumberEnd: 9910
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          49
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:9899,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:9901,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:9907,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_controller_update_enable_async_messages_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9874
      functionLinenumberEnd: 9888
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          49
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:9877,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:9879,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:9885,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_controller_update_controller_rate_limit_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9852
      functionLinenumberEnd: 9866
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:9855,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:9857,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:9863,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_controller_update_controller_rate_limit_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9830
      functionLinenumberEnd: 9844
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:9833,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:9835,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:9841,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_controller_update_controller_queue_size_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9808
      functionLinenumberEnd: 9822
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:9811,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:9813,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:9819,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_controller_update_controller_queue_size_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9786
      functionLinenumberEnd: 9800
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:9789,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:9791,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:9797,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_controller_update_controller_burst_limit_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9764
      functionLinenumberEnd: 9778
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:9767,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:9769,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:9775,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_controller_update_controller_burst_limit_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9742
      functionLinenumberEnd: 9756
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:9745,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:9747,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:9753,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_controller_update_connection_mode_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9720
      functionLinenumberEnd: 9734
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:9723,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:9725,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:9729,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:9731,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_controller_update_connection_mode_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9698
      functionLinenumberEnd: 9712
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:9701,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:9703,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:9707,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:9709,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_controller_set_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9674
      functionLinenumberEnd: 9690
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:9680,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:9683,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:9689,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_controller_set_target
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9649
      functionLinenumberEnd: 9661
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:9654,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:9658,14'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:9660,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_controller_set_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9629
      functionLinenumberEnd: 9640
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_txn_write
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:9633,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:9635,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:9637,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_controller_set_role
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9605
      functionLinenumberEnd: 9621
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:9611,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:9614,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:9620,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_controller_set_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9580
      functionLinenumberEnd: 9591
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_txn_write
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:9584,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:9586,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:9588,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_controller_set_max_backoff
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9556
      functionLinenumberEnd: 9572
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:9562,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:9571,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_controller_set_local_netmask
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9527
      functionLinenumberEnd: 9543
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:9533,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:9536,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:9542,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_controller_set_local_ip
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9500
      functionLinenumberEnd: 9516
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:9506,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:9509,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:9515,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_controller_set_local_gateway
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9473
      functionLinenumberEnd: 9489
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:9479,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:9482,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:9488,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_controller_set_is_connected
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9450
      functionLinenumberEnd: 9462
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:9455,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:9461,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_controller_set_inactivity_probe
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9426
      functionLinenumberEnd: 9442
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:9432,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:9441,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_controller_set_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9403
      functionLinenumberEnd: 9414
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_txn_write
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:9407,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:9409,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:9411,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_controller_set_enable_async_messages
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9379
      functionLinenumberEnd: 9395
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          55
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:9385,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:9394,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_controller_set_controller_rate_limit
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9352
      functionLinenumberEnd: 9368
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:9358,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:9367,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_controller_set_controller_queue_size
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9323
      functionLinenumberEnd: 9339
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:9329,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:9338,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_controller_set_controller_burst_limit
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9294
      functionLinenumberEnd: 9310
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:9300,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:9309,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_controller_set_connection_mode
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9265
      functionLinenumberEnd: 9281
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:9271,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:9274,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:9280,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_controller_get_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9249
      functionLinenumberEnd: 9251
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:9250,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:9251,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_controller_get_target
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9222
      functionLinenumberEnd: 9224
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:9223,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:9224,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_controller_get_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9194
      functionLinenumberEnd: 9197
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:9195,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:9196,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:9197,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_controller_get_role
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9165
      functionLinenumberEnd: 9167
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:9166,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:9167,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_controller_get_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9137
      functionLinenumberEnd: 9140
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:9138,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:9139,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:9140,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_controller_get_max_backoff
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9108
      functionLinenumberEnd: 9110
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:9109,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:9110,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_controller_get_local_netmask
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9081
      functionLinenumberEnd: 9083
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:9082,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:9083,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_controller_get_local_ip
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9054
      functionLinenumberEnd: 9056
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:9055,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:9056,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_controller_get_local_gateway
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9027
      functionLinenumberEnd: 9029
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:9028,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:9029,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_controller_get_is_connected
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 9000
      functionLinenumberEnd: 9002
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:9001,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:9002,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_controller_get_inactivity_probe
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8973
      functionLinenumberEnd: 8975
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:8974,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:8975,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_controller_get_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8945
      functionLinenumberEnd: 8948
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:8946,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:8947,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:8948,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_controller_get_enable_async_messages
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8916
      functionLinenumberEnd: 8918
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:8917,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:8918,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_controller_get_controller_rate_limit
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8889
      functionLinenumberEnd: 8891
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:8890,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:8891,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_controller_get_controller_queue_size
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8862
      functionLinenumberEnd: 8864
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:8863,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:8864,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_controller_get_controller_burst_limit
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8835
      functionLinenumberEnd: 8837
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:8836,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:8837,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_controller_get_connection_mode
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8808
      functionLinenumberEnd: 8810
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:8809,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:8810,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_controller_verify_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8782
      functionLinenumberEnd: 8784
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:8783,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_controller_verify_target
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8753
      functionLinenumberEnd: 8755
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:8754,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_controller_verify_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8724
      functionLinenumberEnd: 8726
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:8725,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_controller_verify_role
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8695
      functionLinenumberEnd: 8697
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:8696,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_controller_verify_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8666
      functionLinenumberEnd: 8668
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:8667,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_controller_verify_max_backoff
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8637
      functionLinenumberEnd: 8639
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:8638,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_controller_verify_local_netmask
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8608
      functionLinenumberEnd: 8610
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:8609,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_controller_verify_local_ip
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8579
      functionLinenumberEnd: 8581
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:8580,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_controller_verify_local_gateway
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8550
      functionLinenumberEnd: 8552
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:8551,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_controller_verify_is_connected
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8521
      functionLinenumberEnd: 8523
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:8522,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_controller_verify_inactivity_probe
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8492
      functionLinenumberEnd: 8494
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:8493,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_controller_verify_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8463
      functionLinenumberEnd: 8465
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:8464,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_controller_verify_enable_async_messages
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8434
      functionLinenumberEnd: 8436
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:8435,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_controller_verify_controller_rate_limit
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8405
      functionLinenumberEnd: 8407
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:8406,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_controller_verify_controller_queue_size
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8376
      functionLinenumberEnd: 8378
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:8377,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_controller_verify_controller_burst_limit
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8347
      functionLinenumberEnd: 8349
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:8348,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_controller_verify_connection_mode
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8318
      functionLinenumberEnd: 8320
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:8319,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_controller_is_updated
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8289
      functionLinenumberEnd: 8290
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_track_is_updated
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:8290,12'
          Dst:             ovsdb_idl_track_is_updated
    - functionName:    ovsrec_controller_insert_persist_uuid
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8282
      functionLinenumberEnd: 8284
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_insert_persist_uuid
        - ovsrec_controller_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:8283,35'
          Dst:             ovsdb_idl_txn_insert_persist_uuid
        - Src:             'lib/vswitch-idl.c:8283,12'
          Dst:             ovsrec_controller_cast
    - functionName:    ovsrec_controller_insert
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8270
      functionLinenumberEnd: 8271
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_insert
        - ovsrec_controller_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:8271,35'
          Dst:             ovsdb_idl_txn_insert
        - Src:             'lib/vswitch-idl.c:8271,12'
          Dst:             ovsrec_controller_cast
    - functionName:    ovsrec_controller_delete
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8257
      functionLinenumberEnd: 8259
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:8258,5'
          Dst:             ovsdb_idl_txn_delete
    - functionName:    ovsrec_controller_track_get_next
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8246
      functionLinenumberEnd: 8247
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_track_get_next
        - ovsrec_controller_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:8247,35'
          Dst:             ovsdb_idl_track_get_next
        - Src:             'lib/vswitch-idl.c:8247,12'
          Dst:             ovsrec_controller_cast
    - functionName:    ovsrec_controller_row_get_seqno
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8234
      functionLinenumberEnd: 8235
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_row_get_seqno
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:8235,12'
          Dst:             ovsdb_idl_row_get_seqno
    - functionName:    ovsrec_controller_get_seqno
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8229
      functionLinenumberEnd: 8230
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_table_get_seqno
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:8230,12'
          Dst:             ovsdb_idl_table_get_seqno
    - functionName:    ovsrec_controller_next
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8224
      functionLinenumberEnd: 8225
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_next_row
        - ovsrec_controller_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:8225,35'
          Dst:             ovsdb_idl_next_row
        - Src:             'lib/vswitch-idl.c:8225,12'
          Dst:             ovsrec_controller_cast
    - functionName:    ovsrec_controller_table_get_for_uuid
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8203
      functionLinenumberEnd: 8205
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_controller_get_for_uuid
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:8205,12'
          Dst:             ovsrec_controller_get_for_uuid
    - functionName:    ovsrec_controller_get_for_uuid
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8195
      functionLinenumberEnd: 8196
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_get_row_for_uuid
        - ovsrec_controller_cast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:8196,35'
          Dst:             ovsdb_idl_get_row_for_uuid
        - Src:             'lib/vswitch-idl.c:8196,12'
          Dst:             ovsrec_controller_cast
    - functionName:    ovsrec_controller_track_get_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8240
      functionLinenumberEnd: 8241
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_track_get_first
        - ovsrec_controller_cast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:8241,35'
          Dst:             ovsdb_idl_track_get_first
        - Src:             'lib/vswitch-idl.c:8241,12'
          Dst:             ovsrec_controller_cast
    - functionName:    ovsrec_controller_table_track_get_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7829
      functionLinenumberEnd: 7831
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_controller_track_get_first
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7831,12'
          Dst:             ovsrec_controller_track_get_first
    - functionName:    ovsrec_controller_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 8216
      functionLinenumberEnd: 8217
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_first_row
        - ovsrec_controller_cast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:8217,35'
          Dst:             ovsdb_idl_first_row
        - Src:             'lib/vswitch-idl.c:8217,12'
          Dst:             ovsrec_controller_cast
    - functionName:    ovsrec_controller_table_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7821
      functionLinenumberEnd: 7823
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_controller_first
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7823,12'
          Dst:             ovsrec_controller_first
    - functionName:    ovsrec_controller_table_get
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7815
      functionLinenumberEnd: 7816
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_server_has_controller_table
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7808
      functionLinenumberEnd: 7809
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_table
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7809,12'
          Dst:             ovsdb_idl_server_has_table
    - functionName:    ovsrec_controller_type_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7801
      functionLinenumberEnd: 7802
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7802,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_controller_table_col_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7795
      functionLinenumberEnd: 7796
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7796,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_controller_target_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7788
      functionLinenumberEnd: 7789
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7789,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_controller_table_col_target
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7782
      functionLinenumberEnd: 7783
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7783,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_controller_status_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7775
      functionLinenumberEnd: 7776
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7776,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_controller_table_col_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7769
      functionLinenumberEnd: 7770
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7770,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_controller_role_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7762
      functionLinenumberEnd: 7763
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7763,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_controller_table_col_role
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7756
      functionLinenumberEnd: 7757
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7757,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_controller_other_config_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7749
      functionLinenumberEnd: 7750
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7750,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_controller_table_col_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7743
      functionLinenumberEnd: 7744
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7744,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_controller_max_backoff_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7736
      functionLinenumberEnd: 7737
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7737,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_controller_table_col_max_backoff
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7730
      functionLinenumberEnd: 7731
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7731,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_controller_local_netmask_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7723
      functionLinenumberEnd: 7724
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7724,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_controller_table_col_local_netmask
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7717
      functionLinenumberEnd: 7718
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7718,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_controller_local_ip_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7710
      functionLinenumberEnd: 7711
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7711,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_controller_table_col_local_ip
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7704
      functionLinenumberEnd: 7705
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7705,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_controller_local_gateway_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7697
      functionLinenumberEnd: 7698
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7698,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_controller_table_col_local_gateway
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7691
      functionLinenumberEnd: 7692
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7692,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_controller_is_connected_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7684
      functionLinenumberEnd: 7685
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7685,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_controller_table_col_is_connected
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7678
      functionLinenumberEnd: 7679
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7679,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_controller_inactivity_probe_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7671
      functionLinenumberEnd: 7672
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7672,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_controller_table_col_inactivity_probe
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7665
      functionLinenumberEnd: 7666
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7666,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_controller_external_ids_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7658
      functionLinenumberEnd: 7659
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7659,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_controller_table_col_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7652
      functionLinenumberEnd: 7653
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7653,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_controller_enable_async_messages_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7645
      functionLinenumberEnd: 7646
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7646,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_controller_table_col_enable_async_messages
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7639
      functionLinenumberEnd: 7640
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7640,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_controller_controller_rate_limit_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7632
      functionLinenumberEnd: 7633
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7633,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_controller_table_col_controller_rate_limit
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7626
      functionLinenumberEnd: 7627
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7627,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_controller_controller_queue_size_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7619
      functionLinenumberEnd: 7620
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7620,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_controller_table_col_controller_queue_size
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7613
      functionLinenumberEnd: 7614
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7614,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_controller_controller_burst_limit_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7606
      functionLinenumberEnd: 7607
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7607,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_controller_table_col_controller_burst_limit
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7600
      functionLinenumberEnd: 7601
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7601,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_controller_connection_mode_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7593
      functionLinenumberEnd: 7594
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7594,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_controller_table_col_connection_mode
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7587
      functionLinenumberEnd: 7588
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7588,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_ct_zone_set_condition
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7522
      functionLinenumberEnd: 7523
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_set_condition
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7523,12'
          Dst:             ovsdb_idl_set_condition
    - functionName:    ovsrec_ct_zone_index_set_timeout_policy
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7499
      functionLinenumberEnd: 7516
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7506,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:7515,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_ct_zone_index_set_limit
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7471
      functionLinenumberEnd: 7488
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7478,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:7487,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_ct_zone_index_set_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7430
      functionLinenumberEnd: 7457
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          127
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_first
        - hmap_next
        - ovsdb_atom_string_create
        - ovsdb_datum_init_empty
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - smap_count
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7431,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:7437,20'
          Dst:             smap_count
        - Src:             'lib/vswitch-idl.c:7438,23'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:7439,25'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:7443,9'
          Dst:             hmap_first
        - Src:             'lib/vswitch-idl.c:7444,32'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:7445,34'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:7443,9'
          Dst:             hmap_next
        - Src:             'lib/vswitch-idl.c:7448,9'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:7450,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:7452,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_ct_zone_cursor_data
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7419
      functionLinenumberEnd: 7420
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_cursor_data
        - ovsrec_ct_zone_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7420,32'
          Dst:             ovsdb_idl_cursor_data
        - Src:             'lib/vswitch-idl.c:7420,12'
          Dst:             ovsrec_ct_zone_cast
    - functionName:    ovsrec_ct_zone_cursor_first_ge
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7412
      functionLinenumberEnd: 7414
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_cursor_first_ge
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7413,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:7414,12'
          Dst:             ovsdb_idl_cursor_first_ge
    - functionName:    ovsrec_ct_zone_cursor_first_eq
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7404
      functionLinenumberEnd: 7406
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_cursor_first_eq
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7405,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:7406,12'
          Dst:             ovsdb_idl_cursor_first_eq
    - functionName:    ovsrec_ct_zone_cursor_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7396
      functionLinenumberEnd: 7398
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_cursor_first
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7397,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:7398,12'
          Dst:             ovsdb_idl_cursor_first
    - functionName:    ovsrec_ct_zone_index_compare
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7390
      functionLinenumberEnd: 7391
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_index_compare
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7391,12'
          Dst:             ovsdb_idl_index_compare
    - functionName:    ovsrec_ct_zone_index_find
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7379
      functionLinenumberEnd: 7381
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_index_find
        - ovsrec_ct_zone_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7380,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:7381,32'
          Dst:             ovsdb_idl_index_find
        - Src:             'lib/vswitch-idl.c:7381,12'
          Dst:             ovsrec_ct_zone_cast
    - functionName:    ovsrec_ct_zone_index_init_row
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7372
      functionLinenumberEnd: 7374
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_index_init_row
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7373,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:7374,12'
          Dst:             ovsdb_idl_index_init_row
    - functionName:    ovsrec_ct_zone_index_destroy_row
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7364
      functionLinenumberEnd: 7366
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_index_destroy_row
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7365,5'
          Dst:             ovsdb_idl_index_destroy_row
    - functionName:    ovsrec_ct_zone_add_clause_timeout_policy
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7337
      functionLinenumberEnd: 7357
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7343,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:7352,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:7356,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_ct_zone_add_clause_limit
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7306
      functionLinenumberEnd: 7326
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7312,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:7321,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:7325,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_ct_zone_add_clause_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7277
      functionLinenumberEnd: 7292
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_condition_add_clause
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7281,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:7283,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:7286,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:7291,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_ct_zone_update_timeout_policy_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7255
      functionLinenumberEnd: 7269
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          48
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7258,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:7260,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:7266,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_ct_zone_update_timeout_policy_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7233
      functionLinenumberEnd: 7247
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          48
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7236,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:7238,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:7244,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_ct_zone_update_limit_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7211
      functionLinenumberEnd: 7225
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7214,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:7216,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:7222,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_ct_zone_update_limit_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7189
      functionLinenumberEnd: 7203
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7192,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:7194,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:7200,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_ct_zone_update_external_ids_delkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7167
      functionLinenumberEnd: 7181
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7170,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:7172,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:7176,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:7178,5'
          Dst:             ovsdb_idl_txn_delete_partial_map
    - functionName:    ovsrec_ct_zone_update_external_ids_setkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7144
      functionLinenumberEnd: 7159
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          62
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7147,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:7149,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:7150,21'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:7153,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:7154,26'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:7156,5'
          Dst:             ovsdb_idl_txn_write_partial_map
    - functionName:    ovsrec_ct_zone_set_timeout_policy
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7120
      functionLinenumberEnd: 7136
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7126,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:7135,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_ct_zone_set_limit
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7093
      functionLinenumberEnd: 7109
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7099,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:7108,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_ct_zone_set_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7068
      functionLinenumberEnd: 7079
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_txn_write
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7072,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:7074,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:7076,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_ct_zone_get_timeout_policy
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7057
      functionLinenumberEnd: 7059
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7058,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:7059,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_ct_zone_get_limit
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7030
      functionLinenumberEnd: 7032
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7031,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:7032,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_ct_zone_get_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 7002
      functionLinenumberEnd: 7005
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:7003,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:7004,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:7005,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_ct_zone_verify_timeout_policy
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6974
      functionLinenumberEnd: 6976
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:6975,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_ct_zone_verify_limit
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6945
      functionLinenumberEnd: 6947
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:6946,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_ct_zone_verify_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6916
      functionLinenumberEnd: 6918
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:6917,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_ct_zone_is_updated
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6887
      functionLinenumberEnd: 6888
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_track_is_updated
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:6888,12'
          Dst:             ovsdb_idl_track_is_updated
    - functionName:    ovsrec_ct_zone_insert_persist_uuid
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6880
      functionLinenumberEnd: 6882
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_insert_persist_uuid
        - ovsrec_ct_zone_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:6881,32'
          Dst:             ovsdb_idl_txn_insert_persist_uuid
        - Src:             'lib/vswitch-idl.c:6881,12'
          Dst:             ovsrec_ct_zone_cast
    - functionName:    ovsrec_ct_zone_insert
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6868
      functionLinenumberEnd: 6869
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_insert
        - ovsrec_ct_zone_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:6869,32'
          Dst:             ovsdb_idl_txn_insert
        - Src:             'lib/vswitch-idl.c:6869,12'
          Dst:             ovsrec_ct_zone_cast
    - functionName:    ovsrec_ct_zone_delete
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6855
      functionLinenumberEnd: 6857
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:6856,5'
          Dst:             ovsdb_idl_txn_delete
    - functionName:    ovsrec_ct_zone_track_get_next
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6844
      functionLinenumberEnd: 6845
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_track_get_next
        - ovsrec_ct_zone_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:6845,32'
          Dst:             ovsdb_idl_track_get_next
        - Src:             'lib/vswitch-idl.c:6845,12'
          Dst:             ovsrec_ct_zone_cast
    - functionName:    ovsrec_ct_zone_row_get_seqno
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6832
      functionLinenumberEnd: 6833
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_row_get_seqno
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:6833,12'
          Dst:             ovsdb_idl_row_get_seqno
    - functionName:    ovsrec_ct_zone_get_seqno
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6827
      functionLinenumberEnd: 6828
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_table_get_seqno
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:6828,12'
          Dst:             ovsdb_idl_table_get_seqno
    - functionName:    ovsrec_ct_zone_next
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6822
      functionLinenumberEnd: 6823
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_next_row
        - ovsrec_ct_zone_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:6823,32'
          Dst:             ovsdb_idl_next_row
        - Src:             'lib/vswitch-idl.c:6823,12'
          Dst:             ovsrec_ct_zone_cast
    - functionName:    ovsrec_ct_zone_table_get_for_uuid
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6801
      functionLinenumberEnd: 6803
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_ct_zone_get_for_uuid
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:6803,12'
          Dst:             ovsrec_ct_zone_get_for_uuid
    - functionName:    ovsrec_ct_zone_get_for_uuid
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6793
      functionLinenumberEnd: 6794
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_get_row_for_uuid
        - ovsrec_ct_zone_cast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:6794,32'
          Dst:             ovsdb_idl_get_row_for_uuid
        - Src:             'lib/vswitch-idl.c:6794,12'
          Dst:             ovsrec_ct_zone_cast
    - functionName:    ovsrec_ct_zone_track_get_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6838
      functionLinenumberEnd: 6839
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_track_get_first
        - ovsrec_ct_zone_cast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:6839,32'
          Dst:             ovsdb_idl_track_get_first
        - Src:             'lib/vswitch-idl.c:6839,12'
          Dst:             ovsrec_ct_zone_cast
    - functionName:    ovsrec_ct_zone_table_track_get_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6709
      functionLinenumberEnd: 6711
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_ct_zone_track_get_first
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:6711,12'
          Dst:             ovsrec_ct_zone_track_get_first
    - functionName:    ovsrec_ct_zone_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6814
      functionLinenumberEnd: 6815
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_first_row
        - ovsrec_ct_zone_cast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:6815,32'
          Dst:             ovsdb_idl_first_row
        - Src:             'lib/vswitch-idl.c:6815,12'
          Dst:             ovsrec_ct_zone_cast
    - functionName:    ovsrec_ct_zone_table_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6701
      functionLinenumberEnd: 6703
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_ct_zone_first
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:6703,12'
          Dst:             ovsrec_ct_zone_first
    - functionName:    ovsrec_ct_zone_table_get
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6695
      functionLinenumberEnd: 6696
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_server_has_ct_zone_table
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6688
      functionLinenumberEnd: 6689
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_table
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:6689,12'
          Dst:             ovsdb_idl_server_has_table
    - functionName:    ovsrec_ct_zone_timeout_policy_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6681
      functionLinenumberEnd: 6682
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:6682,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_ct_zone_table_col_timeout_policy
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6675
      functionLinenumberEnd: 6676
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:6676,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_ct_zone_limit_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6668
      functionLinenumberEnd: 6669
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:6669,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_ct_zone_table_col_limit
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6662
      functionLinenumberEnd: 6663
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:6663,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_ct_zone_external_ids_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6655
      functionLinenumberEnd: 6656
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:6656,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_ct_zone_table_col_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6649
      functionLinenumberEnd: 6650
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:6650,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_ct_timeout_policy_set_condition
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6557
      functionLinenumberEnd: 6558
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_set_condition
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:6558,12'
          Dst:             ovsdb_idl_set_condition
    - functionName:    ovsrec_ct_timeout_policy_index_set_timeouts
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6536
      functionLinenumberEnd: 6551
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          91
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:6543,31'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:6544,20'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:6546,27'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:6549,5'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:6550,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_ct_timeout_policy_index_set_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6497
      functionLinenumberEnd: 6524
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          127
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_first
        - hmap_next
        - ovsdb_atom_string_create
        - ovsdb_datum_init_empty
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - smap_count
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:6498,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:6504,20'
          Dst:             smap_count
        - Src:             'lib/vswitch-idl.c:6505,23'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:6506,25'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:6510,9'
          Dst:             hmap_first
        - Src:             'lib/vswitch-idl.c:6511,32'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:6512,34'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:6510,9'
          Dst:             hmap_next
        - Src:             'lib/vswitch-idl.c:6515,9'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:6517,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:6519,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_ct_timeout_policy_cursor_data
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6486
      functionLinenumberEnd: 6487
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_cursor_data
        - ovsrec_ct_timeout_policy_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:6487,42'
          Dst:             ovsdb_idl_cursor_data
        - Src:             'lib/vswitch-idl.c:6487,12'
          Dst:             ovsrec_ct_timeout_policy_cast
    - functionName:    ovsrec_ct_timeout_policy_cursor_first_ge
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6479
      functionLinenumberEnd: 6481
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_cursor_first_ge
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:6480,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:6481,12'
          Dst:             ovsdb_idl_cursor_first_ge
    - functionName:    ovsrec_ct_timeout_policy_cursor_first_eq
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6471
      functionLinenumberEnd: 6473
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_cursor_first_eq
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:6472,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:6473,12'
          Dst:             ovsdb_idl_cursor_first_eq
    - functionName:    ovsrec_ct_timeout_policy_cursor_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6463
      functionLinenumberEnd: 6465
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_cursor_first
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:6464,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:6465,12'
          Dst:             ovsdb_idl_cursor_first
    - functionName:    ovsrec_ct_timeout_policy_index_compare
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6457
      functionLinenumberEnd: 6458
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_index_compare
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:6458,12'
          Dst:             ovsdb_idl_index_compare
    - functionName:    ovsrec_ct_timeout_policy_index_find
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6446
      functionLinenumberEnd: 6448
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_index_find
        - ovsrec_ct_timeout_policy_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:6447,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:6448,42'
          Dst:             ovsdb_idl_index_find
        - Src:             'lib/vswitch-idl.c:6448,12'
          Dst:             ovsrec_ct_timeout_policy_cast
    - functionName:    ovsrec_ct_timeout_policy_index_init_row
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6439
      functionLinenumberEnd: 6441
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_index_init_row
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:6440,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:6441,12'
          Dst:             ovsdb_idl_index_init_row
    - functionName:    ovsrec_ct_timeout_policy_index_destroy_row
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6431
      functionLinenumberEnd: 6433
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_index_destroy_row
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:6432,5'
          Dst:             ovsdb_idl_index_destroy_row
    - functionName:    ovsrec_ct_timeout_policy_add_clause_timeouts
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6407
      functionLinenumberEnd: 6424
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          94
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_destroy
        - ovsdb_datum_sort_unique
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:6412,31'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:6413,20'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:6415,27'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:6418,5'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:6419,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:6423,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_ct_timeout_policy_add_clause_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6380
      functionLinenumberEnd: 6395
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_condition_add_clause
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:6384,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:6386,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:6389,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:6394,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_ct_timeout_policy_update_timeouts_delkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6358
      functionLinenumberEnd: 6372
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:6361,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:6363,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:6367,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:6369,5'
          Dst:             ovsdb_idl_txn_delete_partial_map
    - functionName:    ovsrec_ct_timeout_policy_update_timeouts_setkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6335
      functionLinenumberEnd: 6350
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          61
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:6338,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:6340,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:6341,21'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:6344,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:6347,5'
          Dst:             ovsdb_idl_txn_write_partial_map
    - functionName:    ovsrec_ct_timeout_policy_update_external_ids_delkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6313
      functionLinenumberEnd: 6327
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:6316,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:6318,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:6322,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:6324,5'
          Dst:             ovsdb_idl_txn_delete_partial_map
    - functionName:    ovsrec_ct_timeout_policy_update_external_ids_setkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6290
      functionLinenumberEnd: 6305
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          62
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:6293,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:6295,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:6296,21'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:6299,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:6300,26'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:6302,5'
          Dst:             ovsdb_idl_txn_write_partial_map
    - functionName:    ovsrec_ct_timeout_policy_set_timeouts
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6269
      functionLinenumberEnd: 6282
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          90
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:6275,31'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:6276,20'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:6278,27'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:6281,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_ct_timeout_policy_set_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6246
      functionLinenumberEnd: 6257
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_txn_write
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:6250,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:6252,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:6254,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_ct_timeout_policy_get_timeouts
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6234
      functionLinenumberEnd: 6237
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:6235,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:6236,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:6237,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_ct_timeout_policy_get_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6204
      functionLinenumberEnd: 6207
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:6205,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:6206,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:6207,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_ct_timeout_policy_verify_timeouts
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6176
      functionLinenumberEnd: 6178
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:6177,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_ct_timeout_policy_verify_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6147
      functionLinenumberEnd: 6149
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:6148,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_ct_timeout_policy_is_updated
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6118
      functionLinenumberEnd: 6119
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_track_is_updated
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:6119,12'
          Dst:             ovsdb_idl_track_is_updated
    - functionName:    ovsrec_ct_timeout_policy_insert_persist_uuid
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6111
      functionLinenumberEnd: 6113
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_insert_persist_uuid
        - ovsrec_ct_timeout_policy_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:6112,42'
          Dst:             ovsdb_idl_txn_insert_persist_uuid
        - Src:             'lib/vswitch-idl.c:6112,12'
          Dst:             ovsrec_ct_timeout_policy_cast
    - functionName:    ovsrec_ct_timeout_policy_insert
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6099
      functionLinenumberEnd: 6100
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_insert
        - ovsrec_ct_timeout_policy_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:6100,42'
          Dst:             ovsdb_idl_txn_insert
        - Src:             'lib/vswitch-idl.c:6100,12'
          Dst:             ovsrec_ct_timeout_policy_cast
    - functionName:    ovsrec_ct_timeout_policy_delete
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6086
      functionLinenumberEnd: 6088
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:6087,5'
          Dst:             ovsdb_idl_txn_delete
    - functionName:    ovsrec_ct_timeout_policy_track_get_next
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6075
      functionLinenumberEnd: 6076
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_track_get_next
        - ovsrec_ct_timeout_policy_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:6076,42'
          Dst:             ovsdb_idl_track_get_next
        - Src:             'lib/vswitch-idl.c:6076,12'
          Dst:             ovsrec_ct_timeout_policy_cast
    - functionName:    ovsrec_ct_timeout_policy_row_get_seqno
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6063
      functionLinenumberEnd: 6064
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_row_get_seqno
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:6064,12'
          Dst:             ovsdb_idl_row_get_seqno
    - functionName:    ovsrec_ct_timeout_policy_get_seqno
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6058
      functionLinenumberEnd: 6059
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_table_get_seqno
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:6059,12'
          Dst:             ovsdb_idl_table_get_seqno
    - functionName:    ovsrec_ct_timeout_policy_next
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6053
      functionLinenumberEnd: 6054
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_next_row
        - ovsrec_ct_timeout_policy_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:6054,42'
          Dst:             ovsdb_idl_next_row
        - Src:             'lib/vswitch-idl.c:6054,12'
          Dst:             ovsrec_ct_timeout_policy_cast
    - functionName:    ovsrec_ct_timeout_policy_table_get_for_uuid
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6032
      functionLinenumberEnd: 6034
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_ct_timeout_policy_get_for_uuid
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:6034,12'
          Dst:             ovsrec_ct_timeout_policy_get_for_uuid
    - functionName:    ovsrec_ct_timeout_policy_get_for_uuid
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6024
      functionLinenumberEnd: 6025
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_get_row_for_uuid
        - ovsrec_ct_timeout_policy_cast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:6025,42'
          Dst:             ovsdb_idl_get_row_for_uuid
        - Src:             'lib/vswitch-idl.c:6025,12'
          Dst:             ovsrec_ct_timeout_policy_cast
    - functionName:    ovsrec_ct_timeout_policy_track_get_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6069
      functionLinenumberEnd: 6070
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_track_get_first
        - ovsrec_ct_timeout_policy_cast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:6070,42'
          Dst:             ovsdb_idl_track_get_first
        - Src:             'lib/vswitch-idl.c:6070,12'
          Dst:             ovsrec_ct_timeout_policy_cast
    - functionName:    ovsrec_ct_timeout_policy_table_track_get_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5955
      functionLinenumberEnd: 5957
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_ct_timeout_policy_track_get_first
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:5957,12'
          Dst:             ovsrec_ct_timeout_policy_track_get_first
    - functionName:    ovsrec_ct_timeout_policy_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 6045
      functionLinenumberEnd: 6046
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_first_row
        - ovsrec_ct_timeout_policy_cast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:6046,42'
          Dst:             ovsdb_idl_first_row
        - Src:             'lib/vswitch-idl.c:6046,12'
          Dst:             ovsrec_ct_timeout_policy_cast
    - functionName:    ovsrec_ct_timeout_policy_table_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5947
      functionLinenumberEnd: 5949
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_ct_timeout_policy_first
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:5949,12'
          Dst:             ovsrec_ct_timeout_policy_first
    - functionName:    ovsrec_ct_timeout_policy_table_get
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5941
      functionLinenumberEnd: 5942
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_server_has_ct_timeout_policy_table
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5934
      functionLinenumberEnd: 5935
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_table
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:5935,12'
          Dst:             ovsdb_idl_server_has_table
    - functionName:    ovsrec_ct_timeout_policy_timeouts_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5927
      functionLinenumberEnd: 5928
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:5928,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_ct_timeout_policy_table_col_timeouts
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5921
      functionLinenumberEnd: 5922
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:5922,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_ct_timeout_policy_external_ids_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5914
      functionLinenumberEnd: 5915
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:5915,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_ct_timeout_policy_table_col_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5908
      functionLinenumberEnd: 5909
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:5909,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_bridge_set_condition
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5477
      functionLinenumberEnd: 5478
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_set_condition
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:5478,12'
          Dst:             ovsdb_idl_set_condition
    - functionName:    ovsrec_bridge_index_set_stp_enable
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5460
      functionLinenumberEnd: 5471
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:5464,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:5470,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_bridge_index_set_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5424
      functionLinenumberEnd: 5451
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          127
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_first
        - hmap_next
        - ovsdb_atom_string_create
        - ovsdb_datum_init_empty
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - smap_count
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:5425,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:5431,20'
          Dst:             smap_count
        - Src:             'lib/vswitch-idl.c:5432,23'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:5433,25'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:5437,9'
          Dst:             hmap_first
        - Src:             'lib/vswitch-idl.c:5438,32'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:5439,34'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:5437,9'
          Dst:             hmap_next
        - Src:             'lib/vswitch-idl.c:5442,9'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:5444,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:5446,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_bridge_index_set_sflow
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5399
      functionLinenumberEnd: 5416
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:5406,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:5415,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_bridge_index_set_rstp_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5360
      functionLinenumberEnd: 5387
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          127
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_first
        - hmap_next
        - ovsdb_atom_string_create
        - ovsdb_datum_init_empty
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - smap_count
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:5361,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:5367,20'
          Dst:             smap_count
        - Src:             'lib/vswitch-idl.c:5368,23'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:5369,25'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:5373,9'
          Dst:             hmap_first
        - Src:             'lib/vswitch-idl.c:5374,32'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:5375,34'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:5373,9'
          Dst:             hmap_next
        - Src:             'lib/vswitch-idl.c:5378,9'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:5380,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:5382,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_bridge_index_set_rstp_enable
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5341
      functionLinenumberEnd: 5352
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:5345,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:5351,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_bridge_index_set_protocols
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5319
      functionLinenumberEnd: 5333
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          77
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:5326,32'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:5329,27'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:5331,5'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:5332,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_bridge_index_set_ports
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5295
      functionLinenumberEnd: 5309
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          78
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:5302,28'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:5307,5'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:5308,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_bridge_index_set_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5259
      functionLinenumberEnd: 5286
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          127
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_first
        - hmap_next
        - ovsdb_atom_string_create
        - ovsdb_datum_init_empty
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - smap_count
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:5260,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:5266,20'
          Dst:             smap_count
        - Src:             'lib/vswitch-idl.c:5267,23'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:5268,25'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:5272,9'
          Dst:             hmap_first
        - Src:             'lib/vswitch-idl.c:5273,32'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:5274,34'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:5272,9'
          Dst:             hmap_next
        - Src:             'lib/vswitch-idl.c:5277,9'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:5279,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:5281,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_bridge_index_set_netflow
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5234
      functionLinenumberEnd: 5251
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:5241,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:5250,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_bridge_index_set_name
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5212
      functionLinenumberEnd: 5223
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:5216,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:5220,14'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:5222,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_bridge_index_set_mirrors
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5190
      functionLinenumberEnd: 5204
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          78
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:5197,30'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:5202,5'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:5203,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_bridge_index_set_mcast_snooping_enable
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5171
      functionLinenumberEnd: 5182
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:5175,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:5181,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_bridge_index_set_ipfix
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5146
      functionLinenumberEnd: 5163
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:5153,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:5162,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_bridge_index_set_flow_tables
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5120
      functionLinenumberEnd: 5135
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          92
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:5127,34'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:5128,20'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:5133,5'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:5134,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_bridge_index_set_flood_vlans
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5095
      functionLinenumberEnd: 5109
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          76
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:5102,34'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:5107,5'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:5108,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_bridge_index_set_fail_mode
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5068
      functionLinenumberEnd: 5085
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:5075,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:5078,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:5084,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_bridge_index_set_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5027
      functionLinenumberEnd: 5054
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          127
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_first
        - hmap_next
        - ovsdb_atom_string_create
        - ovsdb_datum_init_empty
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - smap_count
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:5028,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:5034,20'
          Dst:             smap_count
        - Src:             'lib/vswitch-idl.c:5035,23'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:5036,25'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:5040,9'
          Dst:             hmap_first
        - Src:             'lib/vswitch-idl.c:5041,32'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:5042,34'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:5040,9'
          Dst:             hmap_next
        - Src:             'lib/vswitch-idl.c:5045,9'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:5047,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:5049,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_bridge_index_set_datapath_version
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 5008
      functionLinenumberEnd: 5019
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:5012,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:5016,14'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:5018,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_bridge_index_set_datapath_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4989
      functionLinenumberEnd: 5000
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:4993,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:4997,14'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:4999,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_bridge_index_set_datapath_id
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4964
      functionLinenumberEnd: 4981
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:4971,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:4974,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:4980,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_bridge_index_set_controller
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4939
      functionLinenumberEnd: 4953
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          78
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:4946,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:4951,5'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:4952,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_bridge_index_set_auto_attach
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4914
      functionLinenumberEnd: 4931
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:4921,15'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:4930,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_bridge_cursor_data
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4900
      functionLinenumberEnd: 4901
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_cursor_data
        - ovsrec_bridge_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:4901,31'
          Dst:             ovsdb_idl_cursor_data
        - Src:             'lib/vswitch-idl.c:4901,12'
          Dst:             ovsrec_bridge_cast
    - functionName:    ovsrec_bridge_cursor_first_ge
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4893
      functionLinenumberEnd: 4895
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_cursor_first_ge
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:4894,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:4895,12'
          Dst:             ovsdb_idl_cursor_first_ge
    - functionName:    ovsrec_bridge_cursor_first_eq
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4885
      functionLinenumberEnd: 4887
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_cursor_first_eq
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:4886,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:4887,12'
          Dst:             ovsdb_idl_cursor_first_eq
    - functionName:    ovsrec_bridge_cursor_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4877
      functionLinenumberEnd: 4879
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_cursor_first
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:4878,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:4879,12'
          Dst:             ovsdb_idl_cursor_first
    - functionName:    ovsrec_bridge_index_compare
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4871
      functionLinenumberEnd: 4872
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_index_compare
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:4872,12'
          Dst:             ovsdb_idl_index_compare
    - functionName:    ovsrec_bridge_index_find
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4860
      functionLinenumberEnd: 4862
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_index_find
        - ovsrec_bridge_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:4861,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:4862,31'
          Dst:             ovsdb_idl_index_find
        - Src:             'lib/vswitch-idl.c:4862,12'
          Dst:             ovsrec_bridge_cast
    - functionName:    ovsrec_bridge_index_init_row
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4853
      functionLinenumberEnd: 4855
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_index_init_row
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:4854,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:4855,12'
          Dst:             ovsdb_idl_index_init_row
    - functionName:    ovsrec_bridge_index_destroy_row
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4845
      functionLinenumberEnd: 4847
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_index_destroy_row
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:4846,5'
          Dst:             ovsdb_idl_index_destroy_row
    - functionName:    ovsrec_bridge_add_clause_stp_enable
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4822
      functionLinenumberEnd: 4838
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          40
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:4827,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:4833,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:4837,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_bridge_add_clause_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4798
      functionLinenumberEnd: 4813
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_condition_add_clause
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:4802,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:4804,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:4807,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:4812,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_bridge_add_clause_sflow
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4770
      functionLinenumberEnd: 4790
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:4776,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:4785,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:4789,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_bridge_add_clause_rstp_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4743
      functionLinenumberEnd: 4758
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_condition_add_clause
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:4747,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:4749,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:4752,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:4757,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_bridge_add_clause_rstp_enable
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4719
      functionLinenumberEnd: 4735
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          40
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:4724,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:4730,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:4734,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_bridge_add_clause_protocols
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4695
      functionLinenumberEnd: 4711
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          80
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_destroy
        - ovsdb_datum_sort_unique
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:4700,32'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:4703,27'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:4705,5'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:4706,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:4710,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_bridge_add_clause_ports
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4669
      functionLinenumberEnd: 4685
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          79
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_datum_sort_unique
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:4674,28'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:4679,5'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:4680,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:4684,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_bridge_add_clause_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4645
      functionLinenumberEnd: 4660
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_condition_add_clause
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:4649,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:4651,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:4654,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:4659,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_bridge_add_clause_netflow
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4617
      functionLinenumberEnd: 4637
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:4623,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:4632,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:4636,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_bridge_add_clause_name
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4590
      functionLinenumberEnd: 4606
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          38
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:4595,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:4599,14'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:4601,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:4605,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_bridge_add_clause_mirrors
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4566
      functionLinenumberEnd: 4582
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          79
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_datum_sort_unique
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:4571,30'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:4576,5'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:4577,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:4581,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_bridge_add_clause_mcast_snooping_enable
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4542
      functionLinenumberEnd: 4558
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          40
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:4547,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:4553,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:4557,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_bridge_add_clause_ipfix
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4514
      functionLinenumberEnd: 4534
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:4520,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:4529,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:4533,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_bridge_add_clause_flow_tables
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4486
      functionLinenumberEnd: 4503
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          93
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_datum_sort_unique
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:4491,34'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:4492,20'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:4497,5'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:4498,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:4502,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_bridge_add_clause_flood_vlans
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4459
      functionLinenumberEnd: 4475
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          79
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_datum_sort_unique
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:4464,34'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:4469,5'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:4470,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:4474,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_bridge_add_clause_fail_mode
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4429
      functionLinenumberEnd: 4449
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:4435,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:4438,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:4444,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:4448,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_bridge_add_clause_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4400
      functionLinenumberEnd: 4415
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_condition_add_clause
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:4404,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:4406,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:4409,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:4414,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_bridge_add_clause_datapath_version
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4376
      functionLinenumberEnd: 4392
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          38
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:4381,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:4385,14'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:4387,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:4391,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_bridge_add_clause_datapath_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4352
      functionLinenumberEnd: 4368
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          38
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:4357,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:4361,14'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:4363,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:4367,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_bridge_add_clause_datapath_id
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4324
      functionLinenumberEnd: 4344
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          53
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:4330,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:4333,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:4339,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:4343,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_bridge_add_clause_controller
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4297
      functionLinenumberEnd: 4313
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          79
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_datum_sort_unique
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:4302,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:4307,5'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:4308,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:4312,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_bridge_add_clause_auto_attach
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4269
      functionLinenumberEnd: 4289
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          52
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:4275,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:4284,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:4288,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_bridge_update_status_delkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4244
      functionLinenumberEnd: 4258
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:4247,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:4249,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:4253,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:4255,5'
          Dst:             ovsdb_idl_txn_delete_partial_map
    - functionName:    ovsrec_bridge_update_status_setkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4221
      functionLinenumberEnd: 4236
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          62
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:4224,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:4226,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:4227,21'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:4230,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:4231,26'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:4233,5'
          Dst:             ovsdb_idl_txn_write_partial_map
    - functionName:    ovsrec_bridge_update_sflow_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4199
      functionLinenumberEnd: 4213
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          48
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:4202,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:4204,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:4210,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_bridge_update_sflow_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4177
      functionLinenumberEnd: 4191
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          48
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:4180,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:4182,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:4188,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_bridge_update_rstp_status_delkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4155
      functionLinenumberEnd: 4169
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:4158,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:4160,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:4164,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:4166,5'
          Dst:             ovsdb_idl_txn_delete_partial_map
    - functionName:    ovsrec_bridge_update_rstp_status_setkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4132
      functionLinenumberEnd: 4147
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          62
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:4135,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:4137,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:4138,21'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:4141,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:4142,26'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:4144,5'
          Dst:             ovsdb_idl_txn_write_partial_map
    - functionName:    ovsrec_bridge_update_protocols_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4110
      functionLinenumberEnd: 4124
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:4113,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:4115,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:4119,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:4121,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_bridge_update_protocols_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4088
      functionLinenumberEnd: 4102
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:4091,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:4093,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:4097,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:4099,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_bridge_update_ports_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4066
      functionLinenumberEnd: 4080
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          48
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:4069,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:4071,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:4077,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_bridge_update_ports_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4044
      functionLinenumberEnd: 4058
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          48
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:4047,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:4049,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:4055,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_bridge_update_other_config_delkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4022
      functionLinenumberEnd: 4036
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:4025,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:4027,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:4031,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:4033,5'
          Dst:             ovsdb_idl_txn_delete_partial_map
    - functionName:    ovsrec_bridge_update_other_config_setkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3999
      functionLinenumberEnd: 4014
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          62
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:4002,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:4004,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:4005,21'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:4008,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:4009,26'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:4011,5'
          Dst:             ovsdb_idl_txn_write_partial_map
    - functionName:    ovsrec_bridge_update_netflow_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3977
      functionLinenumberEnd: 3991
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          48
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:3980,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:3982,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:3988,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_bridge_update_netflow_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3955
      functionLinenumberEnd: 3969
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          48
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:3958,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:3960,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:3966,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_bridge_update_mirrors_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3933
      functionLinenumberEnd: 3947
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          48
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:3936,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:3938,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:3944,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_bridge_update_mirrors_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3911
      functionLinenumberEnd: 3925
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          48
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:3914,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:3916,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:3922,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_bridge_update_ipfix_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3889
      functionLinenumberEnd: 3903
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          48
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:3892,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:3894,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:3900,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_bridge_update_ipfix_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3867
      functionLinenumberEnd: 3881
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          48
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:3870,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:3872,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:3878,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_bridge_update_flow_tables_delkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3845
      functionLinenumberEnd: 3859
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:3848,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:3850,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:3856,5'
          Dst:             ovsdb_idl_txn_delete_partial_map
    - functionName:    ovsrec_bridge_update_flow_tables_setkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3822
      functionLinenumberEnd: 3837
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          62
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:3825,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:3827,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:3828,21'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:3834,5'
          Dst:             ovsdb_idl_txn_write_partial_map
    - functionName:    ovsrec_bridge_update_flood_vlans_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3800
      functionLinenumberEnd: 3814
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:3803,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:3805,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:3811,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_bridge_update_flood_vlans_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3778
      functionLinenumberEnd: 3792
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:3781,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:3783,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:3789,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_bridge_update_fail_mode_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3756
      functionLinenumberEnd: 3770
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:3759,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:3761,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:3765,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:3767,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_bridge_update_fail_mode_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3734
      functionLinenumberEnd: 3748
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:3737,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:3739,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:3743,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:3745,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_bridge_update_external_ids_delkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3712
      functionLinenumberEnd: 3726
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:3715,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:3717,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:3721,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:3723,5'
          Dst:             ovsdb_idl_txn_delete_partial_map
    - functionName:    ovsrec_bridge_update_external_ids_setkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3689
      functionLinenumberEnd: 3704
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          62
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:3692,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:3694,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:3695,21'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:3698,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:3699,26'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:3701,5'
          Dst:             ovsdb_idl_txn_write_partial_map
    - functionName:    ovsrec_bridge_update_datapath_id_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3667
      functionLinenumberEnd: 3681
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:3670,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:3672,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:3676,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:3678,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_bridge_update_datapath_id_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3645
      functionLinenumberEnd: 3659
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          47
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:3648,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:3650,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:3654,24'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:3656,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_bridge_update_controller_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3623
      functionLinenumberEnd: 3637
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          48
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:3626,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:3628,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:3634,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_bridge_update_controller_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3601
      functionLinenumberEnd: 3615
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          48
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:3604,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:3606,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:3612,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_bridge_update_auto_attach_delvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3579
      functionLinenumberEnd: 3593
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          48
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:3582,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:3584,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:3590,5'
          Dst:             ovsdb_idl_txn_delete_partial_set
    - functionName:    ovsrec_bridge_update_auto_attach_addvalue
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3557
      functionLinenumberEnd: 3571
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          48
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write_partial_set
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:3560,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:3562,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:3568,5'
          Dst:             ovsdb_idl_txn_write_partial_set
    - functionName:    ovsrec_bridge_set_stp_enable
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3537
      functionLinenumberEnd: 3549
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:3542,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:3548,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_bridge_set_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3517
      functionLinenumberEnd: 3528
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_txn_write
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:3521,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:3523,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:3525,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_bridge_set_sflow
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3493
      functionLinenumberEnd: 3509
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:3499,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:3508,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_bridge_set_rstp_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3470
      functionLinenumberEnd: 3481
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_txn_write
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:3474,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:3476,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:3478,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_bridge_set_rstp_enable
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3450
      functionLinenumberEnd: 3462
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:3455,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:3461,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_bridge_set_protocols
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3430
      functionLinenumberEnd: 3442
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          76
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:3436,32'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:3439,27'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:3441,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_bridge_set_ports
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3408
      functionLinenumberEnd: 3420
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          77
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:3414,28'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:3419,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_bridge_set_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3388
      functionLinenumberEnd: 3399
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_txn_write
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:3392,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:3394,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:3396,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_bridge_set_netflow
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3364
      functionLinenumberEnd: 3380
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:3370,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:3379,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_bridge_set_name
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3341
      functionLinenumberEnd: 3353
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:3346,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:3350,14'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:3352,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_bridge_set_mirrors
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3321
      functionLinenumberEnd: 3333
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          77
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:3327,30'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:3332,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_bridge_set_mcast_snooping_enable
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3301
      functionLinenumberEnd: 3313
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:3306,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:3312,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_bridge_set_ipfix
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3277
      functionLinenumberEnd: 3293
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:3283,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:3292,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_bridge_set_flow_tables
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3253
      functionLinenumberEnd: 3266
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          91
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:3259,34'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:3260,20'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:3265,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_bridge_set_flood_vlans
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3230
      functionLinenumberEnd: 3242
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          75
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:3236,34'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:3241,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_bridge_set_fail_mode
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3204
      functionLinenumberEnd: 3220
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:3210,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:3213,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:3219,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_bridge_set_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3179
      functionLinenumberEnd: 3190
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_from_smap
        - ovsdb_datum_init_empty
        - ovsdb_idl_txn_write
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:3183,9'
          Dst:             ovsdb_datum_from_smap
        - Src:             'lib/vswitch-idl.c:3185,9'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/vswitch-idl.c:3187,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_bridge_set_datapath_version
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3159
      functionLinenumberEnd: 3171
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:3164,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:3168,14'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:3170,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_bridge_set_datapath_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3139
      functionLinenumberEnd: 3151
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:3144,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:3148,14'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:3150,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_bridge_set_datapath_id
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3115
      functionLinenumberEnd: 3131
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:3121,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:3124,18'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:3130,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_bridge_set_controller
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3092
      functionLinenumberEnd: 3104
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          77
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:3098,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:3103,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_bridge_set_auto_attach
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3068
      functionLinenumberEnd: 3084
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:3074,33'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:3083,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_bridge_get_stp_enable
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3054
      functionLinenumberEnd: 3056
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:3055,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:3056,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_bridge_get_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3026
      functionLinenumberEnd: 3029
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:3027,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:3028,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:3029,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_bridge_get_sflow
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2997
      functionLinenumberEnd: 2999
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:2998,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:2999,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_bridge_get_rstp_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2969
      functionLinenumberEnd: 2972
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:2970,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:2971,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:2972,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_bridge_get_rstp_enable
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2940
      functionLinenumberEnd: 2942
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:2941,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:2942,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_bridge_get_protocols
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2913
      functionLinenumberEnd: 2915
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:2914,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:2915,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_bridge_get_ports
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2886
      functionLinenumberEnd: 2888
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:2887,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:2888,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_bridge_get_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2858
      functionLinenumberEnd: 2861
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:2859,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:2860,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:2861,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_bridge_get_netflow
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2829
      functionLinenumberEnd: 2831
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:2830,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:2831,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_bridge_get_name
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2802
      functionLinenumberEnd: 2804
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:2803,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:2804,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_bridge_get_mirrors
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2775
      functionLinenumberEnd: 2777
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:2776,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:2777,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_bridge_get_mcast_snooping_enable
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2748
      functionLinenumberEnd: 2750
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:2749,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:2750,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_bridge_get_ipfix
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2721
      functionLinenumberEnd: 2723
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:2722,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:2723,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_bridge_get_flow_tables
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2693
      functionLinenumberEnd: 2696
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:2694,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:2695,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:2696,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_bridge_get_flood_vlans
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2664
      functionLinenumberEnd: 2666
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:2665,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:2666,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_bridge_get_fail_mode
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2637
      functionLinenumberEnd: 2639
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:2638,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:2639,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_bridge_get_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2609
      functionLinenumberEnd: 2612
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:2610,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:2611,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:2612,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_bridge_get_datapath_version
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2580
      functionLinenumberEnd: 2582
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:2581,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:2582,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_bridge_get_datapath_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2553
      functionLinenumberEnd: 2555
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:2554,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:2555,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_bridge_get_datapath_id
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2526
      functionLinenumberEnd: 2528
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:2527,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:2528,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_bridge_get_controller
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2499
      functionLinenumberEnd: 2501
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:2500,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:2501,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_bridge_get_auto_attach
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2472
      functionLinenumberEnd: 2474
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:2473,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:2474,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_bridge_verify_stp_enable
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2446
      functionLinenumberEnd: 2448
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:2447,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_bridge_verify_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2417
      functionLinenumberEnd: 2419
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:2418,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_bridge_verify_sflow
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2388
      functionLinenumberEnd: 2390
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:2389,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_bridge_verify_rstp_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2359
      functionLinenumberEnd: 2361
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:2360,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_bridge_verify_rstp_enable
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2330
      functionLinenumberEnd: 2332
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:2331,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_bridge_verify_protocols
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2301
      functionLinenumberEnd: 2303
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:2302,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_bridge_verify_ports
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2272
      functionLinenumberEnd: 2274
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:2273,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_bridge_verify_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2243
      functionLinenumberEnd: 2245
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:2244,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_bridge_verify_netflow
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2214
      functionLinenumberEnd: 2216
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:2215,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_bridge_verify_name
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2185
      functionLinenumberEnd: 2187
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:2186,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_bridge_verify_mirrors
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2156
      functionLinenumberEnd: 2158
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:2157,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_bridge_verify_mcast_snooping_enable
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2127
      functionLinenumberEnd: 2129
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:2128,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_bridge_verify_ipfix
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2098
      functionLinenumberEnd: 2100
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:2099,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_bridge_verify_flow_tables
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2069
      functionLinenumberEnd: 2071
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:2070,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_bridge_verify_flood_vlans
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2040
      functionLinenumberEnd: 2042
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:2041,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_bridge_verify_fail_mode
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2011
      functionLinenumberEnd: 2013
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:2012,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_bridge_verify_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1982
      functionLinenumberEnd: 1984
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1983,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_bridge_verify_datapath_version
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1953
      functionLinenumberEnd: 1955
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1954,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_bridge_verify_datapath_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1924
      functionLinenumberEnd: 1926
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1925,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_bridge_verify_datapath_id
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1895
      functionLinenumberEnd: 1897
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1896,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_bridge_verify_controller
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1866
      functionLinenumberEnd: 1868
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1867,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_bridge_verify_auto_attach
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1837
      functionLinenumberEnd: 1839
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1838,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_bridge_is_updated
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1808
      functionLinenumberEnd: 1809
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_track_is_updated
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1809,12'
          Dst:             ovsdb_idl_track_is_updated
    - functionName:    ovsrec_bridge_insert_persist_uuid
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1801
      functionLinenumberEnd: 1803
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_insert_persist_uuid
        - ovsrec_bridge_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1802,31'
          Dst:             ovsdb_idl_txn_insert_persist_uuid
        - Src:             'lib/vswitch-idl.c:1802,12'
          Dst:             ovsrec_bridge_cast
    - functionName:    ovsrec_bridge_insert
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1789
      functionLinenumberEnd: 1790
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_insert
        - ovsrec_bridge_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1790,31'
          Dst:             ovsdb_idl_txn_insert
        - Src:             'lib/vswitch-idl.c:1790,12'
          Dst:             ovsrec_bridge_cast
    - functionName:    ovsrec_bridge_delete
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1776
      functionLinenumberEnd: 1778
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1777,5'
          Dst:             ovsdb_idl_txn_delete
    - functionName:    ovsrec_bridge_track_get_next
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1765
      functionLinenumberEnd: 1766
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_track_get_next
        - ovsrec_bridge_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1766,31'
          Dst:             ovsdb_idl_track_get_next
        - Src:             'lib/vswitch-idl.c:1766,12'
          Dst:             ovsrec_bridge_cast
    - functionName:    ovsrec_bridge_row_get_seqno
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1753
      functionLinenumberEnd: 1754
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_row_get_seqno
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1754,12'
          Dst:             ovsdb_idl_row_get_seqno
    - functionName:    ovsrec_bridge_get_seqno
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1748
      functionLinenumberEnd: 1749
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_table_get_seqno
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1749,12'
          Dst:             ovsdb_idl_table_get_seqno
    - functionName:    ovsrec_bridge_next
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1743
      functionLinenumberEnd: 1744
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_next_row
        - ovsrec_bridge_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1744,31'
          Dst:             ovsdb_idl_next_row
        - Src:             'lib/vswitch-idl.c:1744,12'
          Dst:             ovsrec_bridge_cast
    - functionName:    ovsrec_bridge_table_get_for_uuid
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1722
      functionLinenumberEnd: 1724
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_bridge_get_for_uuid
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1724,12'
          Dst:             ovsrec_bridge_get_for_uuid
    - functionName:    ovsrec_bridge_get_for_uuid
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1714
      functionLinenumberEnd: 1715
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_get_row_for_uuid
        - ovsrec_bridge_cast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1715,31'
          Dst:             ovsdb_idl_get_row_for_uuid
        - Src:             'lib/vswitch-idl.c:1715,12'
          Dst:             ovsrec_bridge_cast
    - functionName:    ovsrec_bridge_track_get_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1759
      functionLinenumberEnd: 1760
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_track_get_first
        - ovsrec_bridge_cast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1760,31'
          Dst:             ovsdb_idl_track_get_first
        - Src:             'lib/vswitch-idl.c:1760,12'
          Dst:             ovsrec_bridge_cast
    - functionName:    ovsrec_bridge_table_track_get_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1239
      functionLinenumberEnd: 1241
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_bridge_track_get_first
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1241,12'
          Dst:             ovsrec_bridge_track_get_first
    - functionName:    ovsrec_bridge_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1735
      functionLinenumberEnd: 1736
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_first_row
        - ovsrec_bridge_cast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1736,31'
          Dst:             ovsdb_idl_first_row
        - Src:             'lib/vswitch-idl.c:1736,12'
          Dst:             ovsrec_bridge_cast
    - functionName:    ovsrec_bridge_table_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1231
      functionLinenumberEnd: 1233
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_bridge_first
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1233,12'
          Dst:             ovsrec_bridge_first
    - functionName:    ovsrec_bridge_table_get
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1225
      functionLinenumberEnd: 1226
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_server_has_bridge_table
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1218
      functionLinenumberEnd: 1219
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_table
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1219,12'
          Dst:             ovsdb_idl_server_has_table
    - functionName:    ovsrec_bridge_stp_enable_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1211
      functionLinenumberEnd: 1212
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1212,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_bridge_table_col_stp_enable
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1205
      functionLinenumberEnd: 1206
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1206,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_bridge_status_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1198
      functionLinenumberEnd: 1199
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1199,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_bridge_table_col_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1192
      functionLinenumberEnd: 1193
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1193,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_bridge_sflow_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1185
      functionLinenumberEnd: 1186
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1186,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_bridge_table_col_sflow
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1179
      functionLinenumberEnd: 1180
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1180,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_bridge_rstp_status_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1172
      functionLinenumberEnd: 1173
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1173,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_bridge_table_col_rstp_status
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1166
      functionLinenumberEnd: 1167
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1167,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_bridge_rstp_enable_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1159
      functionLinenumberEnd: 1160
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1160,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_bridge_table_col_rstp_enable
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1153
      functionLinenumberEnd: 1154
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1154,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_bridge_protocols_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1146
      functionLinenumberEnd: 1147
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1147,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_bridge_table_col_protocols
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1140
      functionLinenumberEnd: 1141
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1141,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_bridge_ports_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1133
      functionLinenumberEnd: 1134
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1134,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_bridge_table_col_ports
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1127
      functionLinenumberEnd: 1128
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1128,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_bridge_other_config_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1120
      functionLinenumberEnd: 1121
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1121,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_bridge_table_col_other_config
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1114
      functionLinenumberEnd: 1115
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1115,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_bridge_netflow_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1107
      functionLinenumberEnd: 1108
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1108,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_bridge_table_col_netflow
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1101
      functionLinenumberEnd: 1102
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1102,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_bridge_name_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1094
      functionLinenumberEnd: 1095
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1095,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_bridge_table_col_name
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1088
      functionLinenumberEnd: 1089
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1089,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_bridge_mirrors_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1081
      functionLinenumberEnd: 1082
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1082,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_bridge_table_col_mirrors
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1075
      functionLinenumberEnd: 1076
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1076,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_bridge_mcast_snooping_enable_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1068
      functionLinenumberEnd: 1069
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1069,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_bridge_table_col_mcast_snooping_enable
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1062
      functionLinenumberEnd: 1063
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1063,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_bridge_ipfix_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1055
      functionLinenumberEnd: 1056
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1056,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_bridge_table_col_ipfix
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1049
      functionLinenumberEnd: 1050
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1050,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_bridge_flow_tables_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1042
      functionLinenumberEnd: 1043
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1043,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_bridge_table_col_flow_tables
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1036
      functionLinenumberEnd: 1037
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1037,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_bridge_flood_vlans_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1029
      functionLinenumberEnd: 1030
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1030,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_bridge_table_col_flood_vlans
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1023
      functionLinenumberEnd: 1024
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1024,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_bridge_fail_mode_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1016
      functionLinenumberEnd: 1017
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1017,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_bridge_table_col_fail_mode
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1010
      functionLinenumberEnd: 1011
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1011,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_bridge_external_ids_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1003
      functionLinenumberEnd: 1004
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:1004,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_bridge_table_col_external_ids
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 997
      functionLinenumberEnd: 998
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:998,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_bridge_datapath_version_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 990
      functionLinenumberEnd: 991
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:991,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_bridge_table_col_datapath_version
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 984
      functionLinenumberEnd: 985
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:985,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_bridge_datapath_type_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 977
      functionLinenumberEnd: 978
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:978,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_bridge_table_col_datapath_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 971
      functionLinenumberEnd: 972
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:972,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_bridge_datapath_id_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 964
      functionLinenumberEnd: 965
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:965,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_bridge_table_col_datapath_id
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 958
      functionLinenumberEnd: 959
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:959,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_bridge_controller_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 951
      functionLinenumberEnd: 952
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:952,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_bridge_table_col_controller
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 945
      functionLinenumberEnd: 946
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:946,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_bridge_auto_attach_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 938
      functionLinenumberEnd: 939
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:939,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_bridge_table_col_auto_attach
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 932
      functionLinenumberEnd: 933
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:933,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_autoattach_set_condition
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 867
      functionLinenumberEnd: 868
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_set_condition
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:868,12'
          Dst:             ovsdb_idl_set_condition
    - functionName:    ovsrec_autoattach_index_set_system_name
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 850
      functionLinenumberEnd: 861
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:854,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:858,14'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:860,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_autoattach_index_set_system_description
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 831
      functionLinenumberEnd: 842
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:835,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:839,14'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:841,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_autoattach_index_set_mappings
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 808
      functionLinenumberEnd: 823
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          90
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_datum_sort_unique
        - ovsdb_idl_index_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:815,31'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:816,20'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:821,5'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:822,5'
          Dst:             ovsdb_idl_index_write
    - functionName:    ovsrec_autoattach_cursor_data
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 794
      functionLinenumberEnd: 795
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_cursor_data
        - ovsrec_autoattach_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:795,35'
          Dst:             ovsdb_idl_cursor_data
        - Src:             'lib/vswitch-idl.c:795,12'
          Dst:             ovsrec_autoattach_cast
    - functionName:    ovsrec_autoattach_cursor_first_ge
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 787
      functionLinenumberEnd: 789
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_cursor_first_ge
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:788,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:789,12'
          Dst:             ovsdb_idl_cursor_first_ge
    - functionName:    ovsrec_autoattach_cursor_first_eq
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 779
      functionLinenumberEnd: 781
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_cursor_first_eq
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:780,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:781,12'
          Dst:             ovsdb_idl_cursor_first_eq
    - functionName:    ovsrec_autoattach_cursor_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 771
      functionLinenumberEnd: 773
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_cursor_first
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:772,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:773,12'
          Dst:             ovsdb_idl_cursor_first
    - functionName:    ovsrec_autoattach_index_compare
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 765
      functionLinenumberEnd: 766
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_index_compare
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:766,12'
          Dst:             ovsdb_idl_index_compare
    - functionName:    ovsrec_autoattach_index_find
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 754
      functionLinenumberEnd: 756
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_index_find
        - ovsrec_autoattach_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:755,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:756,35'
          Dst:             ovsdb_idl_index_find
        - Src:             'lib/vswitch-idl.c:756,12'
          Dst:             ovsrec_autoattach_cast
    - functionName:    ovsrec_autoattach_index_init_row
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 747
      functionLinenumberEnd: 749
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_index_init_row
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:748,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:749,12'
          Dst:             ovsdb_idl_index_init_row
    - functionName:    ovsrec_autoattach_index_destroy_row
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 739
      functionLinenumberEnd: 741
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_index_destroy_row
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:740,5'
          Dst:             ovsdb_idl_index_destroy_row
    - functionName:    ovsrec_autoattach_add_clause_system_name
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 716
      functionLinenumberEnd: 732
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          38
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:721,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:725,14'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:727,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:731,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_autoattach_add_clause_system_description
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 692
      functionLinenumberEnd: 708
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          38
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_datum_destroy
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:697,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:701,14'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:703,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:707,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_autoattach_add_clause_mappings
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 667
      functionLinenumberEnd: 684
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          93
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_datum_sort_unique
        - ovsdb_idl_condition_add_clause
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:672,31'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:673,20'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:678,5'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/vswitch-idl.c:679,5'
          Dst:             ovsdb_idl_condition_add_clause
        - Src:             'lib/vswitch-idl.c:683,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsrec_autoattach_update_mappings_delkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 642
      functionLinenumberEnd: 656
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          46
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:645,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:647,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:653,5'
          Dst:             ovsdb_idl_txn_delete_partial_map
    - functionName:    ovsrec_autoattach_update_mappings_setkey
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 619
      functionLinenumberEnd: 634
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          60
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write_partial_map
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:622,13'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:624,19'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:625,21'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:631,5'
          Dst:             ovsdb_idl_txn_write_partial_map
    - functionName:    ovsrec_autoattach_set_system_name
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 599
      functionLinenumberEnd: 611
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:604,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:608,14'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:610,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_autoattach_set_system_description
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 579
      functionLinenumberEnd: 591
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_string_create
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:584,29'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:588,14'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/vswitch-idl.c:590,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_autoattach_set_mappings
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 558
      functionLinenumberEnd: 571
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          89
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_idl_txn_write
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:564,31'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:565,20'
          Dst:             xmalloc
        - Src:             'lib/vswitch-idl.c:570,5'
          Dst:             ovsdb_idl_txn_write
    - functionName:    ovsrec_autoattach_get_system_name
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 544
      functionLinenumberEnd: 546
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:545,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:546,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_autoattach_get_system_description
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 517
      functionLinenumberEnd: 519
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:518,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:519,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_autoattach_get_mappings
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 489
      functionLinenumberEnd: 492
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:490,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:491,5'
          Dst:             ovs_ignore
        - Src:             'lib/vswitch-idl.c:492,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsrec_autoattach_verify_system_name
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 461
      functionLinenumberEnd: 463
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:462,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_autoattach_verify_system_description
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 432
      functionLinenumberEnd: 434
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:433,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_autoattach_verify_mappings
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 403
      functionLinenumberEnd: 405
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_verify
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:404,5'
          Dst:             ovsdb_idl_txn_verify
    - functionName:    ovsrec_autoattach_is_updated
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 374
      functionLinenumberEnd: 375
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_track_is_updated
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:375,12'
          Dst:             ovsdb_idl_track_is_updated
    - functionName:    ovsrec_autoattach_insert_persist_uuid
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 367
      functionLinenumberEnd: 369
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_insert_persist_uuid
        - ovsrec_autoattach_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:368,35'
          Dst:             ovsdb_idl_txn_insert_persist_uuid
        - Src:             'lib/vswitch-idl.c:368,12'
          Dst:             ovsrec_autoattach_cast
    - functionName:    ovsrec_autoattach_insert
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 355
      functionLinenumberEnd: 356
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_insert
        - ovsrec_autoattach_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:356,35'
          Dst:             ovsdb_idl_txn_insert
        - Src:             'lib/vswitch-idl.c:356,12'
          Dst:             ovsrec_autoattach_cast
    - functionName:    ovsrec_autoattach_delete
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 342
      functionLinenumberEnd: 344
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_delete
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:343,5'
          Dst:             ovsdb_idl_txn_delete
    - functionName:    ovsrec_autoattach_track_get_next
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 331
      functionLinenumberEnd: 332
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_track_get_next
        - ovsrec_autoattach_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:332,35'
          Dst:             ovsdb_idl_track_get_next
        - Src:             'lib/vswitch-idl.c:332,12'
          Dst:             ovsrec_autoattach_cast
    - functionName:    ovsrec_autoattach_row_get_seqno
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 319
      functionLinenumberEnd: 320
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_row_get_seqno
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:320,12'
          Dst:             ovsdb_idl_row_get_seqno
    - functionName:    ovsrec_autoattach_get_seqno
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 314
      functionLinenumberEnd: 315
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_table_get_seqno
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:315,12'
          Dst:             ovsdb_idl_table_get_seqno
    - functionName:    ovsrec_autoattach_next
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 309
      functionLinenumberEnd: 310
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_next_row
        - ovsrec_autoattach_cast
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:310,35'
          Dst:             ovsdb_idl_next_row
        - Src:             'lib/vswitch-idl.c:310,12'
          Dst:             ovsrec_autoattach_cast
    - functionName:    ovsrec_autoattach_table_get_for_uuid
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 288
      functionLinenumberEnd: 290
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_autoattach_get_for_uuid
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:290,12'
          Dst:             ovsrec_autoattach_get_for_uuid
    - functionName:    ovsrec_autoattach_get_for_uuid
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 280
      functionLinenumberEnd: 281
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_get_row_for_uuid
        - ovsrec_autoattach_cast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:281,35'
          Dst:             ovsdb_idl_get_row_for_uuid
        - Src:             'lib/vswitch-idl.c:281,12'
          Dst:             ovsrec_autoattach_cast
    - functionName:    ovsrec_autoattach_track_get_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 325
      functionLinenumberEnd: 326
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_track_get_first
        - ovsrec_autoattach_cast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:326,35'
          Dst:             ovsdb_idl_track_get_first
        - Src:             'lib/vswitch-idl.c:326,12'
          Dst:             ovsrec_autoattach_cast
    - functionName:    ovsrec_autoattach_table_track_get_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 193
      functionLinenumberEnd: 195
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_autoattach_track_get_first
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:195,12'
          Dst:             ovsrec_autoattach_track_get_first
    - functionName:    ovsrec_autoattach_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 301
      functionLinenumberEnd: 302
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_first_row
        - ovsrec_autoattach_cast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:302,35'
          Dst:             ovsdb_idl_first_row
        - Src:             'lib/vswitch-idl.c:302,12'
          Dst:             ovsrec_autoattach_cast
    - functionName:    ovsrec_autoattach_table_first
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 185
      functionLinenumberEnd: 187
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsrec_autoattach_first
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:187,12'
          Dst:             ovsrec_autoattach_first
    - functionName:    ovsrec_autoattach_table_get
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 179
      functionLinenumberEnd: 180
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          7
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsrec_server_has_autoattach_table
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 172
      functionLinenumberEnd: 173
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_table
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:173,12'
          Dst:             ovsdb_idl_server_has_table
    - functionName:    ovsrec_autoattach_system_name_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 165
      functionLinenumberEnd: 166
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:166,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_autoattach_table_col_system_name
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 159
      functionLinenumberEnd: 160
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:160,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_autoattach_system_description_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 152
      functionLinenumberEnd: 153
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:153,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_autoattach_table_col_system_description
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 146
      functionLinenumberEnd: 147
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:147,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    ovsrec_autoattach_mappings_server_type
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 139
      functionLinenumberEnd: 140
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_column_type
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:140,12'
          Dst:             ovsdb_idl_server_column_type
    - functionName:    ovsrec_server_has_autoattach_table_col_mappings
      functionSourceFile: '/src/openvswitch/lib/vswitch-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 133
      functionLinenumberEnd: 134
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_server_has_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/vswitch-idl.c:134,12'
          Dst:             ovsdb_idl_server_has_column
    - functionName:    conn_icmp_cast
      functionSourceFile: '/src/openvswitch/lib/conntrack-icmp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45
      functionLinenumberEnd: 46
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_base
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 750
      functionLinenumberEnd: 751
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    __packet_data
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 774
      functionLinenumberEnd: 775
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_data
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 845
      functionLinenumberEnd: 847
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __packet_data
        - dp_packet_base
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:846,12'
          Dst:             __packet_data
        - Src:             'lib/dp-packet.h:847,23'
          Dst:             dp_packet_base
        - Src:             'lib/dp-packet.h:847,43'
          Dst:             __packet_data
    - functionName:    dp_packet_l4
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 475
      functionLinenumberEnd: 477
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_data
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:477,23'
          Dst:             dp_packet_data
    - functionName:    icmp6_valid_new
      functionSourceFile: '/src/openvswitch/lib/conntrack-icmp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 78
      functionLinenumberEnd: 81
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_l4
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack-icmp.c:79,34'
          Dst:             dp_packet_l4
    - functionName:    icmp_conn_update
      functionSourceFile: '/src/openvswitch/lib/conntrack-icmp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52
      functionLinenumberEnd: 63
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          82
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - conn_icmp_cast
        - conn_update_expiration
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack-icmp.c:53,30'
          Dst:             conn_icmp_cast
        - Src:             'lib/conntrack-icmp.c:62,5'
          Dst:             conn_update_expiration
    - functionName:    icmp4_valid_new
      functionSourceFile: '/src/openvswitch/lib/conntrack-icmp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 68
      functionLinenumberEnd: 73
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          50
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - dp_packet_l4
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack-icmp.c:69,32'
          Dst:             dp_packet_l4
    - functionName:    icmp_new_conn
      functionSourceFile: '/src/openvswitch/lib/conntrack-icmp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 87
      functionLinenumberEnd: 93
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          43
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - conn_init_expiration
        - xzalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack-icmp.c:88,30'
          Dst:             xzalloc
        - Src:             'lib/conntrack-icmp.c:92,5'
          Dst:             conn_init_expiration
    - functionName:    conntrack_tcp_seq_chk_bypass_init_coverage
      functionSourceFile: '/src/openvswitch/lib/conntrack-tcp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48
      functionLinenumberEnd: 48
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack-tcp.c:48,1'
          Dst:             coverage_counter_register
    - functionName:    conntrack_tcp_seq_chk_failed_init_coverage
      functionSourceFile: '/src/openvswitch/lib/conntrack-tcp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 49
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack-tcp.c:49,1'
          Dst:             coverage_counter_register
    - functionName:    conntrack_invalid_tcp_flags_init_coverage
      functionSourceFile: '/src/openvswitch/lib/conntrack-tcp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack-tcp.c:50,1'
          Dst:             coverage_counter_register
    - functionName:    conntrack_invalid_tcp_flags_count
      functionSourceFile: '/src/openvswitch/lib/conntrack-tcp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_conntrack_invalid_tcp_flags_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack-tcp.c:50,1'
          Dst:             counter_conntrack_invalid_tcp_flags_get
    - functionName:    counter_conntrack_invalid_tcp_flags_get
      functionSourceFile: '/src/openvswitch/lib/conntrack-tcp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_conntrack_invalid_tcp_flags_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack-tcp.c:50,1'
          Dst:             counter_conntrack_invalid_tcp_flags_get_unsafe
    - functionName:    counter_conntrack_invalid_tcp_flags_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/conntrack-tcp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    conntrack_tcp_seq_chk_failed_count
      functionSourceFile: '/src/openvswitch/lib/conntrack-tcp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 49
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_conntrack_tcp_seq_chk_failed_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack-tcp.c:49,1'
          Dst:             counter_conntrack_tcp_seq_chk_failed_get
    - functionName:    counter_conntrack_tcp_seq_chk_failed_get
      functionSourceFile: '/src/openvswitch/lib/conntrack-tcp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 49
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_conntrack_tcp_seq_chk_failed_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack-tcp.c:49,1'
          Dst:             counter_conntrack_tcp_seq_chk_failed_get_unsafe
    - functionName:    counter_conntrack_tcp_seq_chk_failed_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/conntrack-tcp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 49
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    conntrack_tcp_seq_chk_bypass_count
      functionSourceFile: '/src/openvswitch/lib/conntrack-tcp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48
      functionLinenumberEnd: 48
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_conntrack_tcp_seq_chk_bypass_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack-tcp.c:48,1'
          Dst:             counter_conntrack_tcp_seq_chk_bypass_get
    - functionName:    counter_conntrack_tcp_seq_chk_bypass_get
      functionSourceFile: '/src/openvswitch/lib/conntrack-tcp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48
      functionLinenumberEnd: 48
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_conntrack_tcp_seq_chk_bypass_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack-tcp.c:48,1'
          Dst:             counter_conntrack_tcp_seq_chk_bypass_get_unsafe
    - functionName:    counter_conntrack_tcp_seq_chk_bypass_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/conntrack-tcp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48
      functionLinenumberEnd: 48
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    tcp_peer_to_protoinfo_flags
      functionSourceFile: '/src/openvswitch/lib/conntrack-tcp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 484
      functionLinenumberEnd: 495
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          51
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    conntrack_tcp_seq_chk_bypass_add
      functionSourceFile: '/src/openvswitch/lib/conntrack-tcp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48
      functionLinenumberEnd: 48
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_conntrack_tcp_seq_chk_bypass_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack-tcp.c:48,1'
          Dst:             counter_conntrack_tcp_seq_chk_bypass_get
    - functionName:    conntrack_tcp_seq_chk_failed_add
      functionSourceFile: '/src/openvswitch/lib/conntrack-tcp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 49
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_conntrack_tcp_seq_chk_failed_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack-tcp.c:49,1'
          Dst:             counter_conntrack_tcp_seq_chk_failed_get
    - functionName:    tcp_bypass_seq_chk
      functionSourceFile: '/src/openvswitch/lib/conntrack-tcp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 155
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - conntrack_get_tcp_seq_chk
        - conntrack_tcp_seq_chk_bypass_add
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack-tcp.c:156,10'
          Dst:             conntrack_get_tcp_seq_chk
        - Src:             'lib/conntrack-tcp.c:157,9'
          Dst:             conntrack_tcp_seq_chk_bypass_add
    - functionName:    conntrack_invalid_tcp_flags_add
      functionSourceFile: '/src/openvswitch/lib/conntrack-tcp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_conntrack_invalid_tcp_flags_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack-tcp.c:50,1'
          Dst:             counter_conntrack_invalid_tcp_flags_get
    - functionName:    conn_tcp_cast
      functionSourceFile: '/src/openvswitch/lib/conntrack-tcp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 85
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    tcp_invalid_flags
      functionSourceFile: '/src/openvswitch/lib/conntrack-tcp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 92
      functionLinenumberEnd: 113
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - short
      constantsTouched: []
      argNames:
        - ''
      BBCount:         22
      ICount:          103
      EdgeCount:       29
      CyclomaticComplexity: 9
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 762
      functionLinenumberEnd: 763
      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:    dp_packet_l4_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 502
      functionLinenumberEnd: 505
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_l2_pad_size
        - dp_packet_l4
        - dp_packet_tail
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:504,25'
          Dst:             dp_packet_tail
        - Src:             'lib/dp-packet.h:504,59'
          Dst:             dp_packet_l4
        - Src:             'lib/dp-packet.h:505,11'
          Dst:             dp_packet_l2_pad_size
    - functionName:    dp_packet_tail
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 326
      functionLinenumberEnd: 327
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - dp_packet_data
        - dp_packet_size
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:327,21'
          Dst:             dp_packet_data
        - Src:             'lib/dp-packet.h:327,41'
          Dst:             dp_packet_size
    - functionName:    dp_packet_l4
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 475
      functionLinenumberEnd: 477
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_data
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:477,23'
          Dst:             dp_packet_data
    - functionName:    dp_packet_l2_pad_size
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 432
      functionLinenumberEnd: 433
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_data
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 845
      functionLinenumberEnd: 847
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - __packet_data
        - dp_packet_base
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:846,12'
          Dst:             __packet_data
        - Src:             'lib/dp-packet.h:847,23'
          Dst:             dp_packet_base
        - Src:             'lib/dp-packet.h:847,43'
          Dst:             __packet_data
    - functionName:    __packet_data
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 774
      functionLinenumberEnd: 775
      functionDepth:   0
      returnType:      short
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_base
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 750
      functionLinenumberEnd: 751
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    dp_packet_get_tcp_payload
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 547
      functionLinenumberEnd: 559
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          86
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - dp_packet_l4
        - dp_packet_l4_size
        - ntohs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:548,22'
          Dst:             dp_packet_l4_size
        - Src:             'lib/dp-packet.h:551,34'
          Dst:             dp_packet_l4
        - Src:             'lib/dp-packet.h:552,23'
          Dst:             ntohs
    - functionName:    tcp_get_wscale
      functionSourceFile: '/src/openvswitch/lib/conntrack-tcp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 122
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         19
      ICount:          130
      EdgeCount:       21
      CyclomaticComplexity: 4
      functionsReached:
        - ntohs
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/conntrack-tcp.c:129,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/conntrack-tcp.c:123,15'
          Dst:             ntohs
    - functionName:    dp_packet_get_tcp_payload_length
      functionSourceFile: '/src/openvswitch/lib/dp-packet.h'
      linkageType:     InternalLinkage
      functionLinenumber: 579
      functionLinenumberEnd: 587
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_packet_get_tcp_payload
        - dp_packet_l2_pad_size
        - dp_packet_tail
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dp-packet.h:580,31'
          Dst:             dp_packet_get_tcp_payload
        - Src:             'lib/dp-packet.h:582,26'
          Dst:             dp_packet_tail
        - Src:             'lib/dp-packet.h:582,48'
          Dst:             dp_packet_l2_pad_size
    - functionName:    get_16aligned_be32
      functionSourceFile: '/src/openvswitch/lib/unaligned.h'
      linkageType:     InternalLinkage
      functionLinenumber: 246
      functionLinenumberEnd: 250
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    tcp_conn_get_protoinfo
      functionSourceFile: '/src/openvswitch/lib/conntrack-tcp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 501
      functionLinenumberEnd: 513
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          80
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - conn_tcp_cast
        - tcp_peer_to_protoinfo_flags
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack-tcp.c:502,35'
          Dst:             conn_tcp_cast
        - Src:             'lib/conntrack-tcp.c:511,33'
          Dst:             tcp_peer_to_protoinfo_flags
        - Src:             'lib/conntrack-tcp.c:512,34'
          Dst:             tcp_peer_to_protoinfo_flags
    - functionName:    tcp_conn_update
      functionSourceFile: '/src/openvswitch/lib/conntrack-tcp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 166
      functionLinenumberEnd: 416
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         194
      ICount:          1271
      EdgeCount:       263
      CyclomaticComplexity: 71
      functionsReached:
        - conn_tcp_cast
        - conn_update_expiration
        - conntrack_invalid_tcp_flags_add
        - conntrack_tcp_seq_chk_failed_add
        - dp_packet_get_tcp_payload_length
        - dp_packet_l4
        - get_16aligned_be32
        - ntohl
        - ntohs
        - tcp_bypass_seq_chk
        - tcp_get_wscale
        - tcp_invalid_flags
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack-tcp.c:167,29'
          Dst:             conn_tcp_cast
        - Src:             'lib/conntrack-tcp.c:168,30'
          Dst:             dp_packet_l4
        - Src:             'lib/conntrack-tcp.c:174,26'
          Dst:             ntohs
        - Src:             'lib/conntrack-tcp.c:176,20'
          Dst:             ntohs
        - Src:             'lib/conntrack-tcp.c:178,22'
          Dst:             dp_packet_get_tcp_payload_length
        - Src:             'lib/conntrack-tcp.c:180,9'
          Dst:             tcp_invalid_flags
        - Src:             'lib/conntrack-tcp.c:181,9'
          Dst:             conntrack_invalid_tcp_flags_add
        - Src:             'lib/conntrack-tcp.c:192,13'
          Dst:             conn_update_expiration
        - Src:             'lib/conntrack-tcp.c:218,28'
          Dst:             get_16aligned_be32
        - Src:             'lib/conntrack-tcp.c:218,22'
          Dst:             ntohl
        - Src:             'lib/conntrack-tcp.c:223,21'
          Dst:             get_16aligned_be32
        - Src:             'lib/conntrack-tcp.c:223,15'
          Dst:             ntohl
        - Src:             'lib/conntrack-tcp.c:229,31'
          Dst:             tcp_get_wscale
        - Src:             'lib/conntrack-tcp.c:268,21'
          Dst:             get_16aligned_be32
        - Src:             'lib/conntrack-tcp.c:268,15'
          Dst:             ntohl
        - Src:             'lib/conntrack-tcp.c:307,12'
          Dst:             tcp_bypass_seq_chk
        - Src:             'lib/conntrack-tcp.c:343,13'
          Dst:             conn_update_expiration
        - Src:             'lib/conntrack-tcp.c:346,13'
          Dst:             conn_update_expiration
        - Src:             'lib/conntrack-tcp.c:349,13'
          Dst:             conn_update_expiration
        - Src:             'lib/conntrack-tcp.c:352,13'
          Dst:             conn_update_expiration
        - Src:             'lib/conntrack-tcp.c:354,13'
          Dst:             conn_update_expiration
        - Src:             'lib/conntrack-tcp.c:411,9'
          Dst:             conntrack_tcp_seq_chk_failed_add
    - functionName:    tcp_valid_new
      functionSourceFile: '/src/openvswitch/lib/conntrack-tcp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 420
      functionLinenumberEnd: 436
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          63
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - dp_packet_l4
        - ntohs
        - tcp_invalid_flags
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack-tcp.c:421,30'
          Dst:             dp_packet_l4
        - Src:             'lib/conntrack-tcp.c:422,26'
          Dst:             ntohs
        - Src:             'lib/conntrack-tcp.c:424,9'
          Dst:             tcp_invalid_flags
    - functionName:    tcp_new_conn
      functionSourceFile: '/src/openvswitch/lib/conntrack-tcp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 441
      functionLinenumberEnd: 479
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          203
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - conn_init_expiration
        - dp_packet_get_tcp_payload_length
        - dp_packet_l4
        - get_16aligned_be32
        - ntohl
        - ntohs
        - tcp_get_wscale
        - xzalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack-tcp.c:443,30'
          Dst:             dp_packet_l4
        - Src:             'lib/conntrack-tcp.c:445,26'
          Dst:             ntohs
        - Src:             'lib/conntrack-tcp.c:447,15'
          Dst:             xzalloc
        - Src:             'lib/conntrack-tcp.c:452,24'
          Dst:             get_16aligned_be32
        - Src:             'lib/conntrack-tcp.c:452,18'
          Dst:             ntohl
        - Src:             'lib/conntrack-tcp.c:453,31'
          Dst:             dp_packet_get_tcp_payload_length
        - Src:             'lib/conntrack-tcp.c:457,23'
          Dst:             tcp_get_wscale
        - Src:             'lib/conntrack-tcp.c:462,20'
          Dst:             ntohs
        - Src:             'lib/conntrack-tcp.c:462,20'
          Dst:             ntohs
        - Src:             'lib/conntrack-tcp.c:477,5'
          Dst:             conn_init_expiration
    - functionName:    init_this_module_conntrack_tp
      functionSourceFile: '/src/openvswitch/lib/conntrack-tp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25
      functionLinenumberEnd: 25
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack-tp.c:25,1'
          Dst:             vlog_insert_module
    - functionName:    update_existing_tp
      functionSourceFile: '/src/openvswitch/lib/conntrack-tp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 90
      functionLinenumberEnd: 107
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          71
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    init_default_tp
      functionSourceFile: '/src/openvswitch/lib/conntrack-tp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 111
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          22
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    cmap_remove
      functionSourceFile: '/src/openvswitch/lib/cmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 293
      functionLinenumberEnd: 294
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - cmap_replace
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/cmap.h:294,12'
          Dst:             cmap_replace
    - functionName:    cmap_node_next_protected
      functionSourceFile: '/src/openvswitch/lib/cmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 73
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          22
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    timeout_policy_clean
      functionSourceFile: '/src/openvswitch/lib/conntrack-tp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 140
      functionLinenumberEnd: 144
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - cmap_remove
        - hash_int
        - ovsrcu_postpone__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack-tp.c:141,21'
          Dst:             hash_int
        - Src:             'lib/conntrack-tp.c:142,5'
          Dst:             cmap_remove
        - Src:             'lib/conntrack-tp.c:143,5'
          Dst:             ovsrcu_postpone__
    - functionName:    hash_int
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 408
      functionLinenumberEnd: 409
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_2words
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:409,12'
          Dst:             hash_2words
    - functionName:    hash_2words
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 153
      functionLinenumberEnd: 154
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_add
        - hash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:154,33'
          Dst:             hash_add
        - Src:             'lib/hash.h:154,24'
          Dst:             hash_add
        - Src:             'lib/hash.h:154,12'
          Dst:             hash_finish
    - functionName:    hash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 108
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_add
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:109,12'
          Dst:             mhash_add
    - functionName:    hash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:119,12'
          Dst:             mhash_finish
    - functionName:    mhash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_rot
        - mhash_add__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:78,12'
          Dst:             mhash_add__
        - Src:             'lib/hash.h:79,12'
          Dst:             hash_rot
    - functionName:    mhash_add__
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hash_rot
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:71,12'
          Dst:             hash_rot
    - functionName:    hash_rot
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 32
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    timeout_policy_lookup_protected
      functionSourceFile: '/src/openvswitch/lib/conntrack-tp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52
      functionLinenumberEnd: 64
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          78
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - cmap_find_protected
        - cmap_node_next_protected
        - hash_int
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack-tp.c:56,12'
          Dst:             hash_int
        - Src:             'lib/conntrack-tp.c:57,5'
          Dst:             cmap_find_protected
        - Src:             'lib/conntrack-tp.c:57,5'
          Dst:             cmap_node_next_protected
    - functionName:    cmap_node_next
      functionSourceFile: '/src/openvswitch/lib/cmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 67
      functionLinenumberEnd: 68
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          22
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    conn_init_expiration
      functionSourceFile: '/src/openvswitch/lib/conntrack-tp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 265
      functionLinenumberEnd: 281
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          98
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - timeout_policy_lookup
        - tm_to_ct_dpif_tp
        - vlog_rate_limit
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack-tp.c:269,10'
          Dst:             timeout_policy_lookup
        - Src:             'lib/conntrack-tp.c:271,32'
          Dst:             tm_to_ct_dpif_tp
        - Src:             'lib/conntrack-tp.c:273,37'
          Dst:             tm_to_ct_dpif_tp
        - Src:             'lib/conntrack-tp.c:276,5'
          Dst:             vlog_rate_limit
    - functionName:    timeout_policy_lookup
      functionSourceFile: '/src/openvswitch/lib/conntrack-tp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 68
      functionLinenumberEnd: 79
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          78
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - cmap_find
        - cmap_node_next
        - hash_int
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack-tp.c:72,12'
          Dst:             hash_int
        - Src:             'lib/conntrack-tp.c:73,5'
          Dst:             cmap_find
        - Src:             'lib/conntrack-tp.c:73,5'
          Dst:             cmap_node_next
    - functionName:    tm_to_ct_dpif_tp
      functionSourceFile: '/src/openvswitch/lib/conntrack-tp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 206
      functionLinenumberEnd: 237
      functionDepth:   0
      returnType:      char
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         18
      ICount:          84
      EdgeCount:       34
      CyclomaticComplexity: 18
      functionsReached:
        - abort
      functionUses:    4
      BranchProfiles:
        - Branch String:   'lib/conntrack-tp.c:207,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/conntrack-tp.c:232,9'
          Dst:             abort
    - functionName:    conn_update_expiration
      functionSourceFile: '/src/openvswitch/lib/conntrack-tp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 244
      functionLinenumberEnd: 260
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          101
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - timeout_policy_lookup
        - tm_to_ct_dpif_tp
        - vlog_rate_limit
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack-tp.c:248,10'
          Dst:             timeout_policy_lookup
        - Src:             'lib/conntrack-tp.c:250,32'
          Dst:             tm_to_ct_dpif_tp
        - Src:             'lib/conntrack-tp.c:252,37'
          Dst:             tm_to_ct_dpif_tp
        - Src:             'lib/conntrack-tp.c:254,5'
          Dst:             vlog_rate_limit
    - functionName:    timeout_policy_update
      functionSourceFile: '/src/openvswitch/lib/conntrack-tp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 193
      functionLinenumberEnd: 201
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - timeout_policy_create
        - timeout_policy_delete__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack-tp.c:197,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/conntrack-tp.c:198,5'
          Dst:             timeout_policy_delete__
        - Src:             'lib/conntrack-tp.c:199,5'
          Dst:             timeout_policy_create
        - Src:             'lib/conntrack-tp.c:200,5'
          Dst:             ovs_mutex_unlock
    - functionName:    timeout_policy_delete__
      functionSourceFile: '/src/openvswitch/lib/conntrack-tp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 150
      functionLinenumberEnd: 162
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          69
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - timeout_policy_clean
        - timeout_policy_lookup_protected
        - vlog_rate_limit
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack-tp.c:154,10'
          Dst:             timeout_policy_lookup_protected
        - Src:             'lib/conntrack-tp.c:156,9'
          Dst:             timeout_policy_clean
        - Src:             'lib/conntrack-tp.c:158,9'
          Dst:             vlog_rate_limit
    - functionName:    timeout_policy_create
      functionSourceFile: '/src/openvswitch/lib/conntrack-tp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 125
      functionLinenumberEnd: 135
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          43
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - cmap_insert
        - hash_int
        - init_default_tp
        - update_existing_tp
        - xzalloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack-tp.c:130,10'
          Dst:             xzalloc
        - Src:             'lib/conntrack-tp.c:131,5'
          Dst:             init_default_tp
        - Src:             'lib/conntrack-tp.c:132,5'
          Dst:             update_existing_tp
        - Src:             'lib/conntrack-tp.c:133,12'
          Dst:             hash_int
        - Src:             'lib/conntrack-tp.c:134,5'
          Dst:             cmap_insert
    - functionName:    timeout_policy_init
      functionSourceFile: '/src/openvswitch/lib/conntrack-tp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 179
      functionLinenumberEnd: 188
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - cmap_init
        - timeout_policy_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack-tp.c:182,5'
          Dst:             cmap_init
        - Src:             'lib/conntrack-tp.c:187,5'
          Dst:             timeout_policy_create
    - functionName:    timeout_policy_delete
      functionSourceFile: '/src/openvswitch/lib/conntrack-tp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 167
      functionLinenumberEnd: 173
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - timeout_policy_delete__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack-tp.c:170,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/conntrack-tp.c:171,11'
          Dst:             timeout_policy_delete__
        - Src:             'lib/conntrack-tp.c:172,5'
          Dst:             ovs_mutex_unlock
    - functionName:    timeout_policy_get
      functionSourceFile: '/src/openvswitch/lib/conntrack-tp.c'
      linkageType:     InternalLinkage
      functionLinenumber: 83
      functionLinenumberEnd: 84
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - timeout_policy_lookup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack-tp.c:84,12'
          Dst:             timeout_policy_lookup
    - functionName:    conn_other_cast
      functionSourceFile: '/src/openvswitch/lib/conntrack-other.c'
      linkageType:     InternalLinkage
      functionLinenumber: 42
      functionLinenumberEnd: 43
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    other_conn_update
      functionSourceFile: '/src/openvswitch/lib/conntrack-other.c'
      linkageType:     InternalLinkage
      functionLinenumber: 49
      functionLinenumberEnd: 64
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          100
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - conn_other_cast
        - conn_update_expiration
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack-other.c:50,31'
          Dst:             conn_other_cast
        - Src:             'lib/conntrack-other.c:58,5'
          Dst:             conn_update_expiration
    - functionName:    other_valid_new
      functionSourceFile: '/src/openvswitch/lib/conntrack-other.c'
      linkageType:     InternalLinkage
      functionLinenumber: 68
      functionLinenumberEnd: 69
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          6
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    other_new_conn
      functionSourceFile: '/src/openvswitch/lib/conntrack-other.c'
      linkageType:     InternalLinkage
      functionLinenumber: 75
      functionLinenumberEnd: 84
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          43
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - conn_init_expiration
        - xzalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/conntrack-other.c:78,12'
          Dst:             xzalloc
        - Src:             'lib/conntrack-other.c:82,5'
          Dst:             conn_init_expiration
    - functionName:    smc_clear_entry
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev-dfc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 36
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    flowmap_init
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 343
      functionLinenumberEnd: 345
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    emc_clear_entry
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev-dfc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 25
      functionLinenumberEnd: 30
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - dp_netdev_flow_unref
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev-dfc.c:27,9'
          Dst:             dp_netdev_flow_unref
    - functionName:    emc_entry_alive
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev-dfc.h'
      linkageType:     InternalLinkage
      functionLinenumber: 136
      functionLinenumberEnd: 137
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          27
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    emc_cache_slow_sweep
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev-dfc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 103
      functionLinenumberEnd: 110
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - emc_clear_entry
        - emc_entry_alive
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev-dfc.c:106,10'
          Dst:             emc_entry_alive
        - Src:             'lib/dpif-netdev-dfc.c:107,9'
          Dst:             emc_clear_entry
    - functionName:    emc_cache_uninit
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev-dfc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 72
      functionLinenumberEnd: 78
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          38
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - emc_clear_entry
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev-dfc.c:76,9'
          Dst:             emc_clear_entry
    - functionName:    smc_cache_uninit
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev-dfc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          53
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - smc_clear_entry
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev-dfc.c:87,13'
          Dst:             smc_clear_entry
    - functionName:    dfc_cache_uninit
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev-dfc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 97
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - emc_cache_uninit
        - smc_cache_uninit
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev-dfc.c:95,5'
          Dst:             smc_cache_uninit
        - Src:             'lib/dpif-netdev-dfc.c:96,5'
          Dst:             emc_cache_uninit
    - functionName:    smc_cache_init
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev-dfc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 61
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          49
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    emc_cache_init
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev-dfc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40
      functionLinenumberEnd: 50
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          67
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - flowmap_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev-dfc.c:48,9'
          Dst:             flowmap_init
    - functionName:    dfc_cache_init
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev-dfc.c'
      linkageType:     InternalLinkage
      functionLinenumber: 65
      functionLinenumberEnd: 68
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - emc_cache_init
        - smc_cache_init
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev-dfc.c:66,5'
          Dst:             emc_cache_init
        - Src:             'lib/dpif-netdev-dfc.c:67,5'
          Dst:             smc_cache_init
    - functionName:    init_this_module_dpif_netdev_dpcls
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev-dpcls.c'
      linkageType:     InternalLinkage
      functionLinenumber: 34
      functionLinenumberEnd: 34
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev-dpcls.c:34,1'
          Dst:             vlog_insert_module
    - functionName:    mhash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_rot
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 32
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhash_add__
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hash_rot
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:71,12'
          Dst:             hash_rot
    - functionName:    mhash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_rot
        - mhash_add__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:78,12'
          Dst:             mhash_add__
        - Src:             'lib/hash.h:79,12'
          Dst:             hash_rot
    - functionName:    hash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 108
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_add
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:109,12'
          Dst:             mhash_add
    - functionName:    hash_add64
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 113
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_add
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:114,21'
          Dst:             hash_add
        - Src:             'lib/hash.h:114,12'
          Dst:             hash_add
    - functionName:    netdev_flow_key_flatten_unit
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev-dpcls.c'
      linkageType:     InternalLinkage
      functionLinenumber: 73
      functionLinenumberEnd: 94
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          94
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - count_1bits
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev-dpcls.c:80,34'
          Dst:             count_1bits
    - functionName:    count_1bits
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 332
      functionLinenumberEnd: 347
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          37
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    11
      BranchProfiles:  []
      Callsites:       []
    - functionName:    miniflow_get_values
      functionSourceFile: '/src/openvswitch/lib/flow.h'
      linkageType:     InternalLinkage
      functionLinenumber: 535
      functionLinenumberEnd: 536
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    block_array_once_init
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev-dpcls.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 44
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         5
      ICount:          23
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - abort
        - pthread_key_create
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev-dpcls.c:44,1'
          Dst:             pthread_key_create
        - Src:             'lib/dpif-netdev-dpcls.c:44,1'
          Dst:             abort
    - functionName:    block_array_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev-dpcls.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 44
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - pthread_getspecific
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev-dpcls.c:44,1'
          Dst:             pthread_getspecific
    - functionName:    block_array_init
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev-dpcls.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 44
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - block_array_once_init
        - pthread_once
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev-dpcls.c:44,1'
          Dst:             pthread_once
        - Src:             'lib/dpif-netdev-dpcls.c:44,1'
          Dst:             block_array_once_init
    - functionName:    block_array_set_unsafe
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev-dpcls.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 44
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - block_array_get_unsafe
        - xpthread_setspecific
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev-dpcls.c:44,1'
          Dst:             block_array_get_unsafe
        - Src:             'lib/dpif-netdev-dpcls.c:44,1'
          Dst:             xpthread_setspecific
    - functionName:    block_array_get
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev-dpcls.c'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 44
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          13
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - block_array_get_unsafe
        - block_array_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev-dpcls.c:44,1'
          Dst:             block_array_init
        - Src:             'lib/dpif-netdev-dpcls.c:44,1'
          Dst:             block_array_get_unsafe
    - functionName:    cmap_node_next
      functionSourceFile: '/src/openvswitch/lib/cmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 67
      functionLinenumberEnd: 68
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          22
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    9
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_rule_matches_key
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev-dpcls.c'
      linkageType:     InternalLinkage
      functionLinenumber: 154
      functionLinenumberEnd: 164
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          80
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - miniflow_get_values
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev-dpcls.c:155,28'
          Dst:             miniflow_get_values
        - Src:             'lib/dpif-netdev-dpcls.c:156,29'
          Dst:             miniflow_get_values
    - functionName:    hash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_finish
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:119,12'
          Dst:             mhash_finish
    - functionName:    hash_add_words64
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 437
      functionLinenumberEnd: 441
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          44
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - hash_add64
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:439,16'
          Dst:             hash_add64
    - functionName:    zero_rightmost_1bit
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 390
      functionLinenumberEnd: 391
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    27
      BranchProfiles:  []
      Callsites:       []
    - functionName:    netdev_flow_key_flatten
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev-dpcls.c'
      linkageType:     InternalLinkage
      functionLinenumber: 116
      functionLinenumberEnd: 147
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          83
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - count_1bits
        - miniflow_get_values
        - netdev_flow_key_flatten_unit
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev-dpcls.c:118,34'
          Dst:             miniflow_get_values
        - Src:             'lib/dpif-netdev-dpcls.c:119,34'
          Dst:             miniflow_get_values
        - Src:             'lib/dpif-netdev-dpcls.c:123,38'
          Dst:             count_1bits
        - Src:             'lib/dpif-netdev-dpcls.c:127,5'
          Dst:             netdev_flow_key_flatten_unit
        - Src:             'lib/dpif-netdev-dpcls.c:141,5'
          Dst:             netdev_flow_key_flatten_unit
    - functionName:    raw_ctz
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 261
      functionLinenumberEnd: 267
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          36
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    27
      BranchProfiles:  []
      Callsites:       []
    - functionName:    get_blocks_scratch
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev-dpcls.c'
      linkageType:     InternalLinkage
      functionLinenumber: 48
      functionLinenumberEnd: 63
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          85
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - block_array_get
        - block_array_set_unsafe
        - vlog
        - xrealloc
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev-dpcls.c:49,33'
          Dst:             block_array_get
        - Src:             'lib/dpif-netdev-dpcls.c:56,17'
          Dst:             xrealloc
        - Src:             'lib/dpif-netdev-dpcls.c:59,9'
          Dst:             block_array_set_unsafe
        - Src:             'lib/dpif-netdev-dpcls.c:60,9'
          Dst:             vlog
    - functionName:    dpcls_subtable_lookup_generic
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev-dpcls.c'
      linkageType:     InternalLinkage
      functionLinenumber: 262
      functionLinenumberEnd: 270
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          291
      EdgeCount:       39
      CyclomaticComplexity: 11
      functionsReached:
        - cmap_find_batch
        - cmap_node_next
        - count_1bits
        - get_blocks_scratch
        - hash_add_words64
        - hash_finish
        - netdev_flow_key_flatten
        - netdev_rule_matches_key
        - ovs_ignore
        - raw_ctz
        - zero_rightmost_1bit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev-dpcls.c:268,12'
          Dst:             count_1bits
        - Src:             'lib/dpif-netdev-dpcls.c:268,12'
          Dst:             ovs_ignore
        - Src:             'lib/dpif-netdev-dpcls.c:268,12'
          Dst:             get_blocks_scratch
        - Src:             'lib/dpif-netdev-dpcls.c:268,12'
          Dst:             raw_ctz
        - Src:             'lib/dpif-netdev-dpcls.c:268,12'
          Dst:             netdev_flow_key_flatten
        - Src:             'lib/dpif-netdev-dpcls.c:268,12'
          Dst:             zero_rightmost_1bit
        - Src:             'lib/dpif-netdev-dpcls.c:268,12'
          Dst:             raw_ctz
        - Src:             'lib/dpif-netdev-dpcls.c:268,12'
          Dst:             hash_add_words64
        - Src:             'lib/dpif-netdev-dpcls.c:268,12'
          Dst:             hash_finish
        - Src:             'lib/dpif-netdev-dpcls.c:268,12'
          Dst:             zero_rightmost_1bit
        - Src:             'lib/dpif-netdev-dpcls.c:268,12'
          Dst:             cmap_find_batch
        - Src:             'lib/dpif-netdev-dpcls.c:268,12'
          Dst:             raw_ctz
        - Src:             'lib/dpif-netdev-dpcls.c:268,12'
          Dst:             netdev_rule_matches_key
        - Src:             'lib/dpif-netdev-dpcls.c:268,12'
          Dst:             cmap_node_next
        - Src:             'lib/dpif-netdev-dpcls.c:268,12'
          Dst:             zero_rightmost_1bit
    - functionName:    dpcls_subtable_lookup_mf_u0w4_u1w0
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev-dpcls.c'
      linkageType:     InternalLinkage
      functionLinenumber: 292
      functionLinenumberEnd: 292
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          283
      EdgeCount:       39
      CyclomaticComplexity: 11
      functionsReached:
        - cmap_find_batch
        - cmap_node_next
        - count_1bits
        - get_blocks_scratch
        - hash_add_words64
        - hash_finish
        - netdev_flow_key_flatten
        - netdev_rule_matches_key
        - ovs_ignore
        - raw_ctz
        - zero_rightmost_1bit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev-dpcls.c:292,1'
          Dst:             count_1bits
        - Src:             'lib/dpif-netdev-dpcls.c:292,1'
          Dst:             ovs_ignore
        - Src:             'lib/dpif-netdev-dpcls.c:292,1'
          Dst:             get_blocks_scratch
        - Src:             'lib/dpif-netdev-dpcls.c:292,1'
          Dst:             raw_ctz
        - Src:             'lib/dpif-netdev-dpcls.c:292,1'
          Dst:             netdev_flow_key_flatten
        - Src:             'lib/dpif-netdev-dpcls.c:292,1'
          Dst:             zero_rightmost_1bit
        - Src:             'lib/dpif-netdev-dpcls.c:292,1'
          Dst:             raw_ctz
        - Src:             'lib/dpif-netdev-dpcls.c:292,1'
          Dst:             hash_add_words64
        - Src:             'lib/dpif-netdev-dpcls.c:292,1'
          Dst:             hash_finish
        - Src:             'lib/dpif-netdev-dpcls.c:292,1'
          Dst:             zero_rightmost_1bit
        - Src:             'lib/dpif-netdev-dpcls.c:292,1'
          Dst:             cmap_find_batch
        - Src:             'lib/dpif-netdev-dpcls.c:292,1'
          Dst:             raw_ctz
        - Src:             'lib/dpif-netdev-dpcls.c:292,1'
          Dst:             netdev_rule_matches_key
        - Src:             'lib/dpif-netdev-dpcls.c:292,1'
          Dst:             cmap_node_next
        - Src:             'lib/dpif-netdev-dpcls.c:292,1'
          Dst:             zero_rightmost_1bit
    - functionName:    dpcls_subtable_lookup_mf_u0w4_u1w1
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev-dpcls.c'
      linkageType:     InternalLinkage
      functionLinenumber: 291
      functionLinenumberEnd: 291
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          283
      EdgeCount:       39
      CyclomaticComplexity: 11
      functionsReached:
        - cmap_find_batch
        - cmap_node_next
        - count_1bits
        - get_blocks_scratch
        - hash_add_words64
        - hash_finish
        - netdev_flow_key_flatten
        - netdev_rule_matches_key
        - ovs_ignore
        - raw_ctz
        - zero_rightmost_1bit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev-dpcls.c:291,1'
          Dst:             count_1bits
        - Src:             'lib/dpif-netdev-dpcls.c:291,1'
          Dst:             ovs_ignore
        - Src:             'lib/dpif-netdev-dpcls.c:291,1'
          Dst:             get_blocks_scratch
        - Src:             'lib/dpif-netdev-dpcls.c:291,1'
          Dst:             raw_ctz
        - Src:             'lib/dpif-netdev-dpcls.c:291,1'
          Dst:             netdev_flow_key_flatten
        - Src:             'lib/dpif-netdev-dpcls.c:291,1'
          Dst:             zero_rightmost_1bit
        - Src:             'lib/dpif-netdev-dpcls.c:291,1'
          Dst:             raw_ctz
        - Src:             'lib/dpif-netdev-dpcls.c:291,1'
          Dst:             hash_add_words64
        - Src:             'lib/dpif-netdev-dpcls.c:291,1'
          Dst:             hash_finish
        - Src:             'lib/dpif-netdev-dpcls.c:291,1'
          Dst:             zero_rightmost_1bit
        - Src:             'lib/dpif-netdev-dpcls.c:291,1'
          Dst:             cmap_find_batch
        - Src:             'lib/dpif-netdev-dpcls.c:291,1'
          Dst:             raw_ctz
        - Src:             'lib/dpif-netdev-dpcls.c:291,1'
          Dst:             netdev_rule_matches_key
        - Src:             'lib/dpif-netdev-dpcls.c:291,1'
          Dst:             cmap_node_next
        - Src:             'lib/dpif-netdev-dpcls.c:291,1'
          Dst:             zero_rightmost_1bit
    - functionName:    dpcls_subtable_lookup_mf_u0w5_u1w1
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev-dpcls.c'
      linkageType:     InternalLinkage
      functionLinenumber: 290
      functionLinenumberEnd: 290
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          283
      EdgeCount:       39
      CyclomaticComplexity: 11
      functionsReached:
        - cmap_find_batch
        - cmap_node_next
        - count_1bits
        - get_blocks_scratch
        - hash_add_words64
        - hash_finish
        - netdev_flow_key_flatten
        - netdev_rule_matches_key
        - ovs_ignore
        - raw_ctz
        - zero_rightmost_1bit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev-dpcls.c:290,1'
          Dst:             count_1bits
        - Src:             'lib/dpif-netdev-dpcls.c:290,1'
          Dst:             ovs_ignore
        - Src:             'lib/dpif-netdev-dpcls.c:290,1'
          Dst:             get_blocks_scratch
        - Src:             'lib/dpif-netdev-dpcls.c:290,1'
          Dst:             raw_ctz
        - Src:             'lib/dpif-netdev-dpcls.c:290,1'
          Dst:             netdev_flow_key_flatten
        - Src:             'lib/dpif-netdev-dpcls.c:290,1'
          Dst:             zero_rightmost_1bit
        - Src:             'lib/dpif-netdev-dpcls.c:290,1'
          Dst:             raw_ctz
        - Src:             'lib/dpif-netdev-dpcls.c:290,1'
          Dst:             hash_add_words64
        - Src:             'lib/dpif-netdev-dpcls.c:290,1'
          Dst:             hash_finish
        - Src:             'lib/dpif-netdev-dpcls.c:290,1'
          Dst:             zero_rightmost_1bit
        - Src:             'lib/dpif-netdev-dpcls.c:290,1'
          Dst:             cmap_find_batch
        - Src:             'lib/dpif-netdev-dpcls.c:290,1'
          Dst:             raw_ctz
        - Src:             'lib/dpif-netdev-dpcls.c:290,1'
          Dst:             netdev_rule_matches_key
        - Src:             'lib/dpif-netdev-dpcls.c:290,1'
          Dst:             cmap_node_next
        - Src:             'lib/dpif-netdev-dpcls.c:290,1'
          Dst:             zero_rightmost_1bit
    - functionName:    dpcls_subtable_lookup_mf_u0w5_u1w2
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev-dpcls.c'
      linkageType:     InternalLinkage
      functionLinenumber: 289
      functionLinenumberEnd: 289
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          283
      EdgeCount:       39
      CyclomaticComplexity: 11
      functionsReached:
        - cmap_find_batch
        - cmap_node_next
        - count_1bits
        - get_blocks_scratch
        - hash_add_words64
        - hash_finish
        - netdev_flow_key_flatten
        - netdev_rule_matches_key
        - ovs_ignore
        - raw_ctz
        - zero_rightmost_1bit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev-dpcls.c:289,1'
          Dst:             count_1bits
        - Src:             'lib/dpif-netdev-dpcls.c:289,1'
          Dst:             ovs_ignore
        - Src:             'lib/dpif-netdev-dpcls.c:289,1'
          Dst:             get_blocks_scratch
        - Src:             'lib/dpif-netdev-dpcls.c:289,1'
          Dst:             raw_ctz
        - Src:             'lib/dpif-netdev-dpcls.c:289,1'
          Dst:             netdev_flow_key_flatten
        - Src:             'lib/dpif-netdev-dpcls.c:289,1'
          Dst:             zero_rightmost_1bit
        - Src:             'lib/dpif-netdev-dpcls.c:289,1'
          Dst:             raw_ctz
        - Src:             'lib/dpif-netdev-dpcls.c:289,1'
          Dst:             hash_add_words64
        - Src:             'lib/dpif-netdev-dpcls.c:289,1'
          Dst:             hash_finish
        - Src:             'lib/dpif-netdev-dpcls.c:289,1'
          Dst:             zero_rightmost_1bit
        - Src:             'lib/dpif-netdev-dpcls.c:289,1'
          Dst:             cmap_find_batch
        - Src:             'lib/dpif-netdev-dpcls.c:289,1'
          Dst:             raw_ctz
        - Src:             'lib/dpif-netdev-dpcls.c:289,1'
          Dst:             netdev_rule_matches_key
        - Src:             'lib/dpif-netdev-dpcls.c:289,1'
          Dst:             cmap_node_next
        - Src:             'lib/dpif-netdev-dpcls.c:289,1'
          Dst:             zero_rightmost_1bit
    - functionName:    dpcls_subtable_lookup_mf_u0w5_u1w3
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev-dpcls.c'
      linkageType:     InternalLinkage
      functionLinenumber: 288
      functionLinenumberEnd: 288
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          283
      EdgeCount:       39
      CyclomaticComplexity: 11
      functionsReached:
        - cmap_find_batch
        - cmap_node_next
        - count_1bits
        - get_blocks_scratch
        - hash_add_words64
        - hash_finish
        - netdev_flow_key_flatten
        - netdev_rule_matches_key
        - ovs_ignore
        - raw_ctz
        - zero_rightmost_1bit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev-dpcls.c:288,1'
          Dst:             count_1bits
        - Src:             'lib/dpif-netdev-dpcls.c:288,1'
          Dst:             ovs_ignore
        - Src:             'lib/dpif-netdev-dpcls.c:288,1'
          Dst:             get_blocks_scratch
        - Src:             'lib/dpif-netdev-dpcls.c:288,1'
          Dst:             raw_ctz
        - Src:             'lib/dpif-netdev-dpcls.c:288,1'
          Dst:             netdev_flow_key_flatten
        - Src:             'lib/dpif-netdev-dpcls.c:288,1'
          Dst:             zero_rightmost_1bit
        - Src:             'lib/dpif-netdev-dpcls.c:288,1'
          Dst:             raw_ctz
        - Src:             'lib/dpif-netdev-dpcls.c:288,1'
          Dst:             hash_add_words64
        - Src:             'lib/dpif-netdev-dpcls.c:288,1'
          Dst:             hash_finish
        - Src:             'lib/dpif-netdev-dpcls.c:288,1'
          Dst:             zero_rightmost_1bit
        - Src:             'lib/dpif-netdev-dpcls.c:288,1'
          Dst:             cmap_find_batch
        - Src:             'lib/dpif-netdev-dpcls.c:288,1'
          Dst:             raw_ctz
        - Src:             'lib/dpif-netdev-dpcls.c:288,1'
          Dst:             netdev_rule_matches_key
        - Src:             'lib/dpif-netdev-dpcls.c:288,1'
          Dst:             cmap_node_next
        - Src:             'lib/dpif-netdev-dpcls.c:288,1'
          Dst:             zero_rightmost_1bit
    - functionName:    dpcls_subtable_lookup_mf_u0w8_u1w1
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev-dpcls.c'
      linkageType:     InternalLinkage
      functionLinenumber: 287
      functionLinenumberEnd: 287
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          283
      EdgeCount:       39
      CyclomaticComplexity: 11
      functionsReached:
        - cmap_find_batch
        - cmap_node_next
        - count_1bits
        - get_blocks_scratch
        - hash_add_words64
        - hash_finish
        - netdev_flow_key_flatten
        - netdev_rule_matches_key
        - ovs_ignore
        - raw_ctz
        - zero_rightmost_1bit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev-dpcls.c:287,1'
          Dst:             count_1bits
        - Src:             'lib/dpif-netdev-dpcls.c:287,1'
          Dst:             ovs_ignore
        - Src:             'lib/dpif-netdev-dpcls.c:287,1'
          Dst:             get_blocks_scratch
        - Src:             'lib/dpif-netdev-dpcls.c:287,1'
          Dst:             raw_ctz
        - Src:             'lib/dpif-netdev-dpcls.c:287,1'
          Dst:             netdev_flow_key_flatten
        - Src:             'lib/dpif-netdev-dpcls.c:287,1'
          Dst:             zero_rightmost_1bit
        - Src:             'lib/dpif-netdev-dpcls.c:287,1'
          Dst:             raw_ctz
        - Src:             'lib/dpif-netdev-dpcls.c:287,1'
          Dst:             hash_add_words64
        - Src:             'lib/dpif-netdev-dpcls.c:287,1'
          Dst:             hash_finish
        - Src:             'lib/dpif-netdev-dpcls.c:287,1'
          Dst:             zero_rightmost_1bit
        - Src:             'lib/dpif-netdev-dpcls.c:287,1'
          Dst:             cmap_find_batch
        - Src:             'lib/dpif-netdev-dpcls.c:287,1'
          Dst:             raw_ctz
        - Src:             'lib/dpif-netdev-dpcls.c:287,1'
          Dst:             netdev_rule_matches_key
        - Src:             'lib/dpif-netdev-dpcls.c:287,1'
          Dst:             cmap_node_next
        - Src:             'lib/dpif-netdev-dpcls.c:287,1'
          Dst:             zero_rightmost_1bit
    - functionName:    dpcls_subtable_lookup_mf_u0w9_u1w1
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev-dpcls.c'
      linkageType:     InternalLinkage
      functionLinenumber: 286
      functionLinenumberEnd: 286
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          283
      EdgeCount:       39
      CyclomaticComplexity: 11
      functionsReached:
        - cmap_find_batch
        - cmap_node_next
        - count_1bits
        - get_blocks_scratch
        - hash_add_words64
        - hash_finish
        - netdev_flow_key_flatten
        - netdev_rule_matches_key
        - ovs_ignore
        - raw_ctz
        - zero_rightmost_1bit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev-dpcls.c:286,1'
          Dst:             count_1bits
        - Src:             'lib/dpif-netdev-dpcls.c:286,1'
          Dst:             ovs_ignore
        - Src:             'lib/dpif-netdev-dpcls.c:286,1'
          Dst:             get_blocks_scratch
        - Src:             'lib/dpif-netdev-dpcls.c:286,1'
          Dst:             raw_ctz
        - Src:             'lib/dpif-netdev-dpcls.c:286,1'
          Dst:             netdev_flow_key_flatten
        - Src:             'lib/dpif-netdev-dpcls.c:286,1'
          Dst:             zero_rightmost_1bit
        - Src:             'lib/dpif-netdev-dpcls.c:286,1'
          Dst:             raw_ctz
        - Src:             'lib/dpif-netdev-dpcls.c:286,1'
          Dst:             hash_add_words64
        - Src:             'lib/dpif-netdev-dpcls.c:286,1'
          Dst:             hash_finish
        - Src:             'lib/dpif-netdev-dpcls.c:286,1'
          Dst:             zero_rightmost_1bit
        - Src:             'lib/dpif-netdev-dpcls.c:286,1'
          Dst:             cmap_find_batch
        - Src:             'lib/dpif-netdev-dpcls.c:286,1'
          Dst:             raw_ctz
        - Src:             'lib/dpif-netdev-dpcls.c:286,1'
          Dst:             netdev_rule_matches_key
        - Src:             'lib/dpif-netdev-dpcls.c:286,1'
          Dst:             cmap_node_next
        - Src:             'lib/dpif-netdev-dpcls.c:286,1'
          Dst:             zero_rightmost_1bit
    - functionName:    dpcls_subtable_lookup_mf_u0w9_u1w4
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev-dpcls.c'
      linkageType:     InternalLinkage
      functionLinenumber: 285
      functionLinenumberEnd: 285
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         30
      ICount:          283
      EdgeCount:       39
      CyclomaticComplexity: 11
      functionsReached:
        - cmap_find_batch
        - cmap_node_next
        - count_1bits
        - get_blocks_scratch
        - hash_add_words64
        - hash_finish
        - netdev_flow_key_flatten
        - netdev_rule_matches_key
        - ovs_ignore
        - raw_ctz
        - zero_rightmost_1bit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev-dpcls.c:285,1'
          Dst:             count_1bits
        - Src:             'lib/dpif-netdev-dpcls.c:285,1'
          Dst:             ovs_ignore
        - Src:             'lib/dpif-netdev-dpcls.c:285,1'
          Dst:             get_blocks_scratch
        - Src:             'lib/dpif-netdev-dpcls.c:285,1'
          Dst:             raw_ctz
        - Src:             'lib/dpif-netdev-dpcls.c:285,1'
          Dst:             netdev_flow_key_flatten
        - Src:             'lib/dpif-netdev-dpcls.c:285,1'
          Dst:             zero_rightmost_1bit
        - Src:             'lib/dpif-netdev-dpcls.c:285,1'
          Dst:             raw_ctz
        - Src:             'lib/dpif-netdev-dpcls.c:285,1'
          Dst:             hash_add_words64
        - Src:             'lib/dpif-netdev-dpcls.c:285,1'
          Dst:             hash_finish
        - Src:             'lib/dpif-netdev-dpcls.c:285,1'
          Dst:             zero_rightmost_1bit
        - Src:             'lib/dpif-netdev-dpcls.c:285,1'
          Dst:             cmap_find_batch
        - Src:             'lib/dpif-netdev-dpcls.c:285,1'
          Dst:             raw_ctz
        - Src:             'lib/dpif-netdev-dpcls.c:285,1'
          Dst:             netdev_rule_matches_key
        - Src:             'lib/dpif-netdev-dpcls.c:285,1'
          Dst:             cmap_node_next
        - Src:             'lib/dpif-netdev-dpcls.c:285,1'
          Dst:             zero_rightmost_1bit
    - functionName:    dpcls_subtable_lookup_probe
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev-dpcls.c'
      linkageType:     InternalLinkage
      functionLinenumber: 303
      functionLinenumberEnd: 323
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         67
      ICount:          275
      EdgeCount:       93
      CyclomaticComplexity: 28
      functionsReached:
        - vlog
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev-dpcls.c:316,9'
          Dst:             vlog
    - functionName:    init_this_module_pmd_perf
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev-perf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28
      functionLinenumberEnd: 28
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev-perf.c:28,1'
          Dst:             vlog_insert_module
    - functionName:    hmap_next__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 401
      functionLinenumberEnd: 410
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          51
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pmd_perf_log_set_cmd
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev-perf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 722
      functionLinenumberEnd: 817
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         70
      ICount:          403
      EdgeCount:       92
      CyclomaticComplexity: 24
      functionsReached:
        - str_to_uint
        - strcmp
        - unixctl_command_reply
        - unixctl_command_reply_error
        - vlog
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev-perf.c:735,14'
          Dst:             strcmp
        - Src:             'lib/dpif-netdev-perf.c:739,21'
          Dst:             strcmp
        - Src:             'lib/dpif-netdev-perf.c:743,21'
          Dst:             strcmp
        - Src:             'lib/dpif-netdev-perf.c:747,21'
          Dst:             strcmp
        - Src:             'lib/dpif-netdev-perf.c:751,21'
          Dst:             strcmp
        - Src:             'lib/dpif-netdev-perf.c:752,17'
          Dst:             str_to_uint
        - Src:             'lib/dpif-netdev-perf.c:762,21'
          Dst:             strcmp
        - Src:             'lib/dpif-netdev-perf.c:763,17'
          Dst:             str_to_uint
        - Src:             'lib/dpif-netdev-perf.c:773,21'
          Dst:             strcmp
        - Src:             'lib/dpif-netdev-perf.c:774,18'
          Dst:             str_to_uint
        - Src:             'lib/dpif-netdev-perf.c:780,21'
          Dst:             strcmp
        - Src:             'lib/dpif-netdev-perf.c:781,18'
          Dst:             str_to_uint
        - Src:             'lib/dpif-netdev-perf.c:797,9'
          Dst:             unixctl_command_reply_error
        - Src:             'lib/dpif-netdev-perf.c:804,5'
          Dst:             vlog
        - Src:             'lib/dpif-netdev-perf.c:816,5'
          Dst:             unixctl_command_reply
    - functionName:    history_add
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev-perf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 354
      functionLinenumberEnd: 355
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    history_next
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev-perf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 377
      functionLinenumberEnd: 383
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - history_add
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev-perf.h:378,23'
          Dst:             history_add
    - functionName:    history_store
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev-perf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 388
      functionLinenumberEnd: 393
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - history_next
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev-perf.h:393,12'
          Dst:             history_next
    - functionName:    pmd_perf_log_susp_iteration_neighborhood
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev-perf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 687
      functionLinenumberEnd: 716
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         16
      ICount:          127
      EdgeCount:       19
      CyclomaticComplexity: 5
      functionsReached:
        - ds_cstr
        - ds_destroy
        - history_sub
        - ovs_ignore
        - pmd_perf_format_iteration_history
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev-perf.c:688,5'
          Dst:             ovs_ignore
        - Src:             'lib/dpif-netdev-perf.c:689,5'
          Dst:             ovs_ignore
        - Src:             'lib/dpif-netdev-perf.c:693,22'
          Dst:             history_sub
        - Src:             'lib/dpif-netdev-perf.c:695,5'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-netdev-perf.c:702,5'
          Dst:             pmd_perf_format_iteration_history
        - Src:             'lib/dpif-netdev-perf.c:703,5'
          Dst:             ds_cstr
        - Src:             'lib/dpif-netdev-perf.c:703,5'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-netdev-perf.c:706,5'
          Dst:             ds_destroy
    - functionName:    history_sub
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev-perf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 365
      functionLinenumberEnd: 366
      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:    pmd_perf_format_iteration_history
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev-perf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 383
      functionLinenumberEnd: 411
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          148
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - ds_put_format
        - history_sub
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev-perf.c:391,5'
          Dst:             ds_put_format
        - Src:             'lib/dpif-netdev-perf.c:396,17'
          Dst:             history_sub
        - Src:             'lib/dpif-netdev-perf.c:398,9'
          Dst:             ds_put_format
    - functionName:    pmd_perf_set_log_susp_iteration
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev-perf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 652
      functionLinenumberEnd: 683
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          167
      EdgeCount:       21
      CyclomaticComplexity: 6
      functionsReached:
        - history_add
        - history_sub
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev-perf.c:657,27'
          Dst:             history_sub
        - Src:             'lib/dpif-netdev-perf.c:658,25'
          Dst:             history_add
        - Src:             'lib/dpif-netdev-perf.c:665,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/dpif-netdev-perf.c:672,22'
          Dst:             history_add
        - Src:             'lib/dpif-netdev-perf.c:673,21'
          Dst:             history_sub
        - Src:             'lib/dpif-netdev-perf.c:674,21'
          Dst:             history_sub
    - functionName:    history_current
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev-perf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 371
      functionLinenumberEnd: 372
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    histogram_add_sample
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev-perf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 337
      functionLinenumberEnd: 346
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          55
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pmd_perf_update_counter
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev-perf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 326
      functionLinenumberEnd: 331
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          38
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pmd_perf_end_iteration
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev-perf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 548
      functionLinenumberEnd: 642
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - int
        - int
        - size_t
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         38
      ICount:          448
      EdgeCount:       50
      CyclomaticComplexity: 14
      functionsReached:
        - cycles_counter_update
        - histogram_add_sample
        - history_current
        - history_next
        - history_store
        - pmd_perf_log_susp_iteration_neighborhood
        - pmd_perf_set_log_susp_iteration
        - pmd_perf_update_counter
        - time_msec
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev-perf.c:549,24'
          Dst:             cycles_counter_update
        - Src:             'lib/dpif-netdev-perf.c:560,9'
          Dst:             pmd_perf_update_counter
        - Src:             'lib/dpif-netdev-perf.c:562,9'
          Dst:             pmd_perf_update_counter
        - Src:             'lib/dpif-netdev-perf.c:565,5'
          Dst:             histogram_add_sample
        - Src:             'lib/dpif-netdev-perf.c:566,5'
          Dst:             histogram_add_sample
        - Src:             'lib/dpif-netdev-perf.c:569,9'
          Dst:             pmd_perf_update_counter
        - Src:             'lib/dpif-netdev-perf.c:570,9'
          Dst:             pmd_perf_update_counter
        - Src:             'lib/dpif-netdev-perf.c:581,9'
          Dst:             histogram_add_sample
        - Src:             'lib/dpif-netdev-perf.c:583,5'
          Dst:             histogram_add_sample
        - Src:             'lib/dpif-netdev-perf.c:584,5'
          Dst:             histogram_add_sample
        - Src:             'lib/dpif-netdev-perf.c:587,14'
          Dst:             history_current
        - Src:             'lib/dpif-netdev-perf.c:607,13'
          Dst:             pmd_perf_set_log_susp_iteration
        - Src:             'lib/dpif-netdev-perf.c:608,13'
          Dst:             cycles_counter_update
        - Src:             'lib/dpif-netdev-perf.c:614,13'
          Dst:             pmd_perf_log_susp_iteration_neighborhood
        - Src:             'lib/dpif-netdev-perf.c:615,13'
          Dst:             cycles_counter_update
        - Src:             'lib/dpif-netdev-perf.c:621,5'
          Dst:             history_store
        - Src:             'lib/dpif-netdev-perf.c:625,24'
          Dst:             time_msec
        - Src:             'lib/dpif-netdev-perf.c:636,22'
          Dst:             history_next
        - Src:             'lib/dpif-netdev-perf.c:640,29'
          Dst:             cycles_counter_update
    - functionName:    cycles_counter_update
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev-perf.h'
      linkageType:     InternalLinkage
      functionLinenumber: 219
      functionLinenumberEnd: 226
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          29
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pmd_perf_start_iteration
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev-perf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 525
      functionLinenumberEnd: 542
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          67
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - cycles_counter_update
        - pmd_perf_stats_clear_lock
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev-perf.c:528,9'
          Dst:             pmd_perf_stats_clear_lock
        - Src:             'lib/dpif-netdev-perf.c:540,24'
          Dst:             cycles_counter_update
    - functionName:    pmd_perf_stats_clear_lock
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev-perf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 476
      functionLinenumberEnd: 502
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          115
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - histogram_clear
        - history_init
        - ovs_mutex_lock_at
        - ovs_mutex_unlock
        - time_msec
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev-perf.c:477,5'
          Dst:             ovs_mutex_lock_at
        - Src:             'lib/dpif-netdev-perf.c:484,5'
          Dst:             histogram_clear
        - Src:             'lib/dpif-netdev-perf.c:485,5'
          Dst:             histogram_clear
        - Src:             'lib/dpif-netdev-perf.c:486,5'
          Dst:             histogram_clear
        - Src:             'lib/dpif-netdev-perf.c:487,5'
          Dst:             histogram_clear
        - Src:             'lib/dpif-netdev-perf.c:488,5'
          Dst:             histogram_clear
        - Src:             'lib/dpif-netdev-perf.c:489,5'
          Dst:             histogram_clear
        - Src:             'lib/dpif-netdev-perf.c:490,5'
          Dst:             histogram_clear
        - Src:             'lib/dpif-netdev-perf.c:491,5'
          Dst:             history_init
        - Src:             'lib/dpif-netdev-perf.c:492,5'
          Dst:             history_init
        - Src:             'lib/dpif-netdev-perf.c:493,19'
          Dst:             time_msec
        - Src:             'lib/dpif-netdev-perf.c:501,5'
          Dst:             ovs_mutex_unlock
    - functionName:    histogram_clear
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev-perf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 161
      functionLinenumberEnd: 167
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         5
      ICount:          30
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    history_init
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev-perf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 171
      functionLinenumberEnd: 173
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          8
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pmd_perf_stats_clear
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev-perf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 508
      functionLinenumberEnd: 518
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_mutex_trylock_at
        - ovs_mutex_unlock
        - pmd_perf_stats_clear_lock
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev-perf.c:509,9'
          Dst:             ovs_mutex_trylock_at
        - Src:             'lib/dpif-netdev-perf.c:511,9'
          Dst:             pmd_perf_stats_clear_lock
        - Src:             'lib/dpif-netdev-perf.c:512,9'
          Dst:             ovs_mutex_unlock
    - functionName:    pmd_perf_format_ms_history
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev-perf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 415
      functionLinenumberEnd: 446
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          190
      EdgeCount:       32
      CyclomaticComplexity: 9
      functionsReached:
        - ds_put_format
        - history_sub
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev-perf.c:423,5'
          Dst:             ds_put_format
        - Src:             'lib/dpif-netdev-perf.c:429,17'
          Dst:             history_sub
        - Src:             'lib/dpif-netdev-perf.c:431,9'
          Dst:             ds_put_format
    - functionName:    pmd_perf_format_histograms
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev-perf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 320
      functionLinenumberEnd: 378
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         28
      ICount:          380
      EdgeCount:       36
      CyclomaticComplexity: 10
      functionsReached:
        - ds_put_cstr
        - ds_put_format
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev-perf.c:323,5'
          Dst:             ds_put_cstr
        - Src:             'lib/dpif-netdev-perf.c:324,5'
          Dst:             ds_put_format
        - Src:             'lib/dpif-netdev-perf.c:329,9'
          Dst:             ds_put_format
        - Src:             'lib/dpif-netdev-perf.c:341,5'
          Dst:             ds_put_format
        - Src:             'lib/dpif-netdev-perf.c:352,5'
          Dst:             ds_put_cstr
        - Src:             'lib/dpif-netdev-perf.c:356,5'
          Dst:             ds_put_format
        - Src:             'lib/dpif-netdev-perf.c:360,5'
          Dst:             ds_put_format
    - functionName:    pmd_perf_read_counters
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev-perf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 451
      functionLinenumberEnd: 468
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          76
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pmd_perf_format_overall_stats
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev-perf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 212
      functionLinenumberEnd: 316
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - double
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         44
      ICount:          437
      EdgeCount:       58
      CyclomaticComplexity: 16
      functionsReached:
        - ds_put_cstr
        - ds_put_format
        - histogram_samples
        - pmd_perf_read_counters
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev-perf.c:220,5'
          Dst:             pmd_perf_read_counters
        - Src:             'lib/dpif-netdev-perf.c:230,25'
          Dst:             histogram_samples
        - Src:             'lib/dpif-netdev-perf.c:237,9'
          Dst:             ds_put_format
        - Src:             'lib/dpif-netdev-perf.c:258,9'
          Dst:             ds_put_format
        - Src:             'lib/dpif-netdev-perf.c:262,13'
          Dst:             ds_put_format
        - Src:             'lib/dpif-netdev-perf.c:265,9'
          Dst:             ds_put_cstr
        - Src:             'lib/dpif-netdev-perf.c:267,9'
          Dst:             ds_put_format
        - Src:             'lib/dpif-netdev-perf.c:290,9'
          Dst:             ds_put_format
        - Src:             'lib/dpif-netdev-perf.c:294,13'
          Dst:             ds_put_format
        - Src:             'lib/dpif-netdev-perf.c:297,9'
          Dst:             ds_put_cstr
        - Src:             'lib/dpif-netdev-perf.c:299,9'
          Dst:             ds_put_format
        - Src:             'lib/dpif-netdev-perf.c:303,9'
          Dst:             ds_put_format
        - Src:             'lib/dpif-netdev-perf.c:307,9'
          Dst:             ds_put_format
        - Src:             'lib/dpif-netdev-perf.c:313,9'
          Dst:             ds_put_format
    - functionName:    histogram_samples
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev-perf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 150
      functionLinenumberEnd: 156
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         5
      ICount:          36
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    histogram_walls_set_lin
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev-perf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 107
      functionLinenumberEnd: 115
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          58
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev-perf.c:110,5'
          Dst:             ovs_ignore
    - functionName:    histogram_walls_set_log
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev-perf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 119
      functionLinenumberEnd: 146
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          158
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - exp
        - log
        - ovs_ignore
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev-perf.c:123,5'
          Dst:             ovs_ignore
        - Src:             'lib/dpif-netdev-perf.c:125,19'
          Dst:             log
        - Src:             'lib/dpif-netdev-perf.c:126,19'
          Dst:             log
        - Src:             'lib/dpif-netdev-perf.c:131,19'
          Dst:             log
        - Src:             'lib/dpif-netdev-perf.c:132,19'
          Dst:             log
        - Src:             'lib/dpif-netdev-perf.c:139,16'
          Dst:             exp
        - Src:             'lib/dpif-netdev-perf.c:139,16'
          Dst:             exp
    - functionName:    log
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      double
      argCount:        1
      argTypes:
        - double
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    exp
      functionSourceFile: ''
      linkageType:     externalLinkage
      functionLinenumber: -1
      functionLinenumberEnd: 0
      functionDepth:   0
      returnType:      double
      argCount:        1
      argTypes:
        - double
      constantsTouched: []
      argNames:
        - ''
      BBCount:         0
      ICount:          0
      EdgeCount:       0
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    pmd_perf_stats_init
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev-perf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 177
      functionLinenumberEnd: 207
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          61
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - histogram_walls_set_lin
        - histogram_walls_set_log
        - ovs_mutex_init
        - time_msec
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev-perf.c:179,5'
          Dst:             ovs_mutex_init
        - Src:             'lib/dpif-netdev-perf.c:180,5'
          Dst:             ovs_mutex_init
        - Src:             'lib/dpif-netdev-perf.c:183,5'
          Dst:             histogram_walls_set_log
        - Src:             'lib/dpif-netdev-perf.c:185,5'
          Dst:             histogram_walls_set_log
        - Src:             'lib/dpif-netdev-perf.c:187,5'
          Dst:             histogram_walls_set_lin
        - Src:             'lib/dpif-netdev-perf.c:190,5'
          Dst:             histogram_walls_set_lin
        - Src:             'lib/dpif-netdev-perf.c:192,5'
          Dst:             histogram_walls_set_lin
        - Src:             'lib/dpif-netdev-perf.c:195,5'
          Dst:             histogram_walls_set_log
        - Src:             'lib/dpif-netdev-perf.c:200,5'
          Dst:             histogram_walls_set_log
        - Src:             'lib/dpif-netdev-perf.c:202,19'
          Dst:             time_msec
    - functionName:    hmap_next
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 429
      functionLinenumberEnd: 432
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_next__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:432,15'
          Dst:             hmap_next__
    - functionName:    hmap_first
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 416
      functionLinenumberEnd: 417
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:417,12'
          Dst:             hmap_next__
    - functionName:    pmd_perf_estimate_tsc_frequency
      functionSourceFile: '/src/openvswitch/lib/dpif-netdev-perf.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         30
      ICount:          155
      EdgeCount:       37
      CyclomaticComplexity: 9
      functionsReached:
        - cycles_counter_update
        - hmap_first
        - hmap_next
        - ovs_numa_dump_destroy
        - ovs_numa_thread_getaffinity_dump
        - ovs_numa_thread_setaffinity_core
        - ovs_numa_thread_setaffinity_dump
        - vlog
        - xnanosleep
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/dpif-netdev-perf.c:68,16'
          Dst:             ovs_numa_thread_getaffinity_dump
        - Src:             'lib/dpif-netdev-perf.c:72,9'
          Dst:             hmap_first
        - Src:             'lib/dpif-netdev-perf.c:75,13'
          Dst:             ovs_numa_thread_setaffinity_core
        - Src:             'lib/dpif-netdev-perf.c:72,9'
          Dst:             hmap_next
        - Src:             'lib/dpif-netdev-perf.c:81,13'
          Dst:             cycles_counter_update
        - Src:             'lib/dpif-netdev-perf.c:84,5'
          Dst:             xnanosleep
        - Src:             'lib/dpif-netdev-perf.c:85,12'
          Dst:             cycles_counter_update
        - Src:             'lib/dpif-netdev-perf.c:89,9'
          Dst:             ovs_numa_thread_setaffinity_dump
        - Src:             'lib/dpif-netdev-perf.c:90,9'
          Dst:             ovs_numa_dump_destroy
        - Src:             'lib/dpif-netdev-perf.c:94,9'
          Dst:             vlog
        - Src:             'lib/dpif-netdev-perf.c:100,5'
          Dst:             vlog
    - functionName:    hmap_next__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 401
      functionLinenumberEnd: 410
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          51
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    parse_atom_token
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1524
      functionLinenumberEnd: 1533
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_from_string
        - ovsdb_token_parse
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:1527,13'
          Dst:             ovsdb_token_parse
        - Src:             'lib/ovsdb-data.c:1529,17'
          Dst:             ovsdb_atom_from_string
    - functionName:    ovsdb_token_parse
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2516
      functionLinenumberEnd: 2558
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         28
      ICount:          158
      EdgeCount:       36
      CyclomaticComplexity: 10
      functionsReached:
        - ds_cstr
        - ds_destroy
        - ds_init
        - ds_put_char
        - ovsdb_token_is_delim
        - xasprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:2522,5'
          Dst:             ds_init
        - Src:             'lib/ovsdb-data.c:2528,17'
          Dst:             ds_put_char
        - Src:             'lib/ovsdb-data.c:2531,25'
          Dst:             xasprintf
        - Src:             'lib/ovsdb-data.c:2534,13'
          Dst:             ds_put_char
        - Src:             'lib/ovsdb-data.c:2535,34'
          Dst:             ovsdb_token_is_delim
        - Src:             'lib/ovsdb-data.c:2539,13'
          Dst:             ds_put_char
        - Src:             'lib/ovsdb-data.c:2546,17'
          Dst:             xasprintf
        - Src:             'lib/ovsdb-data.c:2550,13'
          Dst:             ds_cstr
        - Src:             'lib/ovsdb-data.c:2555,5'
          Dst:             ds_destroy
    - functionName:    ovsdb_atom_from_string
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 647
      functionLinenumberEnd: 693
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         37
      ICount:          206
      EdgeCount:       49
      CyclomaticComplexity: 14
      functionsReached:
        - ovsdb_atom_check_constraints
        - ovsdb_atom_destroy
        - ovsdb_atom_from_string__
        - ovsdb_atom_range_check_size
        - ovsdb_error_to_string_free
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:655,11'
          Dst:             ovsdb_atom_from_string__
        - Src:             'lib/ovsdb-data.c:660,13'
          Dst:             ovsdb_atom_check_constraints
        - Src:             'lib/ovsdb-data.c:669,25'
          Dst:             ovsdb_atom_check_constraints
        - Src:             'lib/ovsdb-data.c:675,21'
          Dst:             ovsdb_atom_check_constraints
        - Src:             'lib/ovsdb-data.c:679,21'
          Dst:             ovsdb_atom_range_check_size
        - Src:             'lib/ovsdb-data.c:684,9'
          Dst:             ovsdb_atom_destroy
        - Src:             'lib/ovsdb-data.c:686,13'
          Dst:             ovsdb_atom_destroy
        - Src:             'lib/ovsdb-data.c:690,15'
          Dst:             ovsdb_error_to_string_free
    - functionName:    ovsdb_atom_from_string__
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 512
      functionLinenumberEnd: 604
      functionDepth:   0
      returnType:      'N/A'
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         71
      ICount:          362
      EdgeCount:       90
      CyclomaticComplexity: 21
      functionsReached:
        - abort
        - alloc_default_atoms
        - json_string_unescape
        - ovsdb_atom_string_create
        - ovsdb_atom_string_create_nocopy
        - ovsdb_symbol_referenced
        - ovsdb_symbol_table_insert
        - str_to_double
        - str_to_llong
        - str_to_llong_range
        - strcmp
        - strlen
        - uuid_from_string
        - xasprintf
        - xstrdup
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ovsdb-data.c:515,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ovsdb-data.c:517,9'
          Dst:             abort
        - Src:             'lib/ovsdb-data.c:522,16'
          Dst:             str_to_llong_range
        - Src:             'lib/ovsdb-data.c:524,24'
          Dst:             xasprintf
        - Src:             'lib/ovsdb-data.c:527,31'
          Dst:             alloc_default_atoms
        - Src:             'lib/ovsdb-data.c:529,24'
          Dst:             xasprintf
        - Src:             'lib/ovsdb-data.c:532,21'
          Dst:             str_to_llong
        - Src:             'lib/ovsdb-data.c:533,20'
          Dst:             xasprintf
        - Src:             'lib/ovsdb-data.c:540,14'
          Dst:             str_to_double
        - Src:             'lib/ovsdb-data.c:541,20'
          Dst:             xasprintf
        - Src:             'lib/ovsdb-data.c:551,14'
          Dst:             strcmp
        - Src:             'lib/ovsdb-data.c:551,36'
          Dst:             strcmp
        - Src:             'lib/ovsdb-data.c:551,57'
          Dst:             strcmp
        - Src:             'lib/ovsdb-data.c:552,17'
          Dst:             strcmp
        - Src:             'lib/ovsdb-data.c:554,21'
          Dst:             strcmp
        - Src:             'lib/ovsdb-data.c:554,44'
          Dst:             strcmp
        - Src:             'lib/ovsdb-data.c:554,64'
          Dst:             strcmp
        - Src:             'lib/ovsdb-data.c:555,24'
          Dst:             strcmp
        - Src:             'lib/ovsdb-data.c:558,20'
          Dst:             xasprintf
        - Src:             'lib/ovsdb-data.c:565,20'
          Dst:             xstrdup
        - Src:             'lib/ovsdb-data.c:568,28'
          Dst:             strlen
        - Src:             'lib/ovsdb-data.c:571,24'
          Dst:             xasprintf
        - Src:             'lib/ovsdb-data.c:575,21'
          Dst:             json_string_unescape
        - Src:             'lib/ovsdb-data.c:576,31'
          Dst:             ovsdb_atom_string_create_nocopy
        - Src:             'lib/ovsdb-data.c:578,35'
          Dst:             xasprintf
        - Src:             'lib/ovsdb-data.c:584,23'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/ovsdb-data.c:590,43'
          Dst:             ovsdb_symbol_table_insert
        - Src:             'lib/ovsdb-data.c:592,13'
          Dst:             ovsdb_symbol_referenced
        - Src:             'lib/ovsdb-data.c:593,21'
          Dst:             uuid_from_string
        - Src:             'lib/ovsdb-data.c:594,20'
          Dst:             xasprintf
        - Src:             'lib/ovsdb-data.c:600,9'
          Dst:             abort
    - functionName:    ovsdb_atom_check_constraints
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 819
      functionLinenumberEnd: 908
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         36
      ICount:          277
      EdgeCount:       43
      CyclomaticComplexity: 9
      functionsReached:
        - abort
        - check_string_constraints
        - ds_cstr
        - ds_destroy
        - json_string
        - ovsdb_atom_to_string
        - ovsdb_base_type_get_enum_type
        - ovsdb_datum_find_key
        - ovsdb_datum_to_string
        - ovsdb_error
      functionUses:    6
      BranchProfiles:
        - Branch String:   'lib/ovsdb-data.c:839,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ovsdb-data.c:821,13'
          Dst:             ovsdb_datum_find_key
        - Src:             'lib/ovsdb-data.c:826,9'
          Dst:             ovsdb_atom_to_string
        - Src:             'lib/ovsdb-data.c:828,31'
          Dst:             ovsdb_base_type_get_enum_type
        - Src:             'lib/ovsdb-data.c:827,9'
          Dst:             ovsdb_datum_to_string
        - Src:             'lib/ovsdb-data.c:832,29'
          Dst:             ds_cstr
        - Src:             'lib/ovsdb-data.c:832,47'
          Dst:             ds_cstr
        - Src:             'lib/ovsdb-data.c:830,17'
          Dst:             ovsdb_error
        - Src:             'lib/ovsdb-data.c:833,9'
          Dst:             ds_destroy
        - Src:             'lib/ovsdb-data.c:834,9'
          Dst:             ds_destroy
        - Src:             'lib/ovsdb-data.c:841,9'
          Dst:             abort
        - Src:             'lib/ovsdb-data.c:849,24'
          Dst:             ovsdb_error
        - Src:             'lib/ovsdb-data.c:855,24'
          Dst:             ovsdb_error
        - Src:             'lib/ovsdb-data.c:861,20'
          Dst:             ovsdb_error
        - Src:             'lib/ovsdb-data.c:873,24'
          Dst:             ovsdb_error
        - Src:             'lib/ovsdb-data.c:880,24'
          Dst:             ovsdb_error
        - Src:             'lib/ovsdb-data.c:887,20'
          Dst:             ovsdb_error
        - Src:             'lib/ovsdb-data.c:899,41'
          Dst:             json_string
        - Src:             'lib/ovsdb-data.c:899,16'
          Dst:             check_string_constraints
        - Src:             'lib/ovsdb-data.c:906,9'
          Dst:             abort
    - functionName:    ovsdb_atom_range_check_size
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2569
      functionLinenumberEnd: 2578
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:2572,16'
          Dst:             ovsdb_error
    - functionName:    ovsdb_atom_destroy
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.h'
      linkageType:     InternalLinkage
      functionLinenumber: 82
      functionLinenumberEnd: 86
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - json_destroy
      functionUses:    18
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.h:84,9'
          Dst:             json_destroy
    - functionName:    json_destroy
      functionSourceFile: '/src/openvswitch/./include/openvswitch/json.h'
      linkageType:     InternalLinkage
      functionLinenumber: 200
      functionLinenumberEnd: 204
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          38
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - json_destroy__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/json.h:202,9'
          Dst:             json_destroy__
    - functionName:    ovsdb_datum_find_key
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1869
      functionLinenumberEnd: 1890
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          106
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - ovsdb_atom_compare_3way
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:1874,19'
          Dst:             ovsdb_atom_compare_3way
    - functionName:    ovsdb_atom_to_string
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 729
      functionLinenumberEnd: 762
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          93
      EdgeCount:       30
      CyclomaticComplexity: 16
      functionsReached:
        - abort
        - ds_put_cstr
        - ds_put_format
        - ds_put_uuid
        - json_string
        - json_to_ds
        - string_needs_quotes
      functionUses:    4
      BranchProfiles:
        - Branch String:   'lib/ovsdb-data.c:730,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ovsdb-data.c:732,9'
          Dst:             abort
        - Src:             'lib/ovsdb-data.c:735,9'
          Dst:             ds_put_format
        - Src:             'lib/ovsdb-data.c:739,9'
          Dst:             ds_put_format
        - Src:             'lib/ovsdb-data.c:743,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ovsdb-data.c:747,33'
          Dst:             json_string
        - Src:             'lib/ovsdb-data.c:747,13'
          Dst:             string_needs_quotes
        - Src:             'lib/ovsdb-data.c:748,13'
          Dst:             json_to_ds
        - Src:             'lib/ovsdb-data.c:750,30'
          Dst:             json_string
        - Src:             'lib/ovsdb-data.c:750,13'
          Dst:             ds_put_cstr
        - Src:             'lib/ovsdb-data.c:755,9'
          Dst:             ds_put_uuid
        - Src:             'lib/ovsdb-data.c:760,9'
          Dst:             abort
    - functionName:    ovsdb_datum_to_string
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1699
      functionLinenumberEnd: 1720
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          154
      EdgeCount:       32
      CyclomaticComplexity: 9
      functionsReached:
        - ds_put_char
        - ds_put_cstr
        - ovsdb_atom_to_string
        - ovsdb_type_is_map
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:1700,19'
          Dst:             ovsdb_type_is_map
        - Src:             'lib/ovsdb-data.c:1704,9'
          Dst:             ds_put_char
        - Src:             'lib/ovsdb-data.c:1708,13'
          Dst:             ds_put_cstr
        - Src:             'lib/ovsdb-data.c:1711,9'
          Dst:             ovsdb_atom_to_string
        - Src:             'lib/ovsdb-data.c:1713,13'
          Dst:             ds_put_char
        - Src:             'lib/ovsdb-data.c:1714,13'
          Dst:             ovsdb_atom_to_string
        - Src:             'lib/ovsdb-data.c:1718,9'
          Dst:             ds_put_char
    - functionName:    check_string_constraints
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 781
      functionLinenumberEnd: 808
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          81
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - ovsdb_error
        - utf8_validate
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:785,11'
          Dst:             utf8_validate
        - Src:             'lib/ovsdb-data.c:789,17'
          Dst:             ovsdb_error
        - Src:             'lib/ovsdb-data.c:796,16'
          Dst:             ovsdb_error
        - Src:             'lib/ovsdb-data.c:801,16'
          Dst:             ovsdb_error
    - functionName:    ovsdb_type_is_map
      functionSourceFile: '/src/openvswitch/lib/ovsdb-types.h'
      linkageType:     InternalLinkage
      functionLinenumber: 237
      functionLinenumberEnd: 238
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ds_put_char
      functionSourceFile: '/src/openvswitch/./include/openvswitch/dynamic-string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_char__
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/dynamic-string.h:99,9'
          Dst:             ds_put_char__
    - functionName:    string_needs_quotes
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 697
      functionLinenumberEnd: 722
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         30
      ICount:          163
      EdgeCount:       41
      CyclomaticComplexity: 13
      functionsReached:
        - __ctype_b_loc
        - strcmp
        - uuid_from_string
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:703,10'
          Dst:             __ctype_b_loc
        - Src:             'lib/ovsdb-data.c:708,14'
          Dst:             __ctype_b_loc
        - Src:             'lib/ovsdb-data.c:708,29'
          Dst:             __ctype_b_loc
        - Src:             'lib/ovsdb-data.c:713,10'
          Dst:             strcmp
        - Src:             'lib/ovsdb-data.c:713,32'
          Dst:             strcmp
        - Src:             'lib/ovsdb-data.c:717,9'
          Dst:             uuid_from_string
    - functionName:    ovsdb_atom_compare_3way
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 234
      functionLinenumberEnd: 258
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          132
      EdgeCount:       22
      CyclomaticComplexity: 2
      functionsReached:
        - abort
        - json_string
        - strcmp
        - uuid_compare_3way
      functionUses:    12
      BranchProfiles:
        - Branch String:   'lib/ovsdb-data.c:235,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ovsdb-data.c:237,9'
          Dst:             abort
        - Src:             'lib/ovsdb-data.c:249,42'
          Dst:             json_string
        - Src:             'lib/ovsdb-data.c:249,61'
          Dst:             json_string
        - Src:             'lib/ovsdb-data.c:249,35'
          Dst:             strcmp
        - Src:             'lib/ovsdb-data.c:252,16'
          Dst:             uuid_compare_3way
        - Src:             'lib/ovsdb-data.c:256,9'
          Dst:             abort
    - functionName:    alloc_default_atoms
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 310
      functionLinenumberEnd: 325
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          69
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - ovsdb_atom_init_default
        - xmalloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:315,17'
          Dst:             xmalloc
        - Src:             'lib/ovsdb-data.c:317,13'
          Dst:             ovsdb_atom_init_default
    - functionName:    ovsdb_atom_string_create_nocopy
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.h'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - json_string_create_nocopy
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.h:39,12'
          Dst:             json_string_create_nocopy
    - functionName:    ovsdb_atom_string_create
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.h'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - json_string_create
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.h:45,12'
          Dst:             json_string_create
    - functionName:    ovsdb_symbol_table_insert
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2224
      functionLinenumberEnd: 2234
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_symbol_table_get
        - ovsdb_symbol_table_put
        - uuid_generate
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:2227,14'
          Dst:             ovsdb_symbol_table_get
        - Src:             'lib/ovsdb-data.c:2231,9'
          Dst:             uuid_generate
        - Src:             'lib/ovsdb-data.c:2232,18'
          Dst:             ovsdb_symbol_table_put
    - functionName:    ovsdb_symbol_referenced
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 293
      functionLinenumberEnd: 306
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          57
      EdgeCount:       10
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/ovsdb-data.c:297,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ovsdb-data.c:294,5'
          Dst:             ovs_ignore
    - functionName:    ovsdb_symbol_table_get
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2201
      functionLinenumberEnd: 2202
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - shash_find_data
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:2202,12'
          Dst:             shash_find_data
    - functionName:    ovsdb_symbol_table_put
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2208
      functionLinenumberEnd: 2218
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          51
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_symbol_table_get
        - shash_add
        - xmalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:2211,17'
          Dst:             ovsdb_symbol_table_get
        - Src:             'lib/ovsdb-data.c:2211,5'
          Dst:             ovs_ignore
        - Src:             'lib/ovsdb-data.c:2212,14'
          Dst:             xmalloc
        - Src:             'lib/ovsdb-data.c:2217,5'
          Dst:             shash_add
    - functionName:    ovsdb_atom_init_default
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 59
      functionLinenumberEnd: 88
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          66
      EdgeCount:       23
      CyclomaticComplexity: 12
      functionsReached:
        - abort
        - ovsdb_atom_string_create_nocopy
        - uuid_zero
        - xmemdup
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/ovsdb-data.c:60,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ovsdb-data.c:62,9'
          Dst:             abort
        - Src:             'lib/ovsdb-data.c:77,51'
          Dst:             xmemdup
        - Src:             'lib/ovsdb-data.c:77,19'
          Dst:             ovsdb_atom_string_create_nocopy
        - Src:             'lib/ovsdb-data.c:81,9'
          Dst:             uuid_zero
        - Src:             'lib/ovsdb-data.c:86,9'
          Dst:             abort
    - functionName:    ovsdb_token_is_delim
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2563
      functionLinenumberEnd: 2564
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - char
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - strchr
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:2564,12'
          Dst:             strchr
    - functionName:    ovsdb_atom_to_json_deep
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 503
      functionLinenumberEnd: 504
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_to_json__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:504,12'
          Dst:             ovsdb_atom_to_json__
    - functionName:    ovsdb_atom_to_json__
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 467
      functionLinenumberEnd: 492
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          92
      EdgeCount:       30
      CyclomaticComplexity: 16
      functionsReached:
        - abort
        - json_boolean_create
        - json_clone
        - json_deep_clone
        - json_integer_create
        - json_real_create
        - json_string_create_uuid
        - wrap_json
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/ovsdb-data.c:468,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ovsdb-data.c:470,9'
          Dst:             abort
        - Src:             'lib/ovsdb-data.c:473,16'
          Dst:             json_integer_create
        - Src:             'lib/ovsdb-data.c:476,16'
          Dst:             json_real_create
        - Src:             'lib/ovsdb-data.c:479,16'
          Dst:             json_boolean_create
        - Src:             'lib/ovsdb-data.c:482,39'
          Dst:             json_clone
        - Src:             'lib/ovsdb-data.c:483,39'
          Dst:             json_deep_clone
        - Src:             'lib/ovsdb-data.c:486,34'
          Dst:             json_string_create_uuid
        - Src:             'lib/ovsdb-data.c:486,16'
          Dst:             wrap_json
        - Src:             'lib/ovsdb-data.c:490,9'
          Dst:             abort
    - functionName:    json_clone
      functionSourceFile: '/src/openvswitch/./include/openvswitch/json.h'
      linkageType:     InternalLinkage
      functionLinenumber: 189
      functionLinenumberEnd: 192
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    wrap_json
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 40
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - json_array_create_2
        - json_string_create
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:40,32'
          Dst:             json_string_create
        - Src:             'lib/ovsdb-data.c:40,12'
          Dst:             json_array_create_2
    - functionName:    ovsdb_base_to_json
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1433
      functionLinenumberEnd: 1445
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         14
      ICount:          84
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - json_array_create_2
        - json_string_create
        - json_string_create_nocopy
        - ovsdb_atom_to_json
        - ovsdb_atom_to_json_deep
        - ovsdb_data_row_name
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:1438,18'
          Dst:             ovsdb_atom_to_json
        - Src:             'lib/ovsdb-data.c:1439,18'
          Dst:             ovsdb_atom_to_json_deep
        - Src:             'lib/ovsdb-data.c:1442,13'
          Dst:             json_string_create
        - Src:             'lib/ovsdb-data.c:1443,39'
          Dst:             ovsdb_data_row_name
        - Src:             'lib/ovsdb-data.c:1443,13'
          Dst:             json_string_create_nocopy
        - Src:             'lib/ovsdb-data.c:1441,16'
          Dst:             json_array_create_2
    - functionName:    ovsdb_atom_to_json
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 496
      functionLinenumberEnd: 497
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_to_json__
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:497,12'
          Dst:             ovsdb_atom_to_json__
    - functionName:    ovsdb_data_row_name
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2582
      functionLinenumberEnd: 2593
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          82
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - xasprintf
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:2586,12'
          Dst:             xasprintf
    - functionName:    parse_json_pair
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 281
      functionLinenumberEnd: 288
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          55
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - json_array_at
        - json_array_size
        - ovsdb_syntax_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:282,37'
          Dst:             json_array_size
        - Src:             'lib/ovsdb-data.c:283,16'
          Dst:             ovsdb_syntax_error
        - Src:             'lib/ovsdb-data.c:285,14'
          Dst:             json_array_at
        - Src:             'lib/ovsdb-data.c:286,14'
          Dst:             json_array_at
    - functionName:    ovsdb_datum_sort_swap_cb
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1126
      functionLinenumberEnd: 1133
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          65
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_swap
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:1129,5'
          Dst:             ovsdb_atom_swap
        - Src:             'lib/ovsdb-data.c:1131,9'
          Dst:             ovsdb_atom_swap
    - functionName:    ovsdb_atom_swap
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 191
      functionLinenumberEnd: 195
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsdb_datum_sort_compare_cb
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1108
      functionLinenumberEnd: 1122
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - size_t
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          86
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_atom_compare_3way
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:1112,14'
          Dst:             ovsdb_atom_compare_3way
        - Src:             'lib/ovsdb-data.c:1119,12'
          Dst:             ovsdb_atom_compare_3way
    - functionName:    ovsdb_atom_needs_destruction
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.h'
      linkageType:     InternalLinkage
      functionLinenumber: 72
      functionLinenumberEnd: 73
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    unwrap_json
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 263
      functionLinenumberEnd: 276
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          104
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - json_array_at
        - json_array_size
        - json_string
        - json_type_to_string
        - ovsdb_syntax_error
        - strcmp
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:265,12'
          Dst:             json_array_size
        - Src:             'lib/ovsdb-data.c:266,12'
          Dst:             json_array_at
        - Src:             'lib/ovsdb-data.c:267,40'
          Dst:             json_array_at
        - Src:             'lib/ovsdb-data.c:267,28'
          Dst:             json_string
        - Src:             'lib/ovsdb-data.c:267,21'
          Dst:             strcmp
        - Src:             'lib/ovsdb-data.c:268,12'
          Dst:             json_array_at
        - Src:             'lib/ovsdb-data.c:272,35'
          Dst:             json_type_to_string
        - Src:             'lib/ovsdb-data.c:271,16'
          Dst:             ovsdb_syntax_error
        - Src:             'lib/ovsdb-data.c:274,14'
          Dst:             json_array_at
    - functionName:    ovsdb_atom_parse_uuid
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 331
      functionLinenumberEnd: 364
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          104
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - json_string
        - ovsdb_error_destroy
        - ovsdb_parser_is_id
        - ovsdb_symbol_referenced
        - ovsdb_symbol_table_insert
        - ovsdb_syntax_error
        - unwrap_json
        - uuid_from_string
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:335,14'
          Dst:             unwrap_json
        - Src:             'lib/ovsdb-data.c:337,35'
          Dst:             json_string
        - Src:             'lib/ovsdb-data.c:338,14'
          Dst:             uuid_from_string
        - Src:             'lib/ovsdb-data.c:339,20'
          Dst:             ovsdb_syntax_error
        - Src:             'lib/ovsdb-data.c:345,18'
          Dst:             unwrap_json
        - Src:             'lib/ovsdb-data.c:349,13'
          Dst:             ovsdb_error_destroy
        - Src:             'lib/ovsdb-data.c:350,37'
          Dst:             json_string
        - Src:             'lib/ovsdb-data.c:350,18'
          Dst:             ovsdb_parser_is_id
        - Src:             'lib/ovsdb-data.c:351,24'
          Dst:             ovsdb_syntax_error
        - Src:             'lib/ovsdb-data.c:355,56'
          Dst:             json_string
        - Src:             'lib/ovsdb-data.c:355,22'
          Dst:             ovsdb_symbol_table_insert
        - Src:             'lib/ovsdb-data.c:357,13'
          Dst:             ovsdb_symbol_referenced
        - Src:             'lib/ovsdb-data.c:360,9'
          Dst:             ovsdb_error_destroy
    - functionName:    hash_rot
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 32
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhash_add__
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hash_rot
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:71,12'
          Dst:             hash_rot
    - functionName:    mhash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_rot
        - mhash_add__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:78,12'
          Dst:             mhash_add__
        - Src:             'lib/hash.h:79,12'
          Dst:             hash_rot
    - functionName:    mhash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 108
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_add
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:109,12'
          Dst:             mhash_add
    - functionName:    hash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:119,12'
          Dst:             mhash_finish
    - functionName:    hash_2words
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 153
      functionLinenumberEnd: 154
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_add
        - hash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:154,33'
          Dst:             hash_add
        - Src:             'lib/hash.h:154,24'
          Dst:             hash_add
        - Src:             'lib/hash.h:154,12'
          Dst:             hash_finish
    - functionName:    ovsdb_datum_apply_diff
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2488
      functionLinenumberEnd: 2498
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          63
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_datum_diff
        - ovsdb_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:2489,5'
          Dst:             ovsdb_datum_diff
        - Src:             'lib/ovsdb-data.c:2493,9'
          Dst:             ovsdb_datum_destroy
        - Src:             'lib/ovsdb-data.c:2494,16'
          Dst:             ovsdb_error
    - functionName:    ovsdb_datum_diff
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2338
      functionLinenumberEnd: 2375
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         31
      ICount:          217
      EdgeCount:       40
      CyclomaticComplexity: 11
      functionsReached:
        - ovsdb_atom_compare_3way
        - ovsdb_datum_add_from_index_unsafe
        - ovsdb_datum_add_unsafe
        - ovsdb_datum_clone
        - ovsdb_datum_init_empty
        - ovsdb_type_is_composite
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:2341,5'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/ovsdb-data.c:2342,10'
          Dst:             ovsdb_type_is_composite
        - Src:             'lib/ovsdb-data.c:2343,9'
          Dst:             ovsdb_datum_clone
        - Src:             'lib/ovsdb-data.c:2349,17'
          Dst:             ovsdb_atom_compare_3way
        - Src:             'lib/ovsdb-data.c:2352,13'
          Dst:             ovsdb_datum_add_from_index_unsafe
        - Src:             'lib/ovsdb-data.c:2355,13'
          Dst:             ovsdb_datum_add_from_index_unsafe
        - Src:             'lib/ovsdb-data.c:2359,17'
          Dst:             ovsdb_atom_compare_3way
        - Src:             'lib/ovsdb-data.c:2361,17'
          Dst:             ovsdb_datum_add_unsafe
        - Src:             'lib/ovsdb-data.c:2369,9'
          Dst:             ovsdb_datum_add_from_index_unsafe
        - Src:             'lib/ovsdb-data.c:2373,9'
          Dst:             ovsdb_datum_add_from_index_unsafe
    - functionName:    ovsdb_datum_destroy
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1069
      functionLinenumberEnd: 1075
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          70
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - free_data
      functionUses:    221
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:1071,9'
          Dst:             free_data
        - Src:             'lib/ovsdb-data.c:1072,9'
          Dst:             free_data
    - functionName:    free_data
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1049
      functionLinenumberEnd: 1061
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - int
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          61
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - ovsdb_atom_destroy
        - ovsdb_atom_needs_destruction
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:1054,9'
          Dst:             ovsdb_atom_needs_destruction
        - Src:             'lib/ovsdb-data.c:1057,13'
          Dst:             ovsdb_atom_destroy
    - functionName:    ovsdb_datum_init_empty
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 914
      functionLinenumberEnd: 919
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    128
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsdb_type_is_composite
      functionSourceFile: '/src/openvswitch/lib/ovsdb-types.h'
      linkageType:     InternalLinkage
      functionLinenumber: 226
      functionLinenumberEnd: 227
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsdb_datum_clone
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1035
      functionLinenumberEnd: 1044
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          48
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - xmalloc
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:1039,23'
          Dst:             xmalloc
    - functionName:    ovsdb_datum_add_from_index_unsafe
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2044
      functionLinenumberEnd: 2050
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_add_unsafe
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:2049,5'
          Dst:             ovsdb_datum_add_unsafe
    - functionName:    ovsdb_datum_add_unsafe
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2017
      functionLinenumberEnd: 2037
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          167
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - ovsdb_atom_clone
        - ovsdb_datum_unshare
        - xrealloc
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:2020,5'
          Dst:             ovsdb_datum_unshare
        - Src:             'lib/ovsdb-data.c:2024,19'
          Dst:             xrealloc
        - Src:             'lib/ovsdb-data.c:2030,9'
          Dst:             ovsdb_atom_clone
        - Src:             'lib/ovsdb-data.c:2032,29'
          Dst:             xrealloc
        - Src:             'lib/ovsdb-data.c:2034,13'
          Dst:             ovsdb_atom_clone
    - functionName:    ovsdb_datum_unshare
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1081
      functionLinenumberEnd: 1089
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          79
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - clone_atoms
      functionUses:    9
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:1085,19'
          Dst:             clone_atoms
        - Src:             'lib/ovsdb-data.c:1086,21'
          Dst:             clone_atoms
    - functionName:    ovsdb_atom_clone
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 157
      functionLinenumberEnd: 186
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          78
      EdgeCount:       23
      CyclomaticComplexity: 12
      functionsReached:
        - abort
        - json_clone
      functionUses:    7
      BranchProfiles:
        - Branch String:   'lib/ovsdb-data.c:158,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ovsdb-data.c:160,9'
          Dst:             abort
        - Src:             'lib/ovsdb-data.c:175,18'
          Dst:             json_clone
        - Src:             'lib/ovsdb-data.c:184,9'
          Dst:             abort
    - functionName:    clone_atoms
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1010
      functionLinenumberEnd: 1025
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          75
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - ovsdb_atom_clone
        - xmalloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:1015,15'
          Dst:             xmalloc
        - Src:             'lib/ovsdb-data.c:1017,13'
          Dst:             ovsdb_atom_clone
    - functionName:    ovsdb_datum_apply_diff_in_place
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2385
      functionLinenumberEnd: 2477
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         47
      ICount:          394
      EdgeCount:       58
      CyclomaticComplexity: 13
      functionsReached:
        - ovsdb_atom_clone
        - ovsdb_atom_destroy
        - ovsdb_atom_equals
        - ovsdb_datum_clone
        - ovsdb_datum_destroy
        - ovsdb_datum_find_key
        - ovsdb_datum_init_empty
        - ovsdb_datum_push_unsafe
        - ovsdb_datum_reallocate
        - ovsdb_datum_swap
        - ovsdb_datum_unshare
        - ovsdb_error
        - ovsdb_type_is_composite
        - xmalloc
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ovsdb-data.c:2441,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ovsdb-data.c:2396,10'
          Dst:             ovsdb_type_is_composite
        - Src:             'lib/ovsdb-data.c:2397,9'
          Dst:             ovsdb_datum_destroy
        - Src:             'lib/ovsdb-data.c:2398,9'
          Dst:             ovsdb_datum_clone
        - Src:             'lib/ovsdb-data.c:2402,5'
          Dst:             ovsdb_datum_unshare
        - Src:             'lib/ovsdb-data.c:2404,17'
          Dst:             xmalloc
        - Src:             'lib/ovsdb-data.c:2405,11'
          Dst:             xmalloc
        - Src:             'lib/ovsdb-data.c:2408,14'
          Dst:             ovsdb_datum_find_key
        - Src:             'lib/ovsdb-data.c:2412,24'
          Dst:             ovsdb_atom_equals
        - Src:             'lib/ovsdb-data.c:2424,17'
          Dst:             ovsdb_error
        - Src:             'lib/ovsdb-data.c:2428,5'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/ovsdb-data.c:2429,5'
          Dst:             ovsdb_datum_reallocate
        - Src:             'lib/ovsdb-data.c:2437,13'
          Dst:             ovsdb_datum_push_unsafe
        - Src:             'lib/ovsdb-data.c:2445,13'
          Dst:             ovsdb_atom_clone
        - Src:             'lib/ovsdb-data.c:2448,17'
          Dst:             ovsdb_atom_clone
        - Src:             'lib/ovsdb-data.c:2459,13'
          Dst:             ovsdb_atom_destroy
        - Src:             'lib/ovsdb-data.c:2461,17'
          Dst:             ovsdb_atom_destroy
        - Src:             'lib/ovsdb-data.c:2468,5'
          Dst:             ovsdb_datum_push_unsafe
        - Src:             'lib/ovsdb-data.c:2471,5'
          Dst:             ovsdb_datum_swap
        - Src:             'lib/ovsdb-data.c:2472,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsdb_atom_equals
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.h'
      linkageType:     InternalLinkage
      functionLinenumber: 100
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_compare_3way
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.h:101,13'
          Dst:             ovsdb_atom_compare_3way
    - functionName:    ovsdb_datum_reallocate
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1967
      functionLinenumberEnd: 1974
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          55
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_unshare
        - xrealloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:1968,5'
          Dst:             ovsdb_datum_unshare
        - Src:             'lib/ovsdb-data.c:1970,15'
          Dst:             xrealloc
        - Src:             'lib/ovsdb-data.c:1972,21'
          Dst:             xrealloc
    - functionName:    ovsdb_datum_push_unsafe
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2061
      functionLinenumberEnd: 2074
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          90
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_datum_unshare
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:2066,5'
          Dst:             ovsdb_datum_unshare
    - functionName:    ovsdb_datum_swap
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1094
      functionLinenumberEnd: 1098
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsdb_datum_added_removed
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2252
      functionLinenumberEnd: 2318
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         48
      ICount:          362
      EdgeCount:       63
      CyclomaticComplexity: 17
      functionsReached:
        - ovsdb_atom_compare_3way
        - ovsdb_atom_equals
        - ovsdb_datum_add_from_index_unsafe
        - ovsdb_datum_add_unsafe
        - ovsdb_datum_clone
        - ovsdb_datum_find_key
        - ovsdb_datum_init_empty
        - ovsdb_type_is_composite
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:2255,5'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/ovsdb-data.c:2256,5'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/ovsdb-data.c:2257,10'
          Dst:             ovsdb_type_is_composite
        - Src:             'lib/ovsdb-data.c:2258,9'
          Dst:             ovsdb_datum_clone
        - Src:             'lib/ovsdb-data.c:2259,9'
          Dst:             ovsdb_datum_clone
        - Src:             'lib/ovsdb-data.c:2270,26'
          Dst:             ovsdb_datum_find_key
        - Src:             'lib/ovsdb-data.c:2274,17'
          Dst:             ovsdb_datum_add_from_index_unsafe
        - Src:             'lib/ovsdb-data.c:2277,25'
          Dst:             ovsdb_atom_equals
        - Src:             'lib/ovsdb-data.c:2280,21'
          Dst:             ovsdb_datum_add_from_index_unsafe
        - Src:             'lib/ovsdb-data.c:2282,17'
          Dst:             ovsdb_datum_add_from_index_unsafe
        - Src:             'lib/ovsdb-data.c:2290,17'
          Dst:             ovsdb_atom_compare_3way
        - Src:             'lib/ovsdb-data.c:2293,13'
          Dst:             ovsdb_datum_add_from_index_unsafe
        - Src:             'lib/ovsdb-data.c:2296,13'
          Dst:             ovsdb_datum_add_from_index_unsafe
        - Src:             'lib/ovsdb-data.c:2300,17'
          Dst:             ovsdb_atom_compare_3way
        - Src:             'lib/ovsdb-data.c:2302,17'
          Dst:             ovsdb_datum_add_unsafe
        - Src:             'lib/ovsdb-data.c:2304,17'
          Dst:             ovsdb_datum_add_unsafe
        - Src:             'lib/ovsdb-data.c:2312,9'
          Dst:             ovsdb_datum_add_from_index_unsafe
        - Src:             'lib/ovsdb-data.c:2316,9'
          Dst:             ovsdb_datum_add_from_index_unsafe
    - functionName:    ovsdb_symbol_table_destroy
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2191
      functionLinenumberEnd: 2196
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - shash_destroy_free_data
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:2193,9'
          Dst:             shash_destroy_free_data
    - functionName:    ovsdb_symbol_table_create
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2183
      functionLinenumberEnd: 2186
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - shash_init
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:2184,41'
          Dst:             xmalloc
        - Src:             'lib/ovsdb-data.c:2185,5'
          Dst:             shash_init
    - functionName:    ovsdb_datum_subtract
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2127
      functionLinenumberEnd: 2179
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         22
      ICount:          228
      EdgeCount:       28
      CyclomaticComplexity: 8
      functionsReached:
        - ovs_ignore
        - ovsdb_atom_destroy
        - ovsdb_datum_destroy
        - ovsdb_datum_find
        - ovsdb_datum_init_empty
        - ovsdb_datum_push_unsafe
        - ovsdb_datum_reallocate
        - ovsdb_datum_swap
        - ovsdb_datum_unshare
        - xmalloc
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:2131,5'
          Dst:             ovs_ignore
        - Src:             'lib/ovsdb-data.c:2132,5'
          Dst:             ovs_ignore
        - Src:             'lib/ovsdb-data.c:2135,5'
          Dst:             ovsdb_datum_unshare
        - Src:             'lib/ovsdb-data.c:2137,11'
          Dst:             xmalloc
        - Src:             'lib/ovsdb-data.c:2140,14'
          Dst:             ovsdb_datum_find
        - Src:             'lib/ovsdb-data.c:2155,5'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/ovsdb-data.c:2156,5'
          Dst:             ovsdb_datum_reallocate
        - Src:             'lib/ovsdb-data.c:2163,9'
          Dst:             ovsdb_atom_destroy
        - Src:             'lib/ovsdb-data.c:2165,13'
          Dst:             ovsdb_atom_destroy
        - Src:             'lib/ovsdb-data.c:2169,9'
          Dst:             ovsdb_datum_push_unsafe
        - Src:             'lib/ovsdb-data.c:2173,5'
          Dst:             ovsdb_datum_push_unsafe
        - Src:             'lib/ovsdb-data.c:2176,5'
          Dst:             ovsdb_datum_swap
        - Src:             'lib/ovsdb-data.c:2177,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsdb_datum_find
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1922
      functionLinenumberEnd: 1926
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          55
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_find_key_value
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:1923,12'
          Dst:             ovsdb_datum_find_key_value
    - functionName:    ovsdb_datum_find_key_value
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1903
      functionLinenumberEnd: 1911
      functionDepth:   0
      returnType:      int
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          60
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - ovsdb_atom_equals
        - ovsdb_datum_find_key
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:1906,10'
          Dst:             ovsdb_datum_find_key
        - Src:             'lib/ovsdb-data.c:1908,17'
          Dst:             ovsdb_atom_equals
    - functionName:    ovsdb_datum_union
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2079
      functionLinenumberEnd: 2121
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          196
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - ovsdb_atom_clone
        - ovsdb_datum_destroy
        - ovsdb_datum_find_key
        - ovsdb_datum_init_empty
        - ovsdb_datum_push_unsafe
        - ovsdb_datum_reallocate
        - ovsdb_datum_swap
        - ovsdb_datum_unshare
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:2083,5'
          Dst:             ovsdb_datum_unshare
        - Src:             'lib/ovsdb-data.c:2084,5'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/ovsdb-data.c:2088,13'
          Dst:             ovsdb_datum_find_key
        - Src:             'lib/ovsdb-data.c:2093,13'
          Dst:             ovsdb_datum_reallocate
        - Src:             'lib/ovsdb-data.c:2097,13'
          Dst:             ovsdb_datum_push_unsafe
        - Src:             'lib/ovsdb-data.c:2101,9'
          Dst:             ovsdb_atom_clone
        - Src:             'lib/ovsdb-data.c:2103,13'
          Dst:             ovsdb_atom_clone
        - Src:             'lib/ovsdb-data.c:2114,9'
          Dst:             ovsdb_datum_push_unsafe
        - Src:             'lib/ovsdb-data.c:2119,5'
          Dst:             ovsdb_datum_swap
        - Src:             'lib/ovsdb-data.c:2120,5'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsdb_datum_remove_unsafe
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1985
      functionLinenumberEnd: 1995
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          90
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_atom_destroy
        - ovsdb_datum_unshare
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:1986,5'
          Dst:             ovsdb_datum_unshare
        - Src:             'lib/ovsdb-data.c:1988,5'
          Dst:             ovsdb_atom_destroy
        - Src:             'lib/ovsdb-data.c:1991,9'
          Dst:             ovsdb_atom_destroy
    - functionName:    ovsdb_datum_excludes_all
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1953
      functionLinenumberEnd: 1962
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          57
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_datum_find
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:1957,13'
          Dst:             ovsdb_datum_find
    - functionName:    ovsdb_datum_includes_all
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1934
      functionLinenumberEnd: 1946
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          71
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - ovsdb_datum_find
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:1941,13'
          Dst:             ovsdb_datum_find
    - functionName:    atom_arrays_compare_3way
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1813
      functionLinenumberEnd: 1824
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          65
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_atom_compare_3way
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:1817,19'
          Dst:             ovsdb_atom_compare_3way
    - functionName:    ovsdb_datum_compare_3way
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1838
      functionLinenumberEnd: 1857
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          129
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - atom_arrays_compare_3way
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:1849,11'
          Dst:             atom_arrays_compare_3way
        - Src:             'lib/ovsdb-data.c:1855,15'
          Dst:             atom_arrays_compare_3way
    - functionName:    ovsdb_datum_equals
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1830
      functionLinenumberEnd: 1831
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_datum_compare_3way
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:1831,13'
          Dst:             ovsdb_datum_compare_3way
    - functionName:    hash_atoms
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1787
      functionLinenumberEnd: 1795
      functionDepth:   0
      returnType:      int
      argCount:        4
      argTypes:
        - int
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          56
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_atom_hash
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:1792,21'
          Dst:             ovsdb_atom_hash
    - functionName:    ovsdb_atom_hash
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 202
      functionLinenumberEnd: 226
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          88
      EdgeCount:       23
      CyclomaticComplexity: 12
      functionsReached:
        - abort
        - hash_boolean
        - hash_double
        - hash_int
        - json_hash
        - uuid_hash
      functionUses:    3
      BranchProfiles:
        - Branch String:   'lib/ovsdb-data.c:203,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ovsdb-data.c:205,9'
          Dst:             abort
        - Src:             'lib/ovsdb-data.c:208,16'
          Dst:             hash_int
        - Src:             'lib/ovsdb-data.c:211,16'
          Dst:             hash_double
        - Src:             'lib/ovsdb-data.c:214,16'
          Dst:             hash_boolean
        - Src:             'lib/ovsdb-data.c:217,16'
          Dst:             json_hash
        - Src:             'lib/ovsdb-data.c:220,25'
          Dst:             uuid_hash
        - Src:             'lib/ovsdb-data.c:220,16'
          Dst:             hash_int
        - Src:             'lib/ovsdb-data.c:224,9'
          Dst:             abort
    - functionName:    hash_int
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 408
      functionLinenumberEnd: 409
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_2words
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:409,12'
          Dst:             hash_2words
    - functionName:    hash_boolean
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 415
      functionLinenumberEnd: 418
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - bool
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_rot
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:418,28'
          Dst:             hash_rot
    - functionName:    uuid_hash
      functionSourceFile: '/src/openvswitch/lib/uuid.h'
      linkageType:     InternalLinkage
      functionLinenumber: 51
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsdb_datum_hash
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1801
      functionLinenumberEnd: 1805
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          62
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_atoms
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:1802,13'
          Dst:             hash_atoms
        - Src:             'lib/ovsdb-data.c:1804,13'
          Dst:             hash_atoms
    - functionName:    ovsdb_datum_convert
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1776
      functionLinenumberEnd: 1781
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - json_destroy
        - ovsdb_datum_from_json
        - ovsdb_datum_to_json
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:1777,25'
          Dst:             ovsdb_datum_to_json
        - Src:             'lib/ovsdb-data.c:1778,33'
          Dst:             ovsdb_datum_from_json
        - Src:             'lib/ovsdb-data.c:1780,5'
          Dst:             json_destroy
    - functionName:    ovsdb_datum_to_json
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1493
      functionLinenumberEnd: 1494
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_datum_to_json__
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:1494,12'
          Dst:             ovsdb_datum_to_json__
    - functionName:    ovsdb_datum_from_json
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1377
      functionLinenumberEnd: 1390
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          58
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_datum_destroy
        - ovsdb_datum_from_json__
        - ovsdb_datum_sort
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:1380,13'
          Dst:             ovsdb_datum_from_json__
        - Src:             'lib/ovsdb-data.c:1385,13'
          Dst:             ovsdb_datum_sort
        - Src:             'lib/ovsdb-data.c:1387,9'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsdb_datum_from_json__
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1274
      functionLinenumberEnd: 1360
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         51
      ICount:          365
      EdgeCount:       69
      CyclomaticComplexity: 20
      functionsReached:
        - json_array_at
        - json_array_size
        - json_string
        - ovsdb_atom_destroy
        - ovsdb_atom_from_json
        - ovsdb_datum_destroy
        - ovsdb_syntax_error
        - ovsdb_type_is_map
        - parse_json_pair
        - strcmp
        - unwrap_json
        - xmalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:1277,9'
          Dst:             ovsdb_type_is_map
        - Src:             'lib/ovsdb-data.c:1279,16'
          Dst:             json_array_size
        - Src:             'lib/ovsdb-data.c:1280,16'
          Dst:             json_array_at
        - Src:             'lib/ovsdb-data.c:1281,36'
          Dst:             json_array_at
        - Src:             'lib/ovsdb-data.c:1281,24'
          Dst:             json_string
        - Src:             'lib/ovsdb-data.c:1281,17'
          Dst:             strcmp
        - Src:             'lib/ovsdb-data.c:1282,23'
          Dst:             ovsdb_type_is_map
        - Src:             'lib/ovsdb-data.c:1288,17'
          Dst:             unwrap_json
        - Src:             'lib/ovsdb-data.c:1293,13'
          Dst:             json_array_size
        - Src:             'lib/ovsdb-data.c:1296,24'
          Dst:             ovsdb_syntax_error
        - Src:             'lib/ovsdb-data.c:1300,24'
          Dst:             ovsdb_syntax_error
        - Src:             'lib/ovsdb-data.c:1308,23'
          Dst:             xmalloc
        - Src:             'lib/ovsdb-data.c:1309,34'
          Dst:             xmalloc
        - Src:             'lib/ovsdb-data.c:1312,42'
          Dst:             json_array_at
        - Src:             'lib/ovsdb-data.c:1319,25'
          Dst:             parse_json_pair
        - Src:             'lib/ovsdb-data.c:1325,21'
          Dst:             ovsdb_atom_from_json
        - Src:             'lib/ovsdb-data.c:1332,25'
          Dst:             ovsdb_atom_from_json
        - Src:             'lib/ovsdb-data.c:1335,21'
          Dst:             ovsdb_atom_destroy
        - Src:             'lib/ovsdb-data.c:1345,9'
          Dst:             ovsdb_datum_destroy
        - Src:             'lib/ovsdb-data.c:1349,23'
          Dst:             xmalloc
        - Src:             'lib/ovsdb-data.c:1353,17'
          Dst:             ovsdb_atom_from_json
    - functionName:    ovsdb_datum_sort
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1158
      functionLinenumberEnd: 1180
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          96
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - ovsdb_atom_equals
        - ovsdb_datum_sort__
        - ovsdb_datum_unshare
        - ovsdb_error
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:1165,5'
          Dst:             ovsdb_datum_unshare
        - Src:             'lib/ovsdb-data.c:1167,5'
          Dst:             ovsdb_datum_sort__
        - Src:             'lib/ovsdb-data.c:1170,13'
          Dst:             ovsdb_atom_equals
        - Src:             'lib/ovsdb-data.c:1173,24'
          Dst:             ovsdb_error
        - Src:             'lib/ovsdb-data.c:1175,24'
          Dst:             ovsdb_error
    - functionName:    ovsdb_datum_sort__
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1138
      functionLinenumberEnd: 1146
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          32
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_datum_sort_compare_cb
        - ovsdb_datum_sort_swap_cb
        - sort
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:1144,5'
          Dst:             sort
        - Src:             'lib/ovsdb-data.c:1144,5'
          Dst:             ovsdb_datum_sort_compare_cb
        - Src:             'lib/ovsdb-data.c:1144,5'
          Dst:             ovsdb_datum_sort_swap_cb
    - functionName:    ovsdb_atom_from_json
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 440
      functionLinenumberEnd: 453
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          60
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_atom_check_constraints
        - ovsdb_atom_destroy
        - ovsdb_atom_from_json__
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:443,13'
          Dst:             ovsdb_atom_from_json__
        - Src:             'lib/ovsdb-data.c:448,13'
          Dst:             ovsdb_atom_check_constraints
        - Src:             'lib/ovsdb-data.c:450,9'
          Dst:             ovsdb_atom_destroy
    - functionName:    ovsdb_atom_from_json__
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 371
      functionLinenumberEnd: 422
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          169
      EdgeCount:       31
      CyclomaticComplexity: 5
      functionsReached:
        - abort
        - json_clone
        - ovsdb_atom_parse_uuid
        - ovsdb_atomic_type_to_string
        - ovsdb_syntax_error
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ovsdb-data.c:374,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ovsdb-data.c:376,9'
          Dst:             abort
        - Src:             'lib/ovsdb-data.c:407,23'
          Dst:             json_clone
        - Src:             'lib/ovsdb-data.c:413,16'
          Dst:             ovsdb_atom_parse_uuid
        - Src:             'lib/ovsdb-data.c:417,9'
          Dst:             abort
        - Src:             'lib/ovsdb-data.c:421,31'
          Dst:             ovsdb_atomic_type_to_string
        - Src:             'lib/ovsdb-data.c:420,12'
          Dst:             ovsdb_syntax_error
    - functionName:    ovsdb_datum_to_json__
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1452
      functionLinenumberEnd: 1482
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          171
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - json_array_create
        - json_array_create_2
        - ovsdb_base_to_json
        - ovsdb_type_is_map
        - wrap_json
        - xmalloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:1453,9'
          Dst:             ovsdb_type_is_map
        - Src:             'lib/ovsdb-data.c:1457,17'
          Dst:             xmalloc
        - Src:             'lib/ovsdb-data.c:1460,17'
          Dst:             ovsdb_base_to_json
        - Src:             'lib/ovsdb-data.c:1462,17'
          Dst:             ovsdb_base_to_json
        - Src:             'lib/ovsdb-data.c:1459,24'
          Dst:             json_array_create_2
        - Src:             'lib/ovsdb-data.c:1466,33'
          Dst:             json_array_create
        - Src:             'lib/ovsdb-data.c:1466,16'
          Dst:             wrap_json
        - Src:             'lib/ovsdb-data.c:1468,16'
          Dst:             ovsdb_base_to_json
        - Src:             'lib/ovsdb-data.c:1474,17'
          Dst:             xmalloc
        - Src:             'lib/ovsdb-data.c:1476,24'
          Dst:             ovsdb_base_to_json
        - Src:             'lib/ovsdb-data.c:1480,33'
          Dst:             json_array_create
        - Src:             'lib/ovsdb-data.c:1480,16'
          Dst:             wrap_json
    - functionName:    hmap_next
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 429
      functionLinenumberEnd: 432
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_next__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:432,15'
          Dst:             hmap_next__
    - functionName:    hmap_first
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 416
      functionLinenumberEnd: 417
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:417,12'
          Dst:             hmap_next__
    - functionName:    ovsdb_datum_from_smap
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1749
      functionLinenumberEnd: 1769
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          134
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - hmap_first
        - hmap_next
        - ovs_ignore
        - ovsdb_atom_string_create
        - ovsdb_datum_sort_unique
        - smap_count
        - xmalloc
      functionUses:    80
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:1750,16'
          Dst:             smap_count
        - Src:             'lib/ovsdb-data.c:1751,19'
          Dst:             xmalloc
        - Src:             'lib/ovsdb-data.c:1752,21'
          Dst:             xmalloc
        - Src:             'lib/ovsdb-data.c:1757,5'
          Dst:             hmap_first
        - Src:             'lib/ovsdb-data.c:1758,28'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/ovsdb-data.c:1759,30'
          Dst:             ovsdb_atom_string_create
        - Src:             'lib/ovsdb-data.c:1757,5'
          Dst:             hmap_next
        - Src:             'lib/ovsdb-data.c:1762,5'
          Dst:             ovs_ignore
        - Src:             'lib/ovsdb-data.c:1768,5'
          Dst:             ovsdb_datum_sort_unique
    - functionName:    ovsdb_datum_sort_unique
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1203
      functionLinenumberEnd: 1233
      functionDepth:   0
      returnType:      size_t
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         22
      ICount:          182
      EdgeCount:       28
      CyclomaticComplexity: 8
      functionsReached:
        - ovsdb_atom_destroy
        - ovsdb_atom_equals
        - ovsdb_datum_sort__
        - ovsdb_datum_unshare
      functionUses:    106
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:1210,5'
          Dst:             ovsdb_datum_unshare
        - Src:             'lib/ovsdb-data.c:1211,5'
          Dst:             ovsdb_datum_sort__
        - Src:             'lib/ovsdb-data.c:1215,13'
          Dst:             ovsdb_atom_equals
        - Src:             'lib/ovsdb-data.c:1217,13'
          Dst:             ovsdb_atom_destroy
        - Src:             'lib/ovsdb-data.c:1219,17'
          Dst:             ovsdb_atom_destroy
    - functionName:    ovsdb_datum_to_bare
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1728
      functionLinenumberEnd: 1743
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          93
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - ds_put_char
        - ds_put_cstr
        - ovsdb_atom_to_bare
        - ovsdb_type_is_map
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:1729,19'
          Dst:             ovsdb_type_is_map
        - Src:             'lib/ovsdb-data.c:1734,13'
          Dst:             ds_put_cstr
        - Src:             'lib/ovsdb-data.c:1737,9'
          Dst:             ovsdb_atom_to_bare
        - Src:             'lib/ovsdb-data.c:1739,13'
          Dst:             ds_put_char
        - Src:             'lib/ovsdb-data.c:1740,13'
          Dst:             ovsdb_atom_to_bare
    - functionName:    ovsdb_atom_to_bare
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 770
      functionLinenumberEnd: 776
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_cstr
        - json_string
        - ovsdb_atom_to_string
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:772,26'
          Dst:             json_string
        - Src:             'lib/ovsdb-data.c:772,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ovsdb-data.c:774,9'
          Dst:             ovsdb_atom_to_string
    - functionName:    free_key_value_range
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1573
      functionLinenumberEnd: 1583
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          77
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - ovsdb_atom_destroy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:1574,5'
          Dst:             ovsdb_atom_destroy
        - Src:             'lib/ovsdb-data.c:1576,9'
          Dst:             ovsdb_atom_destroy
        - Src:             'lib/ovsdb-data.c:1579,9'
          Dst:             ovsdb_atom_destroy
    - functionName:    parse_key_value
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1541
      functionLinenumberEnd: 1566
      functionDepth:   0
      returnType:      'N/A'
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          144
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - ovsdb_atom_destroy
        - parse_atom_token
        - skip_spaces
        - xasprintf
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:1545,13'
          Dst:             parse_atom_token
        - Src:             'lib/ovsdb-data.c:1548,14'
          Dst:             skip_spaces
        - Src:             'lib/ovsdb-data.c:1551,18'
          Dst:             skip_spaces
        - Src:             'lib/ovsdb-data.c:1552,21'
          Dst:             parse_atom_token
        - Src:             'lib/ovsdb-data.c:1554,21'
          Dst:             xasprintf
        - Src:             'lib/ovsdb-data.c:1558,13'
          Dst:             ovsdb_atom_destroy
        - Src:             'lib/ovsdb-data.c:1560,17'
          Dst:             ovsdb_atom_destroy
    - functionName:    skip_spaces
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1513
      functionLinenumberEnd: 1517
      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:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:1514,12'
          Dst:             __ctype_b_loc
    - functionName:    ovsdb_datum_from_string
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1598
      functionLinenumberEnd: 1692
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         43
      ICount:          308
      EdgeCount:       58
      CyclomaticComplexity: 17
      functionsReached:
        - free_key_value_range
        - ovsdb_datum_add_unsafe
        - ovsdb_datum_destroy
        - ovsdb_datum_init_empty
        - ovsdb_datum_sort
        - ovsdb_error_destroy
        - ovsdb_token_is_delim
        - ovsdb_type_is_map
        - ovsdb_type_to_english
        - parse_key_value
        - skip_spaces
        - xasprintf
        - xstrdup
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:1599,19'
          Dst:             ovsdb_type_is_map
        - Src:             'lib/ovsdb-data.c:1605,5'
          Dst:             ovsdb_datum_init_empty
        - Src:             'lib/ovsdb-data.c:1608,9'
          Dst:             skip_spaces
        - Src:             'lib/ovsdb-data.c:1611,13'
          Dst:             skip_spaces
        - Src:             'lib/ovsdb-data.c:1614,20'
          Dst:             xstrdup
        - Src:             'lib/ovsdb-data.c:1616,20'
          Dst:             xstrdup
        - Src:             'lib/ovsdb-data.c:1626,13'
          Dst:             ovsdb_token_is_delim
        - Src:             'lib/ovsdb-data.c:1627,30'
          Dst:             ovsdb_type_to_english
        - Src:             'lib/ovsdb-data.c:1628,21'
          Dst:             xasprintf
        - Src:             'lib/ovsdb-data.c:1635,17'
          Dst:             parse_key_value
        - Src:             'lib/ovsdb-data.c:1640,9'
          Dst:             ovsdb_datum_add_unsafe
        - Src:             'lib/ovsdb-data.c:1641,9'
          Dst:             free_key_value_range
        - Src:             'lib/ovsdb-data.c:1644,13'
          Dst:             skip_spaces
        - Src:             'lib/ovsdb-data.c:1646,17'
          Dst:             skip_spaces
        - Src:             'lib/ovsdb-data.c:1651,17'
          Dst:             xasprintf
        - Src:             'lib/ovsdb-data.c:1655,13'
          Dst:             skip_spaces
        - Src:             'lib/ovsdb-data.c:1657,21'
          Dst:             xasprintf
        - Src:             'lib/ovsdb-data.c:1664,17'
          Dst:             xasprintf
        - Src:             'lib/ovsdb-data.c:1669,17'
          Dst:             xasprintf
        - Src:             'lib/ovsdb-data.c:1675,15'
          Dst:             ovsdb_datum_sort
        - Src:             'lib/ovsdb-data.c:1677,9'
          Dst:             ovsdb_error_destroy
        - Src:             'lib/ovsdb-data.c:1678,13'
          Dst:             ovsdb_type_is_map
        - Src:             'lib/ovsdb-data.c:1679,21'
          Dst:             xasprintf
        - Src:             'lib/ovsdb-data.c:1681,21'
          Dst:             xasprintf
        - Src:             'lib/ovsdb-data.c:1689,5'
          Dst:             ovsdb_datum_destroy
        - Src:             'lib/ovsdb-data.c:1690,5'
          Dst:             ovsdb_datum_init_empty
    - functionName:    ovsdb_datum_to_json_with_row_names
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1507
      functionLinenumberEnd: 1508
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_datum_to_json__
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:1508,12'
          Dst:             ovsdb_datum_to_json__
    - functionName:    ovsdb_datum_to_json_deep
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1500
      functionLinenumberEnd: 1501
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_datum_to_json__
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:1501,12'
          Dst:             ovsdb_datum_to_json__
    - functionName:    ovsdb_unconstrained_datum_from_json
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1417
      functionLinenumberEnd: 1425
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_base_type_init
        - ovsdb_datum_from_json
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:1420,5'
          Dst:             ovsdb_base_type_init
        - Src:             'lib/ovsdb-data.c:1421,5'
          Dst:             ovsdb_base_type_init
        - Src:             'lib/ovsdb-data.c:1425,12'
          Dst:             ovsdb_datum_from_json
    - functionName:    ovsdb_transient_datum_from_json
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1402
      functionLinenumberEnd: 1408
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_datum_from_json
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:1408,12'
          Dst:             ovsdb_datum_from_json
    - functionName:    ovsdb_datum_check_constraints
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1245
      functionLinenumberEnd: 1267
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          108
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - ovsdb_atom_check_constraints
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:1250,17'
          Dst:             ovsdb_atom_check_constraints
        - Src:             'lib/ovsdb-data.c:1258,21'
          Dst:             ovsdb_atom_check_constraints
    - functionName:    ovsdb_datum_sort_assert
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1188
      functionLinenumberEnd: 1193
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         5
      ICount:          31
      EdgeCount:       5
      CyclomaticComplexity: 2
      functionsReached:
        - abort
        - ovsdb_datum_sort
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:1189,33'
          Dst:             ovsdb_datum_sort
        - Src:             'lib/ovsdb-data.c:1191,9'
          Dst:             abort
    - functionName:    ovsdb_datum_is_default
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 989
      functionLinenumberEnd: 1006
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          102
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - ovsdb_atom_is_default
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:996,14'
          Dst:             ovsdb_atom_is_default
        - Src:             'lib/ovsdb-data.c:1000,17'
          Dst:             ovsdb_atom_is_default
    - functionName:    ovsdb_atom_is_default
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 124
      functionLinenumberEnd: 148
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          84
      EdgeCount:       23
      CyclomaticComplexity: 12
      functionsReached:
        - abort
        - json_string
        - uuid_is_zero
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/ovsdb-data.c:125,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ovsdb-data.c:127,9'
          Dst:             abort
        - Src:             'lib/ovsdb-data.c:139,16'
          Dst:             json_string
        - Src:             'lib/ovsdb-data.c:142,16'
          Dst:             uuid_is_zero
        - Src:             'lib/ovsdb-data.c:146,9'
          Dst:             abort
    - functionName:    ovsdb_datum_default
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 950
      functionLinenumberEnd: 979
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         14
      ICount:          112
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - abort
        - ovs_ignore
        - ovsdb_atom_default
        - ovsdb_type_is_valid
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:962,20'
          Dst:             ovsdb_type_is_valid
        - Src:             'lib/ovsdb-data.c:962,9'
          Dst:             ovs_ignore
        - Src:             'lib/ovsdb-data.c:967,23'
          Dst:             ovsdb_atom_default
        - Src:             'lib/ovsdb-data.c:969,29'
          Dst:             ovsdb_atom_default
        - Src:             'lib/ovsdb-data.c:977,9'
          Dst:             abort
    - functionName:    ovsdb_atom_default
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 97
      functionLinenumberEnd: 113
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          62
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - ovs_ignore
        - ovsdb_atom_init_default
        - ovsdb_atomic_type_is_valid
        - ovsthread_once_done
        - ovsthread_once_start
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:101,9'
          Dst:             ovsthread_once_start
        - Src:             'lib/ovsdb-data.c:106,17'
          Dst:             ovsdb_atom_init_default
        - Src:             'lib/ovsdb-data.c:109,9'
          Dst:             ovsthread_once_done
        - Src:             'lib/ovsdb-data.c:112,16'
          Dst:             ovsdb_atomic_type_is_valid
        - Src:             'lib/ovsdb-data.c:112,5'
          Dst:             ovs_ignore
    - functionName:    ovsthread_once_start
      functionSourceFile: '/src/openvswitch/./include/openvswitch/thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsthread_once_start__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/thread.h:161,12'
          Dst:             ovsthread_once_start__
    - functionName:    ovsdb_atomic_type_is_valid
      functionSourceFile: '/src/openvswitch/lib/ovsdb-types.h'
      linkageType:     InternalLinkage
      functionLinenumber: 183
      functionLinenumberEnd: 184
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          22
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsdb_datum_init_default
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.c'
      linkageType:     InternalLinkage
      functionLinenumber: 936
      functionLinenumberEnd: 941
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          48
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - alloc_default_atoms
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.c:938,19'
          Dst:             alloc_default_atoms
        - Src:             'lib/ovsdb-data.c:939,21'
          Dst:             alloc_default_atoms
    - functionName:    init_this_module_ovsdb_error
      functionSourceFile: '/src/openvswitch/lib/ovsdb-error.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28
      functionLinenumberEnd: 28
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-error.c:28,1'
          Dst:             vlog_insert_module
    - functionName:    ovsdb_error_assert
      functionSourceFile: '/src/openvswitch/lib/ovsdb-error.c'
      linkageType:     InternalLinkage
      functionLinenumber: 285
      functionLinenumberEnd: 292
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          50
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_error_to_string_free
        - vlog_rate_limit
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-error.c:288,19'
          Dst:             ovsdb_error_to_string_free
        - Src:             'lib/ovsdb-error.c:289,9'
          Dst:             vlog_rate_limit
    - functionName:    ovsdb_error_to_string_free
      functionSourceFile: '/src/openvswitch/lib/ovsdb-error.c'
      linkageType:     InternalLinkage
      functionLinenumber: 264
      functionLinenumberEnd: 272
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_error_destroy
        - ovsdb_error_to_string
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-error.c:266,19'
          Dst:             ovsdb_error_to_string
        - Src:             'lib/ovsdb-error.c:267,9'
          Dst:             ovsdb_error_destroy
    - functionName:    ovsdb_error_to_string
      functionSourceFile: '/src/openvswitch/lib/ovsdb-error.c'
      linkageType:     InternalLinkage
      functionLinenumber: 241
      functionLinenumberEnd: 253
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          73
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - ds_put_cstr
        - ds_put_format
        - ds_steal_cstr
        - ovs_retval_to_string
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-error.c:244,9'
          Dst:             ds_put_format
        - Src:             'lib/ovsdb-error.c:246,5'
          Dst:             ds_put_cstr
        - Src:             'lib/ovsdb-error.c:248,9'
          Dst:             ds_put_format
        - Src:             'lib/ovsdb-error.c:251,37'
          Dst:             ovs_retval_to_string
        - Src:             'lib/ovsdb-error.c:251,9'
          Dst:             ds_put_format
        - Src:             'lib/ovsdb-error.c:253,12'
          Dst:             ds_steal_cstr
    - functionName:    ovsdb_error_destroy
      functionSourceFile: '/src/openvswitch/lib/ovsdb-error.c'
      linkageType:     InternalLinkage
      functionLinenumber: 179
      functionLinenumberEnd: 185
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    13
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsdb_error_get_tag
      functionSourceFile: '/src/openvswitch/lib/ovsdb-error.c'
      linkageType:     InternalLinkage
      functionLinenumber: 276
      functionLinenumberEnd: 277
      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:    ovsdb_error_to_json_free
      functionSourceFile: '/src/openvswitch/lib/ovsdb-error.c'
      linkageType:     InternalLinkage
      functionLinenumber: 231
      functionLinenumberEnd: 234
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_error_destroy
        - ovsdb_error_to_json
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-error.c:232,25'
          Dst:             ovsdb_error_to_json
        - Src:             'lib/ovsdb-error.c:233,5'
          Dst:             ovsdb_error_destroy
    - functionName:    ovsdb_error_to_json
      functionSourceFile: '/src/openvswitch/lib/ovsdb-error.c'
      linkageType:     InternalLinkage
      functionLinenumber: 206
      functionLinenumberEnd: 222
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          78
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - json_object_create
        - json_object_put_string
        - ovs_retval_to_string
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-error.c:207,25'
          Dst:             json_object_create
        - Src:             'lib/ovsdb-error.c:208,5'
          Dst:             json_object_put_string
        - Src:             'lib/ovsdb-error.c:210,9'
          Dst:             json_object_put_string
        - Src:             'lib/ovsdb-error.c:215,9'
          Dst:             json_object_put_string
        - Src:             'lib/ovsdb-error.c:219,32'
          Dst:             ovs_retval_to_string
        - Src:             'lib/ovsdb-error.c:218,9'
          Dst:             json_object_put_string
    - functionName:    ovsdb_error_clone
      functionSourceFile: '/src/openvswitch/lib/ovsdb-error.c'
      linkageType:     InternalLinkage
      functionLinenumber: 189
      functionLinenumberEnd: 200
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          58
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - nullable_xstrdup
        - xmalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-error.c:191,35'
          Dst:             xmalloc
        - Src:             'lib/ovsdb-error.c:193,24'
          Dst:             nullable_xstrdup
        - Src:             'lib/ovsdb-error.c:194,23'
          Dst:             nullable_xstrdup
    - functionName:    ovsdb_perm_error
      functionSourceFile: '/src/openvswitch/lib/ovsdb-error.c'
      linkageType:     InternalLinkage
      functionLinenumber: 166
      functionLinenumberEnd: 174
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_error_valist
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-error.c:171,13'
          Dst:             ovsdb_error_valist
    - functionName:    ovsdb_error_valist
      functionSourceFile: '/src/openvswitch/lib/ovsdb-error.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          61
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - xmalloc
        - xvasprintf
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-error.c:40,33'
          Dst:             xmalloc
        - Src:             'lib/ovsdb-error.c:42,32'
          Dst:             xvasprintf
    - functionName:    ds_put_char
      functionSourceFile: '/src/openvswitch/./include/openvswitch/dynamic-string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_char__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/dynamic-string.h:99,9'
          Dst:             ds_put_char__
    - functionName:    ovsdb_internal_error
      functionSourceFile: '/src/openvswitch/lib/ovsdb-error.c'
      linkageType:     InternalLinkage
      functionLinenumber: 127
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          89
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - backtrace_capture
        - backtrace_format
        - ds_cstr
        - ds_destroy
        - ds_put_char
        - ds_put_cstr
        - ds_put_format
        - ds_put_format_valist
        - ovs_get_program_version
        - ovsdb_error
        - ovsdb_error_to_string_free
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-error.c:133,5'
          Dst:             ds_put_format
        - Src:             'lib/ovsdb-error.c:136,9'
          Dst:             ds_put_char
        - Src:             'lib/ovsdb-error.c:138,9'
          Dst:             ds_put_format_valist
        - Src:             'lib/ovsdb-error.c:142,5'
          Dst:             backtrace_capture
        - Src:             'lib/ovsdb-error.c:144,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ovsdb-error.c:145,9'
          Dst:             backtrace_format
        - Src:             'lib/ovsdb-error.c:146,9'
          Dst:             ds_put_char
        - Src:             'lib/ovsdb-error.c:149,33'
          Dst:             ovs_get_program_version
        - Src:             'lib/ovsdb-error.c:149,5'
          Dst:             ds_put_format
        - Src:             'lib/ovsdb-error.c:152,19'
          Dst:             ovsdb_error_to_string_free
        - Src:             'lib/ovsdb-error.c:153,9'
          Dst:             ds_put_format
        - Src:             'lib/ovsdb-error.c:157,49'
          Dst:             ds_cstr
        - Src:             'lib/ovsdb-error.c:157,13'
          Dst:             ovsdb_error
        - Src:             'lib/ovsdb-error.c:159,5'
          Dst:             ds_destroy
    - functionName:    ovsdb_error
      functionSourceFile: '/src/openvswitch/lib/ovsdb-error.c'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 58
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_error_valist
      functionUses:    17
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-error.c:55,13'
          Dst:             ovsdb_error_valist
    - functionName:    ovsdb_wrap_error
      functionSourceFile: '/src/openvswitch/lib/ovsdb-error.c'
      linkageType:     InternalLinkage
      functionLinenumber: 97
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          60
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - xasprintf
        - xvasprintf
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-error.c:102,11'
          Dst:             xvasprintf
        - Src:             'lib/ovsdb-error.c:106,21'
          Dst:             xasprintf
    - functionName:    ovsdb_syntax_error
      functionSourceFile: '/src/openvswitch/lib/ovsdb-error.c'
      linkageType:     InternalLinkage
      functionLinenumber: 79
      functionLinenumberEnd: 92
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          57
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - json_to_string
        - ovsdb_error_valist
      functionUses:    35
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-error.c:84,13'
          Dst:             ovsdb_error_valist
        - Src:             'lib/ovsdb-error.c:89,25'
          Dst:             json_to_string
    - functionName:    ovsdb_io_error
      functionSourceFile: '/src/openvswitch/lib/ovsdb-error.c'
      linkageType:     InternalLinkage
      functionLinenumber: 63
      functionLinenumberEnd: 73
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_error_valist
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-error.c:68,13'
          Dst:             ovsdb_error_valist
    - functionName:    init_this_module_ovsdb_idl
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:52,1'
          Dst:             vlog_insert_module
    - functionName:    txn_uncommitted_init_coverage
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:54,1'
          Dst:             coverage_counter_register
    - functionName:    txn_unchanged_init_coverage
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:55,1'
          Dst:             coverage_counter_register
    - functionName:    txn_incomplete_init_coverage
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:56,1'
          Dst:             coverage_counter_register
    - functionName:    txn_aborted_init_coverage
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 57
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:57,1'
          Dst:             coverage_counter_register
    - functionName:    txn_success_init_coverage
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58
      functionLinenumberEnd: 58
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:58,1'
          Dst:             coverage_counter_register
    - functionName:    txn_try_again_init_coverage
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 59
      functionLinenumberEnd: 59
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:59,1'
          Dst:             coverage_counter_register
    - functionName:    txn_not_locked_init_coverage
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 60
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:60,1'
          Dst:             coverage_counter_register
    - functionName:    txn_error_init_coverage
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 61
      functionLinenumberEnd: 61
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - coverage_counter_register
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:61,1'
          Dst:             coverage_counter_register
    - functionName:    txn_error_count
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 61
      functionLinenumberEnd: 61
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_txn_error_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:61,1'
          Dst:             counter_txn_error_get
    - functionName:    counter_txn_error_get
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 61
      functionLinenumberEnd: 61
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_txn_error_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:61,1'
          Dst:             counter_txn_error_get_unsafe
    - functionName:    counter_txn_error_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 61
      functionLinenumberEnd: 61
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    txn_not_locked_count
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 60
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_txn_not_locked_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:60,1'
          Dst:             counter_txn_not_locked_get
    - functionName:    counter_txn_not_locked_get
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 60
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_txn_not_locked_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:60,1'
          Dst:             counter_txn_not_locked_get_unsafe
    - functionName:    counter_txn_not_locked_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 60
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    txn_try_again_count
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 59
      functionLinenumberEnd: 59
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_txn_try_again_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:59,1'
          Dst:             counter_txn_try_again_get
    - functionName:    counter_txn_try_again_get
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 59
      functionLinenumberEnd: 59
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_txn_try_again_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:59,1'
          Dst:             counter_txn_try_again_get_unsafe
    - functionName:    counter_txn_try_again_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 59
      functionLinenumberEnd: 59
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    txn_success_count
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58
      functionLinenumberEnd: 58
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_txn_success_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:58,1'
          Dst:             counter_txn_success_get
    - functionName:    counter_txn_success_get
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58
      functionLinenumberEnd: 58
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_txn_success_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:58,1'
          Dst:             counter_txn_success_get_unsafe
    - functionName:    counter_txn_success_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58
      functionLinenumberEnd: 58
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    txn_aborted_count
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 57
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_txn_aborted_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:57,1'
          Dst:             counter_txn_aborted_get
    - functionName:    counter_txn_aborted_get
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 57
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_txn_aborted_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:57,1'
          Dst:             counter_txn_aborted_get_unsafe
    - functionName:    counter_txn_aborted_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 57
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    txn_incomplete_count
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_txn_incomplete_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:56,1'
          Dst:             counter_txn_incomplete_get
    - functionName:    counter_txn_incomplete_get
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_txn_incomplete_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:56,1'
          Dst:             counter_txn_incomplete_get_unsafe
    - functionName:    counter_txn_incomplete_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    txn_unchanged_count
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_txn_unchanged_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:55,1'
          Dst:             counter_txn_unchanged_get
    - functionName:    counter_txn_unchanged_get
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_txn_unchanged_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:55,1'
          Dst:             counter_txn_unchanged_get_unsafe
    - functionName:    counter_txn_unchanged_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    txn_uncommitted_count
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      int
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_txn_uncommitted_get
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:54,1'
          Dst:             counter_txn_uncommitted_get
    - functionName:    counter_txn_uncommitted_get
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_txn_uncommitted_get_unsafe
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:54,1'
          Dst:             counter_txn_uncommitted_get_unsafe
    - functionName:    counter_txn_uncommitted_get_unsafe
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         1
      ICount:          5
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    check_json_type
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4085
      functionLinenumberEnd: 4097
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          90
      EdgeCount:       22
      CyclomaticComplexity: 6
      functionsReached:
        - json_type_to_string
        - vlog_rate_limit
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:4087,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ovsdb-idl.c:4090,9'
          Dst:             json_type_to_string
        - Src:             'lib/ovsdb-idl.c:4090,9'
          Dst:             json_type_to_string
        - Src:             'lib/ovsdb-idl.c:4090,9'
          Dst:             vlog_rate_limit
    - functionName:    ovsdb_idl_txn_process_insert_reply
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4154
      functionLinenumberEnd: 4188
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         20
      ICount:          123
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - check_json_type
        - json_array_at
        - json_array_size
        - json_object
        - ovsdb_atom_from_json
        - ovsdb_error_to_string_free
        - shash_find_data
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:4161,29'
          Dst:             json_array_size
        - Src:             'lib/ovsdb-idl.c:4162,9'
          Dst:             json_array_size
        - Src:             'lib/ovsdb-idl.c:4162,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ovsdb-idl.c:4170,25'
          Dst:             json_array_at
        - Src:             'lib/ovsdb-idl.c:4170,13'
          Dst:             json_object
        - Src:             'lib/ovsdb-idl.c:4171,17'
          Dst:             shash_find_data
        - Src:             'lib/ovsdb-idl.c:4172,10'
          Dst:             check_json_type
        - Src:             'lib/ovsdb-idl.c:4176,13'
          Dst:             ovsdb_atom_from_json
        - Src:             'lib/ovsdb-idl.c:4178,19'
          Dst:             ovsdb_error_to_string_free
        - Src:             'lib/ovsdb-idl.c:4179,9'
          Dst:             vlog_rate_limit
    - functionName:    ovsdb_idl_txn_process_inc_reply
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4102
      functionLinenumberEnd: 4149
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         33
      ICount:          203
      EdgeCount:       43
      CyclomaticComplexity: 12
      functionsReached:
        - check_json_type
        - json_array_at
        - json_array_size
        - json_object
        - shash_find_data
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:4106,30'
          Dst:             json_array_size
        - Src:             'lib/ovsdb-idl.c:4107,9'
          Dst:             json_array_size
        - Src:             'lib/ovsdb-idl.c:4107,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ovsdb-idl.c:4115,26'
          Dst:             json_array_at
        - Src:             'lib/ovsdb-idl.c:4115,14'
          Dst:             json_object
        - Src:             'lib/ovsdb-idl.c:4116,13'
          Dst:             shash_find_data
        - Src:             'lib/ovsdb-idl.c:4117,10'
          Dst:             check_json_type
        - Src:             'lib/ovsdb-idl.c:4121,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ovsdb-idl.c:4127,26'
          Dst:             json_array_at
        - Src:             'lib/ovsdb-idl.c:4127,14'
          Dst:             json_object
        - Src:             'lib/ovsdb-idl.c:4128,12'
          Dst:             shash_find_data
        - Src:             'lib/ovsdb-idl.c:4129,10'
          Dst:             check_json_type
        - Src:             'lib/ovsdb-idl.c:4132,9'
          Dst:             json_array_size
        - Src:             'lib/ovsdb-idl.c:4133,9'
          Dst:             json_array_size
        - Src:             'lib/ovsdb-idl.c:4133,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ovsdb-idl.c:4138,11'
          Dst:             json_array_at
        - Src:             'lib/ovsdb-idl.c:4139,10'
          Dst:             check_json_type
        - Src:             'lib/ovsdb-idl.c:4142,30'
          Dst:             json_object
        - Src:             'lib/ovsdb-idl.c:4142,14'
          Dst:             shash_find_data
        - Src:             'lib/ovsdb-idl.c:4143,10'
          Dst:             check_json_type
    - functionName:    ovsdb_idl_txn_set_error_json
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3724
      functionLinenumberEnd: 3728
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          40
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - json_to_string
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:3726,22'
          Dst:             json_to_string
    - functionName:    ovsdb_idl_txn_find
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4071
      functionLinenumberEnd: 4081
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          70
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_first_with_hash
        - hmap_next_with_hash
        - json_equal
        - json_hash
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:4074,5'
          Dst:             json_hash
        - Src:             'lib/ovsdb-idl.c:4074,5'
          Dst:             hmap_first_with_hash
        - Src:             'lib/ovsdb-idl.c:4076,13'
          Dst:             json_equal
        - Src:             'lib/ovsdb-idl.c:4074,5'
          Dst:             hmap_next_with_hash
    - functionName:    hmap_first_with_hash
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 360
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next_with_hash__
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:360,12'
          Dst:             hmap_next_with_hash__
    - functionName:    hmap_next_with_hash
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 395
      functionLinenumberEnd: 396
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next_with_hash__
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:396,12'
          Dst:             hmap_next_with_hash__
    - functionName:    hmap_next_with_hash__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 348
      functionLinenumberEnd: 352
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          40
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsdb_idl_txn_complete
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3758
      functionLinenumberEnd: 3761
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_remove
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:3760,5'
          Dst:             hmap_remove
    - functionName:    hmap_remove
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 317
      functionLinenumberEnd: 324
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          48
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    bitmap_free
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 86
      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:    ovsdb_atom_equals
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.h'
      linkageType:     InternalLinkage
      functionLinenumber: 100
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_compare_3way
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.h:101,13'
          Dst:             ovsdb_atom_compare_3way
    - functionName:    ovsdb_idl_txn_get_row
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3019
      functionLinenumberEnd: 3028
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          69
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_first_with_hash
        - hmap_next_with_hash
        - uuid_equals
        - uuid_hash
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:3022,5'
          Dst:             uuid_hash
        - Src:             'lib/ovsdb-idl.c:3022,5'
          Dst:             hmap_first_with_hash
        - Src:             'lib/ovsdb-idl.c:3023,13'
          Dst:             uuid_equals
        - Src:             'lib/ovsdb-idl.c:3022,5'
          Dst:             hmap_next_with_hash
    - functionName:    uuid_hash
      functionSourceFile: '/src/openvswitch/lib/uuid.h'
      linkageType:     InternalLinkage
      functionLinenumber: 51
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    12
      BranchProfiles:  []
      Callsites:       []
    - functionName:    uuid_equals
      functionSourceFile: '/src/openvswitch/lib/uuid.h'
      linkageType:     InternalLinkage
      functionLinenumber: 58
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          68
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_insert_fast
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 289
      functionLinenumberEnd: 295
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          38
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_node_nullify
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 57
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsdb_idl_row_create__
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2472
      functionLinenumberEnd: 2480
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          42
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_node_nullify
        - ovs_list_init
        - xzalloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:2473,33'
          Dst:             xzalloc
        - Src:             'lib/ovsdb-idl.c:2475,5'
          Dst:             ovs_list_init
        - Src:             'lib/ovsdb-idl.c:2476,5'
          Dst:             ovs_list_init
        - Src:             'lib/ovsdb-idl.c:2477,5'
          Dst:             ovs_list_init
        - Src:             'lib/ovsdb-idl.c:2478,5'
          Dst:             hmap_node_nullify
        - Src:             'lib/ovsdb-idl.c:2479,5'
          Dst:             ovs_list_init
    - functionName:    ovs_list_init
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    11
      BranchProfiles:  []
      Callsites:       []
    - functionName:    raw_ctz
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 261
      functionLinenumberEnd: 267
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          36
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    bitmap_n_longs
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 38
      functionLinenumberEnd: 39
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    bitmap_n_bytes
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 44
      functionLinenumberEnd: 45
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - bitmap_n_longs
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/bitmap.h:45,12'
          Dst:             bitmap_n_longs
    - functionName:    ovs_list_insert
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 169
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsdb_idl_row_reparse_backrefs
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2401
      functionLinenumberEnd: 2421
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          69
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_idl_row_clear_arcs
        - ovsdb_idl_row_parse
        - ovsdb_idl_row_unparse
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:2417,9'
          Dst:             ovsdb_idl_row_unparse
        - Src:             'lib/ovsdb-idl.c:2418,9'
          Dst:             ovsdb_idl_row_clear_arcs
        - Src:             'lib/ovsdb-idl.c:2419,9'
          Dst:             ovsdb_idl_row_parse
    - functionName:    ovsdb_idl_row_unparse
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2009
      functionLinenumberEnd: 2021
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          68
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    10
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsdb_idl_row_clear_arcs
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2380
      functionLinenumberEnd: 2396
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          103
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - ovs_list_init
        - ovs_list_is_empty
        - ovs_list_remove
        - ovsdb_idl_row_destroy
        - ovsdb_idl_row_is_orphan
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:2387,9'
          Dst:             ovs_list_remove
        - Src:             'lib/ovsdb-idl.c:2389,16'
          Dst:             ovsdb_idl_row_is_orphan
        - Src:             'lib/ovsdb-idl.c:2390,16'
          Dst:             ovs_list_is_empty
        - Src:             'lib/ovsdb-idl.c:2391,13'
          Dst:             ovsdb_idl_row_destroy
        - Src:             'lib/ovsdb-idl.c:2395,5'
          Dst:             ovs_list_init
    - functionName:    ovsdb_idl_row_parse
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1993
      functionLinenumberEnd: 2005
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          78
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_idl_row_unparse
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:1998,9'
          Dst:             ovsdb_idl_row_unparse
    - functionName:    ovs_list_remove
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 251
      functionLinenumberEnd: 254
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          25
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsdb_idl_row_is_orphan
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1965
      functionLinenumberEnd: 1966
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          25
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    11
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_list_is_empty
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 320
      functionLinenumberEnd: 321
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    19
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsdb_idl_row_destroy
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2506
      functionLinenumberEnd: 2518
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_remove
        - ovs_list_is_empty
        - ovs_list_push_back
        - ovsdb_idl_destroy_all_map_op_lists
        - ovsdb_idl_destroy_all_set_op_lists
        - ovsdb_idl_row_clear_old
        - ovsdb_idl_row_track_change
        - ovsdb_idl_row_untrack_change
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:2507,5'
          Dst:             ovsdb_idl_row_clear_old
        - Src:             'lib/ovsdb-idl.c:2508,9'
          Dst:             ovs_list_is_empty
        - Src:             'lib/ovsdb-idl.c:2509,9'
          Dst:             hmap_remove
        - Src:             'lib/ovsdb-idl.c:2510,9'
          Dst:             ovsdb_idl_destroy_all_map_op_lists
        - Src:             'lib/ovsdb-idl.c:2511,9'
          Dst:             ovsdb_idl_destroy_all_set_op_lists
        - Src:             'lib/ovsdb-idl.c:2512,9'
          Dst:             ovsdb_idl_row_track_change
        - Src:             'lib/ovsdb-idl.c:2514,9'
          Dst:             ovsdb_idl_row_untrack_change
        - Src:             'lib/ovsdb-idl.c:2515,9'
          Dst:             ovs_list_push_back
    - functionName:    ovsdb_idl_row_clear_old
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2337
      functionLinenumberEnd: 2354
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         16
      ICount:          108
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - ovs_ignore
        - ovsdb_datum_destroy
        - ovsdb_idl_row_is_orphan
        - ovsdb_idl_track_is_set
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:2338,5'
          Dst:             ovs_ignore
        - Src:             'lib/ovsdb-idl.c:2339,10'
          Dst:             ovsdb_idl_row_is_orphan
        - Src:             'lib/ovsdb-idl.c:2340,13'
          Dst:             ovsdb_idl_track_is_set
        - Src:             'lib/ovsdb-idl.c:2347,17'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsdb_idl_destroy_all_map_op_lists
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2522
      functionLinenumberEnd: 2539
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          98
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - bitmap_free
        - bitmap_scan
        - map_op_list_destroy
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:2530,9'
          Dst:             bitmap_scan
        - Src:             'lib/ovsdb-idl.c:2532,13'
          Dst:             map_op_list_destroy
        - Src:             'lib/ovsdb-idl.c:2530,9'
          Dst:             bitmap_scan
        - Src:             'lib/ovsdb-idl.c:2535,9'
          Dst:             bitmap_free
    - functionName:    ovsdb_idl_destroy_all_set_op_lists
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2543
      functionLinenumberEnd: 2560
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          98
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - bitmap_free
        - bitmap_scan
        - set_op_list_destroy
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:2551,9'
          Dst:             bitmap_scan
        - Src:             'lib/ovsdb-idl.c:2553,13'
          Dst:             set_op_list_destroy
        - Src:             'lib/ovsdb-idl.c:2551,9'
          Dst:             bitmap_scan
        - Src:             'lib/ovsdb-idl.c:2556,9'
          Dst:             bitmap_free
    - functionName:    ovsdb_idl_row_track_change
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2443
      functionLinenumberEnd: 2450
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_list_is_empty
        - ovs_list_push_back
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:2447,9'
          Dst:             ovs_list_is_empty
        - Src:             'lib/ovsdb-idl.c:2448,9'
          Dst:             ovs_list_push_back
    - functionName:    ovsdb_idl_row_untrack_change
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2454
      functionLinenumberEnd: 2461
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_list_init
        - ovs_list_is_empty
        - ovs_list_remove
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:2455,9'
          Dst:             ovs_list_is_empty
        - Src:             'lib/ovsdb-idl.c:2459,5'
          Dst:             ovs_list_remove
        - Src:             'lib/ovsdb-idl.c:2460,5'
          Dst:             ovs_list_init
    - functionName:    ovs_list_push_back
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 204
      functionLinenumberEnd: 206
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_list_insert
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/list.h:205,5'
          Dst:             ovs_list_insert
    - functionName:    bitmap_scan
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 227
      functionLinenumberEnd: 252
      functionDepth:   0
      returnType:      size_t
      argCount:        4
      argTypes:
        - 'N/A'
        - bool
        - size_t
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          160
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - bitmap_unit__
        - raw_ctz
      functionUses:    16
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/bitmap.h:231,13'
          Dst:             bitmap_unit__
        - Src:             'lib/bitmap.h:246,18'
          Dst:             raw_ctz
    - functionName:    bitmap_unit__
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 26
      functionLinenumberEnd: 27
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsdb_idl_track_is_set
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1462
      functionLinenumberEnd: 1471
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          49
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    5
      BranchProfiles:  []
      Callsites:       []
    - functionName:    add_tracked_change_for_references
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1848
      functionLinenumberEnd: 1860
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          84
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - add_tracked_change_for_references
        - ovs_list_is_empty
        - ovsdb_idl_row_track_change
        - ovsdb_idl_track_is_set
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:1853,13'
          Dst:             ovs_list_is_empty
        - Src:             'lib/ovsdb-idl.c:1854,13'
          Dst:             ovsdb_idl_track_is_set
        - Src:             'lib/ovsdb-idl.c:1856,13'
          Dst:             ovsdb_idl_row_track_change
        - Src:             'lib/ovsdb-idl.c:1857,13'
          Dst:             add_tracked_change_for_references
    - functionName:    ovsdb_idl_add_to_indexes
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2152
      functionLinenumberEnd: 2160
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          70
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - skiplist_insert
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:2157,9'
          Dst:             skiplist_insert
    - functionName:    ovsdb_idl_row_mark_backrefs_for_reparsing
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2427
      functionLinenumberEnd: 2438
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          80
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - ovs_list_is_empty
        - ovs_list_push_back
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:2433,13'
          Dst:             ovs_list_is_empty
        - Src:             'lib/ovsdb-idl.c:2434,13'
          Dst:             ovs_list_push_back
    - functionName:    ovsdb_idl_row_change
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1872
      functionLinenumberEnd: 1951
      functionDepth:   0
      returnType:      bool
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         52
      ICount:          427
      EdgeCount:       68
      CyclomaticComplexity: 18
      functionsReached:
        - add_tracked_change_for_references
        - bitmap_allocate
        - bitmap_set1
        - hmap_first
        - hmap_next
        - ovs_list_is_empty
        - ovs_list_push_back
        - ovsdb_datum_apply_diff_in_place
        - ovsdb_datum_destroy
        - ovsdb_datum_equals
        - ovsdb_datum_from_json
        - ovsdb_datum_swap
        - ovsdb_error_to_string_free
        - ovsdb_idl_track_is_set
        - ovsdb_transient_datum_from_json
        - shash_find_data
        - vlog_rate_limit
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:1878,5'
          Dst:             hmap_first
        - Src:             'lib/ovsdb-idl.c:1886,18'
          Dst:             shash_find_data
        - Src:             'lib/ovsdb-idl.c:1888,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/ovsdb-idl.c:1899,21'
          Dst:             ovsdb_transient_datum_from_json
        - Src:             'lib/ovsdb-idl.c:1902,25'
          Dst:             ovsdb_datum_apply_diff_in_place
        - Src:             'lib/ovsdb-idl.c:1904,17'
          Dst:             ovsdb_datum_destroy
        - Src:             'lib/ovsdb-idl.c:1910,21'
          Dst:             ovsdb_datum_from_json
        - Src:             'lib/ovsdb-idl.c:1913,22'
          Dst:             ovsdb_datum_equals
        - Src:             'lib/ovsdb-idl.c:1914,21'
          Dst:             ovsdb_datum_swap
        - Src:             'lib/ovsdb-idl.c:1917,17'
          Dst:             ovsdb_datum_destroy
        - Src:             'lib/ovsdb-idl.c:1922,23'
          Dst:             ovsdb_error_to_string_free
        - Src:             'lib/ovsdb-idl.c:1923,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/ovsdb-idl.c:1937,21'
          Dst:             ovs_list_is_empty
        - Src:             'lib/ovsdb-idl.c:1938,21'
          Dst:             ovsdb_idl_track_is_set
        - Src:             'lib/ovsdb-idl.c:1939,21'
          Dst:             ovs_list_push_back
        - Src:             'lib/ovsdb-idl.c:1943,17'
          Dst:             add_tracked_change_for_references
        - Src:             'lib/ovsdb-idl.c:1945,36'
          Dst:             bitmap_allocate
        - Src:             'lib/ovsdb-idl.c:1947,17'
          Dst:             bitmap_set1
        - Src:             'lib/ovsdb-idl.c:1878,5'
          Dst:             hmap_next
    - functionName:    hmap_first
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 416
      functionLinenumberEnd: 417
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next__
      functionUses:    17
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:417,12'
          Dst:             hmap_next__
    - functionName:    bitmap_allocate
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 50
      functionLinenumberEnd: 51
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - bitmap_n_bytes
        - xzalloc
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/bitmap.h:51,20'
          Dst:             bitmap_n_bytes
        - Src:             'lib/bitmap.h:51,12'
          Dst:             xzalloc
    - functionName:    bitmap_set1
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 96
      functionLinenumberEnd: 98
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - bitmap_bit__
        - bitmap_unit__
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/bitmap.h:97,39'
          Dst:             bitmap_bit__
        - Src:             'lib/bitmap.h:97,6'
          Dst:             bitmap_unit__
    - functionName:    hmap_next
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 429
      functionLinenumberEnd: 432
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_next__
      functionUses:    18
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:432,15'
          Dst:             hmap_next__
    - functionName:    hmap_next__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 401
      functionLinenumberEnd: 410
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          51
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    bitmap_bit__
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 32
      functionLinenumberEnd: 33
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsdb_idl_modify_row
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2621
      functionLinenumberEnd: 2630
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          38
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_add_to_indexes
        - ovsdb_idl_remove_from_indexes
        - ovsdb_idl_row_change
        - ovsdb_idl_row_clear_arcs
        - ovsdb_idl_row_parse
        - ovsdb_idl_row_unparse
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:2622,5'
          Dst:             ovsdb_idl_remove_from_indexes
        - Src:             'lib/ovsdb-idl.c:2623,5'
          Dst:             ovsdb_idl_row_unparse
        - Src:             'lib/ovsdb-idl.c:2624,5'
          Dst:             ovsdb_idl_row_clear_arcs
        - Src:             'lib/ovsdb-idl.c:2625,20'
          Dst:             ovsdb_idl_row_change
        - Src:             'lib/ovsdb-idl.c:2627,5'
          Dst:             ovsdb_idl_row_parse
        - Src:             'lib/ovsdb-idl.c:2628,5'
          Dst:             ovsdb_idl_add_to_indexes
    - functionName:    ovsdb_idl_remove_from_indexes
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2164
      functionLinenumberEnd: 2172
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          70
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - skiplist_delete
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:2169,9'
          Dst:             skiplist_delete
    - functionName:    ovsdb_idl_insert_row
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2584
      functionLinenumberEnd: 2602
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          98
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovs_ignore
        - ovsdb_datum_init_default
        - ovsdb_idl_add_to_indexes
        - ovsdb_idl_row_change
        - ovsdb_idl_row_mark_backrefs_for_reparsing
        - ovsdb_idl_row_parse
        - xmalloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:2588,5'
          Dst:             ovs_ignore
        - Src:             'lib/ovsdb-idl.c:2590,39'
          Dst:             xmalloc
        - Src:             'lib/ovsdb-idl.c:2592,9'
          Dst:             ovsdb_datum_init_default
        - Src:             'lib/ovsdb-idl.c:2594,5'
          Dst:             ovsdb_idl_row_change
        - Src:             'lib/ovsdb-idl.c:2595,5'
          Dst:             ovsdb_idl_row_parse
        - Src:             'lib/ovsdb-idl.c:2600,5'
          Dst:             ovsdb_idl_row_mark_backrefs_for_reparsing
        - Src:             'lib/ovsdb-idl.c:2601,5'
          Dst:             ovsdb_idl_add_to_indexes
    - functionName:    ovsdb_idl_delete_row
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2606
      functionLinenumberEnd: 2614
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_list_is_empty
        - ovsdb_idl_remove_from_indexes
        - ovsdb_idl_row_clear_arcs
        - ovsdb_idl_row_destroy
        - ovsdb_idl_row_parse
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:2608,10'
          Dst:             ovs_list_is_empty
        - Src:             'lib/ovsdb-idl.c:2609,9'
          Dst:             ovsdb_idl_row_parse
        - Src:             'lib/ovsdb-idl.c:2611,5'
          Dst:             ovsdb_idl_remove_from_indexes
        - Src:             'lib/ovsdb-idl.c:2612,5'
          Dst:             ovsdb_idl_row_clear_arcs
        - Src:             'lib/ovsdb-idl.c:2613,5'
          Dst:             ovsdb_idl_row_destroy
    - functionName:    ovsdb_idl_process_update
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1784
      functionLinenumberEnd: 1842
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         47
      ICount:          351
      EdgeCount:       55
      CyclomaticComplexity: 10
      functionsReached:
        - abort
        - ovsdb_idl_delete_row
        - ovsdb_idl_get_row
        - ovsdb_idl_insert_row
        - ovsdb_idl_modify_row
        - ovsdb_idl_row_clear_changeseqno
        - ovsdb_idl_row_create
        - ovsdb_idl_row_is_orphan
        - ovsdb_idl_row_untrack_change
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ovsdb-idl.c:1788,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:1786,33'
          Dst:             ovsdb_idl_get_row
        - Src:             'lib/ovsdb-idl.c:1790,21'
          Dst:             ovsdb_idl_row_is_orphan
        - Src:             'lib/ovsdb-idl.c:1792,13'
          Dst:             ovsdb_idl_delete_row
        - Src:             'lib/ovsdb-idl.c:1794,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/ovsdb-idl.c:1803,34'
          Dst:             ovsdb_idl_row_create
        - Src:             'lib/ovsdb-idl.c:1803,13'
          Dst:             ovsdb_idl_insert_row
        - Src:             'lib/ovsdb-idl.c:1805,20'
          Dst:             ovsdb_idl_row_is_orphan
        - Src:             'lib/ovsdb-idl.c:1806,13'
          Dst:             ovsdb_idl_row_untrack_change
        - Src:             'lib/ovsdb-idl.c:1807,13'
          Dst:             ovsdb_idl_row_clear_changeseqno
        - Src:             'lib/ovsdb-idl.c:1808,13'
          Dst:             ovsdb_idl_insert_row
        - Src:             'lib/ovsdb-idl.c:1810,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/ovsdb-idl.c:1819,18'
          Dst:             ovsdb_idl_row_is_orphan
        - Src:             'lib/ovsdb-idl.c:1820,24'
          Dst:             ovsdb_idl_modify_row
        - Src:             'lib/ovsdb-idl.c:1825,17'
          Dst:             vlog_rate_limit
        - Src:             'lib/ovsdb-idl.c:1831,13'
          Dst:             vlog_rate_limit
        - Src:             'lib/ovsdb-idl.c:1838,9'
          Dst:             abort
    - functionName:    ovsdb_idl_get_row
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1755
      functionLinenumberEnd: 1764
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          69
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_first_with_hash
        - hmap_next_with_hash
        - uuid_equals
        - uuid_hash
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:1758,5'
          Dst:             uuid_hash
        - Src:             'lib/ovsdb-idl.c:1758,5'
          Dst:             hmap_first_with_hash
        - Src:             'lib/ovsdb-idl.c:1759,13'
          Dst:             uuid_equals
        - Src:             'lib/ovsdb-idl.c:1758,5'
          Dst:             hmap_next_with_hash
    - functionName:    ovsdb_idl_row_create
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2485
      functionLinenumberEnd: 2494
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          49
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_insert_at
        - ovsdb_idl_row_create__
        - uuid_hash
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:2486,33'
          Dst:             ovsdb_idl_row_create__
        - Src:             'lib/ovsdb-idl.c:2487,5'
          Dst:             uuid_hash
        - Src:             'lib/ovsdb-idl.c:2487,5'
          Dst:             hmap_insert_at
    - functionName:    ovsdb_idl_row_clear_changeseqno
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2464
      functionLinenumberEnd: 2468
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_insert_at
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 306
      functionLinenumberEnd: 311
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_expand_at
        - hmap_insert_fast
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:307,5'
          Dst:             hmap_insert_fast
        - Src:             './include/openvswitch/hmap.h:309,9'
          Dst:             hmap_expand_at
    - functionName:    log_parse_update_error
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1634
      functionLinenumberEnd: 1641
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          51
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_error_destroy
        - ovsdb_error_to_string
        - vlog_rate_limit
        - vlog_should_drop
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:1635,10'
          Dst:             vlog_should_drop
        - Src:             'lib/ovsdb-idl.c:1636,19'
          Dst:             ovsdb_error_to_string
        - Src:             'lib/ovsdb-idl.c:1637,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ovsdb-idl.c:1640,5'
          Dst:             ovsdb_error_destroy
    - functionName:    ovsdb_idl_parse_update__
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1646
      functionLinenumberEnd: 1676
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          125
      EdgeCount:       21
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_cs_flag_inconsistency
        - ovsdb_error
        - ovsdb_idl_process_update
        - ovsdb_syntax_error
        - shash_find_data
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ovsdb-idl.c:1659,13'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:1650,41'
          Dst:             shash_find_data
        - Src:             'lib/ovsdb-idl.c:1653,20'
          Dst:             ovsdb_syntax_error
        - Src:             'lib/ovsdb-idl.c:1659,21'
          Dst:             ovsdb_idl_process_update
        - Src:             'lib/ovsdb-idl.c:1666,17'
          Dst:             ovsdb_cs_flag_inconsistency
        - Src:             'lib/ovsdb-idl.c:1667,24'
          Dst:             ovsdb_error
    - functionName:    ovsdb_idl_clause_to_json
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1114
      functionLinenumberEnd: 1119
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - json_array_create_3
        - json_string_create
        - ovsdb_datum_to_json
        - ovsdb_function_to_string
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:1115,28'
          Dst:             ovsdb_function_to_string
        - Src:             'lib/ovsdb-idl.c:1116,32'
          Dst:             json_string_create
        - Src:             'lib/ovsdb-idl.c:1117,32'
          Dst:             json_string_create
        - Src:             'lib/ovsdb-idl.c:1118,32'
          Dst:             ovsdb_datum_to_json
        - Src:             'lib/ovsdb-idl.c:1116,12'
          Dst:             json_array_create_3
    - functionName:    ovsdb_idl_condition_to_json
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1285
      functionLinenumberEnd: 1303
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         15
      ICount:          105
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - hmap_count
        - hmap_first
        - hmap_next
        - json_array_create
        - json_array_create_1
        - json_boolean_create
        - ovs_ignore
        - ovsdb_idl_clause_to_json
        - xmalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:1290,16'
          Dst:             hmap_count
        - Src:             'lib/ovsdb-idl.c:1292,36'
          Dst:             json_boolean_create
        - Src:             'lib/ovsdb-idl.c:1292,16'
          Dst:             json_array_create_1
        - Src:             'lib/ovsdb-idl.c:1295,29'
          Dst:             xmalloc
        - Src:             'lib/ovsdb-idl.c:1298,5'
          Dst:             hmap_first
        - Src:             'lib/ovsdb-idl.c:1299,24'
          Dst:             ovsdb_idl_clause_to_json
        - Src:             'lib/ovsdb-idl.c:1298,5'
          Dst:             hmap_next
        - Src:             'lib/ovsdb-idl.c:1301,5'
          Dst:             ovs_ignore
        - Src:             'lib/ovsdb-idl.c:1302,12'
          Dst:             json_array_create
    - functionName:    hmap_count
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 263
      functionLinenumberEnd: 264
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsdb_idl_condition_clone
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1203
      functionLinenumberEnd: 1211
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          72
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - hmap_first
        - hmap_next
        - ovsdb_idl_condition_add_clause__
        - ovsdb_idl_condition_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:1204,5'
          Dst:             ovsdb_idl_condition_init
        - Src:             'lib/ovsdb-idl.c:1207,5'
          Dst:             hmap_first
        - Src:             'lib/ovsdb-idl.c:1208,9'
          Dst:             ovsdb_idl_condition_add_clause__
        - Src:             'lib/ovsdb-idl.c:1207,5'
          Dst:             hmap_next
    - functionName:    ovsdb_idl_condition_init
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1135
      functionLinenumberEnd: 1138
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_init
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:1136,5'
          Dst:             hmap_init
    - functionName:    ovsdb_idl_condition_add_clause__
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1184
      functionLinenumberEnd: 1190
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          44
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_insert_at
        - ovsdb_datum_clone
        - xmalloc
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:1185,39'
          Dst:             xmalloc
        - Src:             'lib/ovsdb-idl.c:1188,5'
          Dst:             ovsdb_datum_clone
        - Src:             'lib/ovsdb-idl.c:1189,5'
          Dst:             hmap_insert_at
    - functionName:    ovsdb_idl_clause_equals
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1106
      functionLinenumberEnd: 1109
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          55
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_datum_equals
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:1109,16'
          Dst:             ovsdb_datum_equals
    - functionName:    hash_rot
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 31
      functionLinenumberEnd: 32
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          16
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    mhash_add__
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 64
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hash_rot
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:71,12'
          Dst:             hash_rot
    - functionName:    mhash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 77
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_rot
        - mhash_add__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:78,12'
          Dst:             mhash_add__
        - Src:             'lib/hash.h:79,12'
          Dst:             hash_rot
    - functionName:    mhash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 90
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hash_add
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 108
      functionLinenumberEnd: 109
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_add
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:109,12'
          Dst:             mhash_add
    - functionName:    hash_finish
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 118
      functionLinenumberEnd: 119
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - mhash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:119,12'
          Dst:             mhash_finish
    - functionName:    hash_2words
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 153
      functionLinenumberEnd: 154
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_add
        - hash_finish
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:154,33'
          Dst:             hash_add
        - Src:             'lib/hash.h:154,24'
          Dst:             hash_add
        - Src:             'lib/hash.h:154,12'
          Dst:             hash_finish
    - functionName:    hash_int
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 408
      functionLinenumberEnd: 409
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_2words
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:409,12'
          Dst:             hash_2words
    - functionName:    hash_pointer
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 140
      functionLinenumberEnd: 149
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_int
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:149,12'
          Dst:             hash_int
    - functionName:    ovsdb_idl_compose_monitor_request
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 801
      functionLinenumberEnd: 891
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         78
      ICount:          461
      EdgeCount:       101
      CyclomaticComplexity: 25
      functionsReached:
        - json_array_add
        - json_array_create_1
        - json_array_create_empty
        - json_destroy
        - json_object_create
        - json_object_put
        - json_string_create
        - ovsdb_cs_clear_condition
        - ovsdb_cs_free_schema
        - ovsdb_cs_parse_schema
        - ovsdb_cs_reset_last_id
        - ovsdb_idl_schema_columns_clear
        - ovsdb_idl_set_condition__
        - shash_add
        - shash_delete
        - shash_find
        - shash_find_data
        - vlog
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:804,28'
          Dst:             ovsdb_cs_parse_schema
        - Src:             'lib/ovsdb-idl.c:805,37'
          Dst:             json_object_create
        - Src:             'lib/ovsdb-idl.c:813,24'
          Dst:             shash_find_data
        - Src:             'lib/ovsdb-idl.c:816,35'
          Dst:             json_array_create_empty
        - Src:             'lib/ovsdb-idl.c:818,9'
          Dst:             ovsdb_idl_schema_columns_clear
        - Src:             'lib/ovsdb-idl.c:825,24'
          Dst:             shash_find
        - Src:             'lib/ovsdb-idl.c:828,21'
          Dst:             shash_add
        - Src:             'lib/ovsdb-idl.c:830,21'
          Dst:             shash_delete
        - Src:             'lib/ovsdb-idl.c:836,21'
          Dst:             vlog
        - Src:             'lib/ovsdb-idl.c:842,21'
          Dst:             vlog
        - Src:             'lib/ovsdb-idl.c:849,31'
          Dst:             json_array_create_empty
        - Src:             'lib/ovsdb-idl.c:851,41'
          Dst:             json_string_create
        - Src:             'lib/ovsdb-idl.c:851,17'
          Dst:             json_array_add
        - Src:             'lib/ovsdb-idl.c:857,17'
          Dst:             vlog
        - Src:             'lib/ovsdb-idl.c:860,17'
          Dst:             json_destroy
        - Src:             'lib/ovsdb-idl.c:862,17'
          Dst:             ovsdb_cs_clear_condition
        - Src:             'lib/ovsdb-idl.c:870,21'
          Dst:             ovsdb_cs_reset_last_id
        - Src:             'lib/ovsdb-idl.c:875,31'
          Dst:             json_object_create
        - Src:             'lib/ovsdb-idl.c:876,13'
          Dst:             json_object_put
        - Src:             'lib/ovsdb-idl.c:878,29'
          Dst:             json_array_create_1
        - Src:             'lib/ovsdb-idl.c:877,13'
          Dst:             json_object_put
        - Src:             'lib/ovsdb-idl.c:882,13'
          Dst:             ovsdb_cs_clear_condition
        - Src:             'lib/ovsdb-idl.c:886,13'
          Dst:             ovsdb_idl_set_condition__
        - Src:             'lib/ovsdb-idl.c:889,5'
          Dst:             ovsdb_cs_free_schema
    - functionName:    ovsdb_idl_schema_columns_clear
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 361
      functionLinenumberEnd: 368
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          58
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - hmap_first
        - hmap_next
        - ovsdb_type_destroy
        - shash_clear_free_data
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:364,5'
          Dst:             hmap_first
        - Src:             'lib/ovsdb-idl.c:365,9'
          Dst:             ovsdb_type_destroy
        - Src:             'lib/ovsdb-idl.c:364,5'
          Dst:             hmap_next
        - Src:             'lib/ovsdb-idl.c:367,5'
          Dst:             shash_clear_free_data
    - functionName:    json_destroy
      functionSourceFile: '/src/openvswitch/./include/openvswitch/json.h'
      linkageType:     InternalLinkage
      functionLinenumber: 200
      functionLinenumberEnd: 204
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          38
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - json_destroy__
      functionUses:    11
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/json.h:202,9'
          Dst:             json_destroy__
    - functionName:    ovsdb_idl_set_condition__
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1309
      functionLinenumberEnd: 1351
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         24
      ICount:          151
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - hmap_first
        - hmap_is_empty
        - hmap_next
        - json_destroy
        - ovsdb_cs_set_condition
        - ovsdb_idl_condition_add_clause__
        - ovsdb_idl_condition_destroy
        - ovsdb_idl_condition_to_json
        - ovsdb_idl_get_condition_seqno
        - ovsdb_idl_server_has_column
        - ovsdb_idl_table_from_class
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:1321,33'
          Dst:             ovsdb_idl_table_from_class
        - Src:             'lib/ovsdb-idl.c:1324,17'
          Dst:             ovsdb_idl_get_condition_seqno
        - Src:             'lib/ovsdb-idl.c:1328,9'
          Dst:             hmap_is_empty
        - Src:             'lib/ovsdb-idl.c:1336,5'
          Dst:             hmap_first
        - Src:             'lib/ovsdb-idl.c:1337,13'
          Dst:             ovsdb_idl_server_has_column
        - Src:             'lib/ovsdb-idl.c:1338,13'
          Dst:             ovsdb_idl_condition_add_clause__
        - Src:             'lib/ovsdb-idl.c:1336,5'
          Dst:             hmap_next
        - Src:             'lib/ovsdb-idl.c:1345,17'
          Dst:             ovsdb_idl_condition_to_json
        - Src:             'lib/ovsdb-idl.c:1346,13'
          Dst:             ovsdb_cs_set_condition
        - Src:             'lib/ovsdb-idl.c:1347,5'
          Dst:             json_destroy
        - Src:             'lib/ovsdb-idl.c:1350,5'
          Dst:             ovsdb_idl_condition_destroy
    - functionName:    ovsdb_idl_table_from_class
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2659
      functionLinenumberEnd: 2661
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          52
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    8
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsdb_idl_get_condition_seqno
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 597
      functionLinenumberEnd: 598
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_cs_get_condition_seqno
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:598,12'
          Dst:             ovsdb_cs_get_condition_seqno
    - functionName:    hmap_is_empty
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 281
      functionLinenumberEnd: 282
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsdb_idl_server_has_column
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1050
      functionLinenumberEnd: 1055
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          41
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_table_from_column
        - shash_find
      functionUses:    191
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:1052,9'
          Dst:             ovsdb_idl_table_from_column
        - Src:             'lib/ovsdb-idl.c:1054,40'
          Dst:             shash_find
    - functionName:    ovsdb_idl_condition_destroy
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1142
      functionLinenumberEnd: 1147
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_destroy
        - ovsdb_idl_condition_clear
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:1144,9'
          Dst:             ovsdb_idl_condition_clear
        - Src:             'lib/ovsdb-idl.c:1145,9'
          Dst:             hmap_destroy
    - functionName:    ovsdb_idl_condition_clear
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1151
      functionLinenumberEnd: 1158
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          66
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - hmap_first
        - hmap_next
        - hmap_remove
        - ovsdb_idl_clause_destroy
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:1153,5'
          Dst:             hmap_first
        - Src:             'lib/ovsdb-idl.c:1153,5'
          Dst:             hmap_next
        - Src:             'lib/ovsdb-idl.c:1154,9'
          Dst:             hmap_remove
        - Src:             'lib/ovsdb-idl.c:1155,9'
          Dst:             ovsdb_idl_clause_destroy
    - functionName:    ovsdb_idl_clause_destroy
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1124
      functionLinenumberEnd: 1129
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:1126,9'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsdb_idl_table_from_column
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 923
      functionLinenumberEnd: 926
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          36
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_table_class_from_column
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:925,9'
          Dst:             ovsdb_idl_table_class_from_column
    - functionName:    ovsdb_idl_table_class_from_column
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 908
      functionLinenumberEnd: 916
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          73
      EdgeCount:       14
      CyclomaticComplexity: 4
      functionsReached:
        - abort
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:916,5'
          Dst:             abort
    - functionName:    find_uuid_in_array
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 678
      functionLinenumberEnd: 685
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          52
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - uuid_equals
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:680,13'
          Dst:             uuid_equals
    - functionName:    array_contains_uuid
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 690
      functionLinenumberEnd: 691
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - find_uuid_in_array
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:691,12'
          Dst:             find_uuid_in_array
    - functionName:    ovsdb_idl_loop_commit_and_wait
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4697
      functionLinenumberEnd: 4712
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          65
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_idl_get_seqno
        - ovsdb_idl_try_commit_loop_txn
        - ovsdb_idl_wait
        - poll_immediate_wake_at
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:4702,33'
          Dst:             ovsdb_idl_get_seqno
        - Src:             'lib/ovsdb-idl.c:4706,18'
          Dst:             ovsdb_idl_try_commit_loop_txn
        - Src:             'lib/ovsdb-idl.c:4708,9'
          Dst:             poll_immediate_wake_at
        - Src:             'lib/ovsdb-idl.c:4710,5'
          Dst:             ovsdb_idl_wait
    - functionName:    ovsdb_idl_get_seqno
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 577
      functionLinenumberEnd: 578
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsdb_idl_try_commit_loop_txn
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4616
      functionLinenumberEnd: 4673
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         30
      ICount:          155
      EdgeCount:       33
      CyclomaticComplexity: 5
      functionsReached:
        - abort
        - ovsdb_idl_get_seqno
        - ovsdb_idl_txn_commit
        - ovsdb_idl_txn_destroy
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/ovsdb-idl.c:4627,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:4625,40'
          Dst:             ovsdb_idl_txn_commit
        - Src:             'lib/ovsdb-idl.c:4633,17'
          Dst:             ovsdb_idl_get_seqno
        - Src:             'lib/ovsdb-idl.c:4664,13'
          Dst:             abort
        - Src:             'lib/ovsdb-idl.c:4666,9'
          Dst:             ovsdb_idl_txn_destroy
    - functionName:    ovsdb_idl_wait
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 520
      functionLinenumberEnd: 522
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_cs_wait
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:521,5'
          Dst:             ovsdb_cs_wait
    - functionName:    ovsdb_idl_txn_commit
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3375
      functionLinenumberEnd: 3640
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         136
      ICount:          1041
      EdgeCount:       175
      CyclomaticComplexity: 41
      functionsReached:
        - bitmap_scan
        - ds_cstr
        - hmap_first
        - hmap_insert_at
        - hmap_next
        - json_array_add
        - json_array_create_1
        - json_array_create_3
        - json_array_create_empty
        - json_array_size
        - json_destroy
        - json_hash
        - json_integer_create
        - json_object
        - json_object_create
        - json_object_put
        - json_object_put_string
        - json_string_create
        - json_string_create_nocopy
        - json_string_create_uuid
        - ovsdb_cs_get_lock
        - ovsdb_cs_has_lock
        - ovsdb_cs_may_send_transaction
        - ovsdb_cs_send_transaction
        - ovsdb_data_row_name
        - ovsdb_datum_equals
        - ovsdb_datum_is_default
        - ovsdb_datum_to_json
        - ovsdb_idl_txn_disassemble
        - ovsdb_idl_txn_extract_mutations
        - shash_is_empty
        - substitute_uuids
        - txn_aborted_add
        - txn_error_add
        - txn_incomplete_add
        - txn_not_locked_add
        - txn_success_add
        - txn_try_again_add
        - txn_unchanged_add
        - txn_uncommitted_add
        - uuid_hash
        - uuid_zero
        - where_uuid_equals
        - xmalloc
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/ovsdb-idl.c:3629,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:3379,17'
          Dst:             ovsdb_cs_may_send_transaction
        - Src:             'lib/ovsdb-idl.c:3382,16'
          Dst:             ovsdb_cs_get_lock
        - Src:             'lib/ovsdb-idl.c:3382,47'
          Dst:             ovsdb_cs_has_lock
        - Src:             'lib/ovsdb-idl.c:3388,9'
          Dst:             json_string_create
        - Src:             'lib/ovsdb-idl.c:3387,31'
          Dst:             json_array_create_1
        - Src:             'lib/ovsdb-idl.c:3392,5'
          Dst:             hmap_first
        - Src:             'lib/ovsdb-idl.c:3400,18'
          Dst:             json_object_create
        - Src:             'lib/ovsdb-idl.c:3401,13'
          Dst:             json_array_add
        - Src:             'lib/ovsdb-idl.c:3402,13'
          Dst:             json_object_put_string
        - Src:             'lib/ovsdb-idl.c:3403,13'
          Dst:             json_object_put_string
        - Src:             'lib/ovsdb-idl.c:3404,44'
          Dst:             json_integer_create
        - Src:             'lib/ovsdb-idl.c:3404,13'
          Dst:             json_object_put
        - Src:             'lib/ovsdb-idl.c:3405,42'
          Dst:             where_uuid_equals
        - Src:             'lib/ovsdb-idl.c:3405,13'
          Dst:             json_object_put
        - Src:             'lib/ovsdb-idl.c:3406,13'
          Dst:             json_object_put_string
        - Src:             'lib/ovsdb-idl.c:3407,23'
          Dst:             json_array_create_empty
        - Src:             'lib/ovsdb-idl.c:3408,13'
          Dst:             json_object_put
        - Src:             'lib/ovsdb-idl.c:3409,24'
          Dst:             json_object_create
        - Src:             'lib/ovsdb-idl.c:3410,41'
          Dst:             json_array_create_1
        - Src:             'lib/ovsdb-idl.c:3410,13'
          Dst:             json_object_put
        - Src:             'lib/ovsdb-idl.c:3412,13'
          Dst:             bitmap_scan
        - Src:             'lib/ovsdb-idl.c:3414,41'
          Dst:             json_string_create
        - Src:             'lib/ovsdb-idl.c:3414,17'
          Dst:             json_array_add
        - Src:             'lib/ovsdb-idl.c:3416,33'
          Dst:             ovsdb_datum_to_json
        - Src:             'lib/ovsdb-idl.c:3415,17'
          Dst:             json_object_put
        - Src:             'lib/ovsdb-idl.c:3412,13'
          Dst:             bitmap_scan
        - Src:             'lib/ovsdb-idl.c:3392,5'
          Dst:             hmap_next
        - Src:             'lib/ovsdb-idl.c:3439,13'
          Dst:             hmap_first
        - Src:             'lib/ovsdb-idl.c:3439,13'
          Dst:             hmap_next
        - Src:             'lib/ovsdb-idl.c:3445,35'
          Dst:             json_object_create
        - Src:             'lib/ovsdb-idl.c:3446,17'
          Dst:             json_array_add
        - Src:             'lib/ovsdb-idl.c:3447,17'
          Dst:             json_object_put_string
        - Src:             'lib/ovsdb-idl.c:3448,17'
          Dst:             json_object_put_string
        - Src:             'lib/ovsdb-idl.c:3449,46'
          Dst:             json_array_create_empty
        - Src:             'lib/ovsdb-idl.c:3449,17'
          Dst:             json_object_put
        - Src:             'lib/ovsdb-idl.c:3450,48'
          Dst:             json_integer_create
        - Src:             'lib/ovsdb-idl.c:3450,17'
          Dst:             json_object_put
        - Src:             'lib/ovsdb-idl.c:3451,17'
          Dst:             json_object_put_string
        - Src:             'lib/ovsdb-idl.c:3452,45'
          Dst:             json_array_create_empty
        - Src:             'lib/ovsdb-idl.c:3452,17'
          Dst:             json_object_put
        - Src:             'lib/ovsdb-idl.c:3457,5'
          Dst:             hmap_first
        - Src:             'lib/ovsdb-idl.c:3462,35'
          Dst:             json_object_create
        - Src:             'lib/ovsdb-idl.c:3463,17'
          Dst:             json_object_put_string
        - Src:             'lib/ovsdb-idl.c:3464,17'
          Dst:             json_object_put_string
        - Src:             'lib/ovsdb-idl.c:3465,46'
          Dst:             where_uuid_equals
        - Src:             'lib/ovsdb-idl.c:3465,17'
          Dst:             json_object_put
        - Src:             'lib/ovsdb-idl.c:3466,17'
          Dst:             json_array_add
        - Src:             'lib/ovsdb-idl.c:3475,31'
          Dst:             json_object_create
        - Src:             'lib/ovsdb-idl.c:3476,13'
          Dst:             json_object_put_string
        - Src:             'lib/ovsdb-idl.c:3478,13'
          Dst:             json_object_put_string
        - Src:             'lib/ovsdb-idl.c:3480,46'
          Dst:             where_uuid_equals
        - Src:             'lib/ovsdb-idl.c:3480,17'
          Dst:             json_object_put
        - Src:             'lib/ovsdb-idl.c:3490,29'
          Dst:             json_string_create_uuid
        - Src:             'lib/ovsdb-idl.c:3494,33'
          Dst:             ovsdb_data_row_name
        - Src:             'lib/ovsdb-idl.c:3493,29'
          Dst:             json_string_create_nocopy
        - Src:             'lib/ovsdb-idl.c:3497,17'
          Dst:             json_object_put
        - Src:             'lib/ovsdb-idl.c:3499,26'
          Dst:             xmalloc
        - Src:             'lib/ovsdb-idl.c:3501,36'
          Dst:             json_array_size
        - Src:             'lib/ovsdb-idl.c:3502,17'
          Dst:             uuid_zero
        - Src:             'lib/ovsdb-idl.c:3503,17'
          Dst:             uuid_hash
        - Src:             'lib/ovsdb-idl.c:3503,17'
          Dst:             hmap_insert_at
        - Src:             'lib/ovsdb-idl.c:3506,24'
          Dst:             json_object_create
        - Src:             'lib/ovsdb-idl.c:3507,13'
          Dst:             json_object_put
        - Src:             'lib/ovsdb-idl.c:3510,17'
          Dst:             bitmap_scan
        - Src:             'lib/ovsdb-idl.c:3515,29'
          Dst:             ovsdb_datum_is_default
        - Src:             'lib/ovsdb-idl.c:3519,33'
          Dst:             ovsdb_datum_to_json
        - Src:             'lib/ovsdb-idl.c:3522,41'
          Dst:             substitute_uuids
        - Src:             'lib/ovsdb-idl.c:3521,25'
          Dst:             json_object_put
        - Src:             'lib/ovsdb-idl.c:3529,30'
          Dst:             ovsdb_datum_equals
        - Src:             'lib/ovsdb-idl.c:3510,17'
          Dst:             bitmap_scan
        - Src:             'lib/ovsdb-idl.c:3538,52'
          Dst:             json_object
        - Src:             'lib/ovsdb-idl.c:3538,37'
          Dst:             shash_is_empty
        - Src:             'lib/ovsdb-idl.c:3539,17'
          Dst:             json_array_add
        - Src:             'lib/ovsdb-idl.c:3541,17'
          Dst:             json_destroy
        - Src:             'lib/ovsdb-idl.c:3550,18'
          Dst:             json_object_create
        - Src:             'lib/ovsdb-idl.c:3551,13'
          Dst:             json_object_put_string
        - Src:             'lib/ovsdb-idl.c:3552,13'
          Dst:             json_object_put_string
        - Src:             'lib/ovsdb-idl.c:3553,42'
          Dst:             where_uuid_equals
        - Src:             'lib/ovsdb-idl.c:3553,13'
          Dst:             json_object_put
        - Src:             'lib/ovsdb-idl.c:3554,25'
          Dst:             json_array_create_empty
        - Src:             'lib/ovsdb-idl.c:3555,29'
          Dst:             ovsdb_idl_txn_extract_mutations
        - Src:             'lib/ovsdb-idl.c:3556,13'
          Dst:             json_object_put
        - Src:             'lib/ovsdb-idl.c:3559,22'
          Dst:             substitute_uuids
        - Src:             'lib/ovsdb-idl.c:3560,17'
          Dst:             json_array_add
        - Src:             'lib/ovsdb-idl.c:3563,17'
          Dst:             json_destroy
        - Src:             'lib/ovsdb-idl.c:3457,5'
          Dst:             hmap_next
        - Src:             'lib/ovsdb-idl.c:3571,26'
          Dst:             json_array_size
        - Src:             'lib/ovsdb-idl.c:3573,27'
          Dst:             json_object_create
        - Src:             'lib/ovsdb-idl.c:3574,9'
          Dst:             json_object_put_string
        - Src:             'lib/ovsdb-idl.c:3575,9'
          Dst:             json_object_put_string
        - Src:             'lib/ovsdb-idl.c:3577,42'
          Dst:             where_uuid_equals
        - Src:             'lib/ovsdb-idl.c:3577,25'
          Dst:             substitute_uuids
        - Src:             'lib/ovsdb-idl.c:3576,9'
          Dst:             json_object_put
        - Src:             'lib/ovsdb-idl.c:3582,33'
          Dst:             json_string_create
        - Src:             'lib/ovsdb-idl.c:3583,33'
          Dst:             json_string_create
        - Src:             'lib/ovsdb-idl.c:3584,33'
          Dst:             json_integer_create
        - Src:             'lib/ovsdb-idl.c:3581,29'
          Dst:             json_array_create_3
        - Src:             'lib/ovsdb-idl.c:3580,25'
          Dst:             json_array_create_1
        - Src:             'lib/ovsdb-idl.c:3579,9'
          Dst:             json_object_put
        - Src:             'lib/ovsdb-idl.c:3585,9'
          Dst:             json_array_add
        - Src:             'lib/ovsdb-idl.c:3587,14'
          Dst:             json_object_create
        - Src:             'lib/ovsdb-idl.c:3588,9'
          Dst:             json_object_put_string
        - Src:             'lib/ovsdb-idl.c:3589,9'
          Dst:             json_object_put_string
        - Src:             'lib/ovsdb-idl.c:3591,42'
          Dst:             where_uuid_equals
        - Src:             'lib/ovsdb-idl.c:3591,25'
          Dst:             substitute_uuids
        - Src:             'lib/ovsdb-idl.c:3590,9'
          Dst:             json_object_put
        - Src:             'lib/ovsdb-idl.c:3594,45'
          Dst:             json_string_create
        - Src:             'lib/ovsdb-idl.c:3594,25'
          Dst:             json_array_create_1
        - Src:             'lib/ovsdb-idl.c:3593,9'
          Dst:             json_object_put
        - Src:             'lib/ovsdb-idl.c:3596,9'
          Dst:             json_array_add
        - Src:             'lib/ovsdb-idl.c:3600,27'
          Dst:             json_object_create
        - Src:             'lib/ovsdb-idl.c:3601,9'
          Dst:             json_object_put_string
        - Src:             'lib/ovsdb-idl.c:3602,47'
          Dst:             ds_cstr
        - Src:             'lib/ovsdb-idl.c:3602,9'
          Dst:             json_object_put_string
        - Src:             'lib/ovsdb-idl.c:3603,9'
          Dst:             json_array_add
        - Src:             'lib/ovsdb-idl.c:3607,27'
          Dst:             json_object_create
        - Src:             'lib/ovsdb-idl.c:3608,9'
          Dst:             json_object_put_string
        - Src:             'lib/ovsdb-idl.c:3609,9'
          Dst:             json_array_add
        - Src:             'lib/ovsdb-idl.c:3614,9'
          Dst:             json_destroy
        - Src:             'lib/ovsdb-idl.c:3616,27'
          Dst:             ovsdb_cs_send_transaction
        - Src:             'lib/ovsdb-idl.c:3618,13'
          Dst:             json_hash
        - Src:             'lib/ovsdb-idl.c:3618,13'
          Dst:             hmap_insert_at
        - Src:             'lib/ovsdb-idl.c:3627,5'
          Dst:             ovsdb_idl_txn_disassemble
        - Src:             'lib/ovsdb-idl.c:3630,29'
          Dst:             txn_uncommitted_add
        - Src:             'lib/ovsdb-idl.c:3631,29'
          Dst:             txn_unchanged_add
        - Src:             'lib/ovsdb-idl.c:3632,29'
          Dst:             txn_incomplete_add
        - Src:             'lib/ovsdb-idl.c:3633,29'
          Dst:             txn_aborted_add
        - Src:             'lib/ovsdb-idl.c:3634,29'
          Dst:             txn_success_add
        - Src:             'lib/ovsdb-idl.c:3635,29'
          Dst:             txn_try_again_add
        - Src:             'lib/ovsdb-idl.c:3636,29'
          Dst:             txn_not_locked_add
        - Src:             'lib/ovsdb-idl.c:3637,29'
          Dst:             txn_error_add
    - functionName:    ovsdb_idl_txn_destroy
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2977
      functionLinenumberEnd: 2993
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          106
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - ds_destroy
        - hmap_destroy
        - hmap_first
        - hmap_next
        - hmap_remove
        - json_destroy
        - ovsdb_cs_forget_transaction
        - ovsdb_idl_txn_abort
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:2981,9'
          Dst:             ovsdb_cs_forget_transaction
        - Src:             'lib/ovsdb-idl.c:2982,9'
          Dst:             hmap_remove
        - Src:             'lib/ovsdb-idl.c:2984,5'
          Dst:             json_destroy
        - Src:             'lib/ovsdb-idl.c:2985,5'
          Dst:             ovsdb_idl_txn_abort
        - Src:             'lib/ovsdb-idl.c:2986,5'
          Dst:             ds_destroy
        - Src:             'lib/ovsdb-idl.c:2988,5'
          Dst:             hmap_first
        - Src:             'lib/ovsdb-idl.c:2988,5'
          Dst:             hmap_next
        - Src:             'lib/ovsdb-idl.c:2991,5'
          Dst:             hmap_destroy
    - functionName:    ovsdb_idl_txn_abort
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3682
      functionLinenumberEnd: 3687
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          43
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_idl_txn_disassemble
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:3683,5'
          Dst:             ovsdb_idl_txn_disassemble
    - functionName:    ovsdb_idl_txn_disassemble
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3076
      functionLinenumberEnd: 3125
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         25
      ICount:          185
      EdgeCount:       32
      CyclomaticComplexity: 9
      functionsReached:
        - hmap_destroy
        - hmap_first
        - hmap_init
        - hmap_next
        - hmap_node_nullify
        - hmap_remove
        - ovsdb_idl_add_to_indexes
        - ovsdb_idl_destroy_all_map_op_lists
        - ovsdb_idl_destroy_all_set_op_lists
        - ovsdb_idl_remove_from_indexes
        - ovsdb_idl_row_clear_arcs
        - ovsdb_idl_row_clear_new
        - ovsdb_idl_row_parse
        - ovsdb_idl_row_unparse
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:3085,5'
          Dst:             hmap_first
        - Src:             'lib/ovsdb-idl.c:3085,5'
          Dst:             hmap_next
        - Src:             'lib/ovsdb-idl.c:3092,13'
          Dst:             ovsdb_idl_remove_from_indexes
        - Src:             'lib/ovsdb-idl.c:3095,9'
          Dst:             ovsdb_idl_destroy_all_map_op_lists
        - Src:             'lib/ovsdb-idl.c:3096,9'
          Dst:             ovsdb_idl_destroy_all_set_op_lists
        - Src:             'lib/ovsdb-idl.c:3099,17'
          Dst:             ovsdb_idl_row_unparse
        - Src:             'lib/ovsdb-idl.c:3100,17'
          Dst:             ovsdb_idl_row_clear_arcs
        - Src:             'lib/ovsdb-idl.c:3101,17'
          Dst:             ovsdb_idl_row_parse
        - Src:             'lib/ovsdb-idl.c:3104,13'
          Dst:             ovsdb_idl_row_unparse
        - Src:             'lib/ovsdb-idl.c:3106,9'
          Dst:             ovsdb_idl_row_clear_new
        - Src:             'lib/ovsdb-idl.c:3114,9'
          Dst:             hmap_remove
        - Src:             'lib/ovsdb-idl.c:3115,9'
          Dst:             hmap_node_nullify
        - Src:             'lib/ovsdb-idl.c:3117,13'
          Dst:             ovsdb_idl_add_to_indexes
        - Src:             'lib/ovsdb-idl.c:3119,13'
          Dst:             hmap_remove
        - Src:             'lib/ovsdb-idl.c:3123,5'
          Dst:             hmap_destroy
        - Src:             'lib/ovsdb-idl.c:3124,5'
          Dst:             hmap_init
    - functionName:    ovsdb_idl_row_clear_new
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2358
      functionLinenumberEnd: 2376
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         16
      ICount:          117
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - bitmap_scan
        - ovsdb_datum_destroy
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:2365,17'
          Dst:             bitmap_scan
        - Src:             'lib/ovsdb-idl.c:2366,21'
          Dst:             ovsdb_datum_destroy
        - Src:             'lib/ovsdb-idl.c:2365,17'
          Dst:             bitmap_scan
    - functionName:    where_uuid_equals
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3006
      functionLinenumberEnd: 3014
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - json_array_create_1
        - json_array_create_2
        - json_array_create_3
        - json_string_create
        - json_string_create_uuid
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:3010,17'
          Dst:             json_string_create
        - Src:             'lib/ovsdb-idl.c:3011,17'
          Dst:             json_string_create
        - Src:             'lib/ovsdb-idl.c:3013,21'
          Dst:             json_string_create
        - Src:             'lib/ovsdb-idl.c:3014,21'
          Dst:             json_string_create_uuid
        - Src:             'lib/ovsdb-idl.c:3012,17'
          Dst:             json_array_create_2
        - Src:             'lib/ovsdb-idl.c:3009,13'
          Dst:             json_array_create_3
        - Src:             'lib/ovsdb-idl.c:3008,9'
          Dst:             json_array_create_1
    - functionName:    substitute_uuids
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3033
      functionLinenumberEnd: 3072
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         41
      ICount:          220
      EdgeCount:       55
      CyclomaticComplexity: 16
      functionsReached:
        - hmap_first
        - hmap_next
        - json_array_at
        - json_array_create_2
        - json_array_set
        - json_array_size
        - json_destroy
        - json_object
        - json_string
        - json_string_create
        - json_string_create_nocopy
        - ovsdb_data_row_name
        - ovsdb_idl_txn_get_row
        - strcmp
        - substitute_uuids
        - uuid_from_string
      functionUses:    6
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:3038,13'
          Dst:             json_array_size
        - Src:             'lib/ovsdb-idl.c:3039,16'
          Dst:             json_array_at
        - Src:             'lib/ovsdb-idl.c:3040,16'
          Dst:             json_array_at
        - Src:             'lib/ovsdb-idl.c:3041,36'
          Dst:             json_array_at
        - Src:             'lib/ovsdb-idl.c:3041,24'
          Dst:             json_string
        - Src:             'lib/ovsdb-idl.c:3041,17'
          Dst:             strcmp
        - Src:             'lib/ovsdb-idl.c:3042,52'
          Dst:             json_array_at
        - Src:             'lib/ovsdb-idl.c:3042,40'
          Dst:             json_string
        - Src:             'lib/ovsdb-idl.c:3042,16'
          Dst:             uuid_from_string
        - Src:             'lib/ovsdb-idl.c:3045,19'
          Dst:             ovsdb_idl_txn_get_row
        - Src:             'lib/ovsdb-idl.c:3050,21'
          Dst:             json_destroy
        - Src:             'lib/ovsdb-idl.c:3052,25'
          Dst:             json_string_create
        - Src:             'lib/ovsdb-idl.c:3053,51'
          Dst:             ovsdb_data_row_name
        - Src:             'lib/ovsdb-idl.c:3053,25'
          Dst:             json_string_create_nocopy
        - Src:             'lib/ovsdb-idl.c:3051,28'
          Dst:             json_array_create_2
        - Src:             'lib/ovsdb-idl.c:3058,25'
          Dst:             json_array_size
        - Src:             'lib/ovsdb-idl.c:3062,21'
          Dst:             json_array_at
        - Src:             'lib/ovsdb-idl.c:3061,17'
          Dst:             substitute_uuids
        - Src:             'lib/ovsdb-idl.c:3059,13'
          Dst:             json_array_set
        - Src:             'lib/ovsdb-idl.c:3067,9'
          Dst:             json_object
        - Src:             'lib/ovsdb-idl.c:3067,9'
          Dst:             hmap_first
        - Src:             'lib/ovsdb-idl.c:3068,26'
          Dst:             substitute_uuids
        - Src:             'lib/ovsdb-idl.c:3067,9'
          Dst:             json_object
        - Src:             'lib/ovsdb-idl.c:3067,9'
          Dst:             hmap_next
    - functionName:    ovsdb_idl_txn_extract_mutations
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3130
      functionLinenumberEnd: 3321
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         97
      ICount:          735
      EdgeCount:       127
      CyclomaticComplexity: 32
      functionsReached:
        - bitmap_is_set
        - bitmap_scan
        - json_array_add
        - json_array_create_2
        - json_array_create_3
        - json_array_create_empty
        - json_destroy
        - json_string_create
        - map_op_datum
        - map_op_list_first
        - map_op_list_next
        - map_op_type
        - ovsdb_atom_equals
        - ovsdb_atom_to_json
        - ovsdb_datum_default
        - ovsdb_datum_find_key
        - set_op_datum
        - set_op_list_first
        - set_op_list_next
        - set_op_type
        - vlog
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:3136,9'
          Dst:             bitmap_scan
        - Src:             'lib/ovsdb-idl.c:3152,20'
          Dst:             bitmap_is_set
        - Src:             'lib/ovsdb-idl.c:3157,29'
          Dst:             ovsdb_datum_default
        - Src:             'lib/ovsdb-idl.c:3160,23'
          Dst:             json_array_create_empty
        - Src:             'lib/ovsdb-idl.c:3161,23'
          Dst:             json_array_create_empty
        - Src:             'lib/ovsdb-idl.c:3165,42'
          Dst:             map_op_list_first
        - Src:             'lib/ovsdb-idl.c:3168,21'
          Dst:             map_op_type
        - Src:             'lib/ovsdb-idl.c:3173,33'
          Dst:             map_op_datum
        - Src:             'lib/ovsdb-idl.c:3174,26'
          Dst:             ovsdb_datum_find_key
        - Src:             'lib/ovsdb-idl.c:3176,25'
          Dst:             vlog
        - Src:             'lib/ovsdb-idl.c:3180,25'
          Dst:             ovsdb_atom_equals
        - Src:             'lib/ovsdb-idl.c:3186,28'
          Dst:             map_op_type
        - Src:             'lib/ovsdb-idl.c:3189,48'
          Dst:             map_op_datum
        - Src:             'lib/ovsdb-idl.c:3188,26'
          Dst:             ovsdb_datum_find_key
        - Src:             'lib/ovsdb-idl.c:3192,25'
          Dst:             vlog
        - Src:             'lib/ovsdb-idl.c:3198,21'
          Dst:             map_op_type
        - Src:             'lib/ovsdb-idl.c:3200,45'
          Dst:             map_op_datum
        - Src:             'lib/ovsdb-idl.c:3200,25'
          Dst:             ovsdb_atom_to_json
        - Src:             'lib/ovsdb-idl.c:3202,45'
          Dst:             map_op_datum
        - Src:             'lib/ovsdb-idl.c:3202,25'
          Dst:             ovsdb_atom_to_json
        - Src:             'lib/ovsdb-idl.c:3199,27'
          Dst:             json_array_create_2
        - Src:             'lib/ovsdb-idl.c:3204,21'
          Dst:             json_array_add
        - Src:             'lib/ovsdb-idl.c:3207,47'
          Dst:             map_op_datum
        - Src:             'lib/ovsdb-idl.c:3207,27'
          Dst:             ovsdb_atom_to_json
        - Src:             'lib/ovsdb-idl.c:3209,21'
          Dst:             json_array_add
        - Src:             'lib/ovsdb-idl.c:3214,21'
          Dst:             map_op_type
        - Src:             'lib/ovsdb-idl.c:3216,45'
          Dst:             map_op_datum
        - Src:             'lib/ovsdb-idl.c:3216,25'
          Dst:             ovsdb_atom_to_json
        - Src:             'lib/ovsdb-idl.c:3218,45'
          Dst:             map_op_datum
        - Src:             'lib/ovsdb-idl.c:3218,25'
          Dst:             ovsdb_atom_to_json
        - Src:             'lib/ovsdb-idl.c:3215,27'
          Dst:             json_array_create_2
        - Src:             'lib/ovsdb-idl.c:3220,21'
          Dst:             json_array_add
        - Src:             'lib/ovsdb-idl.c:3166,27'
          Dst:             map_op_list_next
        - Src:             'lib/ovsdb-idl.c:3226,28'
          Dst:             json_string_create
        - Src:             'lib/ovsdb-idl.c:3227,27'
          Dst:             json_string_create
        - Src:             'lib/ovsdb-idl.c:3228,43'
          Dst:             json_string_create
        - Src:             'lib/ovsdb-idl.c:3228,23'
          Dst:             json_array_create_2
        - Src:             'lib/ovsdb-idl.c:3229,28'
          Dst:             json_array_create_3
        - Src:             'lib/ovsdb-idl.c:3230,17'
          Dst:             json_array_add
        - Src:             'lib/ovsdb-idl.c:3233,17'
          Dst:             json_destroy
        - Src:             'lib/ovsdb-idl.c:3236,28'
          Dst:             json_string_create
        - Src:             'lib/ovsdb-idl.c:3237,27'
          Dst:             json_string_create
        - Src:             'lib/ovsdb-idl.c:3238,43'
          Dst:             json_string_create
        - Src:             'lib/ovsdb-idl.c:3238,23'
          Dst:             json_array_create_2
        - Src:             'lib/ovsdb-idl.c:3239,28'
          Dst:             json_array_create_3
        - Src:             'lib/ovsdb-idl.c:3240,17'
          Dst:             json_array_add
        - Src:             'lib/ovsdb-idl.c:3243,17'
          Dst:             json_destroy
        - Src:             'lib/ovsdb-idl.c:3136,9'
          Dst:             bitmap_scan
        - Src:             'lib/ovsdb-idl.c:3248,9'
          Dst:             bitmap_scan
        - Src:             'lib/ovsdb-idl.c:3263,20'
          Dst:             bitmap_is_set
        - Src:             'lib/ovsdb-idl.c:3268,29'
          Dst:             ovsdb_datum_default
        - Src:             'lib/ovsdb-idl.c:3271,23'
          Dst:             json_array_create_empty
        - Src:             'lib/ovsdb-idl.c:3272,23'
          Dst:             json_array_create_empty
        - Src:             'lib/ovsdb-idl.c:3276,42'
          Dst:             set_op_list_first
        - Src:             'lib/ovsdb-idl.c:3278,21'
          Dst:             set_op_type
        - Src:             'lib/ovsdb-idl.c:3279,47'
          Dst:             set_op_datum
        - Src:             'lib/ovsdb-idl.c:3279,27'
          Dst:             ovsdb_atom_to_json
        - Src:             'lib/ovsdb-idl.c:3281,21'
          Dst:             json_array_add
        - Src:             'lib/ovsdb-idl.c:3286,48'
          Dst:             set_op_datum
        - Src:             'lib/ovsdb-idl.c:3285,26'
          Dst:             ovsdb_datum_find_key
        - Src:             'lib/ovsdb-idl.c:3289,25'
          Dst:             vlog
        - Src:             'lib/ovsdb-idl.c:3293,47'
          Dst:             set_op_datum
        - Src:             'lib/ovsdb-idl.c:3293,27'
          Dst:             ovsdb_atom_to_json
        - Src:             'lib/ovsdb-idl.c:3295,21'
          Dst:             json_array_add
        - Src:             'lib/ovsdb-idl.c:3277,27'
          Dst:             set_op_list_next
        - Src:             'lib/ovsdb-idl.c:3300,28'
          Dst:             json_string_create
        - Src:             'lib/ovsdb-idl.c:3301,27'
          Dst:             json_string_create
        - Src:             'lib/ovsdb-idl.c:3302,43'
          Dst:             json_string_create
        - Src:             'lib/ovsdb-idl.c:3302,23'
          Dst:             json_array_create_2
        - Src:             'lib/ovsdb-idl.c:3303,28'
          Dst:             json_array_create_3
        - Src:             'lib/ovsdb-idl.c:3304,17'
          Dst:             json_array_add
        - Src:             'lib/ovsdb-idl.c:3307,17'
          Dst:             json_destroy
        - Src:             'lib/ovsdb-idl.c:3310,28'
          Dst:             json_string_create
        - Src:             'lib/ovsdb-idl.c:3311,27'
          Dst:             json_string_create
        - Src:             'lib/ovsdb-idl.c:3312,43'
          Dst:             json_string_create
        - Src:             'lib/ovsdb-idl.c:3312,23'
          Dst:             json_array_create_2
        - Src:             'lib/ovsdb-idl.c:3313,28'
          Dst:             json_array_create_3
        - Src:             'lib/ovsdb-idl.c:3314,17'
          Dst:             json_array_add
        - Src:             'lib/ovsdb-idl.c:3317,17'
          Dst:             json_destroy
        - Src:             'lib/ovsdb-idl.c:3248,9'
          Dst:             bitmap_scan
    - functionName:    txn_uncommitted_add
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 54
      functionLinenumberEnd: 54
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_txn_uncommitted_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:54,1'
          Dst:             counter_txn_uncommitted_get
    - functionName:    txn_unchanged_add
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 55
      functionLinenumberEnd: 55
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_txn_unchanged_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:55,1'
          Dst:             counter_txn_unchanged_get
    - functionName:    txn_incomplete_add
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 56
      functionLinenumberEnd: 56
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_txn_incomplete_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:56,1'
          Dst:             counter_txn_incomplete_get
    - functionName:    txn_aborted_add
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 57
      functionLinenumberEnd: 57
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_txn_aborted_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:57,1'
          Dst:             counter_txn_aborted_get
    - functionName:    txn_success_add
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 58
      functionLinenumberEnd: 58
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_txn_success_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:58,1'
          Dst:             counter_txn_success_get
    - functionName:    txn_try_again_add
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 59
      functionLinenumberEnd: 59
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_txn_try_again_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:59,1'
          Dst:             counter_txn_try_again_get
    - functionName:    txn_not_locked_add
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 60
      functionLinenumberEnd: 60
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_txn_not_locked_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:60,1'
          Dst:             counter_txn_not_locked_get
    - functionName:    txn_error_add
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 61
      functionLinenumberEnd: 61
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - counter_txn_error_get
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:61,1'
          Dst:             counter_txn_error_get
    - functionName:    bitmap_is_set
      functionSourceFile: '/src/openvswitch/lib/bitmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 90
      functionLinenumberEnd: 91
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - bitmap_bit__
        - bitmap_unit__
      functionUses:    7
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/bitmap.h:91,14'
          Dst:             bitmap_unit__
        - Src:             'lib/bitmap.h:91,46'
          Dst:             bitmap_bit__
    - functionName:    ovsdb_idl_loop_run
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4576
      functionLinenumberEnd: 4591
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         17
      ICount:          101
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - ovsdb_idl_get_seqno
        - ovsdb_idl_run
        - ovsdb_idl_try_commit_loop_txn
        - ovsdb_idl_txn_add_comment
        - ovsdb_idl_txn_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:4577,5'
          Dst:             ovsdb_idl_run
        - Src:             'lib/ovsdb-idl.c:4581,9'
          Dst:             ovsdb_idl_try_commit_loop_txn
        - Src:             'lib/ovsdb-idl.c:4585,26'
          Dst:             ovsdb_idl_get_seqno
        - Src:             'lib/ovsdb-idl.c:4587,25'
          Dst:             ovsdb_idl_txn_create
        - Src:             'lib/ovsdb-idl.c:4589,9'
          Dst:             ovsdb_idl_txn_add_comment
    - functionName:    ovsdb_idl_run
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 476
      functionLinenumberEnd: 514
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         18
      ICount:          109
      EdgeCount:       20
      CyclomaticComplexity: 4
      functionsReached:
        - ovs_ignore
        - ovs_list_is_empty
        - ovs_list_pop_front
        - ovsdb_cs_event_destroy
        - ovsdb_cs_may_send_transaction
        - ovsdb_cs_run
        - ovsdb_idl_parse_update
        - ovsdb_idl_reparse_deleted
        - ovsdb_idl_reparse_refs_to_inserted
        - ovsdb_idl_row_destroy_postprocess
        - ovsdb_idl_txn_abort_all
        - ovsdb_idl_txn_process_reply
      functionUses:    3
      BranchProfiles:
        - Branch String:   'lib/ovsdb-idl.c:484,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:477,5'
          Dst:             ovs_ignore
        - Src:             'lib/ovsdb-idl.c:480,5'
          Dst:             ovsdb_cs_run
        - Src:             'lib/ovsdb-idl.c:483,5'
          Dst:             ovs_list_is_empty
        - Src:             'lib/ovsdb-idl.c:483,5'
          Dst:             ovs_list_pop_front
        - Src:             'lib/ovsdb-idl.c:486,13'
          Dst:             ovsdb_idl_txn_abort_all
        - Src:             'lib/ovsdb-idl.c:490,17'
          Dst:             ovsdb_cs_may_send_transaction
        - Src:             'lib/ovsdb-idl.c:502,13'
          Dst:             ovsdb_idl_parse_update
        - Src:             'lib/ovsdb-idl.c:506,13'
          Dst:             ovsdb_idl_txn_process_reply
        - Src:             'lib/ovsdb-idl.c:509,9'
          Dst:             ovsdb_cs_event_destroy
        - Src:             'lib/ovsdb-idl.c:511,5'
          Dst:             ovsdb_idl_reparse_refs_to_inserted
        - Src:             'lib/ovsdb-idl.c:512,5'
          Dst:             ovsdb_idl_reparse_deleted
        - Src:             'lib/ovsdb-idl.c:513,5'
          Dst:             ovsdb_idl_row_destroy_postprocess
    - functionName:    ovsdb_idl_txn_create
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2882
      functionLinenumberEnd: 2901
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          60
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ds_init
        - hmap_init
        - ovs_ignore
        - xmalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:2885,5'
          Dst:             ovs_ignore
        - Src:             'lib/ovsdb-idl.c:2886,22'
          Dst:             xmalloc
        - Src:             'lib/ovsdb-idl.c:2889,5'
          Dst:             hmap_init
        - Src:             'lib/ovsdb-idl.c:2894,5'
          Dst:             ds_init
        - Src:             'lib/ovsdb-idl.c:2899,5'
          Dst:             hmap_init
    - functionName:    ovsdb_idl_txn_add_comment
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2910
      functionLinenumberEnd: 2920
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_char
        - ds_put_format_valist
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:2914,9'
          Dst:             ds_put_char
        - Src:             'lib/ovsdb-idl.c:2918,5'
          Dst:             ds_put_format_valist
    - functionName:    ds_put_char
      functionSourceFile: '/src/openvswitch/./include/openvswitch/dynamic-string.h'
      linkageType:     InternalLinkage
      functionLinenumber: 94
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ds_put_char__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/dynamic-string.h:99,9'
          Dst:             ds_put_char__
    - functionName:    ovs_list_pop_front
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 261
      functionLinenumberEnd: 265
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_list_remove
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/list.h:264,5'
          Dst:             ovs_list_remove
    - functionName:    ovsdb_idl_txn_abort_all
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4061
      functionLinenumberEnd: 4067
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          54
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - hmap_first
        - hmap_next
        - ovsdb_idl_txn_complete
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:4064,5'
          Dst:             hmap_first
        - Src:             'lib/ovsdb-idl.c:4065,9'
          Dst:             ovsdb_idl_txn_complete
        - Src:             'lib/ovsdb-idl.c:4064,5'
          Dst:             hmap_next
    - functionName:    ovsdb_idl_parse_update
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1681
      functionLinenumberEnd: 1704
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         15
      ICount:          85
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - log_parse_update_error
        - ovsdb_cs_db_update_destroy
        - ovsdb_cs_parse_db_update
        - ovsdb_idl_clear
        - ovsdb_idl_parse_update__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:1692,33'
          Dst:             ovsdb_cs_parse_db_update
        - Src:             'lib/ovsdb-idl.c:1696,13'
          Dst:             ovsdb_idl_clear
        - Src:             'lib/ovsdb-idl.c:1698,17'
          Dst:             ovsdb_idl_parse_update__
        - Src:             'lib/ovsdb-idl.c:1700,5'
          Dst:             ovsdb_cs_db_update_destroy
        - Src:             'lib/ovsdb-idl.c:1702,9'
          Dst:             log_parse_update_error
    - functionName:    ovsdb_idl_txn_process_reply
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4193
      functionLinenumberEnd: 4292
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         99
      ICount:          496
      EdgeCount:       129
      CyclomaticComplexity: 32
      functionsReached:
        - hmap_first
        - hmap_next
        - json_array_at
        - json_array_size
        - json_object
        - json_string
        - ovsdb_cs_flag_inconsistency
        - ovsdb_idl_txn_complete
        - ovsdb_idl_txn_find
        - ovsdb_idl_txn_process_inc_reply
        - ovsdb_idl_txn_process_insert_reply
        - ovsdb_idl_txn_set_error_json
        - shash_find_data
        - strcmp
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:4194,33'
          Dst:             ovsdb_idl_txn_find
        - Src:             'lib/ovsdb-idl.c:4203,24'
          Dst:             json_string
        - Src:             'lib/ovsdb-idl.c:4203,17'
          Dst:             strcmp
        - Src:             'lib/ovsdb-idl.c:4210,13'
          Dst:             ovsdb_idl_txn_set_error_json
        - Src:             'lib/ovsdb-idl.c:4213,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ovsdb-idl.c:4215,9'
          Dst:             ovsdb_idl_txn_set_error_json
        - Src:             'lib/ovsdb-idl.c:4223,13'
          Dst:             json_array_size
        - Src:             'lib/ovsdb-idl.c:4225,37'
          Dst:             json_array_at
        - Src:             'lib/ovsdb-idl.c:4234,41'
          Dst:             json_object
        - Src:             'lib/ovsdb-idl.c:4234,25'
          Dst:             shash_find_data
        - Src:             'lib/ovsdb-idl.c:4237,52'
          Dst:             json_string
        - Src:             'lib/ovsdb-idl.c:4239,30'
          Dst:             strcmp
        - Src:             'lib/ovsdb-idl.c:4241,37'
          Dst:             strcmp
        - Src:             'lib/ovsdb-idl.c:4243,29'
          Dst:             ovsdb_cs_flag_inconsistency
        - Src:             'lib/ovsdb-idl.c:4245,37'
          Dst:             strcmp
        - Src:             'lib/ovsdb-idl.c:4247,37'
          Dst:             strcmp
        - Src:             'lib/ovsdb-idl.c:4249,29'
          Dst:             ovsdb_idl_txn_set_error_json
        - Src:             'lib/ovsdb-idl.c:4250,36'
          Dst:             strcmp
        - Src:             'lib/ovsdb-idl.c:4252,29'
          Dst:             ovsdb_idl_txn_set_error_json
        - Src:             'lib/ovsdb-idl.c:4253,29'
          Dst:             vlog_rate_limit
        - Src:             'lib/ovsdb-idl.c:4258,25'
          Dst:             ovsdb_idl_txn_set_error_json
        - Src:             'lib/ovsdb-idl.c:4259,25'
          Dst:             vlog_rate_limit
        - Src:             'lib/ovsdb-idl.c:4265,17'
          Dst:             ovsdb_idl_txn_set_error_json
        - Src:             'lib/ovsdb-idl.c:4266,17'
          Dst:             vlog_rate_limit
        - Src:             'lib/ovsdb-idl.c:4274,36'
          Dst:             ovsdb_idl_txn_process_inc_reply
        - Src:             'lib/ovsdb-idl.c:4278,13'
          Dst:             hmap_first
        - Src:             'lib/ovsdb-idl.c:4279,22'
          Dst:             ovsdb_idl_txn_process_insert_reply
        - Src:             'lib/ovsdb-idl.c:4278,13'
          Dst:             hmap_next
        - Src:             'lib/ovsdb-idl.c:4291,5'
          Dst:             ovsdb_idl_txn_complete
    - functionName:    ovsdb_idl_reparse_refs_to_inserted
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1737
      functionLinenumberEnd: 1751
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          61
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - ovs_list_init
        - ovs_list_is_empty
        - ovs_list_pop_front
        - ovsdb_idl_row_clear_arcs
        - ovsdb_idl_row_is_orphan
        - ovsdb_idl_row_parse
        - ovsdb_idl_row_unparse
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:1740,5'
          Dst:             ovs_list_is_empty
        - Src:             'lib/ovsdb-idl.c:1740,5'
          Dst:             ovs_list_pop_front
        - Src:             'lib/ovsdb-idl.c:1741,9'
          Dst:             ovs_list_init
        - Src:             'lib/ovsdb-idl.c:1744,13'
          Dst:             ovsdb_idl_row_is_orphan
        - Src:             'lib/ovsdb-idl.c:1747,9'
          Dst:             ovsdb_idl_row_unparse
        - Src:             'lib/ovsdb-idl.c:1748,9'
          Dst:             ovsdb_idl_row_clear_arcs
        - Src:             'lib/ovsdb-idl.c:1749,9'
          Dst:             ovsdb_idl_row_parse
    - functionName:    ovsdb_idl_reparse_deleted
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1714
      functionLinenumberEnd: 1731
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         16
      ICount:          88
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - add_tracked_change_for_references
        - ovs_list_is_empty
        - ovsdb_idl_row_reparse_backrefs
        - ovsdb_idl_row_track_change
        - ovsdb_idl_row_untrack_change
        - ovsdb_idl_track_is_set
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:1718,9'
          Dst:             ovsdb_idl_row_untrack_change
        - Src:             'lib/ovsdb-idl.c:1719,9'
          Dst:             add_tracked_change_for_references
        - Src:             'lib/ovsdb-idl.c:1720,9'
          Dst:             ovsdb_idl_row_reparse_backrefs
        - Src:             'lib/ovsdb-idl.c:1726,13'
          Dst:             ovs_list_is_empty
        - Src:             'lib/ovsdb-idl.c:1727,20'
          Dst:             ovsdb_idl_track_is_set
        - Src:             'lib/ovsdb-idl.c:1728,13'
          Dst:             ovsdb_idl_row_track_change
    - functionName:    ovsdb_idl_row_destroy_postprocess
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2564
      functionLinenumberEnd: 2580
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         20
      ICount:          117
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - ovs_list_is_empty
        - ovs_list_remove
        - ovsdb_idl_row_unparse
        - ovsdb_idl_track_is_set
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:2568,14'
          Dst:             ovs_list_is_empty
        - Src:             'lib/ovsdb-idl.c:2572,22'
          Dst:             ovsdb_idl_track_is_set
        - Src:             'lib/ovsdb-idl.c:2573,21'
          Dst:             ovs_list_remove
        - Src:             'lib/ovsdb-idl.c:2574,21'
          Dst:             ovsdb_idl_row_unparse
    - functionName:    ovsdb_idl_clear
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 417
      functionLinenumberEnd: 469
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         33
      ICount:          228
      EdgeCount:       42
      CyclomaticComplexity: 11
      functionsReached:
        - hmap_first
        - hmap_is_empty
        - hmap_next
        - ovs_ignore
        - ovs_list_is_empty
        - ovs_list_remove
        - ovsdb_idl_remove_from_indexes
        - ovsdb_idl_reparse_deleted
        - ovsdb_idl_reparse_refs_to_inserted
        - ovsdb_idl_row_destroy
        - ovsdb_idl_row_destroy_postprocess
        - ovsdb_idl_row_is_orphan
        - ovsdb_idl_row_unparse
        - ovsdb_idl_track_clear__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:421,5'
          Dst:             ovsdb_idl_reparse_deleted
        - Src:             'lib/ovsdb-idl.c:426,5'
          Dst:             ovsdb_idl_reparse_refs_to_inserted
        - Src:             'lib/ovsdb-idl.c:435,13'
          Dst:             hmap_is_empty
        - Src:             'lib/ovsdb-idl.c:439,9'
          Dst:             hmap_first
        - Src:             'lib/ovsdb-idl.c:439,9'
          Dst:             hmap_next
        - Src:             'lib/ovsdb-idl.c:442,18'
          Dst:             ovsdb_idl_row_is_orphan
        - Src:             'lib/ovsdb-idl.c:443,17'
          Dst:             ovsdb_idl_remove_from_indexes
        - Src:             'lib/ovsdb-idl.c:444,17'
          Dst:             ovsdb_idl_row_unparse
        - Src:             'lib/ovsdb-idl.c:447,17'
          Dst:             ovs_list_remove
        - Src:             'lib/ovsdb-idl.c:448,17'
          Dst:             ovs_list_remove
        - Src:             'lib/ovsdb-idl.c:452,17'
          Dst:             ovs_list_remove
        - Src:             'lib/ovsdb-idl.c:453,17'
          Dst:             ovs_list_remove
        - Src:             'lib/ovsdb-idl.c:457,13'
          Dst:             ovsdb_idl_row_destroy
        - Src:             'lib/ovsdb-idl.c:462,5'
          Dst:             ovsdb_idl_row_destroy_postprocess
        - Src:             'lib/ovsdb-idl.c:465,5'
          Dst:             ovsdb_idl_track_clear__
        - Src:             'lib/ovsdb-idl.c:466,16'
          Dst:             ovs_list_is_empty
        - Src:             'lib/ovsdb-idl.c:466,5'
          Dst:             ovs_ignore
        - Src:             'lib/ovsdb-idl.c:467,16'
          Dst:             ovs_list_is_empty
        - Src:             'lib/ovsdb-idl.c:467,5'
          Dst:             ovs_ignore
    - functionName:    ovsdb_idl_track_clear__
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1533
      functionLinenumberEnd: 1580
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         36
      ICount:          213
      EdgeCount:       46
      CyclomaticComplexity: 12
      functionsReached:
        - ovs_list_is_empty
        - ovsdb_datum_destroy
        - ovsdb_idl_row_clear_changeseqno
        - ovsdb_idl_row_is_orphan
        - ovsdb_idl_row_unparse
        - ovsdb_idl_row_untrack_change
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:1539,14'
          Dst:             ovs_list_is_empty
        - Src:             'lib/ovsdb-idl.c:1547,17'
          Dst:             ovsdb_idl_row_untrack_change
        - Src:             'lib/ovsdb-idl.c:1548,17'
          Dst:             ovsdb_idl_row_clear_changeseqno
        - Src:             'lib/ovsdb-idl.c:1550,21'
          Dst:             ovsdb_idl_row_is_orphan
        - Src:             'lib/ovsdb-idl.c:1551,21'
          Dst:             ovsdb_idl_row_unparse
        - Src:             'lib/ovsdb-idl.c:1556,29'
          Dst:             ovsdb_datum_destroy
        - Src:             'lib/ovsdb-idl.c:1573,38'
          Dst:             ovs_list_is_empty
    - functionName:    ovsdb_idl_loop_destroy
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4565
      functionLinenumberEnd: 4572
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          42
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_idl_destroy
        - ovsdb_idl_txn_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:4568,13'
          Dst:             ovsdb_idl_txn_destroy
        - Src:             'lib/ovsdb-idl.c:4570,9'
          Dst:             ovsdb_idl_destroy
    - functionName:    ovsdb_idl_destroy
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 373
      functionLinenumberEnd: 399
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          97
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - hmap_destroy
        - ovs_ignore
        - ovsdb_cs_destroy
        - ovsdb_idl_clear
        - ovsdb_idl_destroy_indexes
        - ovsdb_idl_destroy_req_condition
        - ovsdb_idl_schema_columns_clear
        - ovsdb_idl_txn_abort_all
        - shash_destroy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:375,9'
          Dst:             ovs_ignore
        - Src:             'lib/ovsdb-idl.c:377,9'
          Dst:             ovsdb_idl_txn_abort_all
        - Src:             'lib/ovsdb-idl.c:378,9'
          Dst:             hmap_destroy
        - Src:             'lib/ovsdb-idl.c:380,9'
          Dst:             ovsdb_idl_clear
        - Src:             'lib/ovsdb-idl.c:381,9'
          Dst:             ovsdb_cs_destroy
        - Src:             'lib/ovsdb-idl.c:385,13'
          Dst:             ovsdb_idl_destroy_indexes
        - Src:             'lib/ovsdb-idl.c:386,13'
          Dst:             shash_destroy
        - Src:             'lib/ovsdb-idl.c:388,13'
          Dst:             ovsdb_idl_schema_columns_clear
        - Src:             'lib/ovsdb-idl.c:389,13'
          Dst:             shash_destroy
        - Src:             'lib/ovsdb-idl.c:390,13'
          Dst:             ovsdb_idl_destroy_req_condition
        - Src:             'lib/ovsdb-idl.c:392,13'
          Dst:             hmap_destroy
        - Src:             'lib/ovsdb-idl.c:395,9'
          Dst:             shash_destroy
    - functionName:    ovsdb_idl_destroy_indexes
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2141
      functionLinenumberEnd: 2148
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          68
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - skiplist_destroy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:2144,9'
          Dst:             skiplist_destroy
    - functionName:    ovsdb_idl_destroy_req_condition
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1194
      functionLinenumberEnd: 1198
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_condition_destroy
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:1195,5'
          Dst:             ovsdb_idl_condition_destroy
    - functionName:    ovsdb_idl_txn_delete_partial_map
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4550
      functionLinenumberEnd: 4561
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          48
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - is_valid_partial_update
        - ovsdb_datum_destroy
        - ovsdb_idl_txn_add_map_op
      functionUses:    50
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:4553,10'
          Dst:             is_valid_partial_update
        - Src:             'lib/ovsdb-idl.c:4556,9'
          Dst:             ovsdb_datum_destroy
        - Src:             'lib/ovsdb-idl.c:4560,5'
          Dst:             ovsdb_idl_txn_add_map_op
    - functionName:    is_valid_partial_update
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4438
      functionLinenumberEnd: 4453
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          107
      EdgeCount:       22
      CyclomaticComplexity: 6
      functionsReached:
        - vlog
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:4442,9'
          Dst:             vlog
        - Src:             'lib/ovsdb-idl.c:4448,9'
          Dst:             vlog
    - functionName:    ovsdb_idl_txn_add_map_op
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4364
      functionLinenumberEnd: 4394
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          145
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - bitmap_allocate
        - bitmap_set1
        - hmap_insert_at
        - hmap_node_is_null
        - map_op_create
        - map_op_list_add
        - map_op_list_create
        - ovs_ignore
        - uuid_hash
        - xzalloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:4365,5'
          Dst:             ovs_ignore
        - Src:             'lib/ovsdb-idl.c:4376,31'
          Dst:             bitmap_allocate
        - Src:             'lib/ovsdb-idl.c:4377,29'
          Dst:             xzalloc
        - Src:             'lib/ovsdb-idl.c:4381,41'
          Dst:             map_op_list_create
        - Src:             'lib/ovsdb-idl.c:4385,14'
          Dst:             map_op_create
        - Src:             'lib/ovsdb-idl.c:4386,5'
          Dst:             bitmap_set1
        - Src:             'lib/ovsdb-idl.c:4387,5'
          Dst:             map_op_list_add
        - Src:             'lib/ovsdb-idl.c:4390,9'
          Dst:             hmap_node_is_null
        - Src:             'lib/ovsdb-idl.c:4391,9'
          Dst:             uuid_hash
        - Src:             'lib/ovsdb-idl.c:4391,9'
          Dst:             hmap_insert_at
    - functionName:    hmap_node_is_null
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 48
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    6
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsdb_idl_txn_write_partial_map
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4515
      functionLinenumberEnd: 4537
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          72
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - is_valid_partial_update
        - ovsdb_datum_destroy
        - ovsdb_datum_find_key
        - ovsdb_idl_read
        - ovsdb_idl_txn_add_map_op
      functionUses:    50
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:4521,10'
          Dst:             is_valid_partial_update
        - Src:             'lib/ovsdb-idl.c:4522,9'
          Dst:             ovsdb_datum_destroy
        - Src:             'lib/ovsdb-idl.c:4529,17'
          Dst:             ovsdb_idl_read
        - Src:             'lib/ovsdb-idl.c:4530,9'
          Dst:             ovsdb_datum_find_key
        - Src:             'lib/ovsdb-idl.c:4536,5'
          Dst:             ovsdb_idl_txn_add_map_op
    - functionName:    ovsdb_idl_read
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2779
      functionLinenumberEnd: 2798
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          102
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - bitmap_is_set
        - ovs_ignore
        - ovsdb_datum_default
        - ovsdb_idl_row_is_synthetic
      functionUses:    196
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:2783,17'
          Dst:             ovsdb_idl_row_is_synthetic
        - Src:             'lib/ovsdb-idl.c:2783,5'
          Dst:             ovs_ignore
        - Src:             'lib/ovsdb-idl.c:2788,5'
          Dst:             ovs_ignore
        - Src:             'lib/ovsdb-idl.c:2789,5'
          Dst:             ovs_ignore
        - Src:             'lib/ovsdb-idl.c:2791,25'
          Dst:             bitmap_is_set
        - Src:             'lib/ovsdb-idl.c:2796,16'
          Dst:             ovsdb_datum_default
    - functionName:    ovsdb_idl_row_is_synthetic
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2839
      functionLinenumberEnd: 2840
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsdb_idl_txn_delete_partial_set
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4491
      functionLinenumberEnd: 4502
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          48
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - is_valid_partial_update
        - ovsdb_datum_destroy
        - ovsdb_idl_txn_add_set_op
      functionUses:    101
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:4494,10'
          Dst:             is_valid_partial_update
        - Src:             'lib/ovsdb-idl.c:4497,9'
          Dst:             ovsdb_datum_destroy
        - Src:             'lib/ovsdb-idl.c:4501,5'
          Dst:             ovsdb_idl_txn_add_set_op
    - functionName:    ovsdb_idl_txn_add_set_op
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4402
      functionLinenumberEnd: 4432
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          145
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - bitmap_allocate
        - bitmap_set1
        - hmap_insert_at
        - hmap_node_is_null
        - ovs_ignore
        - set_op_create
        - set_op_list_add
        - set_op_list_create
        - uuid_hash
        - xzalloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:4403,5'
          Dst:             ovs_ignore
        - Src:             'lib/ovsdb-idl.c:4414,31'
          Dst:             bitmap_allocate
        - Src:             'lib/ovsdb-idl.c:4415,29'
          Dst:             xzalloc
        - Src:             'lib/ovsdb-idl.c:4419,41'
          Dst:             set_op_list_create
        - Src:             'lib/ovsdb-idl.c:4423,14'
          Dst:             set_op_create
        - Src:             'lib/ovsdb-idl.c:4424,5'
          Dst:             bitmap_set1
        - Src:             'lib/ovsdb-idl.c:4425,5'
          Dst:             set_op_list_add
        - Src:             'lib/ovsdb-idl.c:4428,9'
          Dst:             hmap_node_is_null
        - Src:             'lib/ovsdb-idl.c:4429,9'
          Dst:             uuid_hash
        - Src:             'lib/ovsdb-idl.c:4429,9'
          Dst:             hmap_insert_at
    - functionName:    ovsdb_idl_txn_write_partial_set
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4466
      functionLinenumberEnd: 4479
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - is_valid_partial_update
        - ovsdb_datum_destroy
        - ovsdb_idl_txn_add_set_op
      functionUses:    101
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:4470,10'
          Dst:             is_valid_partial_update
        - Src:             'lib/ovsdb-idl.c:4471,9'
          Dst:             ovsdb_datum_destroy
        - Src:             'lib/ovsdb-idl.c:4478,5'
          Dst:             ovsdb_idl_txn_add_set_op
    - functionName:    ovsdb_idl_is_lock_contended
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4354
      functionLinenumberEnd: 4355
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_cs_is_lock_contended
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:4355,12'
          Dst:             ovsdb_cs_is_lock_contended
    - functionName:    ovsdb_idl_has_lock
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4346
      functionLinenumberEnd: 4347
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_cs_has_lock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:4347,12'
          Dst:             ovsdb_cs_has_lock
    - functionName:    ovsdb_idl_set_lock
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4334
      functionLinenumberEnd: 4336
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_cs_set_lock
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:4335,5'
          Dst:             ovsdb_cs_set_lock
    - functionName:    ovsdb_idl_get_initial_snapshot
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4315
      functionLinenumberEnd: 4322
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          29
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_has_ever_connected
        - ovsdb_idl_run
        - ovsdb_idl_wait
        - poll_block
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:4317,9'
          Dst:             ovsdb_idl_run
        - Src:             'lib/ovsdb-idl.c:4318,13'
          Dst:             ovsdb_idl_has_ever_connected
        - Src:             'lib/ovsdb-idl.c:4321,9'
          Dst:             ovsdb_idl_wait
        - Src:             'lib/ovsdb-idl.c:4322,9'
          Dst:             poll_block
    - functionName:    ovsdb_idl_has_ever_connected
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 611
      functionLinenumberEnd: 612
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_get_seqno
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:612,12'
          Dst:             ovsdb_idl_get_seqno
    - functionName:    ovsdb_idl_txn_get_idl
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4307
      functionLinenumberEnd: 4308
      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:    ovsdb_idl_txn_get
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4298
      functionLinenumberEnd: 4301
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          26
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:4300,5'
          Dst:             ovs_ignore
    - functionName:    ovsdb_idl_txn_insert_persist_uuid
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4054
      functionLinenumberEnd: 4056
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_txn_insert__
      functionUses:    19
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:4055,5'
          Dst:             ovs_ignore
        - Src:             'lib/ovsdb-idl.c:4056,12'
          Dst:             ovsdb_idl_txn_insert__
    - functionName:    ovsdb_idl_txn_insert__
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4002
      functionLinenumberEnd: 4020
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          113
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - hmap_insert_at
        - ovs_ignore
        - ovsdb_idl_add_to_indexes
        - ovsdb_idl_row_create__
        - ovsdb_idl_table_from_class
        - ovsdb_idl_txn_get_row
        - uuid_generate
        - uuid_hash
        - xmalloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:4003,33'
          Dst:             ovsdb_idl_row_create__
        - Src:             'lib/ovsdb-idl.c:4005,5'
          Dst:             ovs_ignore
        - Src:             'lib/ovsdb-idl.c:4006,5'
          Dst:             ovs_ignore
        - Src:             'lib/ovsdb-idl.c:4008,21'
          Dst:             ovsdb_idl_txn_get_row
        - Src:             'lib/ovsdb-idl.c:4008,9'
          Dst:             ovs_ignore
        - Src:             'lib/ovsdb-idl.c:4011,9'
          Dst:             uuid_generate
        - Src:             'lib/ovsdb-idl.c:4014,18'
          Dst:             ovsdb_idl_table_from_class
        - Src:             'lib/ovsdb-idl.c:4015,22'
          Dst:             xmalloc
        - Src:             'lib/ovsdb-idl.c:4016,5'
          Dst:             uuid_hash
        - Src:             'lib/ovsdb-idl.c:4016,5'
          Dst:             hmap_insert_at
        - Src:             'lib/ovsdb-idl.c:4017,5'
          Dst:             uuid_hash
        - Src:             'lib/ovsdb-idl.c:4017,5'
          Dst:             hmap_insert_at
        - Src:             'lib/ovsdb-idl.c:4018,5'
          Dst:             ovsdb_idl_add_to_indexes
    - functionName:    ovsdb_idl_txn_insert
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 4039
      functionLinenumberEnd: 4040
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_insert__
      functionUses:    19
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:4040,12'
          Dst:             ovsdb_idl_txn_insert__
    - functionName:    ovsdb_idl_txn_delete
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3967
      functionLinenumberEnd: 3995
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          121
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_insert_at
        - hmap_node_is_null
        - hmap_remove
        - is_index_row
        - ovs_ignore
        - ovsdb_idl_destroy_all_map_op_lists
        - ovsdb_idl_destroy_all_set_op_lists
        - ovsdb_idl_remove_from_indexes
        - ovsdb_idl_row_clear_new
        - ovsdb_idl_row_is_synthetic
        - ovsdb_idl_row_unparse
        - uuid_hash
      functionUses:    19
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:3970,9'
          Dst:             ovsdb_idl_row_is_synthetic
        - Src:             'lib/ovsdb-idl.c:3974,5'
          Dst:             ovs_ignore
        - Src:             'lib/ovsdb-idl.c:3975,17'
          Dst:             is_index_row
        - Src:             'lib/ovsdb-idl.c:3975,5'
          Dst:             ovs_ignore
        - Src:             'lib/ovsdb-idl.c:3976,5'
          Dst:             ovs_ignore
        - Src:             'lib/ovsdb-idl.c:3977,5'
          Dst:             ovsdb_idl_remove_from_indexes
        - Src:             'lib/ovsdb-idl.c:3979,9'
          Dst:             ovsdb_idl_row_unparse
        - Src:             'lib/ovsdb-idl.c:3980,9'
          Dst:             ovsdb_idl_destroy_all_map_op_lists
        - Src:             'lib/ovsdb-idl.c:3981,9'
          Dst:             ovsdb_idl_destroy_all_set_op_lists
        - Src:             'lib/ovsdb-idl.c:3982,9'
          Dst:             ovsdb_idl_row_clear_new
        - Src:             'lib/ovsdb-idl.c:3983,9'
          Dst:             ovs_ignore
        - Src:             'lib/ovsdb-idl.c:3984,9'
          Dst:             hmap_remove
        - Src:             'lib/ovsdb-idl.c:3985,9'
          Dst:             hmap_remove
        - Src:             'lib/ovsdb-idl.c:3989,9'
          Dst:             hmap_node_is_null
        - Src:             'lib/ovsdb-idl.c:3990,9'
          Dst:             uuid_hash
        - Src:             'lib/ovsdb-idl.c:3990,9'
          Dst:             hmap_insert_at
        - Src:             'lib/ovsdb-idl.c:3993,5'
          Dst:             ovsdb_idl_row_clear_new
    - functionName:    is_index_row
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2206
      functionLinenumberEnd: 2207
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - uuid_equals
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:2207,12'
          Dst:             uuid_equals
    - functionName:    ovsdb_idl_txn_verify
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3928
      functionLinenumberEnd: 3956
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         23
      ICount:          159
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - bitmap_allocate
        - bitmap_is_set
        - bitmap_set1
        - hmap_insert_at
        - hmap_node_is_null
        - ovs_ignore
        - ovsdb_idl_row_is_synthetic
        - uuid_hash
      functionUses:    190
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:3933,9'
          Dst:             ovsdb_idl_row_is_synthetic
        - Src:             'lib/ovsdb-idl.c:3940,5'
          Dst:             ovs_ignore
        - Src:             'lib/ovsdb-idl.c:3941,5'
          Dst:             ovs_ignore
        - Src:             'lib/ovsdb-idl.c:3944,29'
          Dst:             bitmap_is_set
        - Src:             'lib/ovsdb-idl.c:3948,9'
          Dst:             hmap_node_is_null
        - Src:             'lib/ovsdb-idl.c:3949,9'
          Dst:             uuid_hash
        - Src:             'lib/ovsdb-idl.c:3949,9'
          Dst:             hmap_insert_at
        - Src:             'lib/ovsdb-idl.c:3953,24'
          Dst:             bitmap_allocate
        - Src:             'lib/ovsdb-idl.c:3955,5'
          Dst:             bitmap_set1
    - functionName:    ovsdb_idl_txn_write_clone
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3894
      functionLinenumberEnd: 3897
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_txn_write__
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:3895,5'
          Dst:             ovsdb_idl_txn_write__
    - functionName:    ovsdb_idl_txn_write__
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3767
      functionLinenumberEnd: 3855
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         51
      ICount:          397
      EdgeCount:       67
      CyclomaticComplexity: 18
      functionsReached:
        - bitmap_allocate
        - bitmap_is_set
        - bitmap_set1
        - hmap_insert_at
        - hmap_node_is_null
        - is_index_row
        - ovs_ignore
        - ovsdb_datum_clone
        - ovsdb_datum_destroy
        - ovsdb_datum_equals
        - ovsdb_idl_add_to_indexes
        - ovsdb_idl_read
        - ovsdb_idl_remove_from_indexes
        - ovsdb_idl_row_is_synthetic
        - uuid_hash
        - vlog
        - xmalloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:3775,5'
          Dst:             ovs_ignore
        - Src:             'lib/ovsdb-idl.c:3776,9'
          Dst:             ovsdb_idl_row_is_synthetic
        - Src:             'lib/ovsdb-idl.c:3788,5'
          Dst:             ovs_ignore
        - Src:             'lib/ovsdb-idl.c:3789,5'
          Dst:             ovs_ignore
        - Src:             'lib/ovsdb-idl.c:3790,5'
          Dst:             ovs_ignore
        - Src:             'lib/ovsdb-idl.c:3791,5'
          Dst:             ovs_ignore
        - Src:             'lib/ovsdb-idl.c:3794,9'
          Dst:             vlog
        - Src:             'lib/ovsdb-idl.c:3814,50'
          Dst:             ovsdb_idl_read
        - Src:             'lib/ovsdb-idl.c:3814,31'
          Dst:             ovsdb_datum_equals
        - Src:             'lib/ovsdb-idl.c:3819,22'
          Dst:             is_index_row
        - Src:             'lib/ovsdb-idl.c:3821,9'
          Dst:             ovsdb_idl_remove_from_indexes
        - Src:             'lib/ovsdb-idl.c:3823,9'
          Dst:             hmap_node_is_null
        - Src:             'lib/ovsdb-idl.c:3824,9'
          Dst:             uuid_hash
        - Src:             'lib/ovsdb-idl.c:3824,9'
          Dst:             hmap_insert_at
        - Src:             'lib/ovsdb-idl.c:3828,26'
          Dst:             xmalloc
        - Src:             'lib/ovsdb-idl.c:3831,24'
          Dst:             bitmap_allocate
        - Src:             'lib/ovsdb-idl.c:3833,9'
          Dst:             bitmap_is_set
        - Src:             'lib/ovsdb-idl.c:3834,9'
          Dst:             ovsdb_datum_destroy
        - Src:             'lib/ovsdb-idl.c:3836,9'
          Dst:             bitmap_set1
        - Src:             'lib/ovsdb-idl.c:3841,9'
          Dst:             ovsdb_datum_clone
        - Src:             'lib/ovsdb-idl.c:3847,9'
          Dst:             ovsdb_idl_add_to_indexes
        - Src:             'lib/ovsdb-idl.c:3853,9'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsdb_idl_txn_write
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3879
      functionLinenumberEnd: 3882
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_datum_sort_unique
        - ovsdb_idl_txn_write__
      functionUses:    190
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:3880,5'
          Dst:             ovsdb_datum_sort_unique
        - Src:             'lib/ovsdb-idl.c:3881,5'
          Dst:             ovsdb_idl_txn_write__
    - functionName:    hmap_next_in_bucket
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 381
      functionLinenumberEnd: 382
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_first_in_bucket
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 367
      functionLinenumberEnd: 368
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          18
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsdb_idl_txn_get_insert_uuid
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3742
      functionLinenumberEnd: 3753
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          91
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - hmap_first_in_bucket
        - hmap_next_in_bucket
        - ovs_ignore
        - uuid_equals
        - uuid_hash
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:3745,5'
          Dst:             ovs_ignore
        - Src:             'lib/ovsdb-idl.c:3746,5'
          Dst:             uuid_hash
        - Src:             'lib/ovsdb-idl.c:3746,5'
          Dst:             hmap_first_in_bucket
        - Src:             'lib/ovsdb-idl.c:3748,13'
          Dst:             uuid_equals
        - Src:             'lib/ovsdb-idl.c:3746,5'
          Dst:             hmap_next_in_bucket
    - functionName:    ovsdb_idl_txn_get_error
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3711
      functionLinenumberEnd: 3719
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          48
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_idl_txn_status_to_string
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:3713,16'
          Dst:             ovsdb_idl_txn_status_to_string
    - functionName:    ovsdb_idl_txn_status_to_string
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2855
      functionLinenumberEnd: 2875
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          57
      EdgeCount:       20
      CyclomaticComplexity: 11
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ovsdb-idl.c:2856,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    ovsdb_idl_txn_assert_read_only
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3695
      functionLinenumberEnd: 3699
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          26
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsdb_idl_txn_get_increment_new_value
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3669
      functionLinenumberEnd: 3671
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:3670,5'
          Dst:             ovs_ignore
    - functionName:    ovsdb_idl_txn_commit_block
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 3651
      functionLinenumberEnd: 3661
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          40
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - fatal_signal_run
        - ovsdb_idl_run
        - ovsdb_idl_txn_commit
        - ovsdb_idl_txn_wait
        - ovsdb_idl_wait
        - poll_block
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:3654,5'
          Dst:             fatal_signal_run
        - Src:             'lib/ovsdb-idl.c:3655,22'
          Dst:             ovsdb_idl_txn_commit
        - Src:             'lib/ovsdb-idl.c:3656,9'
          Dst:             ovsdb_idl_run
        - Src:             'lib/ovsdb-idl.c:3657,9'
          Dst:             ovsdb_idl_wait
        - Src:             'lib/ovsdb-idl.c:3658,9'
          Dst:             ovsdb_idl_txn_wait
        - Src:             'lib/ovsdb-idl.c:3659,9'
          Dst:             poll_block
    - functionName:    ovsdb_idl_txn_wait
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2998
      functionLinenumberEnd: 3002
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          38
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - poll_immediate_wake_at
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:3000,9'
          Dst:             poll_immediate_wake_at
    - functionName:    ovsdb_idl_txn_increment
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2958
      functionLinenumberEnd: 2968
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          75
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:2959,5'
          Dst:             ovs_ignore
        - Src:             'lib/ovsdb-idl.c:2960,5'
          Dst:             ovs_ignore
        - Src:             'lib/ovsdb-idl.c:2961,5'
          Dst:             ovs_ignore
        - Src:             'lib/ovsdb-idl.c:2962,5'
          Dst:             ovs_ignore
    - functionName:    ovsdb_idl_txn_set_dry_run
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2931
      functionLinenumberEnd: 2933
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsdb_idl_is_mutable
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2830
      functionLinenumberEnd: 2831
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          38
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsdb_idl_get
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2812
      functionLinenumberEnd: 2816
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          40
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_read
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:2813,5'
          Dst:             ovs_ignore
        - Src:             'lib/ovsdb-idl.c:2814,5'
          Dst:             ovs_ignore
        - Src:             'lib/ovsdb-idl.c:2816,12'
          Dst:             ovsdb_idl_read
    - functionName:    ovsdb_idl_next_row
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2759
      functionLinenumberEnd: 2762
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next
        - next_real_row
      functionUses:    19
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:2762,33'
          Dst:             hmap_next
        - Src:             'lib/ovsdb-idl.c:2762,12'
          Dst:             next_real_row
    - functionName:    next_real_row
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2728
      functionLinenumberEnd: 2738
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          49
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - hmap_next
        - ovsdb_idl_row_exists
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:2733,13'
          Dst:             ovsdb_idl_row_exists
        - Src:             'lib/ovsdb-idl.c:2729,25'
          Dst:             hmap_next
    - functionName:    ovsdb_idl_row_exists
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1987
      functionLinenumberEnd: 1988
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsdb_idl_first_row
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2749
      functionLinenumberEnd: 2752
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_first
        - next_real_row
        - ovsdb_idl_table_from_class
      functionUses:    19
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:2750,37'
          Dst:             ovsdb_idl_table_from_class
        - Src:             'lib/ovsdb-idl.c:2752,33'
          Dst:             hmap_first
        - Src:             'lib/ovsdb-idl.c:2752,12'
          Dst:             next_real_row
    - functionName:    ovsdb_idl_get_row_for_uuid
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2719
      functionLinenumberEnd: 2723
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          45
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_idl_get_row
        - ovsdb_idl_row_exists
        - ovsdb_idl_table_from_class
      functionUses:    19
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:2722,29'
          Dst:             ovsdb_idl_table_from_class
        - Src:             'lib/ovsdb-idl.c:2722,11'
          Dst:             ovsdb_idl_get_row
        - Src:             'lib/ovsdb-idl.c:2723,20'
          Dst:             ovsdb_idl_row_exists
    - functionName:    ovs_list_push_front
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 196
      functionLinenumberEnd: 198
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_list_insert
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/list.h:197,5'
          Dst:             ovs_list_insert
    - functionName:    may_add_arc
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2635
      functionLinenumberEnd: 2654
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          52
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - ovs_list_is_empty
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:2649,9'
          Dst:             ovs_list_is_empty
    - functionName:    ovsdb_idl_get_row_arc
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2669
      functionLinenumberEnd: 2711
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          148
      EdgeCount:       34
      CyclomaticComplexity: 10
      functionsReached:
        - hmap_node_is_null
        - is_index_row
        - may_add_arc
        - ovs_list_push_front
        - ovsdb_idl_get_row
        - ovsdb_idl_row_create
        - ovsdb_idl_row_is_orphan
        - ovsdb_idl_table_from_class
        - xmalloc
      functionUses:    22
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:2675,17'
          Dst:             ovsdb_idl_table_from_class
        - Src:             'lib/ovsdb-idl.c:2676,11'
          Dst:             ovsdb_idl_get_row
        - Src:             'lib/ovsdb-idl.c:2677,21'
          Dst:             is_index_row
        - Src:             'lib/ovsdb-idl.c:2688,21'
          Dst:             hmap_node_is_null
        - Src:             'lib/ovsdb-idl.c:2695,19'
          Dst:             ovsdb_idl_row_create
        - Src:             'lib/ovsdb-idl.c:2699,13'
          Dst:             may_add_arc
        - Src:             'lib/ovsdb-idl.c:2702,19'
          Dst:             xmalloc
        - Src:             'lib/ovsdb-idl.c:2703,13'
          Dst:             ovs_list_push_front
        - Src:             'lib/ovsdb-idl.c:2704,13'
          Dst:             ovs_list_push_front
        - Src:             'lib/ovsdb-idl.c:2709,17'
          Dst:             ovsdb_idl_row_is_orphan
    - functionName:    ovsdb_idl_cursor_data
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2306
      functionLinenumberEnd: 2307
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - skiplist_get_data
      functionUses:    19
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:2307,12'
          Dst:             skiplist_get_data
    - functionName:    ovsdb_idl_index_compare
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2323
      functionLinenumberEnd: 2333
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          74
      EdgeCount:       21
      CyclomaticComplexity: 7
      functionsReached:
        - ovsdb_idl_index_generic_comparer
      functionUses:    20
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:2325,16'
          Dst:             ovsdb_idl_index_generic_comparer
    - functionName:    ovsdb_idl_index_generic_comparer
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2036
      functionLinenumberEnd: 2085
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         23
      ICount:          187
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - ovsdb_datum_compare_3way
        - ovsdb_idl_read
        - uuid_compare_3way
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:2057,23'
          Dst:             ovsdb_idl_read
        - Src:             'lib/ovsdb-idl.c:2058,23'
          Dst:             ovsdb_idl_read
        - Src:             'lib/ovsdb-idl.c:2059,19'
          Dst:             ovsdb_datum_compare_3way
        - Src:             'lib/ovsdb-idl.c:2079,21'
          Dst:             uuid_compare_3way
    - functionName:    ovsdb_idl_cursor_next_eq
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2295
      functionLinenumberEnd: 2302
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_index_compare
        - skiplist_get_data
        - skiplist_next
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:2296,34'
          Dst:             skiplist_get_data
        - Src:             'lib/ovsdb-idl.c:2297,43'
          Dst:             skiplist_next
        - Src:             'lib/ovsdb-idl.c:2298,39'
          Dst:             skiplist_get_data
        - Src:             'lib/ovsdb-idl.c:2299,26'
          Dst:             ovsdb_idl_index_compare
    - functionName:    ovsdb_idl_cursor_next
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2289
      functionLinenumberEnd: 2291
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - skiplist_next
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:2290,24'
          Dst:             skiplist_next
    - functionName:    ovsdb_idl_cursor_first_ge
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2279
      functionLinenumberEnd: 2284
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - skiplist_first
        - skiplist_forward_to
      functionUses:    19
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:2281,37'
          Dst:             skiplist_forward_to
        - Src:             'lib/ovsdb-idl.c:2283,37'
          Dst:             skiplist_first
    - functionName:    ovsdb_idl_cursor_first_eq
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2271
      functionLinenumberEnd: 2273
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - skiplist_find
      functionUses:    19
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:2272,34'
          Dst:             skiplist_find
    - functionName:    ovsdb_idl_cursor_first
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2263
      functionLinenumberEnd: 2265
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - skiplist_first
      functionUses:    19
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:2264,34'
          Dst:             skiplist_first
    - functionName:    ovsdb_idl_index_find
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2257
      functionLinenumberEnd: 2258
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - skiplist_find
        - skiplist_get_data
      functionUses:    19
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:2258,30'
          Dst:             skiplist_find
        - Src:             'lib/ovsdb-idl.c:2258,12'
          Dst:             skiplist_get_data
    - functionName:    ovsdb_idl_index_destroy_row
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2235
      functionLinenumberEnd: 2252
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          101
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - bitmap_scan
        - is_index_row
        - ovs_ignore
        - ovs_list_is_empty
        - ovsdb_datum_destroy
      functionUses:    19
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:2241,16'
          Dst:             is_index_row
        - Src:             'lib/ovsdb-idl.c:2241,5'
          Dst:             ovs_ignore
        - Src:             'lib/ovsdb-idl.c:2242,16'
          Dst:             ovs_list_is_empty
        - Src:             'lib/ovsdb-idl.c:2242,5'
          Dst:             ovs_ignore
        - Src:             'lib/ovsdb-idl.c:2243,16'
          Dst:             ovs_list_is_empty
        - Src:             'lib/ovsdb-idl.c:2243,5'
          Dst:             ovs_ignore
        - Src:             'lib/ovsdb-idl.c:2244,5'
          Dst:             bitmap_scan
        - Src:             'lib/ovsdb-idl.c:2247,9'
          Dst:             ovsdb_datum_destroy
        - Src:             'lib/ovsdb-idl.c:2244,5'
          Dst:             bitmap_scan
    - functionName:    ovsdb_idl_index_init_row
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2215
      functionLinenumberEnd: 2226
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          64
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - bitmap_allocate
        - ovs_list_init
        - xmalloc
        - xzalloc
      functionUses:    19
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:2217,33'
          Dst:             xzalloc
        - Src:             'lib/ovsdb-idl.c:2220,22'
          Dst:             xmalloc
        - Src:             'lib/ovsdb-idl.c:2221,20'
          Dst:             bitmap_allocate
        - Src:             'lib/ovsdb-idl.c:2224,5'
          Dst:             ovs_list_init
        - Src:             'lib/ovsdb-idl.c:2225,5'
          Dst:             ovs_list_init
    - functionName:    ovsdb_idl_index_write
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2181
      functionLinenumberEnd: 2194
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          93
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - bitmap_is_set
        - bitmap_set1
      functionUses:    190
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:2185,9'
          Dst:             bitmap_is_set
        - Src:             'lib/ovsdb-idl.c:2189,9'
          Dst:             bitmap_set1
    - functionName:    ovsdb_idl_index_create2
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2131
      functionLinenumberEnd: 2136
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          40
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_index_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:2136,12'
          Dst:             ovsdb_idl_index_create
    - functionName:    ovsdb_idl_index_create
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2095
      functionLinenumberEnd: 2114
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         7
      ICount:          102
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
        - ovs_list_push_back
        - ovsdb_idl_get_mode
        - ovsdb_idl_index_generic_comparer
        - ovsdb_idl_table_from_column
        - skiplist_create
        - xmemdup
        - xzalloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:2096,5'
          Dst:             ovs_ignore
        - Src:             'lib/ovsdb-idl.c:2098,37'
          Dst:             xzalloc
        - Src:             'lib/ovsdb-idl.c:2100,20'
          Dst:             ovsdb_idl_table_from_column
        - Src:             'lib/ovsdb-idl.c:2103,20'
          Dst:             ovsdb_idl_table_from_column
        - Src:             'lib/ovsdb-idl.c:2103,9'
          Dst:             ovs_ignore
        - Src:             'lib/ovsdb-idl.c:2105,21'
          Dst:             ovsdb_idl_get_mode
        - Src:             'lib/ovsdb-idl.c:2105,9'
          Dst:             ovs_ignore
        - Src:             'lib/ovsdb-idl.c:2108,22'
          Dst:             xmemdup
        - Src:             'lib/ovsdb-idl.c:2110,23'
          Dst:             skiplist_create
        - Src:             'lib/ovsdb-idl.c:2110,23'
          Dst:             ovsdb_idl_index_generic_comparer
        - Src:             'lib/ovsdb-idl.c:2112,5'
          Dst:             ovs_list_push_back
    - functionName:    ovsdb_idl_get_mode
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 932
      functionLinenumberEnd: 937
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          41
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_ignore
        - ovsdb_idl_table_from_column
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:933,5'
          Dst:             ovs_ignore
        - Src:             'lib/ovsdb-idl.c:935,43'
          Dst:             ovsdb_idl_table_from_column
    - functionName:    ovsdb_idl_index_create1
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2120
      functionLinenumberEnd: 2124
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_index_create
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:2124,12'
          Dst:             ovsdb_idl_index_create
    - functionName:    ovsdb_idl_set_write_changed_only_all
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1621
      functionLinenumberEnd: 1630
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          78
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_idl_set_write_changed_only
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:1627,13'
          Dst:             ovsdb_idl_set_write_changed_only
    - functionName:    ovsdb_idl_set_write_changed_only
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1608
      functionLinenumberEnd: 1614
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          45
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_get_mode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:1610,10'
          Dst:             ovsdb_idl_get_mode
        - Src:             'lib/ovsdb-idl.c:1612,10'
          Dst:             ovsdb_idl_get_mode
    - functionName:    ovsdb_idl_track_clear
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1589
      functionLinenumberEnd: 1591
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_track_clear__
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:1590,5'
          Dst:             ovsdb_idl_track_clear__
    - functionName:    ovsdb_idl_track_is_updated
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1517
      functionLinenumberEnd: 1529
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          60
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - bitmap_is_set
      functionUses:    19
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:1524,25'
          Dst:             bitmap_is_set
    - functionName:    ovsdb_idl_track_get_next
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1497
      functionLinenumberEnd: 1506
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         16
      ICount:          81
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - ovsdb_idl_row_is_orphan
      functionUses:    19
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:1501,14'
          Dst:             ovsdb_idl_row_is_orphan
    - functionName:    ovsdb_idl_track_get_first
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1479
      functionLinenumberEnd: 1490
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          84
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - ovsdb_idl_row_is_orphan
        - ovsdb_idl_table_from_class
      functionUses:    19
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:1481,11'
          Dst:             ovsdb_idl_table_from_class
        - Src:             'lib/ovsdb-idl.c:1485,14'
          Dst:             ovsdb_idl_row_is_orphan
    - functionName:    ovsdb_idl_track_add_all
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1446
      functionLinenumberEnd: 1457
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          73
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_idl_track_add_column
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:1454,13'
          Dst:             ovsdb_idl_track_add_column
    - functionName:    ovsdb_idl_track_add_column
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1437
      functionLinenumberEnd: 1442
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_add_column
        - ovsdb_idl_get_mode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:1438,12'
          Dst:             ovsdb_idl_get_mode
        - Src:             'lib/ovsdb-idl.c:1439,9'
          Dst:             ovsdb_idl_add_column
        - Src:             'lib/ovsdb-idl.c:1441,6'
          Dst:             ovsdb_idl_get_mode
    - functionName:    ovsdb_idl_add_column
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 982
      functionLinenumberEnd: 986
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - add_ref_table
        - ovsdb_idl_set_mode
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:983,5'
          Dst:             ovsdb_idl_set_mode
        - Src:             'lib/ovsdb-idl.c:984,5'
          Dst:             add_ref_table
        - Src:             'lib/ovsdb-idl.c:985,5'
          Dst:             add_ref_table
    - functionName:    ovsdb_idl_set_mode
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 944
      functionLinenumberEnd: 952
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - char
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          59
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_get_mode
        - ovsdb_idl_table_from_column
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:945,43'
          Dst:             ovsdb_idl_table_from_column
        - Src:             'lib/ovsdb-idl.c:950,10'
          Dst:             ovsdb_idl_get_mode
    - functionName:    add_ref_table
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 956
      functionLinenumberEnd: 968
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         16
      ICount:          87
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached:
        - shash_find_data
        - vlog
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:960,17'
          Dst:             shash_find_data
        - Src:             'lib/ovsdb-idl.c:964,13'
          Dst:             vlog
    - functionName:    ovsdb_idl_row_get_seqno
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1420
      functionLinenumberEnd: 1421
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          14
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    19
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsdb_idl_table_get_seqno
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1399
      functionLinenumberEnd: 1410
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          69
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_idl_table_from_class
      functionUses:    19
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:1401,11'
          Dst:             ovsdb_idl_table_from_class
    - functionName:    ovsdb_idl_omit
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1389
      functionLinenumberEnd: 1391
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_get_mode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:1390,6'
          Dst:             ovsdb_idl_get_mode
    - functionName:    ovsdb_idl_omit_alert
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1377
      functionLinenumberEnd: 1379
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_get_mode
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:1378,6'
          Dst:             ovsdb_idl_get_mode
    - functionName:    ovsdb_idl_create_req_condition
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1217
      functionLinenumberEnd: 1225
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          47
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_condition_clone
        - ovsdb_idl_destroy_req_condition
        - shash_find_data
        - xzalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:1218,37'
          Dst:             shash_find_data
        - Src:             'lib/ovsdb-idl.c:1221,9'
          Dst:             ovsdb_idl_destroy_req_condition
        - Src:             'lib/ovsdb-idl.c:1222,27'
          Dst:             xzalloc
        - Src:             'lib/ovsdb-idl.c:1223,9'
          Dst:             ovsdb_idl_condition_clone
    - functionName:    ovsdb_idl_set_condition
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1364
      functionLinenumberEnd: 1366
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_create_req_condition
        - ovsdb_idl_set_condition__
      functionUses:    19
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:1365,5'
          Dst:             ovsdb_idl_create_req_condition
        - Src:             'lib/ovsdb-idl.c:1366,12'
          Dst:             ovsdb_idl_set_condition__
    - functionName:    ovsdb_idl_condition_find_clause
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1170
      functionLinenumberEnd: 1178
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          72
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_first_with_hash
        - hmap_next_with_hash
        - ovsdb_idl_clause_equals
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:1172,5'
          Dst:             hmap_first_with_hash
        - Src:             'lib/ovsdb-idl.c:1173,13'
          Dst:             ovsdb_idl_clause_equals
        - Src:             'lib/ovsdb-idl.c:1172,5'
          Dst:             hmap_next_with_hash
    - functionName:    ovsdb_idl_clause_hash
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1098
      functionLinenumberEnd: 1100
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          30
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_pointer
        - ovsdb_datum_hash
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:1099,21'
          Dst:             hash_pointer
        - Src:             'lib/ovsdb-idl.c:1100,12'
          Dst:             ovsdb_datum_hash
    - functionName:    ovsdb_idl_condition_add_clause_true
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1276
      functionLinenumberEnd: 1281
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_condition_clear
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:1278,9'
          Dst:             ovsdb_idl_condition_clear
    - functionName:    ovsdb_idl_condition_add_clause
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1252
      functionLinenumberEnd: 1272
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          85
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - ovsdb_datum_clone
        - ovsdb_datum_destroy
        - ovsdb_idl_clause_hash
        - ovsdb_idl_condition_add_clause__
        - ovsdb_idl_condition_add_clause_true
        - ovsdb_idl_condition_find_clause
      functionUses:    190
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:1256,9'
          Dst:             ovsdb_idl_condition_add_clause_true
        - Src:             'lib/ovsdb-idl.c:1264,9'
          Dst:             ovsdb_datum_clone
        - Src:             'lib/ovsdb-idl.c:1266,25'
          Dst:             ovsdb_idl_clause_hash
        - Src:             'lib/ovsdb-idl.c:1267,14'
          Dst:             ovsdb_idl_condition_find_clause
        - Src:             'lib/ovsdb-idl.c:1268,13'
          Dst:             ovsdb_idl_condition_add_clause__
        - Src:             'lib/ovsdb-idl.c:1270,9'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsdb_idl_condition_is_true
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1162
      functionLinenumberEnd: 1163
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsdb_idl_server_column_type
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1077
      functionLinenumberEnd: 1086
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          43
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_table_from_column
        - shash_find_data
      functionUses:    190
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:1079,9'
          Dst:             ovsdb_idl_table_from_column
        - Src:             'lib/ovsdb-idl.c:1085,12'
          Dst:             shash_find_data
    - functionName:    ovsdb_idl_server_has_table
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1030
      functionLinenumberEnd: 1034
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          36
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_idl_table_from_class
      functionUses:    19
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:1032,9'
          Dst:             ovsdb_idl_table_from_class
    - functionName:    ovsdb_idl_add_table
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1004
      functionLinenumberEnd: 1014
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          59
      EdgeCount:       10
      CyclomaticComplexity: 3
      functionsReached:
        - abort
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:1014,5'
          Dst:             abort
    - functionName:    ovsdb_idl_get_class
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 900
      functionLinenumberEnd: 901
      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:    remove_uuid_from_array
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 697
      functionLinenumberEnd: 705
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          50
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - find_uuid_in_array
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:698,16'
          Dst:             find_uuid_in_array
    - functionName:    add_row_references
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 713
      functionLinenumberEnd: 731
      functionDepth:   0
      returnType:      void
      argCount:        7
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          125
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - array_contains_uuid
        - uuid_equals
        - x2nrealloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:720,14'
          Dst:             uuid_equals
        - Src:             'lib/ovsdb-idl.c:721,17'
          Dst:             array_contains_uuid
        - Src:             'lib/ovsdb-idl.c:723,26'
          Dst:             x2nrealloc
    - functionName:    ovsdb_idl_check_consistency
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 741
      functionLinenumberEnd: 797
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         48
      ICount:          466
      EdgeCount:       60
      CyclomaticComplexity: 14
      functionsReached:
        - add_row_references
        - hmap_first
        - hmap_next
        - ovs_ignore
        - ovsdb_idl_read
        - remove_uuid_from_array
        - shash_count
        - vlog
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:757,9'
          Dst:             hmap_first
        - Src:             'lib/ovsdb-idl.c:760,36'
          Dst:             shash_count
        - Src:             'lib/ovsdb-idl.c:765,29'
          Dst:             ovsdb_idl_read
        - Src:             'lib/ovsdb-idl.c:766,21'
          Dst:             add_row_references
        - Src:             'lib/ovsdb-idl.c:769,21'
          Dst:             add_row_references
        - Src:             'lib/ovsdb-idl.c:776,22'
          Dst:             remove_uuid_from_array
        - Src:             'lib/ovsdb-idl.c:778,21'
          Dst:             vlog
        - Src:             'lib/ovsdb-idl.c:788,17'
          Dst:             vlog
        - Src:             'lib/ovsdb-idl.c:757,9'
          Dst:             hmap_next
        - Src:             'lib/ovsdb-idl.c:796,5'
          Dst:             ovs_ignore
    - functionName:    ovsdb_idl_set_probe_interval
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 671
      functionLinenumberEnd: 673
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_cs_set_probe_interval
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:672,5'
          Dst:             ovsdb_cs_set_probe_interval
    - functionName:    ovsdb_idl_get_last_error
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 662
      functionLinenumberEnd: 663
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_cs_get_last_error
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:663,12'
          Dst:             ovsdb_cs_get_last_error
    - functionName:    ovsdb_idl_is_connected
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 651
      functionLinenumberEnd: 652
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_cs_is_connected
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:652,12'
          Dst:             ovsdb_cs_is_connected
    - functionName:    ovsdb_idl_is_alive
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 645
      functionLinenumberEnd: 646
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_cs_is_alive
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:646,12'
          Dst:             ovsdb_cs_is_alive
    - functionName:    ovsdb_idl_verify_write_only
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 637
      functionLinenumberEnd: 639
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsdb_idl_force_reconnect
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 627
      functionLinenumberEnd: 629
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_cs_force_reconnect
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:628,5'
          Dst:             ovsdb_cs_force_reconnect
    - functionName:    ovsdb_idl_enable_reconnect
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 619
      functionLinenumberEnd: 621
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_cs_enable_reconnect
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:620,5'
          Dst:             ovsdb_cs_enable_reconnect
    - functionName:    ovsdb_idl_get_memory_usage
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 527
      functionLinenumberEnd: 556
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          130
      EdgeCount:       17
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_count
        - simap_increase
        - xasprintf
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:537,31'
          Dst:             hmap_count
        - Src:             'lib/ovsdb-idl.c:546,34'
          Dst:             hmap_count
        - Src:             'lib/ovsdb-idl.c:551,27'
          Dst:             xasprintf
        - Src:             'lib/ovsdb-idl.c:553,9'
          Dst:             simap_increase
    - functionName:    ovsdb_idl_set_leader_only
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 411
      functionLinenumberEnd: 413
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_cs_set_leader_only
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:412,5'
          Dst:             ovsdb_cs_set_leader_only
    - functionName:    ovsdb_idl_reset_min_index
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 355
      functionLinenumberEnd: 357
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          17
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_cs_reset_min_index
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:356,5'
          Dst:             ovsdb_cs_reset_min_index
    - functionName:    ovsdb_idl_set_db_change_aware
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 345
      functionLinenumberEnd: 347
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_cs_set_db_change_aware
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:346,5'
          Dst:             ovsdb_cs_set_db_change_aware
    - functionName:    ovsdb_idl_set_shuffle_remotes
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 337
      functionLinenumberEnd: 339
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_cs_set_shuffle_remotes
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:338,5'
          Dst:             ovsdb_cs_set_shuffle_remotes
    - functionName:    ovsdb_idl_set_remote
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 328
      functionLinenumberEnd: 330
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_cs_set_remote
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:329,5'
          Dst:             ovsdb_cs_set_remote
    - functionName:    ovsdb_idl_create_unconnected
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 271
      functionLinenumberEnd: 319
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         11
      ICount:          236
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - hmap_init
        - ovs_list_init
        - ovsdb_cs_create
        - shash_add_assert
        - shash_init
        - xmalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:272,29'
          Dst:             xmalloc
        - Src:             'lib/ovsdb-idl.c:274,15'
          Dst:             ovsdb_cs_create
        - Src:             'lib/ovsdb-idl.c:277,19'
          Dst:             xmalloc
        - Src:             'lib/ovsdb-idl.c:296,9'
          Dst:             shash_add_assert
        - Src:             'lib/ovsdb-idl.c:298,24'
          Dst:             xmalloc
        - Src:             'lib/ovsdb-idl.c:301,9'
          Dst:             shash_init
        - Src:             'lib/ovsdb-idl.c:302,9'
          Dst:             ovs_list_init
        - Src:             'lib/ovsdb-idl.c:306,13'
          Dst:             shash_add_assert
        - Src:             'lib/ovsdb-idl.c:308,9'
          Dst:             hmap_init
        - Src:             'lib/ovsdb-idl.c:309,9'
          Dst:             ovs_list_init
        - Src:             'lib/ovsdb-idl.c:316,9'
          Dst:             shash_init
    - functionName:    ovsdb_idl_create
      functionSourceFile: '/src/openvswitch/lib/ovsdb-idl.c'
      linkageType:     InternalLinkage
      functionLinenumber: 245
      functionLinenumberEnd: 249
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          33
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_idl_create_unconnected
        - ovsdb_idl_set_remote
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-idl.c:246,29'
          Dst:             ovsdb_idl_create_unconnected
        - Src:             'lib/ovsdb-idl.c:248,5'
          Dst:             ovsdb_idl_set_remote
    - functionName:    hmap_insert_fast
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 289
      functionLinenumberEnd: 295
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          38
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_next_with_hash__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 348
      functionLinenumberEnd: 352
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          40
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_next_with_hash
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 395
      functionLinenumberEnd: 396
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next_with_hash__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:396,12'
          Dst:             hmap_next_with_hash__
    - functionName:    ovsdb_atom_equals
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.h'
      linkageType:     InternalLinkage
      functionLinenumber: 100
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_compare_3way
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.h:101,13'
          Dst:             ovsdb_atom_compare_3way
    - functionName:    hmap_first_with_hash
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 360
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next_with_hash__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:360,12'
          Dst:             hmap_next_with_hash__
    - functionName:    hmap_next__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 401
      functionLinenumberEnd: 410
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          51
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    map_op_list_next
      functionSourceFile: '/src/openvswitch/lib/ovsdb-map-op.c'
      linkageType:     InternalLinkage
      functionLinenumber: 165
      functionLinenumberEnd: 172
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_next
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-map-op.c:166,30'
          Dst:             hmap_next
    - functionName:    hmap_next
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 429
      functionLinenumberEnd: 432
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_next__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:432,15'
          Dst:             hmap_next__
    - functionName:    map_op_list_first
      functionSourceFile: '/src/openvswitch/lib/ovsdb-map-op.c'
      linkageType:     InternalLinkage
      functionLinenumber: 154
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_first
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-map-op.c:155,30'
          Dst:             hmap_first
    - functionName:    hmap_first
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 416
      functionLinenumberEnd: 417
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:417,12'
          Dst:             hmap_next__
    - functionName:    hmap_remove
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 317
      functionLinenumberEnd: 324
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          48
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_insert_at
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 306
      functionLinenumberEnd: 311
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_expand_at
        - hmap_insert_fast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:307,5'
          Dst:             hmap_insert_fast
        - Src:             './include/openvswitch/hmap.h:309,9'
          Dst:             hmap_expand_at
    - functionName:    map_op_list_find
      functionSourceFile: '/src/openvswitch/lib/ovsdb-map-op.c'
      linkageType:     InternalLinkage
      functionLinenumber: 105
      functionLinenumberEnd: 115
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          85
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_first_with_hash
        - hmap_next_with_hash
        - ovsdb_atom_equals
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-map-op.c:108,5'
          Dst:             hmap_first_with_hash
        - Src:             'lib/ovsdb-map-op.c:109,13'
          Dst:             ovsdb_atom_equals
        - Src:             'lib/ovsdb-map-op.c:108,5'
          Dst:             hmap_next_with_hash
    - functionName:    map_op_list_add
      functionSourceFile: '/src/openvswitch/lib/ovsdb-map-op.c'
      linkageType:     InternalLinkage
      functionLinenumber: 125
      functionLinenumberEnd: 150
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          105
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_insert_at
        - hmap_remove
        - map_op_destroy
        - map_op_destroy_datum
        - map_op_list_find
        - ovsdb_atom_hash
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-map-op.c:130,12'
          Dst:             ovsdb_atom_hash
        - Src:             'lib/ovsdb-map-op.c:131,19'
          Dst:             map_op_list_find
        - Src:             'lib/ovsdb-map-op.c:133,9'
          Dst:             hmap_insert_at
        - Src:             'lib/ovsdb-map-op.c:138,13'
          Dst:             hmap_remove
        - Src:             'lib/ovsdb-map-op.c:139,13'
          Dst:             map_op_destroy
        - Src:             'lib/ovsdb-map-op.c:140,13'
          Dst:             map_op_destroy
        - Src:             'lib/ovsdb-map-op.c:144,13'
          Dst:             map_op_destroy_datum
    - functionName:    map_op_destroy
      functionSourceFile: '/src/openvswitch/lib/ovsdb-map-op.c'
      linkageType:     InternalLinkage
      functionLinenumber: 66
      functionLinenumberEnd: 69
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - map_op_destroy_datum
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-map-op.c:67,5'
          Dst:             map_op_destroy_datum
    - functionName:    map_op_destroy_datum
      functionSourceFile: '/src/openvswitch/lib/ovsdb-map-op.c'
      linkageType:     InternalLinkage
      functionLinenumber: 52
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-map-op.c:56,9'
          Dst:             ovsdb_datum_destroy
        - Src:             'lib/ovsdb-map-op.c:58,9'
          Dst:             ovsdb_datum_destroy
    - functionName:    map_op_list_destroy
      functionSourceFile: '/src/openvswitch/lib/ovsdb-map-op.c'
      linkageType:     InternalLinkage
      functionLinenumber: 93
      functionLinenumberEnd: 100
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          66
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - hmap_destroy
        - hmap_first
        - hmap_next
        - map_op_destroy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-map-op.c:95,5'
          Dst:             hmap_first
        - Src:             'lib/ovsdb-map-op.c:95,5'
          Dst:             hmap_next
        - Src:             'lib/ovsdb-map-op.c:96,9'
          Dst:             map_op_destroy
        - Src:             'lib/ovsdb-map-op.c:98,5'
          Dst:             hmap_destroy
    - functionName:    map_op_list_create
      functionSourceFile: '/src/openvswitch/lib/ovsdb-map-op.c'
      linkageType:     InternalLinkage
      functionLinenumber: 85
      functionLinenumberEnd: 88
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_init
        - xmalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-map-op.c:86,32'
          Dst:             xmalloc
        - Src:             'lib/ovsdb-map-op.c:87,5'
          Dst:             hmap_init
    - functionName:    map_op_type
      functionSourceFile: '/src/openvswitch/lib/ovsdb-map-op.c'
      linkageType:     InternalLinkage
      functionLinenumber: 79
      functionLinenumberEnd: 80
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    map_op_datum
      functionSourceFile: '/src/openvswitch/lib/ovsdb-map-op.c'
      linkageType:     InternalLinkage
      functionLinenumber: 73
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    7
      BranchProfiles:  []
      Callsites:       []
    - functionName:    map_op_create
      functionSourceFile: '/src/openvswitch/lib/ovsdb-map-op.c'
      linkageType:     InternalLinkage
      functionLinenumber: 41
      functionLinenumberEnd: 47
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - xmalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-map-op.c:42,29'
          Dst:             xmalloc
    - functionName:    hmap_insert_fast
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 289
      functionLinenumberEnd: 295
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          38
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_next_with_hash__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 348
      functionLinenumberEnd: 352
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          40
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_next_with_hash
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 395
      functionLinenumberEnd: 396
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next_with_hash__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:396,12'
          Dst:             hmap_next_with_hash__
    - functionName:    ovsdb_atom_equals
      functionSourceFile: '/src/openvswitch/lib/ovsdb-data.h'
      linkageType:     InternalLinkage
      functionLinenumber: 100
      functionLinenumberEnd: 101
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_atom_compare_3way
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-data.h:101,13'
          Dst:             ovsdb_atom_compare_3way
    - functionName:    hmap_first_with_hash
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 360
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next_with_hash__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:360,12'
          Dst:             hmap_next_with_hash__
    - functionName:    hmap_next__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 401
      functionLinenumberEnd: 410
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          51
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_op_list_next
      functionSourceFile: '/src/openvswitch/lib/ovsdb-set-op.c'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 171
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_next
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-set-op.c:165,30'
          Dst:             hmap_next
    - functionName:    hmap_next
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 429
      functionLinenumberEnd: 432
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_next__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:432,15'
          Dst:             hmap_next__
    - functionName:    set_op_list_first
      functionSourceFile: '/src/openvswitch/lib/ovsdb-set-op.c'
      linkageType:     InternalLinkage
      functionLinenumber: 153
      functionLinenumberEnd: 160
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          38
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_first
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-set-op.c:154,30'
          Dst:             hmap_first
    - functionName:    hmap_first
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 416
      functionLinenumberEnd: 417
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:417,12'
          Dst:             hmap_next__
    - functionName:    hmap_remove
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 317
      functionLinenumberEnd: 324
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          48
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_insert_at
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 306
      functionLinenumberEnd: 311
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_expand_at
        - hmap_insert_fast
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:307,5'
          Dst:             hmap_insert_fast
        - Src:             './include/openvswitch/hmap.h:309,9'
          Dst:             hmap_expand_at
    - functionName:    set_op_list_find
      functionSourceFile: '/src/openvswitch/lib/ovsdb-set-op.c'
      linkageType:     InternalLinkage
      functionLinenumber: 104
      functionLinenumberEnd: 114
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         13
      ICount:          85
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_first_with_hash
        - hmap_next_with_hash
        - ovsdb_atom_equals
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-set-op.c:107,5'
          Dst:             hmap_first_with_hash
        - Src:             'lib/ovsdb-set-op.c:108,13'
          Dst:             ovsdb_atom_equals
        - Src:             'lib/ovsdb-set-op.c:107,5'
          Dst:             hmap_next_with_hash
    - functionName:    set_op_list_add
      functionSourceFile: '/src/openvswitch/lib/ovsdb-set-op.c'
      linkageType:     InternalLinkage
      functionLinenumber: 124
      functionLinenumberEnd: 149
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          105
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_insert_at
        - hmap_remove
        - ovsdb_atom_hash
        - set_op_destroy
        - set_op_destroy_datum
        - set_op_list_find
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-set-op.c:129,12'
          Dst:             ovsdb_atom_hash
        - Src:             'lib/ovsdb-set-op.c:130,19'
          Dst:             set_op_list_find
        - Src:             'lib/ovsdb-set-op.c:132,9'
          Dst:             hmap_insert_at
        - Src:             'lib/ovsdb-set-op.c:137,13'
          Dst:             hmap_remove
        - Src:             'lib/ovsdb-set-op.c:138,13'
          Dst:             set_op_destroy
        - Src:             'lib/ovsdb-set-op.c:139,13'
          Dst:             set_op_destroy
        - Src:             'lib/ovsdb-set-op.c:143,13'
          Dst:             set_op_destroy_datum
    - functionName:    set_op_destroy
      functionSourceFile: '/src/openvswitch/lib/ovsdb-set-op.c'
      linkageType:     InternalLinkage
      functionLinenumber: 65
      functionLinenumberEnd: 68
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - set_op_destroy_datum
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-set-op.c:66,5'
          Dst:             set_op_destroy_datum
    - functionName:    set_op_destroy_datum
      functionSourceFile: '/src/openvswitch/lib/ovsdb-set-op.c'
      linkageType:     InternalLinkage
      functionLinenumber: 51
      functionLinenumberEnd: 61
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          51
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_datum_destroy
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-set-op.c:55,9'
          Dst:             ovsdb_datum_destroy
        - Src:             'lib/ovsdb-set-op.c:57,9'
          Dst:             ovsdb_datum_destroy
    - functionName:    set_op_list_destroy
      functionSourceFile: '/src/openvswitch/lib/ovsdb-set-op.c'
      linkageType:     InternalLinkage
      functionLinenumber: 92
      functionLinenumberEnd: 99
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          66
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - hmap_destroy
        - hmap_first
        - hmap_next
        - set_op_destroy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-set-op.c:94,5'
          Dst:             hmap_first
        - Src:             'lib/ovsdb-set-op.c:94,5'
          Dst:             hmap_next
        - Src:             'lib/ovsdb-set-op.c:95,9'
          Dst:             set_op_destroy
        - Src:             'lib/ovsdb-set-op.c:97,5'
          Dst:             hmap_destroy
    - functionName:    set_op_list_create
      functionSourceFile: '/src/openvswitch/lib/ovsdb-set-op.c'
      linkageType:     InternalLinkage
      functionLinenumber: 84
      functionLinenumberEnd: 87
      functionDepth:   0
      returnType:      'N/A'
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_init
        - xmalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-set-op.c:85,32'
          Dst:             xmalloc
        - Src:             'lib/ovsdb-set-op.c:86,5'
          Dst:             hmap_init
    - functionName:    set_op_type
      functionSourceFile: '/src/openvswitch/lib/ovsdb-set-op.c'
      linkageType:     InternalLinkage
      functionLinenumber: 78
      functionLinenumberEnd: 79
      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:    set_op_datum
      functionSourceFile: '/src/openvswitch/lib/ovsdb-set-op.c'
      linkageType:     InternalLinkage
      functionLinenumber: 72
      functionLinenumberEnd: 73
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    set_op_create
      functionSourceFile: '/src/openvswitch/lib/ovsdb-set-op.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40
      functionLinenumberEnd: 46
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - xmalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-set-op.c:41,29'
          Dst:             xmalloc
    - functionName:    ovsdb_function_to_string
      functionSourceFile: '/src/openvswitch/lib/ovsdb-condition.c'
      linkageType:     InternalLinkage
      functionLinenumber: 39
      functionLinenumberEnd: 47
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          67
      EdgeCount:       24
      CyclomaticComplexity: 13
      functionsReached: []
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ovsdb-condition.c:40,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    ovsdb_function_from_string
      functionSourceFile: '/src/openvswitch/lib/ovsdb-condition.c'
      linkageType:     InternalLinkage
      functionLinenumber: 24
      functionLinenumberEnd: 35
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         24
      ICount:          144
      EdgeCount:       34
      CyclomaticComplexity: 12
      functionsReached:
        - ovsdb_syntax_error
        - strcmp
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-condition.c:30,5'
          Dst:             strcmp
        - Src:             'lib/ovsdb-condition.c:30,5'
          Dst:             strcmp
        - Src:             'lib/ovsdb-condition.c:30,5'
          Dst:             strcmp
        - Src:             'lib/ovsdb-condition.c:30,5'
          Dst:             strcmp
        - Src:             'lib/ovsdb-condition.c:30,5'
          Dst:             strcmp
        - Src:             'lib/ovsdb-condition.c:30,5'
          Dst:             strcmp
        - Src:             'lib/ovsdb-condition.c:30,5'
          Dst:             strcmp
        - Src:             'lib/ovsdb-condition.c:30,5'
          Dst:             strcmp
        - Src:             'lib/ovsdb-condition.c:30,5'
          Dst:             strcmp
        - Src:             'lib/ovsdb-condition.c:30,5'
          Dst:             strcmp
        - Src:             'lib/ovsdb-condition.c:33,12'
          Dst:             ovsdb_syntax_error
    - functionName:    hmap_next__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 401
      functionLinenumberEnd: 410
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          51
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_next
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 429
      functionLinenumberEnd: 432
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_next__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:432,15'
          Dst:             hmap_next__
    - functionName:    hmap_first
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 416
      functionLinenumberEnd: 417
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:417,12'
          Dst:             hmap_next__
    - functionName:    ovsdb_parser_finish
      functionSourceFile: '/src/openvswitch/lib/ovsdb-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 152
      functionLinenumberEnd: 181
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         22
      ICount:          125
      EdgeCount:       28
      CyclomaticComplexity: 8
      functionsReached:
        - hmap_first
        - hmap_next
        - json_object
        - ovsdb_parser_destroy
        - ovsdb_parser_raise_error
        - shash_count
        - sset_contains
        - sset_count
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-parser.c:154,38'
          Dst:             json_object
        - Src:             'lib/ovsdb-parser.c:157,20'
          Dst:             shash_count
        - Src:             'lib/ovsdb-parser.c:157,42'
          Dst:             sset_count
        - Src:             'lib/ovsdb-parser.c:161,13'
          Dst:             hmap_first
        - Src:             'lib/ovsdb-parser.c:162,22'
          Dst:             sset_contains
        - Src:             'lib/ovsdb-parser.c:164,25'
          Dst:             ovsdb_parser_raise_error
        - Src:             'lib/ovsdb-parser.c:170,25'
          Dst:             ovsdb_parser_raise_error
        - Src:             'lib/ovsdb-parser.c:161,13'
          Dst:             hmap_next
        - Src:             'lib/ovsdb-parser.c:181,12'
          Dst:             ovsdb_parser_destroy
    - functionName:    ovsdb_parser_raise_error
      functionSourceFile: '/src/openvswitch/lib/ovsdb-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 99
      functionLinenumberEnd: 115
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_syntax_error
        - xvasprintf
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-parser.c:106,19'
          Dst:             xvasprintf
        - Src:             'lib/ovsdb-parser.c:109,17'
          Dst:             ovsdb_syntax_error
    - functionName:    ovsdb_parser_destroy
      functionSourceFile: '/src/openvswitch/lib/ovsdb-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 143
      functionLinenumberEnd: 147
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - sset_destroy
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-parser.c:145,5'
          Dst:             sset_destroy
    - functionName:    ovsdb_parser_has_error
      functionSourceFile: '/src/openvswitch/lib/ovsdb-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 137
      functionLinenumberEnd: 138
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsdb_parser_get_error
      functionSourceFile: '/src/openvswitch/lib/ovsdb-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 131
      functionLinenumberEnd: 132
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_error_clone
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-parser.c:132,28'
          Dst:             ovsdb_error_clone
    - functionName:    ovsdb_parser_put_error
      functionSourceFile: '/src/openvswitch/lib/ovsdb-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 121
      functionLinenumberEnd: 127
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_error_destroy
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-parser.c:125,9'
          Dst:             ovsdb_error_destroy
    - functionName:    ovsdb_parser_member
      functionSourceFile: '/src/openvswitch/lib/ovsdb-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 67
      functionLinenumberEnd: 95
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         26
      ICount:          138
      EdgeCount:       35
      CyclomaticComplexity: 11
      functionsReached:
        - json_object
        - json_string
        - ovsdb_parser_is_id
        - ovsdb_parser_raise_error
        - shash_find_data
        - sset_add
      functionUses:    16
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-parser.c:74,29'
          Dst:             json_object
        - Src:             'lib/ovsdb-parser.c:74,13'
          Dst:             shash_find_data
        - Src:             'lib/ovsdb-parser.c:77,13'
          Dst:             ovsdb_parser_raise_error
        - Src:             'lib/ovsdb-parser.c:86,35'
          Dst:             json_string
        - Src:             'lib/ovsdb-parser.c:86,16'
          Dst:             ovsdb_parser_is_id
        - Src:             'lib/ovsdb-parser.c:88,9'
          Dst:             sset_add
        - Src:             'lib/ovsdb-parser.c:91,9'
          Dst:             ovsdb_parser_raise_error
    - functionName:    ovsdb_parser_is_id
      functionSourceFile: '/src/openvswitch/lib/ovsdb-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         20
      ICount:          116
      EdgeCount:       26
      CyclomaticComplexity: 8
      functionsReached:
        - __ctype_b_loc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-parser.c:50,10'
          Dst:             __ctype_b_loc
        - Src:             'lib/ovsdb-parser.c:58,21'
          Dst:             __ctype_b_loc
        - Src:             'lib/ovsdb-parser.c:58,36'
          Dst:             __ctype_b_loc
    - functionName:    ovsdb_parser_init
      functionSourceFile: '/src/openvswitch/lib/ovsdb-parser.c'
      linkageType:     InternalLinkage
      functionLinenumber: 28
      functionLinenumberEnd: 42
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          76
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - ovsdb_parser_raise_error
        - sset_init
        - xvasprintf
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-parser.c:32,20'
          Dst:             xvasprintf
        - Src:             'lib/ovsdb-parser.c:35,5'
          Dst:             sset_init
        - Src:             'lib/ovsdb-parser.c:40,9'
          Dst:             ovsdb_parser_raise_error
    - functionName:    ovsdb_type_to_json
      functionSourceFile: '/src/openvswitch/lib/ovsdb-types.c'
      linkageType:     InternalLinkage
      functionLinenumber: 743
      functionLinenumberEnd: 764
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         21
      ICount:          124
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - json_integer_create
        - json_object_create
        - json_object_put
        - json_object_put_string
        - ovsdb_base_type_has_constraints
        - ovsdb_base_type_to_json
        - ovsdb_type_is_scalar
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-types.c:744,9'
          Dst:             ovsdb_type_is_scalar
        - Src:             'lib/ovsdb-types.c:745,13'
          Dst:             ovsdb_base_type_has_constraints
        - Src:             'lib/ovsdb-types.c:746,16'
          Dst:             ovsdb_base_type_to_json
        - Src:             'lib/ovsdb-types.c:748,29'
          Dst:             json_object_create
        - Src:             'lib/ovsdb-types.c:749,38'
          Dst:             ovsdb_base_type_to_json
        - Src:             'lib/ovsdb-types.c:749,9'
          Dst:             json_object_put
        - Src:             'lib/ovsdb-types.c:752,29'
          Dst:             ovsdb_base_type_to_json
        - Src:             'lib/ovsdb-types.c:751,13'
          Dst:             json_object_put
        - Src:             'lib/ovsdb-types.c:755,42'
          Dst:             json_integer_create
        - Src:             'lib/ovsdb-types.c:755,13'
          Dst:             json_object_put
        - Src:             'lib/ovsdb-types.c:758,13'
          Dst:             json_object_put_string
        - Src:             'lib/ovsdb-types.c:760,42'
          Dst:             json_integer_create
        - Src:             'lib/ovsdb-types.c:760,13'
          Dst:             json_object_put
    - functionName:    ovsdb_type_is_scalar
      functionSourceFile: '/src/openvswitch/lib/ovsdb-types.h'
      linkageType:     InternalLinkage
      functionLinenumber: 208
      functionLinenumberEnd: 210
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          37
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsdb_base_type_has_constraints
      functionSourceFile: '/src/openvswitch/lib/ovsdb-types.c'
      linkageType:     InternalLinkage
      functionLinenumber: 333
      functionLinenumberEnd: 365
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         23
      ICount:          131
      EdgeCount:       23
      CyclomaticComplexity: 2
      functionsReached:
        - abort
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/ovsdb-types.c:338,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ovsdb-types.c:340,9'
          Dst:             abort
        - Src:             'lib/ovsdb-types.c:360,9'
          Dst:             abort
        - Src:             'lib/ovsdb-types.c:363,9'
          Dst:             abort
    - functionName:    ovsdb_base_type_to_json
      functionSourceFile: '/src/openvswitch/lib/ovsdb-types.c'
      linkageType:     InternalLinkage
      functionLinenumber: 518
      functionLinenumberEnd: 594
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         42
      ICount:          261
      EdgeCount:       48
      CyclomaticComplexity: 8
      functionsReached:
        - abort
        - json_integer_create
        - json_object_create
        - json_object_put
        - json_object_put_string
        - json_real_create
        - json_string_create
        - ovsdb_atomic_type_to_string
        - ovsdb_base_type_get_enum_type
        - ovsdb_base_type_has_constraints
        - ovsdb_datum_to_json
      functionUses:    3
      BranchProfiles:
        - Branch String:   'lib/ovsdb-types.c:536,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ovsdb-types.c:521,10'
          Dst:             ovsdb_base_type_has_constraints
        - Src:             'lib/ovsdb-types.c:522,35'
          Dst:             ovsdb_atomic_type_to_string
        - Src:             'lib/ovsdb-types.c:522,16'
          Dst:             json_string_create
        - Src:             'lib/ovsdb-types.c:525,12'
          Dst:             json_object_create
        - Src:             'lib/ovsdb-types.c:527,28'
          Dst:             ovsdb_atomic_type_to_string
        - Src:             'lib/ovsdb-types.c:526,5'
          Dst:             json_object_put_string
        - Src:             'lib/ovsdb-types.c:532,16'
          Dst:             ovsdb_base_type_get_enum_type
        - Src:             'lib/ovsdb-types.c:533,39'
          Dst:             ovsdb_datum_to_json
        - Src:             'lib/ovsdb-types.c:533,9'
          Dst:             json_object_put
        - Src:             'lib/ovsdb-types.c:538,9'
          Dst:             abort
        - Src:             'lib/ovsdb-types.c:543,29'
          Dst:             json_integer_create
        - Src:             'lib/ovsdb-types.c:542,13'
          Dst:             json_object_put
        - Src:             'lib/ovsdb-types.c:547,29'
          Dst:             json_integer_create
        - Src:             'lib/ovsdb-types.c:546,13'
          Dst:             json_object_put
        - Src:             'lib/ovsdb-types.c:554,29'
          Dst:             json_real_create
        - Src:             'lib/ovsdb-types.c:553,13'
          Dst:             json_object_put
        - Src:             'lib/ovsdb-types.c:558,29'
          Dst:             json_real_create
        - Src:             'lib/ovsdb-types.c:557,13'
          Dst:             json_object_put
        - Src:             'lib/ovsdb-types.c:568,29'
          Dst:             json_integer_create
        - Src:             'lib/ovsdb-types.c:567,13'
          Dst:             json_object_put
        - Src:             'lib/ovsdb-types.c:572,29'
          Dst:             json_integer_create
        - Src:             'lib/ovsdb-types.c:571,13'
          Dst:             json_object_put
        - Src:             'lib/ovsdb-types.c:578,13'
          Dst:             json_object_put_string
        - Src:             'lib/ovsdb-types.c:581,17'
          Dst:             json_object_put_string
        - Src:             'lib/ovsdb-types.c:587,9'
          Dst:             abort
        - Src:             'lib/ovsdb-types.c:590,9'
          Dst:             abort
    - functionName:    ovsdb_atomic_type_to_string
      functionSourceFile: '/src/openvswitch/lib/ovsdb-types.c'
      linkageType:     InternalLinkage
      functionLinenumber: 45
      functionLinenumberEnd: 69
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          52
      EdgeCount:       20
      CyclomaticComplexity: 11
      functionsReached: []
      functionUses:    6
      BranchProfiles:
        - Branch String:   'lib/ovsdb-types.c:46,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    ovsdb_base_type_get_enum_type
      functionSourceFile: '/src/openvswitch/lib/ovsdb-types.c'
      linkageType:     InternalLinkage
      functionLinenumber: 163
      functionLinenumberEnd: 182
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          63
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_base_type_init
        - ovsthread_once_done
        - ovsthread_once_start
        - xmalloc
      functionUses:    5
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-types.c:167,9'
          Dst:             ovsthread_once_start
        - Src:             'lib/ovsdb-types.c:173,31'
          Dst:             xmalloc
        - Src:             'lib/ovsdb-types.c:174,13'
          Dst:             ovsdb_base_type_init
        - Src:             'lib/ovsdb-types.c:175,13'
          Dst:             ovsdb_base_type_init
        - Src:             'lib/ovsdb-types.c:180,9'
          Dst:             ovsthread_once_done
    - functionName:    ovsthread_once_start
      functionSourceFile: '/src/openvswitch/./include/openvswitch/thread.h'
      linkageType:     InternalLinkage
      functionLinenumber: 156
      functionLinenumberEnd: 161
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          35
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsthread_once_start__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/thread.h:161,12'
          Dst:             ovsthread_once_start__
    - functionName:    ovsdb_base_type_init
      functionSourceFile: '/src/openvswitch/lib/ovsdb-types.c'
      linkageType:     InternalLinkage
      functionLinenumber: 119
      functionLinenumberEnd: 157
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          98
      EdgeCount:       21
      CyclomaticComplexity: 11
      functionsReached:
        - abort
      functionUses:    8
      BranchProfiles:
        - Branch String:   'lib/ovsdb-types.c:123,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ovsdb-types.c:152,9'
          Dst:             abort
        - Src:             'lib/ovsdb-types.c:155,9'
          Dst:             abort
    - functionName:    n_from_json
      functionSourceFile: '/src/openvswitch/lib/ovsdb-types.c'
      linkageType:     InternalLinkage
      functionLinenumber: 635
      functionLinenumberEnd: 645
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          70
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - ovsdb_syntax_error
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-types.c:643,16'
          Dst:             ovsdb_syntax_error
    - functionName:    ovsdb_type_from_json
      functionSourceFile: '/src/openvswitch/lib/ovsdb-types.c'
      linkageType:     InternalLinkage
      functionLinenumber: 679
      functionLinenumberEnd: 739
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         31
      ICount:          201
      EdgeCount:       43
      CyclomaticComplexity: 14
      functionsReached:
        - json_string
        - n_from_json
        - ovsdb_base_type_from_json
        - ovsdb_base_type_init
        - ovsdb_parser_finish
        - ovsdb_parser_init
        - ovsdb_parser_member
        - ovsdb_syntax_error
        - ovsdb_type_is_valid
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-types.c:680,5'
          Dst:             ovsdb_base_type_init
        - Src:             'lib/ovsdb-types.c:685,16'
          Dst:             ovsdb_base_type_from_json
        - Src:             'lib/ovsdb-types.c:691,9'
          Dst:             ovsdb_parser_init
        - Src:             'lib/ovsdb-types.c:692,15'
          Dst:             ovsdb_parser_member
        - Src:             'lib/ovsdb-types.c:693,17'
          Dst:             ovsdb_parser_member
        - Src:             'lib/ovsdb-types.c:695,15'
          Dst:             ovsdb_parser_member
        - Src:             'lib/ovsdb-types.c:696,15'
          Dst:             ovsdb_parser_member
        - Src:             'lib/ovsdb-types.c:698,17'
          Dst:             ovsdb_parser_finish
        - Src:             'lib/ovsdb-types.c:703,17'
          Dst:             ovsdb_base_type_from_json
        - Src:             'lib/ovsdb-types.c:709,21'
          Dst:             ovsdb_base_type_from_json
        - Src:             'lib/ovsdb-types.c:715,17'
          Dst:             n_from_json
        - Src:             'lib/ovsdb-types.c:721,24'
          Dst:             json_string
        - Src:             'lib/ovsdb-types.c:721,17'
          Dst:             strcmp
        - Src:             'lib/ovsdb-types.c:724,21'
          Dst:             n_from_json
        - Src:             'lib/ovsdb-types.c:730,14'
          Dst:             ovsdb_type_is_valid
        - Src:             'lib/ovsdb-types.c:731,20'
          Dst:             ovsdb_syntax_error
        - Src:             'lib/ovsdb-types.c:737,16'
          Dst:             ovsdb_syntax_error
    - functionName:    ovsdb_base_type_from_json
      functionSourceFile: '/src/openvswitch/lib/ovsdb-types.c'
      linkageType:     InternalLinkage
      functionLinenumber: 396
      functionLinenumberEnd: 514
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         77
      ICount:          457
      EdgeCount:       103
      CyclomaticComplexity: 28
      functionsReached:
        - json_real
        - json_string
        - ovsdb_atomic_type_from_json
        - ovsdb_base_type_destroy
        - ovsdb_base_type_get_enum_type
        - ovsdb_base_type_init
        - ovsdb_datum_from_json
        - ovsdb_error_destroy
        - ovsdb_parser_destroy
        - ovsdb_parser_finish
        - ovsdb_parser_has_error
        - ovsdb_parser_init
        - ovsdb_parser_member
        - ovsdb_syntax_error
        - parse_optional_uint
        - strcmp
        - xmalloc
        - xstrdup
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-types.c:402,17'
          Dst:             ovsdb_atomic_type_from_json
        - Src:             'lib/ovsdb-types.c:406,9'
          Dst:             ovsdb_base_type_init
        - Src:             'lib/ovsdb-types.c:410,5'
          Dst:             ovsdb_parser_init
        - Src:             'lib/ovsdb-types.c:411,12'
          Dst:             ovsdb_parser_member
        - Src:             'lib/ovsdb-types.c:412,9'
          Dst:             ovsdb_parser_has_error
        - Src:             'lib/ovsdb-types.c:414,16'
          Dst:             ovsdb_parser_finish
        - Src:             'lib/ovsdb-types.c:417,13'
          Dst:             ovsdb_atomic_type_from_json
        - Src:             'lib/ovsdb-types.c:419,29'
          Dst:             ovsdb_parser_destroy
        - Src:             'lib/ovsdb-types.c:419,9'
          Dst:             ovsdb_error_destroy
        - Src:             'lib/ovsdb-types.c:423,5'
          Dst:             ovsdb_base_type_init
        - Src:             'lib/ovsdb-types.c:425,13'
          Dst:             ovsdb_parser_member
        - Src:             'lib/ovsdb-types.c:427,23'
          Dst:             xmalloc
        - Src:             'lib/ovsdb-types.c:429,26'
          Dst:             ovsdb_base_type_get_enum_type
        - Src:             'lib/ovsdb-types.c:428,17'
          Dst:             ovsdb_datum_from_json
        - Src:             'lib/ovsdb-types.c:438,15'
          Dst:             ovsdb_parser_member
        - Src:             'lib/ovsdb-types.c:440,15'
          Dst:             ovsdb_parser_member
        - Src:             'lib/ovsdb-types.c:445,21'
          Dst:             ovsdb_syntax_error
        - Src:             'lib/ovsdb-types.c:451,15'
          Dst:             ovsdb_parser_member
        - Src:             'lib/ovsdb-types.c:452,15'
          Dst:             ovsdb_parser_member
        - Src:             'lib/ovsdb-types.c:453,32'
          Dst:             json_real
        - Src:             'lib/ovsdb-types.c:454,32'
          Dst:             json_real
        - Src:             'lib/ovsdb-types.c:456,21'
          Dst:             ovsdb_syntax_error
        - Src:             'lib/ovsdb-types.c:460,21'
          Dst:             parse_optional_uint
        - Src:             'lib/ovsdb-types.c:464,21'
          Dst:             parse_optional_uint
        - Src:             'lib/ovsdb-types.c:468,21'
          Dst:             ovsdb_syntax_error
        - Src:             'lib/ovsdb-types.c:474,20'
          Dst:             ovsdb_parser_member
        - Src:             'lib/ovsdb-types.c:479,47'
          Dst:             json_string
        - Src:             'lib/ovsdb-types.c:479,39'
          Dst:             xstrdup
        - Src:             'lib/ovsdb-types.c:485,23'
          Dst:             ovsdb_parser_member
        - Src:             'lib/ovsdb-types.c:488,41'
          Dst:             json_string
        - Src:             'lib/ovsdb-types.c:489,22'
          Dst:             strcmp
        - Src:             'lib/ovsdb-types.c:491,29'
          Dst:             strcmp
        - Src:             'lib/ovsdb-types.c:494,29'
          Dst:             ovsdb_syntax_error
        - Src:             'lib/ovsdb-types.c:505,29'
          Dst:             ovsdb_parser_finish
        - Src:             'lib/ovsdb-types.c:505,9'
          Dst:             ovsdb_error_destroy
        - Src:             'lib/ovsdb-types.c:507,17'
          Dst:             ovsdb_parser_finish
        - Src:             'lib/ovsdb-types.c:510,9'
          Dst:             ovsdb_base_type_destroy
    - functionName:    ovsdb_type_is_valid
      functionSourceFile: '/src/openvswitch/lib/ovsdb-types.c'
      linkageType:     InternalLinkage
      functionLinenumber: 616
      functionLinenumberEnd: 621
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          60
      EdgeCount:       16
      CyclomaticComplexity: 6
      functionsReached:
        - ovsdb_base_type_is_valid
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-types.c:618,16'
          Dst:             ovsdb_base_type_is_valid
        - Src:             'lib/ovsdb-types.c:619,16'
          Dst:             ovsdb_base_type_is_valid
    - functionName:    ovsdb_base_type_is_valid
      functionSourceFile: '/src/openvswitch/lib/ovsdb-types.c'
      linkageType:     InternalLinkage
      functionLinenumber: 253
      functionLinenumberEnd: 277
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          83
      EdgeCount:       20
      CyclomaticComplexity: 11
      functionsReached: []
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/ovsdb-types.c:254,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    ovsdb_atomic_type_from_json
      functionSourceFile: '/src/openvswitch/lib/ovsdb-types.c'
      linkageType:     InternalLinkage
      functionLinenumber: 99
      functionLinenumberEnd: 113
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          53
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - json_string
        - ovsdb_atomic_type_from_string
        - ovsdb_syntax_error
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-types.c:101,43'
          Dst:             json_string
        - Src:             'lib/ovsdb-types.c:101,13'
          Dst:             ovsdb_atomic_type_from_string
        - Src:             'lib/ovsdb-types.c:107,39'
          Dst:             json_string
        - Src:             'lib/ovsdb-types.c:105,20'
          Dst:             ovsdb_syntax_error
        - Src:             'lib/ovsdb-types.c:111,16'
          Dst:             ovsdb_syntax_error
    - functionName:    parse_optional_uint
      functionSourceFile: '/src/openvswitch/lib/ovsdb-types.c'
      linkageType:     InternalLinkage
      functionLinenumber: 378
      functionLinenumberEnd: 391
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         12
      ICount:          68
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - ovsdb_parser_member
        - ovsdb_syntax_error
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-types.c:381,12'
          Dst:             ovsdb_parser_member
        - Src:             'lib/ovsdb-types.c:384,20'
          Dst:             ovsdb_syntax_error
    - functionName:    ovsdb_base_type_destroy
      functionSourceFile: '/src/openvswitch/lib/ovsdb-types.c'
      linkageType:     InternalLinkage
      functionLinenumber: 220
      functionLinenumberEnd: 249
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         19
      ICount:          92
      EdgeCount:       37
      CyclomaticComplexity: 20
      functionsReached:
        - abort
        - ovsdb_base_type_get_enum_type
        - ovsdb_datum_destroy
      functionUses:    4
      BranchProfiles:
        - Branch String:   'lib/ovsdb-types.c:228,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ovsdb-types.c:224,33'
          Dst:             ovsdb_base_type_get_enum_type
        - Src:             'lib/ovsdb-types.c:223,13'
          Dst:             ovsdb_datum_destroy
        - Src:             'lib/ovsdb-types.c:243,13'
          Dst:             abort
        - Src:             'lib/ovsdb-types.c:246,13'
          Dst:             abort
    - functionName:    ovsdb_atomic_type_from_string
      functionSourceFile: '/src/openvswitch/lib/ovsdb-types.c'
      linkageType:     InternalLinkage
      functionLinenumber: 79
      functionLinenumberEnd: 94
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          83
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-types.c:80,10'
          Dst:             strcmp
        - Src:             'lib/ovsdb-types.c:82,17'
          Dst:             strcmp
        - Src:             'lib/ovsdb-types.c:84,17'
          Dst:             strcmp
        - Src:             'lib/ovsdb-types.c:86,17'
          Dst:             strcmp
        - Src:             'lib/ovsdb-types.c:88,17'
          Dst:             strcmp
    - functionName:    ovsdb_type_is_set
      functionSourceFile: '/src/openvswitch/lib/ovsdb-types.h'
      linkageType:     InternalLinkage
      functionLinenumber: 231
      functionLinenumberEnd: 233
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         7
      ICount:          39
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsdb_type_to_english
      functionSourceFile: '/src/openvswitch/lib/ovsdb-types.c'
      linkageType:     InternalLinkage
      functionLinenumber: 649
      functionLinenumberEnd: 675
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         18
      ICount:          117
      EdgeCount:       23
      CyclomaticComplexity: 7
      functionsReached:
        - ds_cstr
        - ds_put_cstr
        - ds_put_format
        - ovsdb_atomic_type_to_string
        - ovsdb_type_is_scalar
        - ovsdb_type_is_set
        - xstrdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-types.c:650,23'
          Dst:             ovsdb_atomic_type_to_string
        - Src:             'lib/ovsdb-types.c:651,25'
          Dst:             ovsdb_atomic_type_to_string
        - Src:             'lib/ovsdb-types.c:652,9'
          Dst:             ovsdb_type_is_scalar
        - Src:             'lib/ovsdb-types.c:653,16'
          Dst:             xstrdup
        - Src:             'lib/ovsdb-types.c:656,25'
          Dst:             ovsdb_type_is_set
        - Src:             'lib/ovsdb-types.c:656,9'
          Dst:             ds_put_cstr
        - Src:             'lib/ovsdb-types.c:659,17'
          Dst:             ds_put_format
        - Src:             'lib/ovsdb-types.c:661,17'
          Dst:             ds_put_cstr
        - Src:             'lib/ovsdb-types.c:664,13'
          Dst:             ds_put_format
        - Src:             'lib/ovsdb-types.c:666,13'
          Dst:             ds_put_format
        - Src:             'lib/ovsdb-types.c:668,13'
          Dst:             ovsdb_type_is_set
        - Src:             'lib/ovsdb-types.c:669,13'
          Dst:             ds_put_format
        - Src:             'lib/ovsdb-types.c:671,13'
          Dst:             ds_put_format
        - Src:             'lib/ovsdb-types.c:673,16'
          Dst:             ds_cstr
    - functionName:    ovsdb_type_equals
      functionSourceFile: '/src/openvswitch/lib/ovsdb-types.c'
      linkageType:     InternalLinkage
      functionLinenumber: 626
      functionLinenumberEnd: 630
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          61
      EdgeCount:       13
      CyclomaticComplexity: 5
      functionsReached:
        - ovsdb_base_type_equals
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-types.c:627,12'
          Dst:             ovsdb_base_type_equals
        - Src:             'lib/ovsdb-types.c:628,15'
          Dst:             ovsdb_base_type_equals
    - functionName:    ovsdb_base_type_equals
      functionSourceFile: '/src/openvswitch/lib/ovsdb-types.c'
      linkageType:     InternalLinkage
      functionLinenumber: 282
      functionLinenumberEnd: 329
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         46
      ICount:          268
      EdgeCount:       56
      CyclomaticComplexity: 12
      functionsReached:
        - abort
        - nullable_string_is_equal
        - ovsdb_base_type_get_enum_type
        - ovsdb_datum_equals
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/ovsdb-types.c:299,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ovsdb-types.c:295,36'
          Dst:             ovsdb_base_type_get_enum_type
        - Src:             'lib/ovsdb-types.c:294,17'
          Dst:             ovsdb_datum_equals
        - Src:             'lib/ovsdb-types.c:322,19'
          Dst:             nullable_string_is_equal
        - Src:             'lib/ovsdb-types.c:327,9'
          Dst:             abort
    - functionName:    ovsdb_type_destroy
      functionSourceFile: '/src/openvswitch/lib/ovsdb-types.c'
      linkageType:     InternalLinkage
      functionLinenumber: 609
      functionLinenumberEnd: 612
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          19
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_base_type_destroy
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-types.c:610,5'
          Dst:             ovsdb_base_type_destroy
        - Src:             'lib/ovsdb-types.c:611,5'
          Dst:             ovsdb_base_type_destroy
    - functionName:    ovsdb_type_clone
      functionSourceFile: '/src/openvswitch/lib/ovsdb-types.c'
      linkageType:     InternalLinkage
      functionLinenumber: 600
      functionLinenumberEnd: 605
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          37
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_base_type_clone
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-types.c:601,5'
          Dst:             ovsdb_base_type_clone
        - Src:             'lib/ovsdb-types.c:602,5'
          Dst:             ovsdb_base_type_clone
    - functionName:    ovsdb_base_type_clone
      functionSourceFile: '/src/openvswitch/lib/ovsdb-types.c'
      linkageType:     InternalLinkage
      functionLinenumber: 188
      functionLinenumberEnd: 216
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         20
      ICount:          103
      EdgeCount:       20
      CyclomaticComplexity: 2
      functionsReached:
        - abort
        - ovsdb_datum_clone
        - xmalloc
        - xstrdup
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/ovsdb-types.c:196,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ovsdb-types.c:192,22'
          Dst:             xmalloc
        - Src:             'lib/ovsdb-types.c:193,9'
          Dst:             ovsdb_datum_clone
        - Src:             'lib/ovsdb-types.c:208,38'
          Dst:             xstrdup
        - Src:             'lib/ovsdb-types.c:214,9'
          Dst:             abort
    - functionName:    ovsdb_base_type_clear_constraints
      functionSourceFile: '/src/openvswitch/lib/ovsdb-types.c'
      linkageType:     InternalLinkage
      functionLinenumber: 369
      functionLinenumberEnd: 373
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_base_type_destroy
        - ovsdb_base_type_init
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-types.c:371,5'
          Dst:             ovsdb_base_type_destroy
        - Src:             'lib/ovsdb-types.c:372,5'
          Dst:             ovsdb_base_type_init
    - functionName:    ovsdb_atomic_type_to_json
      functionSourceFile: '/src/openvswitch/lib/ovsdb-types.c'
      linkageType:     InternalLinkage
      functionLinenumber: 73
      functionLinenumberEnd: 74
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - json_string_create
        - ovsdb_atomic_type_to_string
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-types.c:74,31'
          Dst:             ovsdb_atomic_type_to_string
        - Src:             'lib/ovsdb-types.c:74,12'
          Dst:             json_string_create
    - functionName:    raw_clz64
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 272
      functionLinenumberEnd: 273
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - size_t
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    clz32
      functionSourceFile: '/src/openvswitch/lib/util.h'
      linkageType:     InternalLinkage
      functionLinenumber: 298
      functionLinenumberEnd: 299
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - raw_clz64
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/util.h:299,16'
          Dst:             raw_clz64
    - functionName:    skiplist_destroy
      functionSourceFile: '/src/openvswitch/lib/skiplist.c'
      linkageType:     InternalLinkage
      functionLinenumber: 244
      functionLinenumberEnd: 257
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          59
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    skiplist_next
      functionSourceFile: '/src/openvswitch/lib/skiplist.c'
      linkageType:     InternalLinkage
      functionLinenumber: 232
      functionLinenumberEnd: 233
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          22
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    skiplist_first
      functionSourceFile: '/src/openvswitch/lib/skiplist.c'
      linkageType:     InternalLinkage
      functionLinenumber: 225
      functionLinenumberEnd: 226
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          12
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    skiplist_get_size
      functionSourceFile: '/src/openvswitch/lib/skiplist.c'
      linkageType:     InternalLinkage
      functionLinenumber: 218
      functionLinenumberEnd: 219
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          9
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    0
      BranchProfiles:  []
      Callsites:       []
    - functionName:    skiplist_get_data
      functionSourceFile: '/src/openvswitch/lib/skiplist.c'
      linkageType:     InternalLinkage
      functionLinenumber: 211
      functionLinenumberEnd: 212
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         4
      ICount:          21
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    4
      BranchProfiles:  []
      Callsites:       []
    - functionName:    skiplist_delete
      functionSourceFile: '/src/openvswitch/lib/skiplist.c'
      linkageType:     InternalLinkage
      functionLinenumber: 181
      functionLinenumberEnd: 205
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          158
      EdgeCount:       27
      CyclomaticComplexity: 8
      functionsReached:
        - skiplist_forward_to_
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/skiplist.c:187,9'
          Dst:             skiplist_forward_to_
    - functionName:    skiplist_forward_to_
      functionSourceFile: '/src/openvswitch/lib/skiplist.c'
      linkageType:     InternalLinkage
      functionLinenumber: 101
      functionLinenumberEnd: 118
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         16
      ICount:          116
      EdgeCount:       20
      CyclomaticComplexity: 6
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    skiplist_determine_level
      functionSourceFile: '/src/openvswitch/lib/skiplist.c'
      linkageType:     InternalLinkage
      functionLinenumber: 143
      functionLinenumberEnd: 148
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          39
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - clz32
        - random_uint32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/skiplist.c:146,17'
          Dst:             random_uint32
        - Src:             'lib/skiplist.c:146,11'
          Dst:             clz32
    - functionName:    skiplist_insert
      functionSourceFile: '/src/openvswitch/lib/skiplist.c'
      linkageType:     InternalLinkage
      functionLinenumber: 154
      functionLinenumberEnd: 176
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         20
      ICount:          160
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - skiplist_create_node
        - skiplist_determine_level
        - skiplist_forward_to_
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/skiplist.c:156,31'
          Dst:             skiplist_forward_to_
        - Src:             'lib/skiplist.c:162,15'
          Dst:             skiplist_determine_level
        - Src:             'lib/skiplist.c:169,13'
          Dst:             skiplist_create_node
    - functionName:    skiplist_create_node
      functionSourceFile: '/src/openvswitch/lib/skiplist.c'
      linkageType:     InternalLinkage
      functionLinenumber: 61
      functionLinenumberEnd: 71
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          39
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - xmalloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/skiplist.c:66,16'
          Dst:             xmalloc
    - functionName:    skiplist_find
      functionSourceFile: '/src/openvswitch/lib/skiplist.c'
      linkageType:     InternalLinkage
      functionLinenumber: 130
      functionLinenumberEnd: 133
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          54
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - skiplist_forward_to
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/skiplist.c:131,31'
          Dst:             skiplist_forward_to
    - functionName:    skiplist_forward_to
      functionSourceFile: '/src/openvswitch/lib/skiplist.c'
      linkageType:     InternalLinkage
      functionLinenumber: 123
      functionLinenumberEnd: 124
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - skiplist_forward_to_
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/skiplist.c:124,12'
          Dst:             skiplist_forward_to_
    - functionName:    skiplist_create
      functionSourceFile: '/src/openvswitch/lib/skiplist.c'
      linkageType:     InternalLinkage
      functionLinenumber: 80
      functionLinenumberEnd: 91
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          38
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - random_init
        - skiplist_create_node
        - xmalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/skiplist.c:81,5'
          Dst:             random_init
        - Src:             'lib/skiplist.c:84,10'
          Dst:             xmalloc
        - Src:             'lib/skiplist.c:89,18'
          Dst:             skiplist_create_node
    - functionName:    partition
      functionSourceFile: '/src/openvswitch/lib/sort.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27
      functionLinenumberEnd: 38
      functionDepth:   0
      returnType:      size_t
      argCount:        5
      argTypes:
        - size_t
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         10
      ICount:          83
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    random_range
      functionSourceFile: '/src/openvswitch/lib/random.h'
      linkageType:     InternalLinkage
      functionLinenumber: 32
      functionLinenumberEnd: 33
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          16
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - random_uint32
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/random.h:33,12'
          Dst:             random_uint32
    - functionName:    quicksort
      functionSourceFile: '/src/openvswitch/lib/sort.c'
      linkageType:     InternalLinkage
      functionLinenumber: 46
      functionLinenumberEnd: 61
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - size_t
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          84
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - partition
        - quicksort
        - random_range
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/sort.c:53,9'
          Dst:             random_range
        - Src:             'lib/sort.c:58,9'
          Dst:             partition
        - Src:             'lib/sort.c:59,5'
          Dst:             quicksort
        - Src:             'lib/sort.c:60,5'
          Dst:             quicksort
    - functionName:    sort
      functionSourceFile: '/src/openvswitch/lib/sort.c'
      linkageType:     InternalLinkage
      functionLinenumber: 68
      functionLinenumberEnd: 70
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - size_t
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          24
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - quicksort
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/sort.c:69,5'
          Dst:             quicksort
    - functionName:    init_this_module_ovsdb_cs
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 40
      functionLinenumberEnd: 40
      functionDepth:   0
      returnType:      void
      argCount:        0
      argTypes:        []
      constantsTouched: []
      argNames:        []
      BBCount:         3
      ICount:          12
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - vlog_insert_module
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:40,1'
          Dst:             vlog_insert_module
    - functionName:    ovsdb_cs_parse_row_update2
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2265
      functionLinenumberEnd: 2302
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         21
      ICount:          149
      EdgeCount:       28
      CyclomaticComplexity: 9
      functionsReached:
        - json_object
        - ovsdb_syntax_error
        - shash_count
        - shash_first
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:2266,34'
          Dst:             json_object
        - Src:             'lib/ovsdb-cs.c:2267,9'
          Dst:             shash_count
        - Src:             'lib/ovsdb-cs.c:2270,38'
          Dst:             shash_count
        - Src:             'lib/ovsdb-cs.c:2268,16'
          Dst:             ovsdb_syntax_error
        - Src:             'lib/ovsdb-cs.c:2273,31'
          Dst:             shash_first
        - Src:             'lib/ovsdb-cs.c:2275,10'
          Dst:             strcmp
        - Src:             'lib/ovsdb-cs.c:2275,43'
          Dst:             strcmp
        - Src:             'lib/ovsdb-cs.c:2277,17'
          Dst:             strcmp
        - Src:             'lib/ovsdb-cs.c:2279,17'
          Dst:             strcmp
        - Src:             'lib/ovsdb-cs.c:2282,20'
          Dst:             ovsdb_syntax_error
        - Src:             'lib/ovsdb-cs.c:2288,16'
          Dst:             ovsdb_syntax_error
        - Src:             'lib/ovsdb-cs.c:2294,16'
          Dst:             ovsdb_syntax_error
        - Src:             'lib/ovsdb-cs.c:2299,20'
          Dst:             json_object
    - functionName:    ovsdb_cs_parse_row_update1
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2227
      functionLinenumberEnd: 2260
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         30
      ICount:          165
      EdgeCount:       39
      CyclomaticComplexity: 11
      functionsReached:
        - json_object
        - ovsdb_syntax_error
        - shash_count
        - shash_find_data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:2230,32'
          Dst:             json_object
        - Src:             'lib/ovsdb-cs.c:2230,16'
          Dst:             shash_find_data
        - Src:             'lib/ovsdb-cs.c:2231,32'
          Dst:             json_object
        - Src:             'lib/ovsdb-cs.c:2231,16'
          Dst:             shash_find_data
        - Src:             'lib/ovsdb-cs.c:2233,16'
          Dst:             ovsdb_syntax_error
        - Src:             'lib/ovsdb-cs.c:2236,16'
          Dst:             ovsdb_syntax_error
        - Src:             'lib/ovsdb-cs.c:2239,31'
          Dst:             json_object
        - Src:             'lib/ovsdb-cs.c:2239,19'
          Dst:             shash_count
        - Src:             'lib/ovsdb-cs.c:2240,16'
          Dst:             ovsdb_syntax_error
        - Src:             'lib/ovsdb-cs.c:2244,16'
          Dst:             ovsdb_syntax_error
        - Src:             'lib/ovsdb-cs.c:2251,24'
          Dst:             json_object
        - Src:             'lib/ovsdb-cs.c:2254,24'
          Dst:             json_object
        - Src:             'lib/ovsdb-cs.c:2257,24'
          Dst:             json_object
    - functionName:    ovsdb_cs_parse_row_update
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2308
      functionLinenumberEnd: 2321
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         9
      ICount:          65
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_cs_parse_row_update1
        - ovsdb_cs_parse_row_update2
        - ovsdb_syntax_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:2311,16'
          Dst:             ovsdb_syntax_error
        - Src:             'lib/ovsdb-cs.c:2319,15'
          Dst:             ovsdb_cs_parse_row_update1
        - Src:             'lib/ovsdb-cs.c:2320,15'
          Dst:             ovsdb_cs_parse_row_update2
    - functionName:    hmap_next__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 401
      functionLinenumberEnd: 410
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          51
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsdb_cs_compose_server_monitor_request
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2065
      functionLinenumberEnd: 2100
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         31
      ICount:          184
      EdgeCount:       39
      CyclomaticComplexity: 10
      functionsReached:
        - json_array_add
        - json_array_create_1
        - json_array_create_empty
        - json_object_create
        - json_object_put
        - json_string_create
        - ovsdb_cs_free_schema
        - ovsdb_cs_parse_schema
        - shash_find
        - shash_find_data
        - vlog
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:2067,28'
          Dst:             ovsdb_cs_parse_schema
        - Src:             'lib/ovsdb-cs.c:2068,37'
          Dst:             json_object_create
        - Src:             'lib/ovsdb-cs.c:2072,20'
          Dst:             shash_find_data
        - Src:             'lib/ovsdb-cs.c:2074,9'
          Dst:             vlog
        - Src:             'lib/ovsdb-cs.c:2079,32'
          Dst:             json_array_create_empty
        - Src:             'lib/ovsdb-cs.c:2083,35'
          Dst:             shash_find
        - Src:             'lib/ovsdb-cs.c:2085,17'
          Dst:             vlog
        - Src:             'lib/ovsdb-cs.c:2090,37'
          Dst:             json_string_create
        - Src:             'lib/ovsdb-cs.c:2090,13'
          Dst:             json_array_add
        - Src:             'lib/ovsdb-cs.c:2093,40'
          Dst:             json_object_create
        - Src:             'lib/ovsdb-cs.c:2094,9'
          Dst:             json_object_put
        - Src:             'lib/ovsdb-cs.c:2096,25'
          Dst:             json_array_create_1
        - Src:             'lib/ovsdb-cs.c:2095,9'
          Dst:             json_object_put
        - Src:             'lib/ovsdb-cs.c:2098,5'
          Dst:             ovsdb_cs_free_schema
    - functionName:    ovsdb_cs_parse_schema
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2127
      functionLinenumberEnd: 2197
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         30
      ICount:          220
      EdgeCount:       39
      CyclomaticComplexity: 11
      functionsReached:
        - hmap_first
        - hmap_next
        - json_object
        - log_error
        - ovsdb_cs_free_schema
        - ovsdb_parser_destroy
        - ovsdb_parser_init
        - ovsdb_parser_member
        - ovsdb_type_destroy
        - ovsdb_type_from_json
        - shash_add
        - shash_add_once
        - shash_init
        - xmalloc
        - xzalloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:2134,5'
          Dst:             ovsdb_parser_init
        - Src:             'lib/ovsdb-cs.c:2135,19'
          Dst:             ovsdb_parser_member
        - Src:             'lib/ovsdb-cs.c:2136,13'
          Dst:             ovsdb_parser_destroy
        - Src:             'lib/ovsdb-cs.c:2138,9'
          Dst:             log_error
        - Src:             'lib/ovsdb-cs.c:2142,14'
          Dst:             xmalloc
        - Src:             'lib/ovsdb-cs.c:2143,5'
          Dst:             shash_init
        - Src:             'lib/ovsdb-cs.c:2144,5'
          Dst:             json_object
        - Src:             'lib/ovsdb-cs.c:2144,5'
          Dst:             hmap_first
        - Src:             'lib/ovsdb-cs.c:2149,9'
          Dst:             ovsdb_parser_init
        - Src:             'lib/ovsdb-cs.c:2151,24'
          Dst:             ovsdb_parser_member
        - Src:             'lib/ovsdb-cs.c:2152,17'
          Dst:             ovsdb_parser_destroy
        - Src:             'lib/ovsdb-cs.c:2157,33'
          Dst:             xmalloc
        - Src:             'lib/ovsdb-cs.c:2158,9'
          Dst:             shash_init
        - Src:             'lib/ovsdb-cs.c:2159,9'
          Dst:             shash_add
        - Src:             'lib/ovsdb-cs.c:2162,9'
          Dst:             json_object
        - Src:             'lib/ovsdb-cs.c:2162,9'
          Dst:             hmap_first
        - Src:             'lib/ovsdb-cs.c:2168,13'
          Dst:             ovsdb_parser_init
        - Src:             'lib/ovsdb-cs.c:2170,25'
          Dst:             ovsdb_parser_member
        - Src:             'lib/ovsdb-cs.c:2172,21'
          Dst:             ovsdb_parser_destroy
        - Src:             'lib/ovsdb-cs.c:2177,20'
          Dst:             xzalloc
        - Src:             'lib/ovsdb-cs.c:2178,21'
          Dst:             ovsdb_type_from_json
        - Src:             'lib/ovsdb-cs.c:2184,18'
          Dst:             shash_add_once
        - Src:             'lib/ovsdb-cs.c:2186,17'
          Dst:             ovsdb_type_destroy
        - Src:             'lib/ovsdb-cs.c:2162,9'
          Dst:             json_object
        - Src:             'lib/ovsdb-cs.c:2162,9'
          Dst:             hmap_next
        - Src:             'lib/ovsdb-cs.c:2144,5'
          Dst:             json_object
        - Src:             'lib/ovsdb-cs.c:2144,5'
          Dst:             hmap_next
        - Src:             'lib/ovsdb-cs.c:2194,5'
          Dst:             log_error
        - Src:             'lib/ovsdb-cs.c:2195,5'
          Dst:             ovsdb_cs_free_schema
    - functionName:    ovsdb_cs_free_schema
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2203
      functionLinenumberEnd: 2222
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         20
      ICount:          120
      EdgeCount:       25
      CyclomaticComplexity: 7
      functionsReached:
        - hmap_first
        - hmap_next
        - ovsdb_type_destroy
        - shash_delete
        - shash_destroy
        - shash_destroy_free_data
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:2207,9'
          Dst:             hmap_first
        - Src:             'lib/ovsdb-cs.c:2207,9'
          Dst:             hmap_next
        - Src:             'lib/ovsdb-cs.c:2211,13'
          Dst:             hmap_first
        - Src:             'lib/ovsdb-cs.c:2212,17'
          Dst:             ovsdb_type_destroy
        - Src:             'lib/ovsdb-cs.c:2211,13'
          Dst:             hmap_next
        - Src:             'lib/ovsdb-cs.c:2214,13'
          Dst:             shash_destroy_free_data
        - Src:             'lib/ovsdb-cs.c:2217,13'
          Dst:             shash_delete
        - Src:             'lib/ovsdb-cs.c:2219,9'
          Dst:             shash_destroy
    - functionName:    hmap_first
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 416
      functionLinenumberEnd: 417
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next__
      functionUses:    17
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:417,12'
          Dst:             hmap_next__
    - functionName:    hmap_next
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 429
      functionLinenumberEnd: 432
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          42
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_next__
      functionUses:    17
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:432,15'
          Dst:             hmap_next__
    - functionName:    log_error
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2109
      functionLinenumberEnd: 2113
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          42
      EdgeCount:       9
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_error_to_string_free
        - vlog
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:2110,15'
          Dst:             ovsdb_error_to_string_free
        - Src:             'lib/ovsdb-cs.c:2111,5'
          Dst:             vlog
    - functionName:    server_column_get_uuid
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1926
      functionLinenumberEnd: 1929
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          54
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:1927,5'
          Dst:             ovs_ignore
    - functionName:    uuid_hash
      functionSourceFile: '/src/openvswitch/lib/uuid.h'
      linkageType:     InternalLinkage
      functionLinenumber: 51
      functionLinenumberEnd: 52
      functionDepth:   0
      returnType:      size_t
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsdb_cs_update_server_row
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1799
      functionLinenumberEnd: 1838
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          137
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - ovsdb_datum_apply_diff
        - ovsdb_datum_destroy
        - ovsdb_datum_from_json
        - ovsdb_error_destroy
        - ovsdb_transient_datum_from_json
        - shash_find
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:1802,35'
          Dst:             shash_find
        - Src:             'lib/ovsdb-cs.c:1811,41'
          Dst:             ovsdb_datum_from_json
        - Src:             'lib/ovsdb-cs.c:1814,17'
          Dst:             ovsdb_error_destroy
        - Src:             'lib/ovsdb-cs.c:1819,41'
          Dst:             ovsdb_transient_datum_from_json
        - Src:             'lib/ovsdb-cs.c:1822,17'
          Dst:             ovsdb_error_destroy
        - Src:             'lib/ovsdb-cs.c:1826,21'
          Dst:             ovsdb_datum_apply_diff
        - Src:             'lib/ovsdb-cs.c:1828,17'
          Dst:             ovsdb_error_destroy
        - Src:             'lib/ovsdb-cs.c:1829,17'
          Dst:             ovsdb_datum_destroy
        - Src:             'lib/ovsdb-cs.c:1832,13'
          Dst:             ovsdb_datum_destroy
        - Src:             'lib/ovsdb-cs.c:1835,9'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsdb_cs_insert_server_row
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1786
      functionLinenumberEnd: 1793
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          56
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_insert_at
        - ovsdb_datum_init_default
        - uuid_hash
        - xmalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:1787,30'
          Dst:             xmalloc
        - Src:             'lib/ovsdb-cs.c:1788,5'
          Dst:             uuid_hash
        - Src:             'lib/ovsdb-cs.c:1788,5'
          Dst:             hmap_insert_at
        - Src:             'lib/ovsdb-cs.c:1791,9'
          Dst:             ovsdb_datum_init_default
    - functionName:    hmap_insert_at
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 306
      functionLinenumberEnd: 311
      functionDepth:   0
      returnType:      void
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          44
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - hmap_expand_at
        - hmap_insert_fast
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:307,5'
          Dst:             hmap_insert_fast
        - Src:             './include/openvswitch/hmap.h:309,9'
          Dst:             hmap_expand_at
    - functionName:    hmap_insert_fast
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 289
      functionLinenumberEnd: 295
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         1
      ICount:          38
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsdb_cs_find_server_row
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1767
      functionLinenumberEnd: 1775
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          69
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_first
        - hmap_next
        - uuid_equals
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:1769,5'
          Dst:             hmap_first
        - Src:             'lib/ovsdb-cs.c:1770,13'
          Dst:             uuid_equals
        - Src:             'lib/ovsdb-cs.c:1769,5'
          Dst:             hmap_next
    - functionName:    uuid_equals
      functionSourceFile: '/src/openvswitch/lib/uuid.h'
      linkageType:     InternalLinkage
      functionLinenumber: 58
      functionLinenumberEnd: 62
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          68
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_list_remove
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 251
      functionLinenumberEnd: 254
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          25
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    server_column_get_int
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1916
      functionLinenumberEnd: 1919
      functionDepth:   0
      returnType:      size_t
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          55
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:1917,5'
          Dst:             ovs_ignore
    - functionName:    server_column_get_bool
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1906
      functionLinenumberEnd: 1909
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          62
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovs_ignore
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:1907,5'
          Dst:             ovs_ignore
    - functionName:    server_column_get_string
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1896
      functionLinenumberEnd: 1899
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         6
      ICount:          56
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - json_string
        - ovs_ignore
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:1897,5'
          Dst:             ovs_ignore
        - Src:             'lib/ovsdb-cs.c:1899,24'
          Dst:             json_string
    - functionName:    ovsdb_find_server_row
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1934
      functionLinenumberEnd: 1946
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         23
      ICount:          115
      EdgeCount:       30
      CyclomaticComplexity: 9
      functionsReached:
        - hmap_first
        - hmap_next
        - server_column_get_string
        - server_column_get_uuid
        - strcmp
        - uuid_equals
        - uuid_is_zero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:1936,5'
          Dst:             hmap_first
        - Src:             'lib/ovsdb-cs.c:1937,34'
          Dst:             server_column_get_uuid
        - Src:             'lib/ovsdb-cs.c:1938,28'
          Dst:             server_column_get_string
        - Src:             'lib/ovsdb-cs.c:1939,13'
          Dst:             uuid_is_zero
        - Src:             'lib/ovsdb-cs.c:1940,25'
          Dst:             strcmp
        - Src:             'lib/ovsdb-cs.c:1941,23'
          Dst:             uuid_equals
        - Src:             'lib/ovsdb-cs.c:1936,5'
          Dst:             hmap_next
    - functionName:    ovsdb_cs_process_server_event
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1854
      functionLinenumberEnd: 1890
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         22
      ICount:          148
      EdgeCount:       28
      CyclomaticComplexity: 8
      functionsReached:
        - log_parse_update_error
        - ovs_ignore
        - ovsdb_cs_clear_server_rows
        - ovsdb_cs_db_update_destroy
        - ovsdb_cs_db_update_find_table
        - ovsdb_cs_delete_server_row
        - ovsdb_cs_find_server_row
        - ovsdb_cs_insert_server_row
        - ovsdb_cs_parse_db_update
        - ovsdb_cs_update_server_row
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:1855,5'
          Dst:             ovs_ignore
        - Src:             'lib/ovsdb-cs.c:1859,33'
          Dst:             ovsdb_cs_parse_db_update
        - Src:             'lib/ovsdb-cs.c:1862,9'
          Dst:             log_parse_update_error
        - Src:             'lib/ovsdb-cs.c:1867,9'
          Dst:             ovsdb_cs_clear_server_rows
        - Src:             'lib/ovsdb-cs.c:1870,46'
          Dst:             ovsdb_cs_db_update_find_table
        - Src:             'lib/ovsdb-cs.c:1876,19'
          Dst:             ovsdb_cs_find_server_row
        - Src:             'lib/ovsdb-cs.c:1878,17'
          Dst:             ovsdb_cs_delete_server_row
        - Src:             'lib/ovsdb-cs.c:1881,27'
          Dst:             ovsdb_cs_insert_server_row
        - Src:             'lib/ovsdb-cs.c:1883,17'
          Dst:             ovsdb_cs_update_server_row
        - Src:             'lib/ovsdb-cs.c:1889,5'
          Dst:             ovsdb_cs_db_update_destroy
    - functionName:    ovsdb_cs_parse_db_update
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2377
      functionLinenumberEnd: 2407
      functionDepth:   0
      returnType:      'N/A'
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         15
      ICount:          148
      EdgeCount:       19
      CyclomaticComplexity: 6
      functionsReached:
        - hmap_first
        - hmap_next
        - json_object
        - ovsdb_cs_db_update_destroy
        - ovsdb_cs_parse_table_update
        - ovsdb_syntax_error
        - shash_count
        - xmalloc
        - xzalloc
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:2382,16'
          Dst:             ovsdb_syntax_error
        - Src:             'lib/ovsdb-cs.c:2386,38'
          Dst:             xzalloc
        - Src:             'lib/ovsdb-cs.c:2387,46'
          Dst:             json_object
        - Src:             'lib/ovsdb-cs.c:2387,34'
          Dst:             shash_count
        - Src:             'lib/ovsdb-cs.c:2387,26'
          Dst:             xmalloc
        - Src:             'lib/ovsdb-cs.c:2390,5'
          Dst:             json_object
        - Src:             'lib/ovsdb-cs.c:2390,5'
          Dst:             hmap_first
        - Src:             'lib/ovsdb-cs.c:2397,37'
          Dst:             ovsdb_cs_parse_table_update
        - Src:             'lib/ovsdb-cs.c:2400,13'
          Dst:             ovsdb_cs_db_update_destroy
        - Src:             'lib/ovsdb-cs.c:2390,5'
          Dst:             json_object
        - Src:             'lib/ovsdb-cs.c:2390,5'
          Dst:             hmap_next
    - functionName:    log_parse_update_error
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1573
      functionLinenumberEnd: 1580
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          51
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_error_destroy
        - ovsdb_error_to_string
        - vlog_rate_limit
        - vlog_should_drop
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:1574,10'
          Dst:             vlog_should_drop
        - Src:             'lib/ovsdb-cs.c:1575,19'
          Dst:             ovsdb_error_to_string
        - Src:             'lib/ovsdb-cs.c:1576,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ovsdb-cs.c:1579,5'
          Dst:             ovsdb_error_destroy
    - functionName:    ovsdb_cs_clear_server_rows
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1842
      functionLinenumberEnd: 1847
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          59
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - hmap_first
        - hmap_next
        - ovsdb_cs_delete_server_row
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:1844,5'
          Dst:             hmap_first
        - Src:             'lib/ovsdb-cs.c:1844,5'
          Dst:             hmap_next
        - Src:             'lib/ovsdb-cs.c:1845,9'
          Dst:             ovsdb_cs_delete_server_row
    - functionName:    ovsdb_cs_db_update_find_table
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2428
      functionLinenumberEnd: 2436
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          61
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:2431,14'
          Dst:             strcmp
    - functionName:    ovsdb_cs_delete_server_row
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1779
      functionLinenumberEnd: 1782
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_remove
        - server_row_destroy
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:1780,5'
          Dst:             hmap_remove
        - Src:             'lib/ovsdb-cs.c:1781,5'
          Dst:             server_row_destroy
    - functionName:    ovsdb_cs_db_update_destroy
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2412
      functionLinenumberEnd: 2423
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          59
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    hmap_remove
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 317
      functionLinenumberEnd: 324
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         4
      ICount:          48
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    server_row_destroy
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1756
      functionLinenumberEnd: 1763
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          49
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_datum_destroy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:1759,13'
          Dst:             ovsdb_datum_destroy
    - functionName:    ovsdb_cs_parse_table_update
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2327
      functionLinenumberEnd: 2363
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         17
      ICount:          157
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - hmap_first
        - hmap_next
        - json_object
        - ovsdb_cs_parse_row_update
        - ovsdb_syntax_error
        - shash_count
        - uuid_from_string
        - xmalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:2331,16'
          Dst:             ovsdb_syntax_error
        - Src:             'lib/ovsdb-cs.c:2335,29'
          Dst:             json_object
        - Src:             'lib/ovsdb-cs.c:2337,32'
          Dst:             shash_count
        - Src:             'lib/ovsdb-cs.c:2337,24'
          Dst:             xmalloc
        - Src:             'lib/ovsdb-cs.c:2340,5'
          Dst:             hmap_first
        - Src:             'lib/ovsdb-cs.c:2343,14'
          Dst:             uuid_from_string
        - Src:             'lib/ovsdb-cs.c:2344,20'
          Dst:             ovsdb_syntax_error
        - Src:             'lib/ovsdb-cs.c:2355,37'
          Dst:             ovsdb_cs_parse_row_update
        - Src:             'lib/ovsdb-cs.c:2340,5'
          Dst:             hmap_next
    - functionName:    ovs_list_pop_front
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 261
      functionLinenumberEnd: 265
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_list_remove
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/list.h:264,5'
          Dst:             ovs_list_remove
    - functionName:    ovsdb_cs_check_server_db__
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1971
      functionLinenumberEnd: 2050
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         101
      ICount:          466
      EdgeCount:       128
      CyclomaticComplexity: 29
      functionsReached:
        - json_destroy
        - json_from_string
        - jsonrpc_session_get_name
        - ovs_list_is_empty
        - ovs_list_pop_front
        - ovsdb_cs_event_destroy
        - ovsdb_cs_process_server_event
        - ovsdb_cs_send_monitor_request
        - ovsdb_cs_transition_at
        - ovsdb_find_server_row
        - server_column_get_bool
        - server_column_get_int
        - server_column_get_string
        - strcmp
        - vlog
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:1973,5'
          Dst:             ovs_list_is_empty
        - Src:             'lib/ovsdb-cs.c:1973,5'
          Dst:             ovs_list_pop_front
        - Src:             'lib/ovsdb-cs.c:1974,9'
          Dst:             ovsdb_cs_process_server_event
        - Src:             'lib/ovsdb-cs.c:1975,9'
          Dst:             ovsdb_cs_event_destroy
        - Src:             'lib/ovsdb-cs.c:1978,39'
          Dst:             ovsdb_find_server_row
        - Src:             'lib/ovsdb-cs.c:1980,31'
          Dst:             jsonrpc_session_get_name
        - Src:             'lib/ovsdb-cs.c:1982,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ovsdb-cs.c:1988,25'
          Dst:             server_column_get_string
        - Src:             'lib/ovsdb-cs.c:1989,26'
          Dst:             server_column_get_string
        - Src:             'lib/ovsdb-cs.c:1990,22'
          Dst:             server_column_get_bool
        - Src:             'lib/ovsdb-cs.c:1991,10'
          Dst:             strcmp
        - Src:             'lib/ovsdb-cs.c:1992,23'
          Dst:             server_column_get_bool
        - Src:             'lib/ovsdb-cs.c:1993,26'
          Dst:             server_column_get_int
        - Src:             'lib/ovsdb-cs.c:1996,13'
          Dst:             vlog
        - Src:             'lib/ovsdb-cs.c:1999,13'
          Dst:             vlog
        - Src:             'lib/ovsdb-cs.c:2002,13'
          Dst:             vlog
        - Src:             'lib/ovsdb-cs.c:2005,13'
          Dst:             vlog
        - Src:             'lib/ovsdb-cs.c:2011,17'
          Dst:             strcmp
        - Src:             'lib/ovsdb-cs.c:2013,13'
          Dst:             vlog
        - Src:             'lib/ovsdb-cs.c:2016,13'
          Dst:             vlog
        - Src:             'lib/ovsdb-cs.c:2019,13'
          Dst:             vlog
        - Src:             'lib/ovsdb-cs.c:2026,13'
          Dst:             vlog
        - Src:             'lib/ovsdb-cs.c:2036,9'
          Dst:             json_destroy
        - Src:             'lib/ovsdb-cs.c:2037,27'
          Dst:             json_from_string
        - Src:             'lib/ovsdb-cs.c:2039,13'
          Dst:             ovsdb_cs_send_monitor_request
        - Src:             'lib/ovsdb-cs.c:2040,13'
          Dst:             ovsdb_cs_transition_at
        - Src:             'lib/ovsdb-cs.c:2042,13'
          Dst:             ovsdb_cs_send_monitor_request
        - Src:             'lib/ovsdb-cs.c:2043,13'
          Dst:             ovsdb_cs_transition_at
        - Src:             'lib/ovsdb-cs.c:2045,13'
          Dst:             ovsdb_cs_send_monitor_request
        - Src:             'lib/ovsdb-cs.c:2046,13'
          Dst:             ovsdb_cs_transition_at
    - functionName:    ovs_list_is_empty
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 320
      functionLinenumberEnd: 321
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsdb_cs_event_destroy
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 269
      functionLinenumberEnd: 286
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          59
      EdgeCount:       13
      CyclomaticComplexity: 2
      functionsReached:
        - json_destroy
        - jsonrpc_msg_destroy
      functionUses:    2
      BranchProfiles:
        - Branch String:   'lib/ovsdb-cs.c:271,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:277,13'
          Dst:             json_destroy
        - Src:             'lib/ovsdb-cs.c:281,13'
          Dst:             jsonrpc_msg_destroy
    - functionName:    json_destroy
      functionSourceFile: '/src/openvswitch/./include/openvswitch/json.h'
      linkageType:     InternalLinkage
      functionLinenumber: 200
      functionLinenumberEnd: 204
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          38
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - json_destroy__
      functionUses:    24
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/json.h:202,9'
          Dst:             json_destroy__
    - functionName:    ovsdb_cs_send_monitor_request
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1522
      functionLinenumberEnd: 1569
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         28
      ICount:          223
      EdgeCount:       36
      CyclomaticComplexity: 10
      functionsReached:
        - hmap_first
        - hmap_next
        - json_array_add
        - json_array_at
        - json_array_create_3
        - json_array_create_empty
        - json_array_size
        - json_clone
        - json_object
        - json_object_create
        - json_object_put
        - json_string_create
        - json_string_create_uuid
        - jsonrpc_create_request
        - ovs_ignore
        - ovsdb_cs_db_sync_condition
        - ovsdb_cs_send_request
        - shash_find_data
      functionUses:    8
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:1526,5'
          Dst:             ovs_ignore
        - Src:             'lib/ovsdb-cs.c:1528,5'
          Dst:             ovsdb_cs_db_sync_condition
        - Src:             'lib/ovsdb-cs.c:1532,9'
          Dst:             hmap_first
        - Src:             'lib/ovsdb-cs.c:1534,51'
          Dst:             json_object
        - Src:             'lib/ovsdb-cs.c:1534,35'
          Dst:             shash_find_data
        - Src:             'lib/ovsdb-cs.c:1537,26'
          Dst:             json_array_create_empty
        - Src:             'lib/ovsdb-cs.c:1538,21'
          Dst:             json_object_put
        - Src:             'lib/ovsdb-cs.c:1540,17'
          Dst:             ovs_ignore
        - Src:             'lib/ovsdb-cs.c:1543,21'
          Dst:             json_array_size
        - Src:             'lib/ovsdb-cs.c:1544,27'
          Dst:             json_object_create
        - Src:             'lib/ovsdb-cs.c:1545,53'
          Dst:             json_array_create_empty
        - Src:             'lib/ovsdb-cs.c:1545,21'
          Dst:             json_object_put
        - Src:             'lib/ovsdb-cs.c:1546,21'
          Dst:             json_array_add
        - Src:             'lib/ovsdb-cs.c:1548,27'
          Dst:             json_array_at
        - Src:             'lib/ovsdb-cs.c:1550,17'
          Dst:             ovs_ignore
        - Src:             'lib/ovsdb-cs.c:1553,33'
          Dst:             json_clone
        - Src:             'lib/ovsdb-cs.c:1552,17'
          Dst:             json_object_put
        - Src:             'lib/ovsdb-cs.c:1532,9'
          Dst:             hmap_next
        - Src:             'lib/ovsdb-cs.c:1562,31'
          Dst:             json_string_create
        - Src:             'lib/ovsdb-cs.c:1563,31'
          Dst:             json_clone
        - Src:             'lib/ovsdb-cs.c:1561,27'
          Dst:             json_array_create_3
        - Src:             'lib/ovsdb-cs.c:1566,32'
          Dst:             json_string_create_uuid
        - Src:             'lib/ovsdb-cs.c:1566,9'
          Dst:             json_array_add
        - Src:             'lib/ovsdb-cs.c:1568,31'
          Dst:             jsonrpc_create_request
        - Src:             'lib/ovsdb-cs.c:1568,5'
          Dst:             ovsdb_cs_send_request
    - functionName:    ovsdb_cs_transition_at
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 384
      functionLinenumberEnd: 391
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         11
      ICount:          65
      EdgeCount:       13
      CyclomaticComplexity: 4
      functionsReached:
        - jsonrpc_session_get_name
        - ovsdb_cs_state_to_string
        - vlog
      functionUses:    15
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:385,5'
          Dst:             jsonrpc_session_get_name
        - Src:             'lib/ovsdb-cs.c:385,5'
          Dst:             ovsdb_cs_state_to_string
        - Src:             'lib/ovsdb-cs.c:385,5'
          Dst:             ovsdb_cs_state_to_string
        - Src:             'lib/ovsdb-cs.c:385,5'
          Dst:             vlog
    - functionName:    ovsdb_cs_state_to_string
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 134
      functionLinenumberEnd: 141
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - int
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          62
      EdgeCount:       22
      CyclomaticComplexity: 12
      functionsReached: []
      functionUses:    3
      BranchProfiles:
        - Branch String:   'lib/ovsdb-cs.c:135,5'
          Branch Sides:    []
      Callsites:       []
    - functionName:    ovsdb_cs_db_sync_condition
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1123
      functionLinenumberEnd: 1161
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         39
      ICount:          224
      EdgeCount:       50
      CyclomaticComplexity: 13
      functionsReached:
        - hmap_first
        - hmap_next
        - json_destroy
        - uuid_is_zero
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:1126,5'
          Dst:             hmap_first
        - Src:             'lib/ovsdb-cs.c:1126,5'
          Dst:             hmap_next
        - Src:             'lib/ovsdb-cs.c:1134,9'
          Dst:             uuid_is_zero
        - Src:             'lib/ovsdb-cs.c:1136,9'
          Dst:             hmap_first
        - Src:             'lib/ovsdb-cs.c:1138,17'
          Dst:             json_destroy
        - Src:             'lib/ovsdb-cs.c:1144,17'
          Dst:             json_destroy
        - Src:             'lib/ovsdb-cs.c:1136,9'
          Dst:             hmap_next
        - Src:             'lib/ovsdb-cs.c:1154,9'
          Dst:             hmap_first
        - Src:             'lib/ovsdb-cs.c:1154,9'
          Dst:             hmap_next
    - functionName:    json_clone
      functionSourceFile: '/src/openvswitch/./include/openvswitch/json.h'
      linkageType:     InternalLinkage
      functionLinenumber: 189
      functionLinenumberEnd: 192
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    14
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsdb_cs_send_request
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 395
      functionLinenumberEnd: 403
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - json_clone
        - json_destroy
        - jsonrpc_msg_destroy
        - jsonrpc_session_send
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:396,5'
          Dst:             json_destroy
        - Src:             'lib/ovsdb-cs.c:397,22'
          Dst:             json_clone
        - Src:             'lib/ovsdb-cs.c:399,9'
          Dst:             jsonrpc_session_send
        - Src:             'lib/ovsdb-cs.c:401,9'
          Dst:             jsonrpc_msg_destroy
    - functionName:    ovsdb_cs_db_compose_lock_request__
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1349
      functionLinenumberEnd: 1357
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          34
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - json_array_create_1
        - json_destroy
        - json_string_create
        - jsonrpc_create_request
        - ovsdb_cs_db_update_has_lock
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:1350,5'
          Dst:             ovsdb_cs_db_update_has_lock
        - Src:             'lib/ovsdb-cs.c:1352,5'
          Dst:             json_destroy
        - Src:             'lib/ovsdb-cs.c:1355,47'
          Dst:             json_string_create
        - Src:             'lib/ovsdb-cs.c:1355,27'
          Dst:             json_array_create_1
        - Src:             'lib/ovsdb-cs.c:1357,12'
          Dst:             jsonrpc_create_request
    - functionName:    ovsdb_cs_db_update_has_lock
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1313
      functionLinenumberEnd: 1319
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          47
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_cs_db_add_event
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:1315,9'
          Dst:             ovsdb_cs_db_add_event
    - functionName:    ovsdb_cs_db_add_event
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 592
      functionLinenumberEnd: 596
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_list_push_back
        - xmalloc
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:593,36'
          Dst:             xmalloc
        - Src:             'lib/ovsdb-cs.c:595,5'
          Dst:             ovs_list_push_back
    - functionName:    ovs_list_push_back
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 204
      functionLinenumberEnd: 206
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          18
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_list_insert
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/list.h:205,5'
          Dst:             ovs_list_insert
    - functionName:    ovs_list_insert
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 164
      functionLinenumberEnd: 169
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          28
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsdb_cs_db_compose_unlock_request
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1370
      functionLinenumberEnd: 1371
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          15
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_cs_db_compose_lock_request__
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:1371,12'
          Dst:             ovsdb_cs_db_compose_lock_request__
    - functionName:    ovsdb_cs_create_cond_change_req
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1030
      functionLinenumberEnd: 1033
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - json_clone
        - json_object_create
        - json_object_put
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:1031,48'
          Dst:             json_object_create
        - Src:             'lib/ovsdb-cs.c:1032,59'
          Dst:             json_clone
        - Src:             'lib/ovsdb-cs.c:1032,5'
          Dst:             json_object_put
    - functionName:    ovsdb_cs_db_compose_cond_change
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1038
      functionLinenumberEnd: 1078
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         24
      ICount:          151
      EdgeCount:       31
      CyclomaticComplexity: 9
      functionsReached:
        - hmap_first
        - hmap_next
        - json_array_create_1
        - json_array_create_3
        - json_clone
        - json_object_create
        - json_object_put
        - jsonrpc_create_request
        - ovs_ignore
        - ovsdb_cs_create_cond_change_req
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:1045,5'
          Dst:             hmap_first
        - Src:             'lib/ovsdb-cs.c:1051,17'
          Dst:             ovsdb_cs_create_cond_change_req
        - Src:             'lib/ovsdb-cs.c:1054,52'
          Dst:             json_object_create
        - Src:             'lib/ovsdb-cs.c:1058,33'
          Dst:             json_array_create_1
        - Src:             'lib/ovsdb-cs.c:1056,17'
          Dst:             json_object_put
        - Src:             'lib/ovsdb-cs.c:1063,13'
          Dst:             ovs_ignore
        - Src:             'lib/ovsdb-cs.c:1045,5'
          Dst:             hmap_next
        - Src:             'lib/ovsdb-cs.c:1074,47'
          Dst:             json_clone
        - Src:             'lib/ovsdb-cs.c:1075,47'
          Dst:             json_clone
        - Src:             'lib/ovsdb-cs.c:1074,27'
          Dst:             json_array_create_3
        - Src:             'lib/ovsdb-cs.c:1077,12'
          Dst:             jsonrpc_create_request
    - functionName:    condition_classify
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 837
      functionLinenumberEnd: 857
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         12
      ICount:          65
      EdgeCount:       13
      CyclomaticComplexity: 3
      functionsReached:
        - json_array_at
        - json_array_size
      functionUses:    3
      BranchProfiles:
        - Branch String:   'lib/ovsdb-cs.c:839,9'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:839,17'
          Dst:             json_array_size
        - Src:             'lib/ovsdb-cs.c:844,39'
          Dst:             json_array_at
    - functionName:    condition_clone
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 873
      functionLinenumberEnd: 886
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          46
      EdgeCount:       14
      CyclomaticComplexity: 8
      functionsReached:
        - abort
        - condition_classify
        - json_array_create_1
        - json_boolean_create
        - json_clone
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ovsdb-cs.c:874,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:874,13'
          Dst:             condition_classify
        - Src:             'lib/ovsdb-cs.c:876,36'
          Dst:             json_boolean_create
        - Src:             'lib/ovsdb-cs.c:876,16'
          Dst:             json_array_create_1
        - Src:             'lib/ovsdb-cs.c:879,36'
          Dst:             json_boolean_create
        - Src:             'lib/ovsdb-cs.c:879,16'
          Dst:             json_array_create_1
        - Src:             'lib/ovsdb-cs.c:882,16'
          Dst:             json_clone
        - Src:             'lib/ovsdb-cs.c:885,5'
          Dst:             abort
    - functionName:    condition_equal
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 863
      functionLinenumberEnd: 866
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         9
      ICount:          47
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - condition_classify
        - json_equal
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:864,32'
          Dst:             condition_classify
        - Src:             'lib/ovsdb-cs.c:865,21'
          Dst:             condition_classify
        - Src:             'lib/ovsdb-cs.c:866,39'
          Dst:             json_equal
    - functionName:    ovsdb_cs_db_get_table
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 892
      functionLinenumberEnd: 907
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          96
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hash_string
        - hmap_first_with_hash
        - hmap_insert_at
        - hmap_next_with_hash
        - json_array_create_1
        - json_boolean_create
        - strcmp
        - xstrdup
        - xzalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:893,21'
          Dst:             hash_string
        - Src:             'lib/ovsdb-cs.c:896,5'
          Dst:             hmap_first_with_hash
        - Src:             'lib/ovsdb-cs.c:897,14'
          Dst:             strcmp
        - Src:             'lib/ovsdb-cs.c:896,5'
          Dst:             hmap_next_with_hash
        - Src:             'lib/ovsdb-cs.c:902,9'
          Dst:             xzalloc
        - Src:             'lib/ovsdb-cs.c:903,15'
          Dst:             xstrdup
        - Src:             'lib/ovsdb-cs.c:904,39'
          Dst:             json_boolean_create
        - Src:             'lib/ovsdb-cs.c:904,19'
          Dst:             json_array_create_1
        - Src:             'lib/ovsdb-cs.c:905,5'
          Dst:             hmap_insert_at
    - functionName:    hash_string
      functionSourceFile: '/src/openvswitch/lib/hash.h'
      linkageType:     InternalLinkage
      functionLinenumber: 403
      functionLinenumberEnd: 404
      functionDepth:   0
      returnType:      int
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hash_bytes
        - strlen
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/hash.h:404,26'
          Dst:             strlen
        - Src:             'lib/hash.h:404,12'
          Dst:             hash_bytes
    - functionName:    hmap_first_with_hash
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 359
      functionLinenumberEnd: 360
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next_with_hash__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:360,12'
          Dst:             hmap_next_with_hash__
    - functionName:    hmap_next_with_hash
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 395
      functionLinenumberEnd: 396
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_next_with_hash__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/hmap.h:396,12'
          Dst:             hmap_next_with_hash__
    - functionName:    hmap_next_with_hash__
      functionSourceFile: '/src/openvswitch/./include/openvswitch/hmap.h'
      linkageType:     InternalLinkage
      functionLinenumber: 348
      functionLinenumberEnd: 352
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - size_t
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         7
      ICount:          40
      EdgeCount:       8
      CyclomaticComplexity: 3
      functionsReached: []
      functionUses:    2
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovs_list_splice
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 175
      functionLinenumberEnd: 190
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         4
      ICount:          62
      EdgeCount:       4
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsdb_cs_db_parse_lock_notify
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1402
      functionLinenumberEnd: 1418
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         18
      ICount:          98
      EdgeCount:       24
      CyclomaticComplexity: 8
      functionsReached:
        - json_array_at
        - json_array_size
        - json_string
        - ovsdb_cs_db_update_has_lock
        - strcmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:1405,12'
          Dst:             json_array_size
        - Src:             'lib/ovsdb-cs.c:1406,12'
          Dst:             json_array_at
        - Src:             'lib/ovsdb-cs.c:1407,45'
          Dst:             json_array_at
        - Src:             'lib/ovsdb-cs.c:1407,33'
          Dst:             json_string
        - Src:             'lib/ovsdb-cs.c:1409,14'
          Dst:             strcmp
        - Src:             'lib/ovsdb-cs.c:1410,13'
          Dst:             ovsdb_cs_db_update_has_lock
    - functionName:    ovsdb_cs_db_parse_lock_reply
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1377
      functionLinenumberEnd: 1396
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         12
      ICount:          77
      EdgeCount:       15
      CyclomaticComplexity: 5
      functionsReached:
        - json_destroy
        - json_object
        - ovsdb_cs_db_update_has_lock
        - shash_find_data
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:1380,5'
          Dst:             json_destroy
        - Src:             'lib/ovsdb-cs.c:1386,34'
          Dst:             json_object
        - Src:             'lib/ovsdb-cs.c:1386,18'
          Dst:             shash_find_data
        - Src:             'lib/ovsdb-cs.c:1392,5'
          Dst:             ovsdb_cs_db_update_has_lock
    - functionName:    ovsdb_cs_db_add_update
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1586
      functionLinenumberEnd: 1596
      functionDepth:   0
      returnType:      void
      argCount:        5
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
        - bool
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          56
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - json_clone
        - ovsdb_cs_db_add_event
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:1587,36'
          Dst:             ovsdb_cs_db_add_event
        - Src:             'lib/ovsdb-cs.c:1590,26'
          Dst:             json_clone
    - functionName:    ovsdb_cs_db_ack_condition
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1086
      functionLinenumberEnd: 1095
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          78
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hmap_first
        - hmap_next
        - json_destroy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:1088,5'
          Dst:             hmap_first
        - Src:             'lib/ovsdb-cs.c:1090,13'
          Dst:             json_destroy
        - Src:             'lib/ovsdb-cs.c:1088,5'
          Dst:             hmap_next
    - functionName:    ovsdb_cs_send_db_change_aware
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1512
      functionLinenumberEnd: 1517
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - json_array_create_1
        - json_boolean_create
        - jsonrpc_create_request
        - jsonrpc_session_send
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:1514,52'
          Dst:             json_boolean_create
        - Src:             'lib/ovsdb-cs.c:1514,32'
          Dst:             json_array_create_1
        - Src:             'lib/ovsdb-cs.c:1513,31'
          Dst:             jsonrpc_create_request
        - Src:             'lib/ovsdb-cs.c:1516,5'
          Dst:             jsonrpc_session_send
    - functionName:    ovsdb_cs_db_parse_monitor_reply
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1601
      functionLinenumberEnd: 1626
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          129
      EdgeCount:       28
      CyclomaticComplexity: 9
      functionsReached:
        - json_array_at
        - json_array_size
        - json_boolean
        - json_string
        - log_parse_update_error
        - ovsdb_cs_db_add_update
        - ovsdb_syntax_error
        - uuid_from_string
      functionUses:    4
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:1605,43'
          Dst:             json_array_size
        - Src:             'lib/ovsdb-cs.c:1606,17'
          Dst:             json_array_at
        - Src:             'lib/ovsdb-cs.c:1607,17'
          Dst:             json_array_at
        - Src:             'lib/ovsdb-cs.c:1608,16'
          Dst:             json_array_at
        - Src:             'lib/ovsdb-cs.c:1610,46'
          Dst:             json_array_at
        - Src:             'lib/ovsdb-cs.c:1610,34'
          Dst:             json_string
        - Src:             'lib/ovsdb-cs.c:1609,17'
          Dst:             uuid_from_string
        - Src:             'lib/ovsdb-cs.c:1611,41'
          Dst:             ovsdb_syntax_error
        - Src:             'lib/ovsdb-cs.c:1613,13'
          Dst:             log_parse_update_error
        - Src:             'lib/ovsdb-cs.c:1617,35'
          Dst:             json_array_at
        - Src:             'lib/ovsdb-cs.c:1617,22'
          Dst:             json_boolean
        - Src:             'lib/ovsdb-cs.c:1619,25'
          Dst:             json_array_at
        - Src:             'lib/ovsdb-cs.c:1625,5'
          Dst:             ovsdb_cs_db_add_update
    - functionName:    ovsdb_cs_db_txn_process_reply
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1425
      functionLinenumberEnd: 1432
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          46
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - jsonrpc_msg_clone
        - ovsdb_cs_db_add_event
        - ovsdb_cs_forget_transaction
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:1426,18'
          Dst:             ovsdb_cs_forget_transaction
        - Src:             'lib/ovsdb-cs.c:1429,15'
          Dst:             ovsdb_cs_db_add_event
        - Src:             'lib/ovsdb-cs.c:1430,28'
          Dst:             jsonrpc_msg_clone
    - functionName:    ovsdb_cs_forget_transaction
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1488
      functionLinenumberEnd: 1497
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          77
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - json_destroy
        - json_equal
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:1490,13'
          Dst:             json_equal
        - Src:             'lib/ovsdb-cs.c:1491,13'
          Dst:             json_destroy
    - functionName:    ovsdb_cs_db_process_lock_replies
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1324
      functionLinenumberEnd: 1344
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         19
      ICount:          109
      EdgeCount:       25
      CyclomaticComplexity: 8
      functionsReached:
        - json_equal
        - ovsdb_cs_db_parse_lock_notify
        - ovsdb_cs_db_parse_lock_reply
        - strcmp
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:1327,12'
          Dst:             json_equal
        - Src:             'lib/ovsdb-cs.c:1329,9'
          Dst:             ovsdb_cs_db_parse_lock_reply
        - Src:             'lib/ovsdb-cs.c:1334,14'
          Dst:             strcmp
        - Src:             'lib/ovsdb-cs.c:1336,20'
          Dst:             ovsdb_cs_db_parse_lock_notify
        - Src:             'lib/ovsdb-cs.c:1337,21'
          Dst:             strcmp
        - Src:             'lib/ovsdb-cs.c:1339,20'
          Dst:             ovsdb_cs_db_parse_lock_notify
    - functionName:    ovsdb_cs_handle_monitor_canceled
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1678
      functionLinenumberEnd: 1707
      functionDepth:   0
      returnType:      bool
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         21
      ICount:          132
      EdgeCount:       28
      CyclomaticComplexity: 9
      functionsReached:
        - json_array_at
        - json_array_create_1
        - json_array_size
        - json_clone
        - json_equal
        - jsonrpc_create_request
        - jsonrpc_session_send
        - ovsdb_cs_restart_fsm
        - strcmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:1680,12'
          Dst:             strcmp
        - Src:             'lib/ovsdb-cs.c:1682,12'
          Dst:             json_array_size
        - Src:             'lib/ovsdb-cs.c:1683,24'
          Dst:             json_array_at
        - Src:             'lib/ovsdb-cs.c:1683,13'
          Dst:             json_equal
        - Src:             'lib/ovsdb-cs.c:1701,37'
          Dst:             json_clone
        - Src:             'lib/ovsdb-cs.c:1701,17'
          Dst:             json_array_create_1
        - Src:             'lib/ovsdb-cs.c:1699,13'
          Dst:             jsonrpc_create_request
        - Src:             'lib/ovsdb-cs.c:1697,9'
          Dst:             jsonrpc_session_send
        - Src:             'lib/ovsdb-cs.c:1704,5'
          Dst:             ovsdb_cs_restart_fsm
    - functionName:    ovsdb_cs_restart_fsm
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 414
      functionLinenumberEnd: 419
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          27
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_cs_send_schema_request
        - ovsdb_cs_transition_at
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:415,5'
          Dst:             ovsdb_cs_send_schema_request
        - Src:             'lib/ovsdb-cs.c:416,5'
          Dst:             ovsdb_cs_transition_at
    - functionName:    ovsdb_cs_send_schema_request
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1502
      functionLinenumberEnd: 1508
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          23
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - json_array_create_1
        - json_string_create
        - jsonrpc_create_request
        - ovsdb_cs_send_request
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:1505,52'
          Dst:             json_string_create
        - Src:             'lib/ovsdb-cs.c:1505,32'
          Dst:             json_array_create_1
        - Src:             'lib/ovsdb-cs.c:1503,31'
          Dst:             jsonrpc_create_request
        - Src:             'lib/ovsdb-cs.c:1503,5'
          Dst:             ovsdb_cs_send_request
    - functionName:    ovsdb_cs_db_parse_update_rpc
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1631
      functionLinenumberEnd: 1672
      functionDepth:   0
      returnType:      bool
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         26
      ICount:          184
      EdgeCount:       35
      CyclomaticComplexity: 11
      functionsReached:
        - json_array_at
        - json_array_size
        - json_equal
        - json_string
        - log_parse_update_error
        - ovsdb_cs_db_add_update
        - ovsdb_syntax_error
        - strcmp
        - uuid_from_string
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:1636,21'
          Dst:             strcmp
        - Src:             'lib/ovsdb-cs.c:1637,23'
          Dst:             strcmp
        - Src:             'lib/ovsdb-cs.c:1638,23'
          Dst:             strcmp
        - Src:             'lib/ovsdb-cs.c:1646,39'
          Dst:             json_array_size
        - Src:             'lib/ovsdb-cs.c:1647,37'
          Dst:             ovsdb_syntax_error
        - Src:             'lib/ovsdb-cs.c:1650,9'
          Dst:             log_parse_update_error
        - Src:             'lib/ovsdb-cs.c:1654,21'
          Dst:             json_array_at
        - Src:             'lib/ovsdb-cs.c:1654,10'
          Dst:             json_equal
        - Src:             'lib/ovsdb-cs.c:1659,43'
          Dst:             json_array_at
        - Src:             'lib/ovsdb-cs.c:1659,31'
          Dst:             json_string
        - Src:             'lib/ovsdb-cs.c:1660,14'
          Dst:             uuid_from_string
        - Src:             'lib/ovsdb-cs.c:1661,41'
          Dst:             ovsdb_syntax_error
        - Src:             'lib/ovsdb-cs.c:1663,13'
          Dst:             log_parse_update_error
        - Src:             'lib/ovsdb-cs.c:1668,40'
          Dst:             json_array_at
        - Src:             'lib/ovsdb-cs.c:1670,5'
          Dst:             ovsdb_cs_db_add_update
    - functionName:    ovsdb_cs_process_response
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 423
      functionLinenumberEnd: 532
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         51
      ICount:          362
      EdgeCount:       62
      CyclomaticComplexity: 13
      functionsReached:
        - abort
        - json_clone
        - json_destroy
        - jsonrpc_msg_to_string
        - jsonrpc_msg_type_to_string
        - jsonrpc_session_get_name
        - ovsdb_cs_check_server_db
        - ovsdb_cs_db_ack_condition
        - ovsdb_cs_db_parse_monitor_reply
        - ovsdb_cs_retry_at
        - ovsdb_cs_send_cond_change
        - ovsdb_cs_send_db_change_aware
        - ovsdb_cs_send_monitor_request
        - ovsdb_cs_send_schema_request
        - ovsdb_cs_state_to_string
        - ovsdb_cs_transition_at
        - vlog_rate_limit
      functionUses:    1
      BranchProfiles:
        - Branch String:   'lib/ovsdb-cs.c:442,5'
          Branch Sides:    []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:431,19'
          Dst:             jsonrpc_msg_to_string
        - Src:             'lib/ovsdb-cs.c:432,9'
          Dst:             jsonrpc_session_get_name
        - Src:             'lib/ovsdb-cs.c:432,9'
          Dst:             jsonrpc_msg_type_to_string
        - Src:             'lib/ovsdb-cs.c:432,9'
          Dst:             ovsdb_cs_state_to_string
        - Src:             'lib/ovsdb-cs.c:432,9'
          Dst:             vlog_rate_limit
        - Src:             'lib/ovsdb-cs.c:438,9'
          Dst:             ovsdb_cs_retry_at
        - Src:             'lib/ovsdb-cs.c:445,13'
          Dst:             json_destroy
        - Src:             'lib/ovsdb-cs.c:446,33'
          Dst:             json_clone
        - Src:             'lib/ovsdb-cs.c:447,13'
          Dst:             ovsdb_cs_send_monitor_request
        - Src:             'lib/ovsdb-cs.c:449,13'
          Dst:             ovsdb_cs_transition_at
        - Src:             'lib/ovsdb-cs.c:451,13'
          Dst:             ovsdb_cs_send_schema_request
        - Src:             'lib/ovsdb-cs.c:452,13'
          Dst:             ovsdb_cs_transition_at
        - Src:             'lib/ovsdb-cs.c:459,13'
          Dst:             ovsdb_cs_db_parse_monitor_reply
        - Src:             'lib/ovsdb-cs.c:461,17'
          Dst:             ovsdb_cs_check_server_db
        - Src:             'lib/ovsdb-cs.c:462,17'
          Dst:             ovsdb_cs_send_db_change_aware
        - Src:             'lib/ovsdb-cs.c:465,13'
          Dst:             ovsdb_cs_send_schema_request
        - Src:             'lib/ovsdb-cs.c:466,13'
          Dst:             ovsdb_cs_transition_at
        - Src:             'lib/ovsdb-cs.c:471,9'
          Dst:             json_destroy
        - Src:             'lib/ovsdb-cs.c:472,27'
          Dst:             json_clone
        - Src:             'lib/ovsdb-cs.c:474,13'
          Dst:             ovsdb_cs_send_monitor_request
        - Src:             'lib/ovsdb-cs.c:475,13'
          Dst:             ovsdb_cs_transition_at
        - Src:             'lib/ovsdb-cs.c:477,13'
          Dst:             ovsdb_cs_send_monitor_request
        - Src:             'lib/ovsdb-cs.c:478,13'
          Dst:             ovsdb_cs_transition_at
        - Src:             'lib/ovsdb-cs.c:485,13'
          Dst:             ovsdb_cs_send_monitor_request
        - Src:             'lib/ovsdb-cs.c:486,13'
          Dst:             ovsdb_cs_transition_at
        - Src:             'lib/ovsdb-cs.c:489,13'
          Dst:             ovsdb_cs_transition_at
        - Src:             'lib/ovsdb-cs.c:490,13'
          Dst:             ovsdb_cs_db_parse_monitor_reply
        - Src:             'lib/ovsdb-cs.c:497,13'
          Dst:             ovsdb_cs_send_monitor_request
        - Src:             'lib/ovsdb-cs.c:498,13'
          Dst:             ovsdb_cs_transition_at
        - Src:             'lib/ovsdb-cs.c:501,13'
          Dst:             ovsdb_cs_transition_at
        - Src:             'lib/ovsdb-cs.c:502,13'
          Dst:             ovsdb_cs_db_parse_monitor_reply
        - Src:             'lib/ovsdb-cs.c:508,9'
          Dst:             ovsdb_cs_transition_at
        - Src:             'lib/ovsdb-cs.c:509,9'
          Dst:             ovsdb_cs_db_parse_monitor_reply
        - Src:             'lib/ovsdb-cs.c:519,9'
          Dst:             ovsdb_cs_db_ack_condition
        - Src:             'lib/ovsdb-cs.c:520,9'
          Dst:             ovsdb_cs_send_cond_change
        - Src:             'lib/ovsdb-cs.c:530,9'
          Dst:             abort
    - functionName:    ovsdb_cs_retry_at
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 407
      functionLinenumberEnd: 410
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          20
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_cs_force_reconnect
        - ovsdb_cs_transition_at
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:408,5'
          Dst:             ovsdb_cs_force_reconnect
        - Src:             'lib/ovsdb-cs.c:409,5'
          Dst:             ovsdb_cs_transition_at
    - functionName:    ovsdb_cs_check_server_db
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 2054
      functionLinenumberEnd: 2059
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - ovsdb_cs_check_server_db__
        - ovsdb_cs_retry_at
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:2055,15'
          Dst:             ovsdb_cs_check_server_db__
        - Src:             'lib/ovsdb-cs.c:2057,9'
          Dst:             ovsdb_cs_retry_at
    - functionName:    ovsdb_cs_send_cond_change
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1165
      functionLinenumberEnd: 1180
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          71
      EdgeCount:       17
      CyclomaticComplexity: 6
      functionsReached:
        - json_clone
        - jsonrpc_session_is_connected
        - jsonrpc_session_send
        - ovsdb_cs_db_compose_cond_change
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:1169,10'
          Dst:             jsonrpc_session_is_connected
        - Src:             'lib/ovsdb-cs.c:1175,31'
          Dst:             ovsdb_cs_db_compose_cond_change
        - Src:             'lib/ovsdb-cs.c:1177,26'
          Dst:             json_clone
        - Src:             'lib/ovsdb-cs.c:1178,9'
          Dst:             jsonrpc_session_send
    - functionName:    ovsdb_cs_force_reconnect
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 727
      functionLinenumberEnd: 741
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         9
      ICount:          45
      EdgeCount:       11
      CyclomaticComplexity: 4
      functionsReached:
        - jsonrpc_session_force_reconnect
        - jsonrpc_session_reset_backoff
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:737,13'
          Dst:             jsonrpc_session_reset_backoff
        - Src:             'lib/ovsdb-cs.c:739,9'
          Dst:             jsonrpc_session_force_reconnect
    - functionName:    ovsdb_cs_db_destroy_tables
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 946
      functionLinenumberEnd: 952
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          62
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - hmap_destroy
        - hmap_first
        - hmap_next
        - ovsdb_cs_db_destroy_table
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:948,5'
          Dst:             hmap_first
        - Src:             'lib/ovsdb-cs.c:948,5'
          Dst:             hmap_next
        - Src:             'lib/ovsdb-cs.c:949,9'
          Dst:             ovsdb_cs_db_destroy_table
        - Src:             'lib/ovsdb-cs.c:951,5'
          Dst:             hmap_destroy
    - functionName:    ovsdb_cs_db_destroy_table
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 912
      functionLinenumberEnd: 919
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          38
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_remove
        - json_destroy
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:913,5'
          Dst:             json_destroy
        - Src:             'lib/ovsdb-cs.c:914,5'
          Dst:             json_destroy
        - Src:             'lib/ovsdb-cs.c:915,5'
          Dst:             json_destroy
        - Src:             'lib/ovsdb-cs.c:916,5'
          Dst:             hmap_remove
    - functionName:    ovsdb_cs_send_transaction
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1451
      functionLinenumberEnd: 1479
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         14
      ICount:          119
      EdgeCount:       18
      CyclomaticComplexity: 6
      functionsReached:
        - json_array_add
        - json_clone
        - json_destroy
        - json_object_create
        - json_object_put_string
        - jsonrpc_create_request
        - jsonrpc_session_send
        - ovsdb_cs_may_send_transaction
        - x2nrealloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:1452,10'
          Dst:             ovsdb_cs_may_send_transaction
        - Src:             'lib/ovsdb-cs.c:1453,9'
          Dst:             json_destroy
        - Src:             'lib/ovsdb-cs.c:1458,34'
          Dst:             json_object_create
        - Src:             'lib/ovsdb-cs.c:1459,9'
          Dst:             json_object_put_string
        - Src:             'lib/ovsdb-cs.c:1460,9'
          Dst:             json_object_put_string
        - Src:             'lib/ovsdb-cs.c:1461,9'
          Dst:             json_array_add
        - Src:             'lib/ovsdb-cs.c:1465,35'
          Dst:             jsonrpc_create_request
        - Src:             'lib/ovsdb-cs.c:1467,17'
          Dst:             jsonrpc_session_send
        - Src:             'lib/ovsdb-cs.c:1469,9'
          Dst:             json_destroy
        - Src:             'lib/ovsdb-cs.c:1474,20'
          Dst:             x2nrealloc
        - Src:             'lib/ovsdb-cs.c:1478,12'
          Dst:             json_clone
    - functionName:    ovsdb_cs_may_send_transaction
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1440
      functionLinenumberEnd: 1443
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          51
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - ovsdb_cs_has_lock
      functionUses:    3
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:1443,40'
          Dst:             ovsdb_cs_has_lock
    - functionName:    ovsdb_cs_has_lock
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1299
      functionLinenumberEnd: 1300
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    3
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsdb_cs_is_lock_contended
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1307
      functionLinenumberEnd: 1308
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          11
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsdb_cs_get_lock
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1286
      functionLinenumberEnd: 1287
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          10
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsdb_cs_db_set_lock
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1240
      functionLinenumberEnd: 1258
      functionDepth:   0
      returnType:      'N/A'
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         17
      ICount:          96
      EdgeCount:       22
      CyclomaticComplexity: 7
      functionsReached:
        - ovsdb_cs_db_compose_lock_request
        - ovsdb_cs_db_compose_unlock_request
        - strcmp
        - xstrdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:1242,27'
          Dst:             strcmp
        - Src:             'lib/ovsdb-cs.c:1244,35'
          Dst:             ovsdb_cs_db_compose_unlock_request
        - Src:             'lib/ovsdb-cs.c:1253,25'
          Dst:             xstrdup
        - Src:             'lib/ovsdb-cs.c:1254,16'
          Dst:             ovsdb_cs_db_compose_lock_request
    - functionName:    ovsdb_cs_db_compose_lock_request
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1362
      functionLinenumberEnd: 1365
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          25
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - json_clone
        - ovsdb_cs_db_compose_lock_request__
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:1363,31'
          Dst:             ovsdb_cs_db_compose_lock_request__
        - Src:             'lib/ovsdb-cs.c:1364,27'
          Dst:             json_clone
    - functionName:    ovsdb_cs_set_lock
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1268
      functionLinenumberEnd: 1280
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         10
      ICount:          50
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - jsonrpc_msg_destroy
        - jsonrpc_session_send
        - ovsdb_cs_db_set_lock
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:1270,35'
          Dst:             ovsdb_cs_db_set_lock
        - Src:             'lib/ovsdb-cs.c:1275,13'
          Dst:             jsonrpc_session_send
        - Src:             'lib/ovsdb-cs.c:1277,13'
          Dst:             jsonrpc_msg_destroy
    - functionName:    ovsdb_cs_reset_min_index
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1232
      functionLinenumberEnd: 1234
      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:    ovsdb_cs_set_shuffle_remotes
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1222
      functionLinenumberEnd: 1224
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsdb_cs_set_leader_only
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1210
      functionLinenumberEnd: 1215
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         8
      ICount:          46
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - ovsdb_cs_check_server_db
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:1213,9'
          Dst:             ovsdb_cs_check_server_db
    - functionName:    ovsdb_cs_set_db_change_aware
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1194
      functionLinenumberEnd: 1196
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         1
      ICount:          15
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsdb_cs_get_condition_seqno
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1024
      functionLinenumberEnd: 1025
      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:    ovsdb_cs_db_set_condition
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 957
      functionLinenumberEnd: 993
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         25
      ICount:          167
      EdgeCount:       32
      CyclomaticComplexity: 9
      functionsReached:
        - condition_clone
        - condition_equal
        - hmap_first
        - hmap_next
        - json_destroy
        - ovsdb_cs_db_get_table
        - poll_immediate_wake_at
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:960,35'
          Dst:             ovsdb_cs_db_get_table
        - Src:             'lib/ovsdb-cs.c:964,10'
          Dst:             condition_equal
        - Src:             'lib/ovsdb-cs.c:965,9'
          Dst:             json_destroy
        - Src:             'lib/ovsdb-cs.c:966,23'
          Dst:             condition_clone
        - Src:             'lib/ovsdb-cs.c:968,9'
          Dst:             poll_immediate_wake_at
        - Src:             'lib/ovsdb-cs.c:980,9'
          Dst:             hmap_first
        - Src:             'lib/ovsdb-cs.c:980,9'
          Dst:             hmap_next
    - functionName:    ovsdb_cs_set_condition
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 1004
      functionLinenumberEnd: 1005
      functionDepth:   0
      returnType:      int
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          22
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_cs_db_set_condition
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:1005,12'
          Dst:             ovsdb_cs_db_set_condition
    - functionName:    ovsdb_cs_reset_last_id
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 940
      functionLinenumberEnd: 942
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          19
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsdb_cs_clear_condition
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 924
      functionLinenumberEnd: 936
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         13
      ICount:          90
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - hash_string
        - hmap_first_with_hash
        - hmap_next_with_hash
        - ovsdb_cs_db_destroy_table
        - strcmp
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:925,21'
          Dst:             hash_string
        - Src:             'lib/ovsdb-cs.c:929,5'
          Dst:             hmap_first_with_hash
        - Src:             'lib/ovsdb-cs.c:930,14'
          Dst:             strcmp
        - Src:             'lib/ovsdb-cs.c:931,13'
          Dst:             ovsdb_cs_db_destroy_table
        - Src:             'lib/ovsdb-cs.c:929,5'
          Dst:             hmap_next_with_hash
    - functionName:    ovsdb_cs_set_probe_interval
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 801
      functionLinenumberEnd: 805
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - int
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - jsonrpc_session_set_probe_interval
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:803,9'
          Dst:             jsonrpc_session_set_probe_interval
    - functionName:    ovsdb_cs_set_jsonrpc_options
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 791
      functionLinenumberEnd: 795
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         6
      ICount:          33
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - jsonrpc_session_set_options
      functionUses:    0
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:793,9'
          Dst:             jsonrpc_session_set_options
    - functionName:    ovsdb_cs_get_last_error
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 776
      functionLinenumberEnd: 785
      functionDepth:   0
      returnType:      int
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         11
      ICount:          61
      EdgeCount:       14
      CyclomaticComplexity: 5
      functionsReached:
        - jsonrpc_session_get_last_error
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:777,29'
          Dst:             jsonrpc_session_get_last_error
    - functionName:    ovsdb_cs_is_connected
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 765
      functionLinenumberEnd: 766
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          31
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - jsonrpc_session_is_connected
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:766,27'
          Dst:             jsonrpc_session_is_connected
    - functionName:    ovsdb_cs_is_alive
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 756
      functionLinenumberEnd: 759
      functionDepth:   0
      returnType:      bool
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         8
      ICount:          41
      EdgeCount:       10
      CyclomaticComplexity: 4
      functionsReached:
        - jsonrpc_session_is_alive
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:758,16'
          Dst:             jsonrpc_session_is_alive
    - functionName:    ovsdb_cs_flag_inconsistency
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 747
      functionLinenumberEnd: 750
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          28
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovsdb_cs_retry_at
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:749,5'
          Dst:             ovsdb_cs_retry_at
    - functionName:    ovsdb_cs_enable_reconnect
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 717
      functionLinenumberEnd: 721
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          30
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - jsonrpc_session_enable_reconnect
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:719,9'
          Dst:             jsonrpc_session_enable_reconnect
    - functionName:    ovsdb_cs_set_remote
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 667
      functionLinenumberEnd: 711
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - bool
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         32
      ICount:          193
      EdgeCount:       43
      CyclomaticComplexity: 13
      functionsReached:
        - jsonrpc_close
        - jsonrpc_get_name
        - jsonrpc_session_get_seqno
        - jsonrpc_session_open_multiple
        - jsonrpc_session_replace
        - jsonrpc_session_steal
        - ovsdb_session_parse_remote
        - strcmp
        - svec_contains_unsorted
        - svec_destroy
        - svec_shuffle
        - uuid_equals
        - xstrdup
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:670,41'
          Dst:             strcmp
        - Src:             'lib/ovsdb-cs.c:676,19'
          Dst:             jsonrpc_session_steal
        - Src:             'lib/ovsdb-cs.c:688,13'
          Dst:             ovsdb_session_parse_remote
        - Src:             'lib/ovsdb-cs.c:690,17'
          Dst:             svec_shuffle
        - Src:             'lib/ovsdb-cs.c:692,27'
          Dst:             jsonrpc_session_open_multiple
        - Src:             'lib/ovsdb-cs.c:696,24'
          Dst:             uuid_equals
        - Src:             'lib/ovsdb-cs.c:697,53'
          Dst:             jsonrpc_get_name
        - Src:             'lib/ovsdb-cs.c:697,20'
          Dst:             svec_contains_unsorted
        - Src:             'lib/ovsdb-cs.c:698,17'
          Dst:             jsonrpc_session_replace
        - Src:             'lib/ovsdb-cs.c:699,35'
          Dst:             jsonrpc_session_get_seqno
        - Src:             'lib/ovsdb-cs.c:705,13'
          Dst:             svec_destroy
        - Src:             'lib/ovsdb-cs.c:706,26'
          Dst:             xstrdup
        - Src:             'lib/ovsdb-cs.c:709,9'
          Dst:             jsonrpc_close
    - functionName:    ovsdb_cs_wait
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 650
      functionLinenumberEnd: 656
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         6
      ICount:          34
      EdgeCount:       7
      CyclomaticComplexity: 3
      functionsReached:
        - jsonrpc_session_recv_wait
        - jsonrpc_session_wait
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:654,5'
          Dst:             jsonrpc_session_wait
        - Src:             'lib/ovsdb-cs.c:655,5'
          Dst:             jsonrpc_session_recv_wait
    - functionName:    ovs_list_push_back_all
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 341
      functionLinenumberEnd: 343
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         3
      ICount:          21
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - ovs_list_splice
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             './include/openvswitch/list.h:342,5'
          Dst:             ovs_list_splice
    - functionName:    ovsdb_cs_process_msg
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 536
      functionLinenumberEnd: 588
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         41
      ICount:          217
      EdgeCount:       55
      CyclomaticComplexity: 16
      functionsReached:
        - json_destroy
        - json_equal
        - jsonrpc_msg_to_string
        - jsonrpc_msg_type_to_string
        - jsonrpc_session_get_name
        - ovsdb_cs_check_server_db
        - ovsdb_cs_db_parse_update_rpc
        - ovsdb_cs_db_process_lock_replies
        - ovsdb_cs_db_txn_process_reply
        - ovsdb_cs_handle_monitor_canceled
        - ovsdb_cs_process_response
        - vlog
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:542,30'
          Dst:             json_equal
        - Src:             'lib/ovsdb-cs.c:543,9'
          Dst:             json_destroy
        - Src:             'lib/ovsdb-cs.c:545,9'
          Dst:             ovsdb_cs_process_response
        - Src:             'lib/ovsdb-cs.c:550,9'
          Dst:             ovsdb_cs_db_parse_update_rpc
        - Src:             'lib/ovsdb-cs.c:554,12'
          Dst:             ovsdb_cs_db_parse_update_rpc
        - Src:             'lib/ovsdb-cs.c:555,9'
          Dst:             ovsdb_cs_check_server_db
        - Src:             'lib/ovsdb-cs.c:559,9'
          Dst:             ovsdb_cs_handle_monitor_canceled
        - Src:             'lib/ovsdb-cs.c:561,16'
          Dst:             ovsdb_cs_handle_monitor_canceled
        - Src:             'lib/ovsdb-cs.c:566,9'
          Dst:             ovsdb_cs_db_process_lock_replies
        - Src:             'lib/ovsdb-cs.c:571,24'
          Dst:             ovsdb_cs_db_txn_process_reply
        - Src:             'lib/ovsdb-cs.c:583,15'
          Dst:             jsonrpc_msg_to_string
        - Src:             'lib/ovsdb-cs.c:584,5'
          Dst:             jsonrpc_session_get_name
        - Src:             'lib/ovsdb-cs.c:584,5'
          Dst:             jsonrpc_msg_type_to_string
        - Src:             'lib/ovsdb-cs.c:584,5'
          Dst:             vlog
    - functionName:    ovs_list_init
      functionSourceFile: '/src/openvswitch/./include/openvswitch/list.h'
      linkageType:     InternalLinkage
      functionLinenumber: 149
      functionLinenumberEnd: 151
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         1
      ICount:          13
      EdgeCount:       1
      CyclomaticComplexity: 2
      functionsReached: []
      functionUses:    1
      BranchProfiles:  []
      Callsites:       []
    - functionName:    ovsdb_cs_run
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 606
      functionLinenumberEnd: 644
      functionDepth:   0
      returnType:      void
      argCount:        2
      argTypes:
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
      BBCount:         23
      ICount:          151
      EdgeCount:       29
      CyclomaticComplexity: 8
      functionsReached:
        - json_destroy
        - jsonrpc_msg_destroy
        - jsonrpc_session_get_seqno
        - jsonrpc_session_recv
        - jsonrpc_session_run
        - jsonrpc_session_send
        - ovs_list_init
        - ovs_list_push_back_all
        - ovsdb_cs_db_add_event
        - ovsdb_cs_db_compose_lock_request
        - ovsdb_cs_process_msg
        - ovsdb_cs_restart_fsm
        - ovsdb_cs_send_cond_change
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:607,5'
          Dst:             ovs_list_init
        - Src:             'lib/ovsdb-cs.c:612,5'
          Dst:             ovsdb_cs_send_cond_change
        - Src:             'lib/ovsdb-cs.c:614,5'
          Dst:             jsonrpc_session_run
        - Src:             'lib/ovsdb-cs.c:616,26'
          Dst:             jsonrpc_session_get_seqno
        - Src:             'lib/ovsdb-cs.c:619,9'
          Dst:             ovsdb_cs_restart_fsm
        - Src:             'lib/ovsdb-cs.c:622,13'
          Dst:             json_destroy
        - Src:             'lib/ovsdb-cs.c:626,9'
          Dst:             ovsdb_cs_db_add_event
        - Src:             'lib/ovsdb-cs.c:631,17'
          Dst:             ovsdb_cs_db_compose_lock_request
        - Src:             'lib/ovsdb-cs.c:629,13'
          Dst:             jsonrpc_session_send
        - Src:             'lib/ovsdb-cs.c:636,35'
          Dst:             jsonrpc_session_recv
        - Src:             'lib/ovsdb-cs.c:640,9'
          Dst:             ovsdb_cs_process_msg
        - Src:             'lib/ovsdb-cs.c:641,9'
          Dst:             jsonrpc_msg_destroy
        - Src:             'lib/ovsdb-cs.c:643,5'
          Dst:             ovs_list_push_back_all
    - functionName:    ovsdb_cs_db_destroy
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 344
      functionLinenumberEnd: 356
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         3
      ICount:          35
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - json_destroy
        - ovs_ignore
        - ovs_list_is_empty
        - ovsdb_cs_db_destroy_tables
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:345,5'
          Dst:             ovsdb_cs_db_destroy_tables
        - Src:             'lib/ovsdb-cs.c:347,5'
          Dst:             json_destroy
        - Src:             'lib/ovsdb-cs.c:348,5'
          Dst:             json_destroy
        - Src:             'lib/ovsdb-cs.c:352,5'
          Dst:             json_destroy
        - Src:             'lib/ovsdb-cs.c:355,16'
          Dst:             ovs_list_is_empty
        - Src:             'lib/ovsdb-cs.c:355,5'
          Dst:             ovs_ignore
    - functionName:    ovsdb_cs_destroy
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 361
      functionLinenumberEnd: 379
      functionDepth:   0
      returnType:      void
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         10
      ICount:          78
      EdgeCount:       12
      CyclomaticComplexity: 4
      functionsReached:
        - hmap_destroy
        - json_destroy
        - jsonrpc_session_close
        - ovsdb_cs_clear_server_rows
        - ovsdb_cs_db_destroy
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:363,9'
          Dst:             ovsdb_cs_db_destroy
        - Src:             'lib/ovsdb-cs.c:364,9'
          Dst:             ovsdb_cs_db_destroy
        - Src:             'lib/ovsdb-cs.c:365,9'
          Dst:             jsonrpc_session_close
        - Src:             'lib/ovsdb-cs.c:367,9'
          Dst:             json_destroy
        - Src:             'lib/ovsdb-cs.c:370,13'
          Dst:             json_destroy
        - Src:             'lib/ovsdb-cs.c:374,9'
          Dst:             ovsdb_cs_clear_server_rows
        - Src:             'lib/ovsdb-cs.c:375,9'
          Dst:             hmap_destroy
    - functionName:    ovsdb_cs_db_init
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 294
      functionLinenumberEnd: 306
      functionDepth:   0
      returnType:      void
      argCount:        6
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          88
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - json_array_create_2
        - json_string_create
      functionUses:    2
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:300,43'
          Dst:             json_string_create
        - Src:             'lib/ovsdb-cs.c:301,43'
          Dst:             json_string_create
        - Src:             'lib/ovsdb-cs.c:300,23'
          Dst:             json_array_create_2
    - functionName:    ovsdb_cs_create
      functionSourceFile: '/src/openvswitch/lib/ovsdb-cs.c'
      linkageType:     InternalLinkage
      functionLinenumber: 328
      functionLinenumberEnd: 339
      functionDepth:   0
      returnType:      'N/A'
      argCount:        4
      argTypes:
        - 'N/A'
        - int
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
        - ''
      BBCount:         3
      ICount:          54
      EdgeCount:       3
      CyclomaticComplexity: 2
      functionsReached:
        - hmap_init
        - ovsdb_cs_db_init
        - xzalloc
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-cs.c:329,27'
          Dst:             xzalloc
        - Src:             'lib/ovsdb-cs.c:330,5'
          Dst:             ovsdb_cs_db_init
        - Src:             'lib/ovsdb-cs.c:331,5'
          Dst:             ovsdb_cs_db_init
        - Src:             'lib/ovsdb-cs.c:337,5'
          Dst:             hmap_init
    - functionName:    next_remote
      functionSourceFile: '/src/openvswitch/lib/ovsdb-session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 27
      functionLinenumberEnd: 38
      functionDepth:   0
      returnType:      'N/A'
      argCount:        1
      argTypes:
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
      BBCount:         13
      ICount:          76
      EdgeCount:       16
      CyclomaticComplexity: 5
      functionsReached:
        - strchr
        - strspn
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-session.c:28,34'
          Dst:             strchr
        - Src:             'lib/ovsdb-session.c:31,14'
          Dst:             strspn
        - Src:             'lib/ovsdb-session.c:32,28'
          Dst:             strspn
        - Src:             'lib/ovsdb-session.c:29,22'
          Dst:             strchr
    - functionName:    ovsdb_session_parse_remote
      functionSourceFile: '/src/openvswitch/lib/ovsdb-session.c'
      linkageType:     InternalLinkage
      functionLinenumber: 47
      functionLinenumberEnd: 76
      functionDepth:   0
      returnType:      void
      argCount:        3
      argTypes:
        - 'N/A'
        - 'N/A'
        - 'N/A'
      constantsTouched: []
      argNames:
        - ''
        - ''
        - ''
      BBCount:         19
      ICount:          131
      EdgeCount:       24
      CyclomaticComplexity: 7
      functionsReached:
        - next_remote
        - strncmp
        - strspn
        - svec_add
        - svec_add_nocopy
        - svec_del
        - uuid_from_string
        - xmemdup0
      functionUses:    1
      BranchProfiles:  []
      Callsites:
        - Src:             'lib/ovsdb-session.c:51,14'
          Dst:             strspn
        - Src:             'lib/ovsdb-session.c:57,33'
          Dst:             next_remote
        - Src:             'lib/ovsdb-session.c:59,13'
          Dst:             svec_add
        - Src:             'lib/ovsdb-session.c:62,34'
          Dst:             xmemdup0
        - Src:             'lib/ovsdb-session.c:62,9'
          Dst:             svec_add_nocopy
        - Src:             'lib/ovsdb-session.c:70,14'
          Dst:             strncmp
        - Src:             'lib/ovsdb-session.c:70,42'
          Dst:             uuid_from_string
        - Src:             'lib/ovsdb-session.c:72,13'
          Dst:             svec_del
...
